Search Linux Wireless

RE: [BUG] RTL8821CS panic on entering power-save mode

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> -----Original Message-----
> From: Ryan Walklin <ryan@xxxxxxxxxxxxx>
> Sent: Wednesday, March 13, 2024 6:43 AM
> To: Ping-Ke Shih <pkshih@xxxxxxxxxxx>; linux-wireless@xxxxxxxxxxxxxxx
> Cc: linux-sunxi@xxxxxxxxxxxxxxx
> Subject: [BUG] RTL8821CS panic on entering power-save mode
> 
> Hi,
> 
> I have an Allwinner-H700-based platform (Anbernic RG35XX+) which I am working on mainline u-boot/kernel
> support for. The RGL8821CS chip on this board works when configured with a 32MHz clock and 3.3v VCC and
> the RTW88 kernel driver, 
> 

Did the extensive logging of LPS state happen always? Or happen after a while? 
Try module parameter rtw_disable_lps_deep_mode=1 to see if it works well.


The IO of SDIO is slower than PCIE, so maybe we can try to enlarge timeout time
in rtw_power_mode_change():

diff --git a/drivers/net/wireless/realtek/rtw88/ps.c b/drivers/net/wireless/realtek/rtw88/ps.c
index add5a20b8432..d959e3ebba07 100644
--- a/drivers/net/wireless/realtek/rtw88/ps.c
+++ b/drivers/net/wireless/realtek/rtw88/ps.c
@@ -92,7 +92,7 @@ void rtw_power_mode_change(struct rtw_dev *rtwdev, bool enter)
        /* Check firmware get the power requset and ack via cpwm register */
        ret = read_poll_timeout_atomic(rtw_read8, polling,
                                       (polling ^ confirm) & BIT_RPWM_TOGGLE,
-                                      100, 15000, true, rtwdev,
+                                      100, 15000 * 100, true, rtwdev,
                                       rtwdev->hci.cpwm_addr);
        if (ret) {
                /* Hit here means that driver failed to get an ack from firmware.

> however the BT is unstable with extensive logging about LPS state entry failures,
> and the driver will eventually crash with the following:

Not sure why this could lead crash, because it is only a warning. 

Anyway, please try above suggestions. 

Ping-Ke 






[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux