Message ID | 20230214114314.5268-1-pkshih@realtek.com (mailing list archive) |
---|---|
State | Accepted |
Commit | ce1ba4d782d94fc8ed9116c774e2e5885626836b |
Delegated to: | Kalle Valo |
Headers | show |
Series | wifi: rtw89: move H2C of del_pkt_offload before polling FW status ready | expand |
Ping-Ke Shih <pkshih@realtek.com> writes: > From: Chin-Yen Lee <timlee@realtek.com> > > The H2C of del_pkt_offload must be called before polling FW status > ready, otherwise the following downloading normal FW will fail. > > Fixes: 5c12bb66b79d ("wifi: rtw89: refine packet offload flow") > Signed-off-by: Chin-Yen Lee <timlee@realtek.com> > Signed-off-by: Ping-Ke Shih <pkshih@realtek.com> > --- > Hi Kalle, > > We found a bug existing in commit 5c12bb66b79d that was merged yesterday. > Since merge window is next week, is it possible to merge this patch for > kernel 6.3? Ok, I'll queue this to v6.3.
Ping-Ke Shih <pkshih@realtek.com> wrote: > From: Chin-Yen Lee <timlee@realtek.com> > > The H2C of del_pkt_offload must be called before polling FW status > ready, otherwise the following downloading normal FW will fail. > > Fixes: 5c12bb66b79d ("wifi: rtw89: refine packet offload flow") > Signed-off-by: Chin-Yen Lee <timlee@realtek.com> > Signed-off-by: Ping-Ke Shih <pkshih@realtek.com> Patch applied to wireless-next.git, thanks. ce1ba4d782d9 wifi: rtw89: move H2C of del_pkt_offload before polling FW status ready
diff --git a/drivers/net/wireless/realtek/rtw89/wow.c b/drivers/net/wireless/realtek/rtw89/wow.c index 92fa366ccfcf7..c78ee2ab732c9 100644 --- a/drivers/net/wireless/realtek/rtw89/wow.c +++ b/drivers/net/wireless/realtek/rtw89/wow.c @@ -710,6 +710,8 @@ static int rtw89_wow_fw_stop(struct rtw89_dev *rtwdev) goto out; } + rtw89_fw_release_general_pkt_list(rtwdev, true); + ret = rtw89_wow_check_fw_status(rtwdev, false); if (ret) { rtw89_err(rtwdev, "wow: failed to check disable fw ready\n"); @@ -779,8 +781,6 @@ static int rtw89_wow_disable(struct rtw89_dev *rtwdev) goto out; } - rtw89_fw_release_general_pkt_list(rtwdev, true); - ret = rtw89_wow_swap_fw(rtwdev, false); if (ret) { rtw89_err(rtwdev, "wow: failed to disable trx_post\n");