Commit 2b5facfe authored by Luis R. Rodriguez's avatar Luis R. Rodriguez Committed by John W. Linville

ath9k_hw: move the AR9280 OLC temp comp to its own helper

Signed-off-by: default avatarLuis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 80b99932
...@@ -700,40 +700,44 @@ static void ar9287_hw_olc_temp_compensation(struct ath_hw *ah) ...@@ -700,40 +700,44 @@ static void ar9287_hw_olc_temp_compensation(struct ath_hw *ah)
} }
} }
static void ath9k_olc_temp_compensation(struct ath_hw *ah) static void ar9280_hw_olc_temp_compensation(struct ath_hw *ah)
{ {
u32 rddata, i; u32 rddata, i;
int delta, currPDADC, regval; int delta, currPDADC, regval;
if (OLC_FOR_AR9287_10_LATER) { rddata = REG_READ(ah, AR_PHY_TX_PWRCTRL4);
ar9287_hw_olc_temp_compensation(ah); currPDADC = MS(rddata, AR_PHY_TX_PWRCTRL_PD_AVG_OUT);
} else {
rddata = REG_READ(ah, AR_PHY_TX_PWRCTRL4);
currPDADC = MS(rddata, AR_PHY_TX_PWRCTRL_PD_AVG_OUT);
if (ah->initPDADC == 0 || currPDADC == 0) if (ah->initPDADC == 0 || currPDADC == 0)
return; return;
if (ah->eep_ops->get_eeprom(ah, EEP_DAC_HPWR_5G)) if (ah->eep_ops->get_eeprom(ah, EEP_DAC_HPWR_5G))
delta = (currPDADC - ah->initPDADC + 4) / 8; delta = (currPDADC - ah->initPDADC + 4) / 8;
else else
delta = (currPDADC - ah->initPDADC + 5) / 10; delta = (currPDADC - ah->initPDADC + 5) / 10;
if (delta != ah->PDADCdelta) { if (delta != ah->PDADCdelta) {
ah->PDADCdelta = delta; ah->PDADCdelta = delta;
for (i = 1; i < AR9280_TX_GAIN_TABLE_SIZE; i++) { for (i = 1; i < AR9280_TX_GAIN_TABLE_SIZE; i++) {
regval = ah->originalGain[i] - delta; regval = ah->originalGain[i] - delta;
if (regval < 0) if (regval < 0)
regval = 0; regval = 0;
REG_RMW_FIELD(ah, REG_RMW_FIELD(ah,
AR_PHY_TX_GAIN_TBL1 + i * 4, AR_PHY_TX_GAIN_TBL1 + i * 4,
AR_PHY_TX_GAIN, regval); AR_PHY_TX_GAIN, regval);
}
} }
} }
} }
static void ath9k_olc_temp_compensation(struct ath_hw *ah)
{
if (OLC_FOR_AR9287_10_LATER)
ar9287_hw_olc_temp_compensation(ah);
else
ar9280_hw_olc_temp_compensation(ah);
}
static void ath9k_hw_9271_pa_cal(struct ath_hw *ah, bool is_reset) static void ath9k_hw_9271_pa_cal(struct ath_hw *ah, bool is_reset)
{ {
u32 regVal; u32 regVal;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment