ソースを参照

mac80211: remove user_power_level from driver API

I missed this during review of "mac80211: Fix tx power setting",
the user_power_level shouldn't be available to the driver but
rather be an internal value used to calculate the value for the
driver.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Cc: Vasanthakumar Thiagarajan <vasanth@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Johannes Berg 16 年 前
コミット
2bf30fabad
4 ファイル変更5 行追加5 行削除
  1. 0 2
      include/net/mac80211.h
  2. 2 0
      net/mac80211/ieee80211_i.h
  3. 2 2
      net/mac80211/main.c
  4. 1 1
      net/mac80211/wext.c

+ 0 - 2
include/net/mac80211.h

@@ -546,7 +546,6 @@ enum ieee80211_conf_changed {
  * @listen_interval: listen interval in units of beacon interval
  * @flags: configuration flags defined above
  * @power_level: requested transmit power (in dBm)
- * @user_power_level: User configured transmit power (in dBm)
  * @channel: the channel to tune to
  * @ht: the HT configuration for the device
  * @long_frame_max_tx_count: Maximum number of transmissions for a "long" frame
@@ -560,7 +559,6 @@ struct ieee80211_conf {
 	int beacon_int;
 	u32 flags;
 	int power_level;
-	int user_power_level;
 
 	u16 listen_interval;
 	bool radio_enabled;

+ 2 - 0
net/mac80211/ieee80211_i.h

@@ -705,6 +705,8 @@ struct ieee80211_local {
 	struct work_struct dynamic_ps_disable_work;
 	struct timer_list dynamic_ps_timer;
 
+	int user_power_level; /* in dBm */
+
 #ifdef CONFIG_MAC80211_DEBUGFS
 	struct local_debugfsdentries {
 		struct dentry *rcdir;

+ 2 - 2
net/mac80211/main.c

@@ -214,10 +214,10 @@ int ieee80211_hw_config(struct ieee80211_local *local, u32 changed)
 		changed |= IEEE80211_CONF_CHANGE_CHANNEL;
 	}
 
-	if (!local->hw.conf.user_power_level)
+	if (!local->user_power_level)
 		power = chan->max_power;
 	else
-		power = min(chan->max_power, local->hw.conf.user_power_level);
+		power = min(chan->max_power, local->user_power_level);
 	if (local->hw.conf.power_level != power) {
 		changed |= IEEE80211_CONF_CHANGE_POWER;
 		local->hw.conf.power_level = power;

+ 1 - 1
net/mac80211/wext.c

@@ -551,7 +551,7 @@ static int ieee80211_ioctl_siwtxpower(struct net_device *dev,
 	else /* Automatic power level setting */
 		new_power_level = chan->max_power;
 
-	local->hw.conf.user_power_level = new_power_level;
+	local->user_power_level = new_power_level;
 	if (local->hw.conf.power_level != new_power_level)
 		reconf_flags |= IEEE80211_CONF_CHANGE_POWER;