diff mbox series

[v2] rtw88: coex: set 4 slot TDMA for BT link and WL busy

Message ID 20210112021135.3823-1-pkshih@realtek.com
State New
Headers show
Series [v2] rtw88: coex: set 4 slot TDMA for BT link and WL busy | expand

Commit Message

Ping-Ke Shih Jan. 12, 2021, 2:11 a.m. UTC
From: Ching-Te Ku <ku920601@realtek.com>

To protect both of WL/BT performance while BT is under re-link state.
4-slot mode TDMA can make the re-link more sensitive and mitigate the WL
throughput drop.

Signed-off-by: Ching-Te Ku <ku920601@realtek.com>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
---
v2: fix "From" who should be Ching-Te instead.
---
 drivers/net/wireless/realtek/rtw88/coex.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Comments

Kalle Valo Jan. 14, 2021, 5:27 p.m. UTC | #1
Ping-Ke Shih <pkshih@realtek.com> wrote:

> From: Ching-Te Ku <ku920601@realtek.com>

> 

> To protect both of WL/BT performance while BT is under re-link state.

> 4-slot mode TDMA can make the re-link more sensitive and mitigate the WL

> throughput drop.

> 

> Signed-off-by: Ching-Te Ku <ku920601@realtek.com>

> Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>


Patch applied to wireless-drivers-next.git, thanks.

5f782c11569d rtw88: coex: set 4 slot TDMA for BT link and WL busy

-- 
https://patchwork.kernel.org/project/linux-wireless/patch/20210112021135.3823-1-pkshih@realtek.com/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
diff mbox series

Patch

diff --git a/drivers/net/wireless/realtek/rtw88/coex.c b/drivers/net/wireless/realtek/rtw88/coex.c
index 24530cafcba7..ea2be1e25065 100644
--- a/drivers/net/wireless/realtek/rtw88/coex.c
+++ b/drivers/net/wireless/realtek/rtw88/coex.c
@@ -1607,6 +1607,7 @@  static void rtw_coex_action_bt_relink(struct rtw_dev *rtwdev)
 	struct rtw_efuse *efuse = &rtwdev->efuse;
 	struct rtw_chip_info *chip = rtwdev->chip;
 	u8 table_case, tdma_case;
+	u32 slot_type = 0;
 
 	rtw_dbg(rtwdev, RTW_DBG_COEX, "[BTCoex], %s()\n", __func__);
 
@@ -1618,6 +1619,7 @@  static void rtw_coex_action_bt_relink(struct rtw_dev *rtwdev)
 			table_case = 26;
 			if (coex_stat->bt_hid_exist &&
 			    coex_stat->bt_profile_num == 1) {
+				slot_type = TDMA_4SLOT;
 				tdma_case = 20;
 			} else {
 				tdma_case = 20;
@@ -1635,7 +1637,7 @@  static void rtw_coex_action_bt_relink(struct rtw_dev *rtwdev)
 	}
 
 	rtw_coex_table(rtwdev, false, table_case);
-	rtw_coex_tdma(rtwdev, false, tdma_case);
+	rtw_coex_tdma(rtwdev, false, tdma_case | slot_type);
 }
 
 static void rtw_coex_action_bt_idle(struct rtw_dev *rtwdev)