wifi: rtw89: coex: add WL_S0 hardware TX/RX mask to allow WL_S0 TX/RX during GNT_BT
authorChing-Te Ku <ku920601@realtek.com>
Tue, 20 Sep 2022 01:09:35 +0000 (09:09 +0800)
committerKalle Valo <kvalo@kernel.org>
Thu, 22 Sep 2022 06:11:44 +0000 (09:11 +0300)
WiFi/BT combo module could only have two antenna, namely WL_S0 and WL_S1.
WiFi can use two antenna to TX/RX 2SS data, and BT can share one of the
antenna. This patch is to allow WiFi to TX/RX 1SS data like ACK/RTS/CTS to
improve Wi-Fi performance while coexisting with Bluetooth.

Signed-off-by: Ching-Te Ku <ku920601@realtek.com>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20220920010939.12173-6-pkshih@realtek.com
drivers/net/wireless/realtek/rtw89/rtw8852a.c

index a2d0f2e..c6c92a2 100644 (file)
@@ -1843,6 +1843,9 @@ static void rtw8852a_btc_init_cfg(struct rtw89_dev *rtwdev)
                                      RF_PATH_A, BTC_BT_SS_GROUP, 0x5ff);
                rtw8852a_set_trx_mask(rtwdev,
                                      RF_PATH_B, BTC_BT_SS_GROUP, 0x5ff);
+               /* set path-A(S0) Tx/Rx no-mask if GNT_WL=0 && BT_S1=tx group */
+               rtw8852a_set_trx_mask(rtwdev,
+                                     RF_PATH_A, BTC_BT_TX_GROUP, 0x5ff);
        } else { /* set WL Tx stb if GNT_WL = 0 && BT_S1 = ss group for 3-ant */
                rtw8852a_set_trx_mask(rtwdev,
                                      RF_PATH_A, BTC_BT_SS_GROUP, 0x5df);