]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/blobdiff - drivers/acpi/x86/s2idle.c
ACPI: PM: s2idle: Add missing LPS0 functions for AMD
[mirror_ubuntu-hirsute-kernel.git] / drivers / acpi / x86 / s2idle.c
index 2b69536cdccbafdf9f50e142e9374a54b541bbfa..2d7ddb8a8cb65662842f7747d598743242ba1458 100644 (file)
@@ -42,6 +42,8 @@ static const struct acpi_device_id lps0_device_ids[] = {
 
 /* AMD */
 #define ACPI_LPS0_DSM_UUID_AMD      "e3f32452-febc-43ce-9039-932122d37721"
+#define ACPI_LPS0_ENTRY_AMD         2
+#define ACPI_LPS0_EXIT_AMD          3
 #define ACPI_LPS0_SCREEN_OFF_AMD    4
 #define ACPI_LPS0_SCREEN_ON_AMD     5
 
@@ -408,6 +410,7 @@ int acpi_s2idle_prepare_late(void)
 
        if (acpi_s2idle_vendor_amd()) {
                acpi_sleep_run_lps0_dsm(ACPI_LPS0_SCREEN_OFF_AMD);
+               acpi_sleep_run_lps0_dsm(ACPI_LPS0_ENTRY_AMD);
        } else {
                acpi_sleep_run_lps0_dsm(ACPI_LPS0_SCREEN_OFF);
                acpi_sleep_run_lps0_dsm(ACPI_LPS0_ENTRY);
@@ -422,6 +425,7 @@ void acpi_s2idle_restore_early(void)
                return;
 
        if (acpi_s2idle_vendor_amd()) {
+               acpi_sleep_run_lps0_dsm(ACPI_LPS0_EXIT_AMD);
                acpi_sleep_run_lps0_dsm(ACPI_LPS0_SCREEN_ON_AMD);
        } else {
                acpi_sleep_run_lps0_dsm(ACPI_LPS0_EXIT);