mirror of
https://github.com/torvalds/linux.git
synced 2026-09-24 06:24:02 +02:00
wifi: rtw89: coex: Fix H2C command redundant send & version fall through
I/O offload higher priority sending event didn't return after H2C command was sent, add a return to prevent send twice in the same time. Update driver info entry which is handling module control info didn't handle the version 9 command format, add if condition to handle it. TX power update H2C command result checker logic was reversed, it will lead to the TX power value never update again after first update, fix the issue. Signed-off-by: Ching-Te Ku <ku920601@realtek.com> Signed-off-by: Ping-Ke Shih <pkshih@realtek.com> Link: https://patch.msgid.link/20260724135640.3195044-14-pkshih@realtek.com
This commit is contained in:
parent
ffb7d6a1c6
commit
4406b550ae
|
|
@ -1073,6 +1073,7 @@ static int _send_fw_cmd(struct rtw89_dev *rtwdev, u8 h2c_class, u8 h2c_func,
|
|||
}
|
||||
|
||||
btc->fwinfo.cnt_h2c++;
|
||||
return 0;
|
||||
} else { /* Fill H2C MACRO buffer(TLV format) temporarily */
|
||||
if (btc->hbuf_cnt == 0)
|
||||
_reset_h2c_macro(btc);
|
||||
|
|
@ -3500,6 +3501,8 @@ static void _fw_set_drv_info(struct rtw89_dev *rtwdev, u8 index)
|
|||
|
||||
if (ver->fcxctrl == 7)
|
||||
rtw89_fw_h2c_cxdrv_ctrl_v7(rtwdev, index);
|
||||
else if (ver->fcxctrl == 9)
|
||||
rtw89_fw_h2c_cxdrv_ctrl_v9(rtwdev, index);
|
||||
else
|
||||
rtw89_fw_h2c_cxdrv_ctrl(rtwdev, index);
|
||||
break;
|
||||
|
|
@ -3893,7 +3896,7 @@ static void _set_bt_tx_power(struct rtw89_dev *rtwdev, bool force_exec, u8 bid,
|
|||
if (rtwdev->chip->chip_gen == RTW89_CHIP_AX)
|
||||
len = SET_RF_PARA_AX_LEN;
|
||||
|
||||
if (_send_fw_cmd(rtwdev, BTFC_SET, h2c_func, buf, len)) {
|
||||
if (!_send_fw_cmd(rtwdev, BTFC_SET, h2c_func, buf, len)) {
|
||||
btc->dm.rf_trx_para.bt_tx_power[i] = level;
|
||||
if (rf_band == RTW89_BAND_2G)
|
||||
bt->tx_power_now = level;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user