Skip to content

Commit 581fac1

Browse files
Po-Hao Huangopsiff
authored andcommitted
wifi: rtw89: Fix TX fail with A2DP after scanning
mainline inclusion from mainline-v6.13-rc1 category: bugfix 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 <phhuang@realtek.com> Signed-off-by: Ping-Ke Shih <pkshih@realtek.com> Link: https://patch.msgid.link/20241021063219.22613-1-pkshih@realtek.com (cherry picked from commit f16c40a)
1 parent a5331bd commit 581fac1

File tree

1 file changed

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

1 file changed

+2
-3
lines changed

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

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6089,11 +6089,12 @@ void rtw89_hw_scan_complete(struct rtw89_dev *rtwdev, struct ieee80211_vif *vif,
60896089
if (!vif)
60906090
return;
60916091

6092+
rtw89_chanctx_proceed(rtwdev);
6093+
60926094
rtw89_write32_mask(rtwdev,
60936095
rtw89_mac_reg_by_idx(rtwdev, mac->rx_fltr, RTW89_MAC_0),
60946096
B_AX_RX_FLTR_CFG_MASK,
60956097
rtwdev->hal.rx_fltr);
6096-
60976098
rtw89_core_scan_complete(rtwdev, vif, true);
60986099
ieee80211_scan_completed(rtwdev->hw, &info);
60996100
ieee80211_wake_queues(rtwdev->hw);
@@ -6106,8 +6107,6 @@ void rtw89_hw_scan_complete(struct rtw89_dev *rtwdev, struct ieee80211_vif *vif,
61066107
scan_info->last_chan_idx = 0;
61076108
scan_info->scanning_vif = NULL;
61086109
scan_info->abort = false;
6109-
6110-
rtw89_chanctx_proceed(rtwdev);
61116110
}
61126111

61136112
void rtw89_hw_scan_abort(struct rtw89_dev *rtwdev, struct ieee80211_vif *vif)

0 commit comments

Comments
 (0)