ath9k: fix invalid noisefloor measurement values in ht20 mode
SVN-Revision: 22361
This commit is contained in:
parent
90a71cd326
commit
f4331b40a4
1 changed files with 46 additions and 0 deletions
46
package/mac80211/patches/530-ath9k_nf_fix.patch
Normal file
46
package/mac80211/patches/530-ath9k_nf_fix.patch
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
--- a/drivers/net/wireless/ath/ath9k/ar5008_phy.c
|
||||||
|
+++ b/drivers/net/wireless/ath/ath9k/ar5008_phy.c
|
||||||
|
@@ -1508,6 +1508,9 @@ static void ar5008_hw_do_getnf(struct at
|
||||||
|
nf = MS(REG_READ(ah, AR_PHY_CH2_CCA), AR_PHY_CH2_MINCCA_PWR);
|
||||||
|
nfarray[2] = sign_extend(nf, 9);
|
||||||
|
|
||||||
|
+ if (!IS_CHAN_HT40(ah->curchan))
|
||||||
|
+ return;
|
||||||
|
+
|
||||||
|
nf = MS(REG_READ(ah, AR_PHY_EXT_CCA), AR_PHY_EXT_MINCCA_PWR);
|
||||||
|
nfarray[3] = sign_extend(nf, 9);
|
||||||
|
|
||||||
|
--- a/drivers/net/wireless/ath/ath9k/ar9002_phy.c
|
||||||
|
+++ b/drivers/net/wireless/ath/ath9k/ar9002_phy.c
|
||||||
|
@@ -477,7 +477,8 @@ static void ar9002_hw_do_getnf(struct at
|
||||||
|
nfarray[0] = sign_extend(nf, 9);
|
||||||
|
|
||||||
|
nf = MS(REG_READ(ah, AR_PHY_EXT_CCA), AR9280_PHY_EXT_MINCCA_PWR);
|
||||||
|
- nfarray[3] = sign_extend(nf, 9);
|
||||||
|
+ if (IS_CHAN_HT40(ah->curchan))
|
||||||
|
+ nfarray[3] = sign_extend(nf, 9);
|
||||||
|
|
||||||
|
if (AR_SREV_9285(ah) || AR_SREV_9271(ah))
|
||||||
|
return;
|
||||||
|
@@ -486,7 +487,8 @@ static void ar9002_hw_do_getnf(struct at
|
||||||
|
nfarray[1] = sign_extend(nf, 9);
|
||||||
|
|
||||||
|
nf = MS(REG_READ(ah, AR_PHY_CH1_EXT_CCA), AR9280_PHY_CH1_EXT_MINCCA_PWR);
|
||||||
|
- nfarray[4] = sign_extend(nf, 9);
|
||||||
|
+ if (IS_CHAN_HT40(ah->curchan))
|
||||||
|
+ nfarray[4] = sign_extend(nf, 9);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void ar9002_hw_set_nf_limits(struct ath_hw *ah)
|
||||||
|
--- a/drivers/net/wireless/ath/ath9k/ar9003_phy.c
|
||||||
|
+++ b/drivers/net/wireless/ath/ath9k/ar9003_phy.c
|
||||||
|
@@ -1029,6 +1029,9 @@ static void ar9003_hw_do_getnf(struct at
|
||||||
|
nf = MS(REG_READ(ah, AR_PHY_CCA_2), AR_PHY_CH2_MINCCA_PWR);
|
||||||
|
nfarray[2] = sign_extend(nf, 9);
|
||||||
|
|
||||||
|
+ if (!IS_CHAN_HT40(ah->curchan))
|
||||||
|
+ return;
|
||||||
|
+
|
||||||
|
nf = MS(REG_READ(ah, AR_PHY_EXT_CCA), AR_PHY_EXT_MINCCA_PWR);
|
||||||
|
nfarray[3] = sign_extend(nf, 9);
|
||||||
|
|
Loading…
Reference in a new issue