mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 19:08:57 +09:00
Revert "ACPI: PM: Add support for upcoming AMD uPEP HID AMDI007"
A number of AMD based Rembrandt laptops are not working properly in suspend/resume. This has been root caused to be from the BIOS implementation not populating code for the AMD GUID in uPEP, but instead only the Microsoft one. In later kernels this has been fixed by using the Microsoft GUID instead. The following series of patches has fixed it in newer kernels: commited470febf8("ACPI: PM: s2idle: Add support for upcoming AMD uPEP HID AMDI008") commit1a2dcab517("ACPI: PM: s2idle: Use LPS0 idle if ACPI_FADT_LOW_POWER_S0 is unset") commit100a573793("ACPI: x86: s2idle: Move _HID handling for AMD systems into structures") commitfd894f05cf("ACPI: x86: s2idle: If a new AMD _HID is missing assume Rembrandt") commita0bc002393("ACPI: x86: s2idle: Add module parameter to prefer Microsoft GUID") commitd0f61e89f0("ACPI: x86: s2idle: Add a quirk for ASUS TUF Gaming A17 FA707RE") commitddeea2c3cb("ACPI: x86: s2idle: Add a quirk for ASUS ROG Zephyrus G14") commit888ca9c795("ACPI: x86: s2idle: Add a quirk for Lenovo Slim 7 Pro 14ARH7") commit631b54519e("ACPI: x86: s2idle: Add a quirk for ASUSTeK COMPUTER INC. ROG Flow X13") commit39f81776c6("ACPI: x86: s2idle: Fix a NULL pointer dereference") commit54bd1e5487("ACPI: x86: s2idle: Add another ID to s2idle_dmi_table") commit577821f756("ACPI: x86: s2idle: Force AMD GUID/_REV 2 on HP Elitebook 865") commite6d180a35b("ACPI: x86: s2idle: Stop using AMD specific codepath for Rembrandt+") This is needlessly complex for 5.15.y though. To accomplish the same effective result revert commitf0c6225531("ACPI: PM: Add support for upcoming AMD uPEP HID AMDI007") instead. Link: https://lore.kernel.org/stable/MN0PR12MB61015DB3D6EDBFD841157918E2F59@MN0PR12MB6101.namprd12.prod.outlook.com/ Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
e32f867b37
commit
6e9c1aef3e
@@ -378,16 +378,13 @@ static int lps0_device_attach(struct acpi_device *adev,
|
||||
* AMDI0006:
|
||||
* - should use rev_id 0x0
|
||||
* - function mask = 0x3: Should use Microsoft method
|
||||
* AMDI0007:
|
||||
* - Should use rev_id 0x2
|
||||
* - Should only use AMD method
|
||||
*/
|
||||
const char *hid = acpi_device_hid(adev);
|
||||
rev_id = strcmp(hid, "AMDI0007") ? 0 : 2;
|
||||
rev_id = 0;
|
||||
lps0_dsm_func_mask = validate_dsm(adev->handle,
|
||||
ACPI_LPS0_DSM_UUID_AMD, rev_id, &lps0_dsm_guid);
|
||||
lps0_dsm_func_mask_microsoft = validate_dsm(adev->handle,
|
||||
ACPI_LPS0_DSM_UUID_MICROSOFT, 0,
|
||||
ACPI_LPS0_DSM_UUID_MICROSOFT, rev_id,
|
||||
&lps0_dsm_guid_microsoft);
|
||||
if (lps0_dsm_func_mask > 0x3 && (!strcmp(hid, "AMD0004") ||
|
||||
!strcmp(hid, "AMD0005") ||
|
||||
@@ -395,9 +392,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")) {
|
||||
lps0_dsm_func_mask_microsoft = -EINVAL;
|
||||
acpi_handle_debug(adev->handle, "_DSM Using AMD method\n");
|
||||
}
|
||||
} else {
|
||||
rev_id = 1;
|
||||
|
||||
Reference in New Issue
Block a user