aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorBala Shanmugam <bkamatch@qca.qualcomm.com>2012-10-15 05:59:48 -0400
committerJohn W. Linville <linville@tuxdriver.com>2012-10-29 15:19:28 -0400
commitb55f6bb7c3f890c3d537516efa8746a4784c058d (patch)
tree4a6d014ff4736d882fe627516d2afac08ac24cac /drivers/net
parentd9575dad59de382dd1f1ddcaa6de38d9844691fe (diff)
ath9k: turn off RXIQ calibration while re-calibrating radio
TXIQ and RXIQ share the same data path to upload the measurement result, we should turn off RXIQ calibration while re-calibrating radio Signed-off-by: Bala Shanmugam <bkamatch@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/wireless/ath/ath9k/ar9003_mci.c6
-rw-r--r--drivers/net/wireless/ath/ath9k/ar9003_phy.h1
2 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath9k/ar9003_mci.c b/drivers/net/wireless/ath/ath9k/ar9003_mci.c
index b2b994147ae..c46d8f18d81 100644
--- a/drivers/net/wireless/ath/ath9k/ar9003_mci.c
+++ b/drivers/net/wireless/ath/ath9k/ar9003_mci.c
@@ -750,6 +750,9 @@ int ar9003_mci_end_reset(struct ath_hw *ah, struct ath9k_channel *chan,
750 750
751 mci_hw->bt_state = MCI_BT_AWAKE; 751 mci_hw->bt_state = MCI_BT_AWAKE;
752 752
753 REG_CLR_BIT(ah, AR_PHY_TIMING4,
754 1 << AR_PHY_TIMING_CONTROL4_DO_GAIN_DC_IQ_CAL_SHIFT);
755
753 if (caldata) { 756 if (caldata) {
754 caldata->done_txiqcal_once = false; 757 caldata->done_txiqcal_once = false;
755 caldata->done_txclcal_once = false; 758 caldata->done_txclcal_once = false;
@@ -759,6 +762,9 @@ int ar9003_mci_end_reset(struct ath_hw *ah, struct ath9k_channel *chan,
759 if (!ath9k_hw_init_cal(ah, chan)) 762 if (!ath9k_hw_init_cal(ah, chan))
760 return -EIO; 763 return -EIO;
761 764
765 REG_SET_BIT(ah, AR_PHY_TIMING4,
766 1 << AR_PHY_TIMING_CONTROL4_DO_GAIN_DC_IQ_CAL_SHIFT);
767
762exit: 768exit:
763 ar9003_mci_enable_interrupt(ah); 769 ar9003_mci_enable_interrupt(ah);
764 return 0; 770 return 0;
diff --git a/drivers/net/wireless/ath/ath9k/ar9003_phy.h b/drivers/net/wireless/ath/ath9k/ar9003_phy.h
index 9a48e3d2f23..8f585233a78 100644
--- a/drivers/net/wireless/ath/ath9k/ar9003_phy.h
+++ b/drivers/net/wireless/ath/ath9k/ar9003_phy.h
@@ -32,6 +32,7 @@
32#define AR_PHY_SPUR_REG (AR_CHAN_BASE + 0x1c) 32#define AR_PHY_SPUR_REG (AR_CHAN_BASE + 0x1c)
33#define AR_PHY_RX_IQCAL_CORR_B0 (AR_CHAN_BASE + 0xdc) 33#define AR_PHY_RX_IQCAL_CORR_B0 (AR_CHAN_BASE + 0xdc)
34#define AR_PHY_TX_IQCAL_CONTROL_3 (AR_CHAN_BASE + 0xb0) 34#define AR_PHY_TX_IQCAL_CONTROL_3 (AR_CHAN_BASE + 0xb0)
35#define AR_PHY_TIMING_CONTROL4_DO_GAIN_DC_IQ_CAL_SHIFT 16
35 36
36#define AR_PHY_TIMING11_SPUR_FREQ_SD 0x3FF00000 37#define AR_PHY_TIMING11_SPUR_FREQ_SD 0x3FF00000
37#define AR_PHY_TIMING11_SPUR_FREQ_SD_S 20 38#define AR_PHY_TIMING11_SPUR_FREQ_SD_S 20