|
@@ -1013,7 +1013,8 @@ static bool ar9003_hw_init_cal(struct ath_hw *ah,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if (!(ah->enabled_cals & TX_IQ_CAL))
|
|
|
+ if ((IS_CHAN_HALF_RATE(chan) || IS_CHAN_QUARTER_RATE(chan)) ||
|
|
|
+ !(ah->enabled_cals & TX_IQ_CAL))
|
|
|
goto skip_tx_iqcal;
|
|
|
|
|
|
/* Do Tx IQ Calibration */
|
|
@@ -1040,12 +1041,10 @@ static bool ar9003_hw_init_cal(struct ath_hw *ah,
|
|
|
if (ath9k_hw_mci_is_enabled(ah) && IS_CHAN_2GHZ(chan) && run_agc_cal)
|
|
|
ar9003_mci_init_cal_req(ah, &is_reusable);
|
|
|
|
|
|
- if (!(IS_CHAN_HALF_RATE(chan) || IS_CHAN_QUARTER_RATE(chan))) {
|
|
|
- txiqcal_done = ar9003_hw_tx_iq_cal_run(ah);
|
|
|
- REG_WRITE(ah, AR_PHY_ACTIVE, AR_PHY_ACTIVE_DIS);
|
|
|
- udelay(5);
|
|
|
- REG_WRITE(ah, AR_PHY_ACTIVE, AR_PHY_ACTIVE_EN);
|
|
|
- }
|
|
|
+ txiqcal_done = ar9003_hw_tx_iq_cal_run(ah);
|
|
|
+ REG_WRITE(ah, AR_PHY_ACTIVE, AR_PHY_ACTIVE_DIS);
|
|
|
+ udelay(5);
|
|
|
+ REG_WRITE(ah, AR_PHY_ACTIVE, AR_PHY_ACTIVE_EN);
|
|
|
|
|
|
skip_tx_iqcal:
|
|
|
if (run_agc_cal || !(ah->ah_flags & AH_FASTCC)) {
|