2011-07-26 23:53:40 +03:00
|
|
|
--- a/include/net/mac80211.h
|
|
|
|
+++ b/include/net/mac80211.h
|
2012-09-08 14:10:54 +03:00
|
|
|
@@ -863,7 +863,7 @@ enum ieee80211_smps_mode {
|
2011-07-26 23:53:40 +03:00
|
|
|
*/
|
|
|
|
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
|
2012-09-08 14:10:54 +03:00
|
|
|
@@ -1969,7 +1969,7 @@ static int ieee80211_get_tx_power(struct
|
2011-07-26 23:53:40 +03:00
|
|
|
{
|
|
|
|
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
|
2012-05-30 04:01:06 +03:00
|
|
|
@@ -167,6 +167,7 @@ int ieee80211_hw_config(struct ieee80211
|
2011-07-26 23:53:40 +03:00
|
|
|
|
|
|
|
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;
|
|
|
|
}
|
|
|
|
|