[PATCH 0/1][SRU][P] System will restart while resuming with SATA HDD or nvme installed with password set

AceLan Kao acelan.kao at canonical.com
Thu May 29 01:07:27 UTC 2025


From: "Chia-Lin Kao (AceLan)" <acelan.kao at canonical.com>

BugLink: https://bugs.launchpad.net/bugs/2110090

[Impact]
The BIOS PCI device configuration and restoration during modern standby
will check the ACPI function _REG value. It expects this value to be 0x2
(PCI_Config), and this value is returned by the operating system.

Windows returns 0x2 (PCI_Config), which allows the PCI device configuration
and restoration function to complete successfully. However, Ubuntu returns
0x3 (EmbeddedControl), which prevents the SATA HDD password unlock function
from working during Modern Standby resume.

[Fix]
The commit which will be included in v6.16 explicitly set all devices into
D0 during initialization, so that _REG method works as expected.
https://lore.kernel.org/all/20250424043232.1848107-1-superm1@kernel.org/
4d4c10f763d78 PCI: Explicitly put devices into D0 when initializing

[Test]
1. Install ubuntu 2404 on any machine(the issue has been found on Dell Pro
Micro Mini PC with AMD Ryzen Processors), and enabled SATA HDD password.
   1.1 connect SATA HDD on system
   1.2 press F2 enter BIOS menu
   1.3 choose the menu “Passwords“ in the left side
   1.4 setup passowrd in “Internal HDD Passward“
   1.5 save setting and boot into OS
2. After resume from suspend with w/ SATA HDD installed and hdd password set.
3. The machine should keep working and the SATA HDD could be accessed

[Where problems could occur]
It's trivial to set the device to D0 state while iniailizing, I don't see it
could lead to any regression.

Mario Limonciello (1):
  PCI: Explicitly put devices into D0 when initializing

 drivers/pci/pci-driver.c |  6 ------
 drivers/pci/pci.c        | 13 ++++++++++---
 drivers/pci/pci.h        |  1 +
 3 files changed, 11 insertions(+), 9 deletions(-)

-- 
2.43.0




More information about the kernel-team mailing list