summaryrefslogtreecommitdiffstats
path: root/package/mac80211/patches/530-mac80211_cur_txpower.patch
blob: 0fa6a229fd35119bee43784ffa318acb823c7c2b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
--- a/include/net/mac80211.h
+++ b/include/net/mac80211.h
@@ -816,7 +816,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
@@ -1677,7 +1677,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
@@ -208,6 +208,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;
 	}