diff options
author | Vasanthakumar Thiagarajan <vasanth@atheros.com> | 2010-12-06 07:27:48 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-12-07 16:34:56 -0500 |
commit | 9936e65fae6d95c2acc2438c60a8f4908130530e (patch) | |
tree | 672db50364c1ae7e35cf7981b8a8ad1fd3dc0998 /drivers/net/wireless/ath | |
parent | d9a2545ac713e26ab8c8eee741d2da1626cebd6e (diff) |
ath9k_hw: Configure xpa bias level for AR9485
Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/ar9003_eeprom.c | 12 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath9k/ar9003_phy.h | 4 |
2 files changed, 13 insertions, 3 deletions
diff --git a/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c b/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c index 372831dc94bd..819b0a6cb83e 100644 --- a/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c +++ b/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c | |||
@@ -3450,9 +3450,15 @@ static s32 ar9003_hw_xpa_bias_level_get(struct ath_hw *ah, bool is2ghz) | |||
3450 | static void ar9003_hw_xpa_bias_level_apply(struct ath_hw *ah, bool is2ghz) | 3450 | static void ar9003_hw_xpa_bias_level_apply(struct ath_hw *ah, bool is2ghz) |
3451 | { | 3451 | { |
3452 | int bias = ar9003_hw_xpa_bias_level_get(ah, is2ghz); | 3452 | int bias = ar9003_hw_xpa_bias_level_get(ah, is2ghz); |
3453 | REG_RMW_FIELD(ah, AR_CH0_TOP, AR_CH0_TOP_XPABIASLVL, bias); | 3453 | |
3454 | REG_RMW_FIELD(ah, AR_CH0_THERM, AR_CH0_THERM_XPABIASLVL_MSB, bias >> 2); | 3454 | if (AR_SREV_9485(ah)) |
3455 | REG_RMW_FIELD(ah, AR_CH0_THERM, AR_CH0_THERM_XPASHORT2GND, 1); | 3455 | REG_RMW_FIELD(ah, AR_CH0_TOP2, AR_CH0_TOP2_XPABIASLVL, bias); |
3456 | else { | ||
3457 | REG_RMW_FIELD(ah, AR_CH0_TOP, AR_CH0_TOP_XPABIASLVL, bias); | ||
3458 | REG_RMW_FIELD(ah, AR_CH0_THERM, AR_CH0_THERM_XPABIASLVL_MSB, | ||
3459 | bias >> 2); | ||
3460 | REG_RMW_FIELD(ah, AR_CH0_THERM, AR_CH0_THERM_XPASHORT2GND, 1); | ||
3461 | } | ||
3456 | } | 3462 | } |
3457 | 3463 | ||
3458 | static u32 ar9003_hw_ant_ctrl_common_get(struct ath_hw *ah, bool is2ghz) | 3464 | static u32 ar9003_hw_ant_ctrl_common_get(struct ath_hw *ah, bool is2ghz) |
diff --git a/drivers/net/wireless/ath/ath9k/ar9003_phy.h b/drivers/net/wireless/ath/ath9k/ar9003_phy.h index 3394dfe52b42..b7720819872b 100644 --- a/drivers/net/wireless/ath/ath9k/ar9003_phy.h +++ b/drivers/net/wireless/ath/ath9k/ar9003_phy.h | |||
@@ -584,6 +584,10 @@ | |||
584 | #define AR_PHY_65NM_CH2_RXTX1 0x16900 | 584 | #define AR_PHY_65NM_CH2_RXTX1 0x16900 |
585 | #define AR_PHY_65NM_CH2_RXTX2 0x16904 | 585 | #define AR_PHY_65NM_CH2_RXTX2 0x16904 |
586 | 586 | ||
587 | #define AR_CH0_TOP2 (AR_SREV_9485(ah) ? 0x00016284 : 0x0001628c) | ||
588 | #define AR_CH0_TOP2_XPABIASLVL 0xf000 | ||
589 | #define AR_CH0_TOP2_XPABIASLVL_S 12 | ||
590 | |||
587 | #define AR_PHY_RX1DB_BIQUAD_LONG_SHIFT 0x00380000 | 591 | #define AR_PHY_RX1DB_BIQUAD_LONG_SHIFT 0x00380000 |
588 | #define AR_PHY_RX1DB_BIQUAD_LONG_SHIFT_S 19 | 592 | #define AR_PHY_RX1DB_BIQUAD_LONG_SHIFT_S 19 |
589 | #define AR_PHY_RX6DB_BIQUAD_LONG_SHIFT 0x00c00000 | 593 | #define AR_PHY_RX6DB_BIQUAD_LONG_SHIFT 0x00c00000 |