mac80211: backport latest changes from trunk
[openwrt-10.03/.git] / package / mac80211 / patches / 550-mac80211_cur_txpower.patch
diff --git a/package/mac80211/patches/550-mac80211_cur_txpower.patch b/package/mac80211/patches/550-mac80211_cur_txpower.patch
new file mode 100644 (file)
index 0000000..8e729c1
--- /dev/null
@@ -0,0 +1,32 @@
+--- a/include/net/mac80211.h
++++ b/include/net/mac80211.h
+@@ -779,7 +779,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
+@@ -1524,7 +1524,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
+@@ -210,6 +210,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;
+       }