Messages in this thread | | | Date | Thu, 31 Mar 2022 21:14:10 +0200 | Subject | Re: Bug 215715 - PCI device (iwlwifi) is not working due to PCI power state change issues | From | "Rafael J. Wysocki" <> |
| |
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@igel.com> >> #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. >>
| |