Search Linux Wireless

Re: wifi: rtw88: 8821CU hangs after some number of power-off/on cycles

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

 



wt., 28 maj 2024 o 14:25 Bitterblue Smith <rtl8821cerfe2@xxxxxxxxx> napisał(a):
>
> On 28/05/2024 13:42, Marcin Ślusarz wrote:
> > pon., 27 maj 2024 o 20:43 Bitterblue Smith <rtl8821cerfe2@xxxxxxxxx> napisał(a):
> >>
> >> On 27/05/2024 20:34, Marcin Ślusarz wrote:
> >>> From: Marcin Ślusarz <mslusarz@xxxxxxxxx>
> >>>
> >>> If I don't connect to any Wifi network, after around 10 minutes, the device
> >>> hangs with endless spamming of:
> >>> rtw_8821cu 1-1:1.2: rtw_usb_reg_sec: reg 0x4e0, usb write 1 fail, status: -71
> >>> killing both Wifi and Bluetooth part of the device.
> >>>
> >>> On arm, just leaving the wifi device unconnected kills it in up to 20 minutes.
> >>> If I keep restarting wpa_supplicant I can trigger it within a minute.
> >>> Looping "ifconfig wlan0 down; ifconfig wlan0 up" also triggers it within a minute.
> >>>
> >>> On x86_64 system the only way I could trigger this was via ifconfig loop,
> >>> but it took 3 hours and 20 minutes to do it.
> >>>
> >>> The only thing that can "fix" the device is replugging it.
> >>>
> >>> I found out that the reason for those hangs is a power-off+on sequence that's
> >>> triggered by the above steps.
> >>>
> >>> Disabling power-off for that chip "fixes" the issue. The patches below
> >>> implement that, but I'm not seriously proposing them for merging.
> >>>
> >>> Marcin Ślusarz (2):
> >>>   wifi: rtw88: use RTW_FLAG_RUNNING for deciding whether to enter/leave
> >>>     IPS
> >>>   wifi: rtw88: disable power offs for 8821C
> >>>
> >>>  drivers/net/wireless/realtek/rtw88/main.c | 14 ++++++++------
> >>>  drivers/net/wireless/realtek/rtw88/ps.c   |  4 ++--
> >>>  2 files changed, 10 insertions(+), 8 deletions(-)
> >>>
> >>
> >> The first patch alone doesn't fix it?
> >
> > The first patch exists only to make the second patch work.
> > Without the first one, rtw_enter_ips will perform all actions except actually
> > doing the power off, which clears the POWERON flag.
> > After that, rtw_leave_ips will happily return early success without actually
> > undoing the stuff that rtw_enter_ips did (like canceling all work_structs).
>
> I see.
>
> I wonder if it's really the chip that has a problem, or rtw88?
> Can you try your ifconfig loop with the other driver?
> https://github.com/morrownr/8821cu-20210916/

Actually, the issue was found on this driver. I started looking at the issue
more closely (and discovered the exact reproduction steps) after I switched
to rtw88 and discovered it has exactly the same problem.

So yeah, it's either a chip issue or the same bug in both drivers.





[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