mirror of https://gitee.com/openkylin/linux.git
ath9k: Setup MCI statistics properly
Use a subroutine to enable MCI debug statistics if it is present in the global configuration. Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
parent
d808ecd874
commit
4d9f7c68b7
|
@ -821,6 +821,25 @@ static void ar9003_mci_osla_setup(struct ath_hw *ah, bool enable)
|
||||||
AR_BTCOEX_CTRL_ONE_STEP_LOOK_AHEAD_EN, 1);
|
AR_BTCOEX_CTRL_ONE_STEP_LOOK_AHEAD_EN, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void ar9003_mci_stat_setup(struct ath_hw *ah)
|
||||||
|
{
|
||||||
|
struct ath9k_hw_mci *mci = &ah->btcoex_hw.mci;
|
||||||
|
|
||||||
|
if (!AR_SREV_9565(ah))
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (mci->config & ATH_MCI_CONFIG_MCI_STAT_DBG) {
|
||||||
|
REG_RMW_FIELD(ah, AR_MCI_DBG_CNT_CTRL,
|
||||||
|
AR_MCI_DBG_CNT_CTRL_ENABLE, 1);
|
||||||
|
REG_RMW_FIELD(ah, AR_MCI_DBG_CNT_CTRL,
|
||||||
|
AR_MCI_DBG_CNT_CTRL_BT_LINKID,
|
||||||
|
MCI_STAT_ALL_BT_LINKID);
|
||||||
|
} else {
|
||||||
|
REG_RMW_FIELD(ah, AR_MCI_DBG_CNT_CTRL,
|
||||||
|
AR_MCI_DBG_CNT_CTRL_ENABLE, 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static void ar9003_mci_set_btcoex_ctrl_9565_1ANT(struct ath_hw *ah)
|
static void ar9003_mci_set_btcoex_ctrl_9565_1ANT(struct ath_hw *ah)
|
||||||
{
|
{
|
||||||
u32 regval;
|
u32 regval;
|
||||||
|
@ -984,10 +1003,8 @@ int ar9003_mci_reset(struct ath_hw *ah, bool en_int, bool is_2g,
|
||||||
|
|
||||||
mci->ready = true;
|
mci->ready = true;
|
||||||
ar9003_mci_prep_interface(ah);
|
ar9003_mci_prep_interface(ah);
|
||||||
|
ar9003_mci_stat_setup(ah);
|
||||||
|
|
||||||
if (AR_SREV_9565(ah))
|
|
||||||
REG_RMW_FIELD(ah, AR_MCI_DBG_CNT_CTRL,
|
|
||||||
AR_MCI_DBG_CNT_CTRL_ENABLE, 0);
|
|
||||||
if (en_int)
|
if (en_int)
|
||||||
ar9003_mci_enable_interrupt(ah);
|
ar9003_mci_enable_interrupt(ah);
|
||||||
|
|
||||||
|
|
|
@ -265,9 +265,14 @@
|
||||||
#define AR_MCI_MISC 0x1a74
|
#define AR_MCI_MISC 0x1a74
|
||||||
#define AR_MCI_MISC_HW_FIX_EN 0x00000001
|
#define AR_MCI_MISC_HW_FIX_EN 0x00000001
|
||||||
#define AR_MCI_MISC_HW_FIX_EN_S 0
|
#define AR_MCI_MISC_HW_FIX_EN_S 0
|
||||||
|
|
||||||
#define AR_MCI_DBG_CNT_CTRL 0x1a78
|
#define AR_MCI_DBG_CNT_CTRL 0x1a78
|
||||||
#define AR_MCI_DBG_CNT_CTRL_ENABLE 0x00000001
|
#define AR_MCI_DBG_CNT_CTRL_ENABLE 0x00000001
|
||||||
#define AR_MCI_DBG_CNT_CTRL_ENABLE_S 0
|
#define AR_MCI_DBG_CNT_CTRL_ENABLE_S 0
|
||||||
|
#define AR_MCI_DBG_CNT_CTRL_BT_LINKID 0x000007f8
|
||||||
|
#define AR_MCI_DBG_CNT_CTRL_BT_LINKID_S 3
|
||||||
|
|
||||||
|
#define MCI_STAT_ALL_BT_LINKID 0xffff
|
||||||
|
|
||||||
#define AR_MCI_INTERRUPT_DEFAULT (AR_MCI_INTERRUPT_SW_MSG_DONE | \
|
#define AR_MCI_INTERRUPT_DEFAULT (AR_MCI_INTERRUPT_SW_MSG_DONE | \
|
||||||
AR_MCI_INTERRUPT_RX_INVALID_HDR | \
|
AR_MCI_INTERRUPT_RX_INVALID_HDR | \
|
||||||
|
|
Loading…
Reference in New Issue