]> git.karo-electronics.de Git - linux-beck.git/commitdiff
ath9k: Fix MCI TX control
authorSujith Manoharan <c_manoha@qca.qualcomm.com>
Mon, 16 Feb 2015 05:19:57 +0000 (10:49 +0530)
committerKalle Valo <kvalo@codeaurora.org>
Tue, 3 Mar 2015 12:55:21 +0000 (14:55 +0200)
This patch makes sure that the antenna configuration
is used properly when setting AR_MCI_TX_CTRL.

Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/ath/ath9k/ar9003_mci.c
drivers/net/wireless/ath/ath9k/ar9003_mci.h

index 1a4852815458aa6654b36c45e2524b5a891f3253..aca9015079d62b6d54589d5fc7a5729c12186376 100644 (file)
@@ -973,8 +973,12 @@ int ar9003_mci_reset(struct ath_hw *ah, bool en_int, bool is_2g,
                  (SM(0xe801, AR_MCI_MSG_ATTRIBUTES_TABLE_INVALID_HDR) |
                   SM(0x0000, AR_MCI_MSG_ATTRIBUTES_TABLE_CHECKSUM)));
 
-       REG_CLR_BIT(ah, AR_MCI_TX_CTRL,
-                   AR_MCI_TX_CTRL_DISABLE_LNA_UPDATE);
+       if (MCI_ANT_ARCH_PA_LNA_SHARED(mci))
+               REG_CLR_BIT(ah, AR_MCI_TX_CTRL,
+                           AR_MCI_TX_CTRL_DISABLE_LNA_UPDATE);
+       else
+               REG_SET_BIT(ah, AR_MCI_TX_CTRL,
+                           AR_MCI_TX_CTRL_DISABLE_LNA_UPDATE);
 
        ar9003_mci_observation_set_up(ah);
 
index 6f305abd0b9fd2236981fa3a1aaf35aaf52fb027..174ebea5db6f09bae7837e04372a1fea2fbde140 100644 (file)
@@ -118,6 +118,10 @@ enum mci_gpm_coex_bt_update_flags_op {
 #define ATH_MCI_ANT_ARCH_2_ANT_PA_LNA_SHARED     0x03
 #define ATH_MCI_ANT_ARCH_3_ANT                   0x04
 
+#define MCI_ANT_ARCH_PA_LNA_SHARED(mci)                                        \
+       ((MS(mci->config, ATH_MCI_CONFIG_ANT_ARCH) == ATH_MCI_ANT_ARCH_1_ANT_PA_LNA_SHARED) || \
+        (MS(mci->config, ATH_MCI_CONFIG_ANT_ARCH) == ATH_MCI_ANT_ARCH_2_ANT_PA_LNA_SHARED))
+
 enum mci_message_header {              /* length of payload */
        MCI_LNA_CTRL     = 0x10,        /* len = 0 */
        MCI_CONT_NACK    = 0x20,        /* len = 0 */