summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Kconfig6
-rw-r--r--src/soc/amd/picasso/acpi/sleepstates.asl3
-rw-r--r--src/soc/amd/stoneyridge/acpi/sleepstates.asl3
-rw-r--r--src/southbridge/amd/common/acpi/sleepstates.asl3
-rw-r--r--src/southbridge/intel/common/acpi/sleepstates.asl2
5 files changed, 17 insertions, 0 deletions
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})