32 lines
998 B
Diff
32 lines
998 B
Diff
|
From: Felix Fietkau <nbd@openwrt.org>
|
||
|
Date: Wed, 22 Oct 2014 18:16:14 +0200
|
||
|
Subject: [PATCH] ath9k_common: always update value in
|
||
|
ath9k_cmn_update_txpow
|
||
|
|
||
|
In some cases the limit may be the same as reg->power_limit, but the
|
||
|
actual value that the hardware uses is not up to date. In that case, a
|
||
|
wrong value for current tx power is tracked internally.
|
||
|
Fix this by unconditionally updating it.
|
||
|
|
||
|
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
|
||
|
---
|
||
|
|
||
|
--- a/drivers/net/wireless/ath/ath9k/common.c
|
||
|
+++ b/drivers/net/wireless/ath/ath9k/common.c
|
||
|
@@ -368,11 +368,11 @@ void ath9k_cmn_update_txpow(struct ath_h
|
||
|
{
|
||
|
struct ath_regulatory *reg = ath9k_hw_regulatory(ah);
|
||
|
|
||
|
- if (reg->power_limit != new_txpow) {
|
||
|
+ if (reg->power_limit != new_txpow)
|
||
|
ath9k_hw_set_txpowerlimit(ah, new_txpow, false);
|
||
|
- /* read back in case value is clamped */
|
||
|
- *txpower = reg->max_power_level;
|
||
|
- }
|
||
|
+
|
||
|
+ /* read back in case value is clamped */
|
||
|
+ *txpower = reg->max_power_level;
|
||
|
}
|
||
|
EXPORT_SYMBOL(ath9k_cmn_update_txpow);
|
||
|
|