wifi: rtw89: mcc: deal with BT slot change
When receiving request of adjusting BT slot from coex. mechanism, we need to fetch the new BT slot and use the new one to calculate MCC (multi-channel concurrency) pattern. Then, we update the new MCC pattern to FW. Signed-off-by: Zong-Zhe Yang <kevin_yang@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/20230908031145.20931-8-pkshih@realtek.com
This commit is contained in:
parent
15fe9b7319
commit
9ecb40ef52
@ -1646,12 +1646,15 @@ void rtw89_chanctx_work(struct work_struct *work)
|
||||
break;
|
||||
case RTW89_ENTITY_MODE_MCC:
|
||||
if (changed & BIT(RTW89_CHANCTX_BCN_OFFSET_CHANGE) ||
|
||||
changed & BIT(RTW89_CHANCTX_P2P_PS_CHANGE))
|
||||
changed & BIT(RTW89_CHANCTX_P2P_PS_CHANGE) ||
|
||||
changed & BIT(RTW89_CHANCTX_BT_SLOT_CHANGE))
|
||||
update_mcc_pattern = true;
|
||||
if (changed & BIT(RTW89_CHANCTX_REMOTE_STA_CHANGE))
|
||||
rtw89_mcc_update_macid_bitmap(rtwdev);
|
||||
if (changed & BIT(RTW89_CHANCTX_P2P_PS_CHANGE))
|
||||
rtw89_mcc_update_limit(rtwdev);
|
||||
if (changed & BIT(RTW89_CHANCTX_BT_SLOT_CHANGE))
|
||||
rtw89_mcc_fill_bt_role(rtwdev);
|
||||
if (update_mcc_pattern) {
|
||||
ret = rtw89_mcc_update(rtwdev);
|
||||
if (ret)
|
||||
|
@ -3528,6 +3528,7 @@ void rtw89_core_ntfy_btc_event(struct rtw89_dev *rtwdev, enum rtw89_btc_hmsg eve
|
||||
bt_req_len = rtw89_coex_query_bt_req_len(rtwdev, RTW89_PHY_0);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_BTC,
|
||||
"coex updates BT req len to %d TU\n", bt_req_len);
|
||||
rtw89_queue_chanctx_change(rtwdev, RTW89_CHANCTX_BT_SLOT_CHANGE);
|
||||
break;
|
||||
default:
|
||||
if (event < NUM_OF_RTW89_BTC_HMSG)
|
||||
|
@ -3791,6 +3791,7 @@ enum rtw89_chanctx_changes {
|
||||
RTW89_CHANCTX_REMOTE_STA_CHANGE,
|
||||
RTW89_CHANCTX_BCN_OFFSET_CHANGE,
|
||||
RTW89_CHANCTX_P2P_PS_CHANGE,
|
||||
RTW89_CHANCTX_BT_SLOT_CHANGE,
|
||||
|
||||
NUM_OF_RTW89_CHANCTX_CHANGES,
|
||||
RTW89_CHANCTX_CHANGE_DFLT = NUM_OF_RTW89_CHANCTX_CHANGES,
|
||||
|
Loading…
Reference in New Issue
Block a user