The patch seems be accepted and will be merged to v6.9. We'll skip this fix on Mantic as the patchset grouth and affects all PCI devices, and will try backporting it to Noble kernel.
-- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux-oem-6.5 in Ubuntu. https://bugs.launchpad.net/bugs/2042500 Title: Fix after-suspend-mediacard/sdhc-insert test failed Status in HWE Next: New Status in linux package in Ubuntu: In Progress Status in linux-oem-6.1 package in Ubuntu: Invalid Status in linux-oem-6.5 package in Ubuntu: Invalid Status in linux source package in Jammy: Invalid Status in linux-oem-6.1 source package in Jammy: Fix Released Status in linux-oem-6.5 source package in Jammy: Fix Released Status in linux source package in Mantic: In Progress Status in linux-oem-6.1 source package in Mantic: Invalid Status in linux-oem-6.5 source package in Mantic: Invalid Status in linux source package in Noble: In Progress Status in linux-oem-6.1 source package in Noble: Invalid Status in linux-oem-6.5 source package in Noble: Invalid Bug description: [Impact] checkbox test case, after-suspend-mediacard/sdhc-insert, failed. [Fix] Commit a7152be79b62 ("Revert "PCI/ASPM: Save L1 PM Substates Capability for suspend/resume"") reverted saving and restoring of ASPM L1 Substates due to a regression that caused resume from suspend to fail on certain systems. However, we never added this capability back and this is now causing systems fail to enter low power CPU states, drawing more power from the battery. The original revert mentioned that we restore L1 PM substate configuration even though ASPM L1 may already be enabled. This is due the fact that the pci_restore_aspm_l1ss_state() was called before pci_restore_pcie_state(). Try to enable this functionality again following PCIe r6.0.1, sec 5.5.4 more closely by: 1) Do not restore ASPM configuration in pci_restore_pcie_state() but do that after PCIe capability is restored in pci_restore_aspm_state() following PCIe r6.0, sec 5.5.4. 2) ASPM is first enabled on the upstream component and then downstream (this is already forced by the parent-child ordering of Linux Device Power Management framework). 3) Program ASPM L1 PM substate configuration before L1 enables. 4) Program ASPM L1 PM substate enables last after rest of the fields in the capability are programmed. 5) Add denylist that skips restoring on the ASUS and TUXEDO systems where these regressions happened, just in case. For the TUXEDO case we only skip restore if the BIOS is involved in system suspend (that's forcing "mem_sleep=deep" in the command line). This is to avoid possible power regression when the default suspend to idle is used, and at the same time make sure the devices continue working after resume when the BIOS is involved. [Test Case] 1. suspend and resume. 2. check if the error appears in dmesg ~~~ pcieport 0000:00:1c.0: pciehp: Slot(5): Card not present rtsx_pci 0000:05:00.0: Unable to change power state from D0 to D3hot, device inaccessible rtsx_pci 0000:05:00.0: Unable to change power state from D3cold to D0, device inaccessible ~~~ [where the issue could happen] low, the patch works well on the reported malfunctioned ASUS platform too. To manage notifications about this bug go to: https://bugs.launchpad.net/hwe-next/+bug/2042500/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp