openwrt-owl/package/mac80211/patches/520-mac80211_cur_txpower.patch

33 lines
849 B
Diff

--- a/include/net/mac80211.h
+++ b/include/net/mac80211.h
@@ -829,7 +829,7 @@ enum ieee80211_smps_mode {
*/
struct ieee80211_conf {
u32 flags;
- int power_level, dynamic_ps_timeout;
+ int cur_power_level, power_level, dynamic_ps_timeout;
int max_sleep_period;
u16 listen_interval;
--- a/net/mac80211/cfg.c
+++ b/net/mac80211/cfg.c
@@ -1956,7 +1956,7 @@ static int ieee80211_get_tx_power(struct
{
struct ieee80211_local *local = wiphy_priv(wiphy);
- *dbm = local->hw.conf.power_level;
+ *dbm = local->hw.conf.cur_power_level;
return 0;
}
--- a/net/mac80211/main.c
+++ b/net/mac80211/main.c
@@ -167,6 +167,7 @@ int ieee80211_hw_config(struct ieee80211
if (local->hw.conf.power_level != power) {
changed |= IEEE80211_CONF_CHANGE_POWER;
+ local->hw.conf.cur_power_level = power;
local->hw.conf.power_level = power;
}