diff options
author | Rajkumar Manoharan <rmanohar@qca.qualcomm.com> | 2012-10-15 15:29:51 +0530 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-10-29 15:19:29 -0400 |
commit | 6f37ff96d3bd2a53e68131a7c10ced933815b390 (patch) | |
tree | 7390a9096ffa8fe1c4584e5f4048941a9eca943f /drivers | |
parent | 2097fdd7ebdb1674aaf7343b7a1d6cc2758c1dff (diff) |
ath9k_hw: Fix max rx rate drop for AR9565
Whenever i_coff of IQ calibration is too high, AR9565 drops max
rx rate to MCS4. Skipping IQ update at this time can avoid this
problem for AR9565.
Signed-off-by: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/ar9003_calib.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath9k/ar9003_calib.c b/drivers/net/wireless/ath/ath9k/ar9003_calib.c index 84b558d126ca..162401f22f8c 100644 --- a/drivers/net/wireless/ath/ath9k/ar9003_calib.c +++ b/drivers/net/wireless/ath/ath9k/ar9003_calib.c @@ -276,6 +276,11 @@ static void ar9003_hw_iqcalibrate(struct ath_hw *ah, u8 numChains) offset_array[i], REG_READ(ah, offset_array[i])); + if (AR_SREV_9565(ah) && + (iCoff == 63 || qCoff == 63 || + iCoff == -63 || qCoff == -63)) + return; + REG_RMW_FIELD(ah, offset_array[i], AR_PHY_RX_IQCAL_CORR_IQCORR_Q_I_COFF, iCoff); |