https://bugzilla.kernel.org/show_bug.cgi?id=216101
--- Comment #7 from Mario Limonciello (AMD) (mario.limoncie...@amd.com) --- OK I think I see what might be going on. In the PEP device there is an extra call in the 11e00d56-ce64-47ce-837b-1f898f9aa461 case for modern standby exit: Case (0x08) { M000 (0x3E08) If (CondRefOf (\_SB.PCI0.GPP7.DEV0)) { M460 (" Notify (\\_SB.PCI0.GPP7.DEV0, 0x1)\n", Zero, Zero, Zero, Zero, Zero, Zero) Notify (\_SB.PCI0.GPP7.DEV0, One) // Device Check } Return (Zero) } In the e3f32452-febc-43ce-9039-932122d37721 case (which is used by default in Linux) I don't see that call in the matching exit routines: Case (0x03) { M000 (0x3E05) Return (Zero) } or Case (0x05) { M000 (0x3E03) Return (Zero) } I would hypothesize this is the reason for the problem. Please have a try with this change. It's not upstreamable like this, but given it's a firmware bug it would at least prove the correct root cause and we can think about how to do it better. diff --git a/drivers/acpi/x86/s2idle.c b/drivers/acpi/x86/s2idle.c index f9ac12b778e6..c9a7dd474892 100644 --- a/drivers/acpi/x86/s2idle.c +++ b/drivers/acpi/x86/s2idle.c @@ -394,11 +394,6 @@ static int lps0_device_attach(struct acpi_device *adev, lps0_dsm_func_mask = (lps0_dsm_func_mask << 1) | 0x1; acpi_handle_debug(adev->handle, "_DSM UUID %s: Adjusted function mask: 0x%x\n", ACPI_LPS0_DSM_UUID_AMD, lps0_dsm_func_mask); - } else if (lps0_dsm_func_mask_microsoft > 0 && - (!strcmp(hid, "AMDI0007") || - !strcmp(hid, "AMDI0008"))) { - lps0_dsm_func_mask_microsoft = -EINVAL; - acpi_handle_debug(adev->handle, "_DSM Using AMD method\n"); } } else { rev_id = 1; -- You may reply to this email to add a comment. You are receiving this mail because: You are watching the assignee of the bug. _______________________________________________ acpi-bugzilla mailing list acpi-bugzilla@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/acpi-bugzilla