rtw88: 8822c: Enable interrupt migration
authorTsang-Shian Lin <thlin@realtek.com>
Mon, 9 Sep 2019 07:16:06 +0000 (15:16 +0800)
committerKalle Valo <kvalo@codeaurora.org>
Fri, 13 Sep 2019 15:03:17 +0000 (18:03 +0300)
Enable 8822C Tx/Rx interrupt migration.
In some platforms, performance test may cause heavy cpu loading and get
bad results. Interrupt migration can decrease the amount of interrupts,
and lower cpu loading.

Signed-off-by: Tsang-Shian Lin <thlin@realtek.com>
Signed-off-by: Yan-Hsuan Chuang <yhchuang@realtek.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/realtek/rtw88/reg.h
drivers/net/wireless/realtek/rtw88/rtw8822c.c

index 0bd0717baa8be60674eaefc937e4a39fc3e3ea32..78ad053a8bf094e676103b4e7c17adea89b83763 100644 (file)
 #define REG_H2C_READ_ADDR      0x024C
 #define REG_H2C_INFO           0x0254
 
+#define REG_INT_MIG            0x0304
+
 #define REG_FWHW_TXQ_CTRL      0x0420
 #define BIT_EN_BCNQ_DL         BIT(22)
 #define BIT_EN_WR_FREE_TAIL    BIT(20)
index b072d432e1e2892578db65bc212af58cece9259e..e11bbc37120ac73e893f8cc4ce28abc54f3c087d 100644 (file)
@@ -1114,6 +1114,7 @@ static void rtw8822c_phy_set_param(struct rtw_dev *rtwdev)
 #define WLAN_MAC_OPT_NORM_FUNC1                0x98
 #define WLAN_MAC_OPT_LB_FUNC1          0x80
 #define WLAN_MAC_OPT_FUNC2             0x30810041
+#define WLAN_MAC_INT_MIG_CFG           0x33330000
 
 #define WLAN_SIFS_CFG  (WLAN_SIFS_CCK_CONT_TX | \
                        (WLAN_SIFS_OFDM_CONT_TX << BIT_SHIFT_SIFS_OFDM_CTX) | \
@@ -1251,6 +1252,9 @@ static int rtw8822c_mac_init(struct rtw_dev *rtwdev)
        value16 = BIT_SET_RXPSF_ERRTHR(value16, 0x07);
        rtw_write16(rtwdev, REG_RXPSF_CTRL, value16);
 
+       /* Interrupt migration configuration */
+       rtw_write32(rtwdev, REG_INT_MIG, WLAN_MAC_INT_MIG_CFG);
+
        return 0;
 }