ath10k: respect power_level values
This allows txpower limits other than regulatory to be applied (e.g. user txpower limit provided via iw/nl80211). Signed-off-by: Michal Kazior <michal.kazior@tieto.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
This commit is contained in:
parent
02256930d9
commit
5474efe802
@ -2013,6 +2013,7 @@ static int ath10k_config(struct ieee80211_hw *hw, u32 changed)
|
||||
struct ath10k *ar = hw->priv;
|
||||
struct ieee80211_conf *conf = &hw->conf;
|
||||
int ret = 0;
|
||||
u32 param;
|
||||
|
||||
mutex_lock(&ar->conf_mutex);
|
||||
|
||||
@ -2024,6 +2025,25 @@ static int ath10k_config(struct ieee80211_hw *hw, u32 changed)
|
||||
spin_unlock_bh(&ar->data_lock);
|
||||
}
|
||||
|
||||
if (changed & IEEE80211_CONF_CHANGE_POWER) {
|
||||
ath10k_dbg(ATH10K_DBG_MAC, "mac config power %d\n",
|
||||
hw->conf.power_level);
|
||||
|
||||
param = ar->wmi.pdev_param->txpower_limit2g;
|
||||
ret = ath10k_wmi_pdev_set_param(ar, param,
|
||||
hw->conf.power_level * 2);
|
||||
if (ret)
|
||||
ath10k_warn("mac failed to set 2g txpower %d (%d)\n",
|
||||
hw->conf.power_level, ret);
|
||||
|
||||
param = ar->wmi.pdev_param->txpower_limit5g;
|
||||
ret = ath10k_wmi_pdev_set_param(ar, param,
|
||||
hw->conf.power_level * 2);
|
||||
if (ret)
|
||||
ath10k_warn("mac failed to set 5g txpower %d (%d)\n",
|
||||
hw->conf.power_level, ret);
|
||||
}
|
||||
|
||||
if (changed & IEEE80211_CONF_CHANGE_PS)
|
||||
ath10k_config_ps(ar);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user