aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNick Kossifidis <mickflemm@gmail.com>2010-11-23 14:02:20 -0500
committerJohn W. Linville <linville@tuxdriver.com>2010-11-30 13:52:34 -0500
commit325089ab5847f5c1e43f42bb90d32f981867c4c1 (patch)
tree6bdd3b750b17f55d4b6ee3ed01a61058fc17b7a5
parentc297560206adf0cda8ce38ef9b20b0a025754c4d (diff)
ath5k: Small cleanup on tweak_initvals
* Now that we properly set rx/tx latencies for AR5311 remove that old buggy part of code left inside ath5k_hw_tweak_initval_settings that was never executed (you can't have an RF5112 radio on a mac older than AR5212). Also use a magic value for 5311 PHY_SCAL value. Signed-off-by: Nick Kossifidis <mickflemm@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/ath/ath5k/reg.h1
-rw-r--r--drivers/net/wireless/ath/ath5k/reset.c18
2 files changed, 4 insertions, 15 deletions
diff --git a/drivers/net/wireless/ath/ath5k/reg.h b/drivers/net/wireless/ath/ath5k/reg.h
index ca79ecd832f..4d610617af3 100644
--- a/drivers/net/wireless/ath/ath5k/reg.h
+++ b/drivers/net/wireless/ath/ath5k/reg.h
@@ -2058,6 +2058,7 @@
2058 2058
2059#define AR5K_PHY_SCAL 0x9878 2059#define AR5K_PHY_SCAL 0x9878
2060#define AR5K_PHY_SCAL_32MHZ 0x0000000e 2060#define AR5K_PHY_SCAL_32MHZ 0x0000000e
2061#define AR5K_PHY_SCAL_32MHZ_5311 0x00000008
2061#define AR5K_PHY_SCAL_32MHZ_2417 0x0000000a 2062#define AR5K_PHY_SCAL_32MHZ_2417 0x0000000a
2062#define AR5K_PHY_SCAL_32MHZ_HB63 0x00000032 2063#define AR5K_PHY_SCAL_32MHZ_HB63 0x00000032
2063 2064
diff --git a/drivers/net/wireless/ath/ath5k/reset.c b/drivers/net/wireless/ath/ath5k/reset.c
index 7db984ce90f..c9e5bad7cff 100644
--- a/drivers/net/wireless/ath/ath5k/reset.c
+++ b/drivers/net/wireless/ath/ath5k/reset.c
@@ -730,24 +730,12 @@ static void ath5k_hw_tweak_initval_settings(struct ath5k_hw *ah,
730 ath5k_hw_reg_write(ah, data, AR5K_PHY_FRAME_CTL); 730 ath5k_hw_reg_write(ah, data, AR5K_PHY_FRAME_CTL);
731 } 731 }
732 732
733 if ((ah->ah_radio == AR5K_RF5112) && 733 if (ah->ah_mac_srev < AR5K_SREV_AR5211) {
734 (ah->ah_mac_srev < AR5K_SREV_AR5211)) {
735 u32 usec_reg;
736 /* 5311 has different tx/rx latency masks
737 * from 5211, since we deal 5311 the same
738 * as 5211 when setting initvals, shift
739 * values here to their proper locations */
740 usec_reg = ath5k_hw_reg_read(ah, AR5K_USEC_5211);
741 ath5k_hw_reg_write(ah, usec_reg & (AR5K_USEC_1 |
742 AR5K_USEC_32 |
743 AR5K_USEC_TX_LATENCY_5211 |
744 AR5K_REG_SM(29,
745 AR5K_USEC_RX_LATENCY_5210)),
746 AR5K_USEC_5211);
747 /* Clear QCU/DCU clock gating register */ 734 /* Clear QCU/DCU clock gating register */
748 ath5k_hw_reg_write(ah, 0, AR5K_QCUDCU_CLKGT); 735 ath5k_hw_reg_write(ah, 0, AR5K_QCUDCU_CLKGT);
749 /* Set DAC/ADC delays */ 736 /* Set DAC/ADC delays */
750 ath5k_hw_reg_write(ah, 0x08, AR5K_PHY_SCAL); 737 ath5k_hw_reg_write(ah, AR5K_PHY_SCAL_32MHZ_5311,
738 AR5K_PHY_SCAL);
751 /* Enable PCU FIFO corruption ECO */ 739 /* Enable PCU FIFO corruption ECO */
752 AR5K_REG_ENABLE_BITS(ah, AR5K_DIAG_SW_5211, 740 AR5K_REG_ENABLE_BITS(ah, AR5K_DIAG_SW_5211,
753 AR5K_DIAG_SW_ECO_ENABLE); 741 AR5K_DIAG_SW_ECO_ENABLE);