diff --git a/src/Kconfig b/src/Kconfig index 9118914e3c..9522542cc3 100644 --- a/src/Kconfig +++ b/src/Kconfig @@ -525,6 +525,12 @@ config HAVE_ACPI_RESUME default n depends on RELOCATABLE_RAMSTAGE +config DISABLE_ACPI_HIBERNATE + bool + default n + help + Removes S4 from the available sleepstates + config RESUME_PATH_SAME_AS_BOOT bool default y if ARCH_X86 diff --git a/src/soc/amd/picasso/acpi/sleepstates.asl b/src/soc/amd/picasso/acpi/sleepstates.asl index d4aabdb7af..c5e979e268 100644 --- a/src/soc/amd/picasso/acpi/sleepstates.asl +++ b/src/soc/amd/picasso/acpi/sleepstates.asl @@ -19,6 +19,9 @@ Name(SSFG, 0x09) If (CONFIG(HAVE_ACPI_RESUME)) { Store(0x0D, SSFG) } +If (CONFIG(DISABLE_ACPI_HIBERNATE)) { + Store(And(SSFG, 0xF7), SSFG) +} /* Supported sleep states: */ Name(\_S0, Package () {0x00, 0x00, 0x00, 0x00} ) /* (S0) - working state */ diff --git a/src/soc/amd/stoneyridge/acpi/sleepstates.asl b/src/soc/amd/stoneyridge/acpi/sleepstates.asl index d4aabdb7af..c5e979e268 100644 --- a/src/soc/amd/stoneyridge/acpi/sleepstates.asl +++ b/src/soc/amd/stoneyridge/acpi/sleepstates.asl @@ -19,6 +19,9 @@ Name(SSFG, 0x09) If (CONFIG(HAVE_ACPI_RESUME)) { Store(0x0D, SSFG) } +If (CONFIG(DISABLE_ACPI_HIBERNATE)) { + Store(And(SSFG, 0xF7), SSFG) +} /* Supported sleep states: */ Name(\_S0, Package () {0x00, 0x00, 0x00, 0x00} ) /* (S0) - working state */ diff --git a/src/southbridge/amd/common/acpi/sleepstates.asl b/src/southbridge/amd/common/acpi/sleepstates.asl index 21037243f9..9ee20b5dfa 100644 --- a/src/southbridge/amd/common/acpi/sleepstates.asl +++ b/src/southbridge/amd/common/acpi/sleepstates.asl @@ -20,6 +20,9 @@ Name (SSFG, 0x0D) #else Name (SSFG, 0x09) #endif +If (CONFIG(DISABLE_ACPI_HIBERNATE)) { + Store(And(SSFG, 0xF7), SSFG) +} /* Supported sleep states: */ Name(\_S0, Package () {0x00, 0x00, 0x00, 0x00} ) /* (S0) - working state */ diff --git a/src/southbridge/intel/common/acpi/sleepstates.asl b/src/southbridge/intel/common/acpi/sleepstates.asl index 79818a109a..32cc22bd39 100644 --- a/src/southbridge/intel/common/acpi/sleepstates.asl +++ b/src/southbridge/intel/common/acpi/sleepstates.asl @@ -20,5 +20,7 @@ Name(\_S1, Package(){0x1,0x0,0x0,0x0}) #else Name(\_S3, Package(){0x5,0x0,0x0,0x0}) #endif +#if !CONFIG(DISABLE_ACPI_HIBERNATE) Name(\_S4, Package(){0x6,0x0,0x0,0x0}) +#endif Name(\_S5, Package(){0x7,0x0,0x0,0x0})