mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-12-24 20:53:22 +02:00
cfg80211: do not overwrite the hardware max power setting in the regulatory code, fixes reported tx power values
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@25238 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
414b1d969f
commit
2bd31a6676
35
package/mac80211/patches/560-cfg80211_max_power.patch
Normal file
35
package/mac80211/patches/560-cfg80211_max_power.patch
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
--- a/net/wireless/reg.c
|
||||||
|
+++ b/net/wireless/reg.c
|
||||||
|
@@ -839,6 +839,12 @@ static void handle_channel(struct wiphy
|
||||||
|
if (freq_range->max_bandwidth_khz < MHZ_TO_KHZ(40))
|
||||||
|
bw_flags = IEEE80211_CHAN_NO_HT40;
|
||||||
|
|
||||||
|
+ if (chan->orig_mpwr)
|
||||||
|
+ chan->max_power = min(chan->orig_mpwr,
|
||||||
|
+ (int) MBM_TO_DBM(power_rule->max_eirp));
|
||||||
|
+ else
|
||||||
|
+ chan->max_power = (int) MBM_TO_DBM(power_rule->max_eirp);
|
||||||
|
+
|
||||||
|
if (last_request->initiator == NL80211_REGDOM_SET_BY_DRIVER &&
|
||||||
|
request_wiphy && request_wiphy == wiphy &&
|
||||||
|
request_wiphy->flags & WIPHY_FLAG_STRICT_REGULATORY) {
|
||||||
|
@@ -851,19 +857,12 @@ static void handle_channel(struct wiphy
|
||||||
|
map_regdom_flags(reg_rule->flags) | bw_flags;
|
||||||
|
chan->max_antenna_gain = chan->orig_mag =
|
||||||
|
(int) MBI_TO_DBI(power_rule->max_antenna_gain);
|
||||||
|
- chan->max_power = chan->orig_mpwr =
|
||||||
|
- (int) MBM_TO_DBM(power_rule->max_eirp);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
chan->flags = flags | bw_flags | map_regdom_flags(reg_rule->flags);
|
||||||
|
chan->max_antenna_gain = min(chan->orig_mag,
|
||||||
|
(int) MBI_TO_DBI(power_rule->max_antenna_gain));
|
||||||
|
- if (chan->orig_mpwr)
|
||||||
|
- chan->max_power = min(chan->orig_mpwr,
|
||||||
|
- (int) MBM_TO_DBM(power_rule->max_eirp));
|
||||||
|
- else
|
||||||
|
- chan->max_power = (int) MBM_TO_DBM(power_rule->max_eirp);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void handle_band(struct wiphy *wiphy,
|
Loading…
Reference in New Issue
Block a user