mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-11-03 14:34:27 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			33 lines
		
	
	
		
			849 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			849 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
--- 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
 | 
						|
@@ -1739,7 +1739,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
 | 
						|
@@ -168,6 +168,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;
 | 
						|
 	}
 | 
						|
 
 |