public inbox for linux-wireless@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] net: wireless: rtw89: Sleep while waiting for firmware init
@ 2025-09-09 21:12 Ondřej Jirman
  2025-09-10  0:37 ` Ping-Ke Shih
  0 siblings, 1 reply; 4+ messages in thread
From: Ondřej Jirman @ 2025-09-09 21:12 UTC (permalink / raw)
  To: linux-kernel
  Cc: Ondrej Jirman, Ping-Ke Shih,
	open list:REALTEK WIRELESS DRIVER (rtw89)

From: Ondrej Jirman <megi@xff.cz>

This avoids RCU stalls caused by waiting up to 400ms for firmware init.

Signed-off-by: Ondrej Jirman <megi@xff.cz>
---
 drivers/net/wireless/realtek/rtw89/fw.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/net/wireless/realtek/rtw89/fw.c b/drivers/net/wireless/realtek/rtw89/fw.c
index 16e59a4a486e..2c034b764a0a 100644
--- a/drivers/net/wireless/realtek/rtw89/fw.c
+++ b/drivers/net/wireless/realtek/rtw89/fw.c
@@ -109,9 +109,9 @@ int rtw89_fw_check_rdy(struct rtw89_dev *rtwdev, enum rtw89_fwdl_check_type type
 	u8 val;
 	int ret;
 
-	ret = read_poll_timeout_atomic(mac->fwdl_get_status, val,
-				       val == RTW89_FWDL_WCPU_FW_INIT_RDY,
-				       1, FWDL_WAIT_CNT, false, rtwdev, type);
+	ret = read_poll_timeout(mac->fwdl_get_status, val,
+				val == RTW89_FWDL_WCPU_FW_INIT_RDY,
+				1, FWDL_WAIT_CNT, false, rtwdev, type);
 	if (ret) {
 		switch (val) {
 		case RTW89_FWDL_CHECKSUM_FAIL:
-- 
2.51.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2025-09-11  2:46 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-09 21:12 [PATCH] net: wireless: rtw89: Sleep while waiting for firmware init Ondřej Jirman
2025-09-10  0:37 ` Ping-Ke Shih
2025-09-10  8:57   ` Ondřej Jirman
2025-09-11  2:46     ` Ping-Ke Shih

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox