Skip to content

Commit f16c40a

Browse files
Po-Hao HuangPing-Ke Shih
Po-Hao Huang
authored and
Ping-Ke Shih
committed
wifi: rtw89: Fix TX fail with A2DP after scanning
There might be some racing between BT and WiFi after scan. Since one of the TX related register will be modified by both FW and rtw89_set_channel() in driver, which could cause Tx fail. Reorder the calling sequence to only notify coexistence mechanism after rtw89_set_channel() is called, so that there are no concurrent operations. Fixes: 5f499ce ("wifi: rtw89: pause/proceed MCC for ROC and HW scan") Signed-off-by: Po-Hao Huang <[email protected]> Signed-off-by: Ping-Ke Shih <[email protected]> Link: https://patch.msgid.link/[email protected]
1 parent 9dffa44 commit f16c40a

File tree

1 file changed

+2
-2
lines changed
  • drivers/net/wireless/realtek/rtw89

1 file changed

+2
-2
lines changed

drivers/net/wireless/realtek/rtw89/fw.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -6721,6 +6721,8 @@ void rtw89_hw_scan_complete(struct rtw89_dev *rtwdev,
67216721
if (!rtwvif_link)
67226722
return;
67236723

6724+
rtw89_chanctx_proceed(rtwdev);
6725+
67246726
rtwvif = rtwvif_link->rtwvif;
67256727

67266728
reg = rtw89_mac_reg_by_idx(rtwdev, mac->rx_fltr, rtwvif_link->mac_idx);
@@ -6738,8 +6740,6 @@ void rtw89_hw_scan_complete(struct rtw89_dev *rtwdev,
67386740
scan_info->last_chan_idx = 0;
67396741
scan_info->scanning_vif = NULL;
67406742
scan_info->abort = false;
6741-
6742-
rtw89_chanctx_proceed(rtwdev);
67436743
}
67446744

67456745
void rtw89_hw_scan_abort(struct rtw89_dev *rtwdev,

0 commit comments

Comments
 (0)