mirror of https://gitee.com/openkylin/linux.git
ath9k_hw: Fix PAPRD retraining for AR9485
Retraining of PAPRD based on agc2_pwr is required for chips other than AR9485. Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
36d2943ba7
commit
d882d242e4
|
@ -965,9 +965,13 @@ EXPORT_SYMBOL(ar9003_paprd_init_table);
|
|||
bool ar9003_paprd_is_done(struct ath_hw *ah)
|
||||
{
|
||||
int paprd_done, agc2_pwr;
|
||||
|
||||
paprd_done = REG_READ_FIELD(ah, AR_PHY_PAPRD_TRAINER_STAT1,
|
||||
AR_PHY_PAPRD_TRAINER_STAT1_PAPRD_TRAIN_DONE);
|
||||
|
||||
if (AR_SREV_9485(ah))
|
||||
goto exit;
|
||||
|
||||
if (paprd_done == 0x1) {
|
||||
agc2_pwr = REG_READ_FIELD(ah, AR_PHY_PAPRD_TRAINER_STAT1,
|
||||
AR_PHY_PAPRD_TRAINER_STAT1_PAPRD_AGC2_PWR);
|
||||
|
@ -983,7 +987,7 @@ bool ar9003_paprd_is_done(struct ath_hw *ah)
|
|||
if (agc2_pwr <= PAPRD_IDEAL_AGC2_PWR_RANGE)
|
||||
paprd_done = 0;
|
||||
}
|
||||
|
||||
exit:
|
||||
return !!paprd_done;
|
||||
}
|
||||
EXPORT_SYMBOL(ar9003_paprd_is_done);
|
||||
|
|
Loading…
Reference in New Issue