Search Linux Wireless

Re: Bug 215715 - PCI device (iwlwifi) is not working due to PCI power state change issues

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

 



On 3/29/2022 10:49 AM, Thorsten Leemhuis wrote:
On 28.03.22 15:33, Thorsten Leemhuis wrote:
Hi, this is your Linux kernel regression tracker.

Rafael, I noticed a regression report in bugzilla.kernel.org that afaics
nobody acted upon since it was reported about a week ago, that's why I
decided to forward it to the lists, maintainers, and the author of the
culprit. To quote from
https://bugzilla.kernel.org/show_bug.cgi?id=215715 :

This turns out to be a platform firmware issue exposed by the commit indicated as the "first bad one".

It is being addressed by adding a quirk for the affected platform.


  Stefan Gottwald 2022-03-21 13:31:43 UTC

Created attachment 300589 [details]
dmesg output from error case

We got a Elo AIO i2 device which most current BIOS where WiFi was working with Kernel 5.12.x but stopped working since Kernel 5.13.19 and newer (5.17.0-rc5).

The kernel error message is:

[    3.419766] iwlwifi 0000:01:00.0: can't change power state from D3cold to D0 (config space inaccessible)
[    3.419781] iwlwifi 0000:01:00.0: can't change power state from D3cold to D0 (config space inaccessible)
[    3.419975] iwlwifi 0000:01:00.0: HW_REV=0xFFFFFFFF, PCI issues?
[    3.420911] iwlwifi: probe of 0000:01:00.0 failed with error -5

The issue can be solved by adding the iwlwifi driver to the initramfs so it is loaded much earlier and seems to work.

To narrow down the issue I did an git bisect between v5.13.18 and v5.13.19 mainline kernel version which got me to following commit which if reverted fix the issue on this device.

Reverting commit d0660d8ab123ea471064f0828f290bec9593e16b : PCI: Use pci_update_current_state() in pci_enable_device_flags()
FWIW, that afaics is d0660d8ab123 ("PCI: Use pci_update_current_state()
in pci_enable_device_flags()") in mainline.
Sorry, I made a (obvious) cut-n-paste error there: the stable commit
mentioned by the reporter is 14858dcc3b35 ("PCI: Use
pci_update_current_state() in pci_enable_device_flags()") in mainline.

#regzbot introduced: 14858dcc3b35

resolve the issue also in the newer kernels. Seems like the function platform_pci_get_power_state is always returning PCI_D3cold on this device also if this is not true.
Could somebody take a look into this? Or was this discussed somewhere
else already? Or even fixed?

Anyway, to get this tracked:

#regzbot introduced: d0660d8ab123ea471064f0828f290bec9593e16b
#regzbot from: Stefan Gottwald <gottwald@xxxxxxxx>
#regzbot title: pci/iwlwifi: wifi is not working due to PCI power state
change issues
#regzbot link: https://bugzilla.kernel.org/show_bug.cgi?id=215715

Ciao, Thorsten (wearing his 'the Linux kernel's regression tracker' hat)

P.S.: As the Linux kernel's regression tracker I'm getting a lot of
reports on my table. I can only look briefly into most of them and lack
knowledge about most of the areas they concern. I thus unfortunately
will sometimes get things wrong or miss something important. I hope
that's not the case here; if you think it is, don't hesitate to tell me
in a public reply, it's in everyone's interest to set the public record
straight.





[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