mirror of
https://github.com/torvalds/linux.git
synced 2026-05-28 00:53:34 +02:00
wifi: rtw89: wow: add retry for ensuring packet are processed
Before entering WoWLAN mode, the driver must ensure that all received packets have been processed to prevent packet loss. Consequently, a retry mechanism has been implemented to guarantee completion. Signed-off-by: Chin-Yen Lee <timlee@realtek.com> Signed-off-by: Ping-Ke Shih <pkshih@realtek.com> Link: https://patch.msgid.link/20260310080146.31113-10-pkshih@realtek.com
This commit is contained in:
parent
cf3cd3687d
commit
72dbc78594
|
|
@ -7183,7 +7183,7 @@ int rtw89_mac_ptk_drop_by_band_and_wait(struct rtw89_dev *rtwdev,
|
|||
return ret;
|
||||
}
|
||||
|
||||
int rtw89_mac_cpu_io_rx(struct rtw89_dev *rtwdev, bool wow_enable)
|
||||
static int _rtw89_mac_cpu_io_rx(struct rtw89_dev *rtwdev, bool wow_enable)
|
||||
{
|
||||
struct rtw89_mac_h2c_info h2c_info = {};
|
||||
struct rtw89_mac_c2h_info c2h_info = {};
|
||||
|
|
@ -7206,6 +7206,19 @@ int rtw89_mac_cpu_io_rx(struct rtw89_dev *rtwdev, bool wow_enable)
|
|||
return ret;
|
||||
}
|
||||
|
||||
int rtw89_mac_cpu_io_rx(struct rtw89_dev *rtwdev, bool wow_enable)
|
||||
{
|
||||
int i, ret;
|
||||
|
||||
for (i = 0; i < CPU_IO_RX_RETRY_CNT; i++) {
|
||||
ret = _rtw89_mac_cpu_io_rx(rtwdev, wow_enable);
|
||||
if (!ret)
|
||||
return 0;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int rtw89_wow_config_mac_ax(struct rtw89_dev *rtwdev, bool enable_wow)
|
||||
{
|
||||
const struct rtw89_mac_gen_def *mac = rtwdev->chip->mac_def;
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@
|
|||
#define BSSID_CAM_ENT_SIZE 0x08
|
||||
#define HFC_PAGE_UNIT 64
|
||||
#define RPWM_TRY_CNT 3
|
||||
#define CPU_IO_RX_RETRY_CNT 3
|
||||
|
||||
enum rtw89_mac_hwmod_sel {
|
||||
RTW89_DMAC_SEL = 0,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user