diff options
author | Wim Vervoorn <wvervoorn@eltan.com> | 2020-01-15 11:31:25 +0100 |
---|---|---|
committer | Patrick Georgi <pgeorgi@google.com> | 2020-01-22 15:41:02 +0000 |
commit | bccc7e707201833215d2c002533b3e05443ca298 (patch) | |
tree | 3f6a28a94c1a0c8522f34e29abc37b474a7938cd /src | |
parent | 951a6207f32fbfc7bf21f122b3a66b88fb79892c (diff) | |
download | coreboot-bccc7e707201833215d2c002533b3e05443ca298.tar.gz coreboot-bccc7e707201833215d2c002533b3e05443ca298.tar.bz2 coreboot-bccc7e707201833215d2c002533b3e05443ca298.zip |
{soc,southbridge}/*/*/acpi: Add possibility to disable S4
Some boards don't support S3 or S4. The S4 state can't be removed from
the available sleep states.
Add a config item that allows removal of the S4 state from the list of
available sleep states. The S4 state can be removed by selecting the
item on board level.
For the AMD chipsets the SSFG mask is updated to remove the S4 state.
BUG=N/A
TEST=build
Change-Id: Id802c4cc40308ddf39e99e7f226d55e0e020f0c9
Signed-off-by: Wim Vervoorn <wvervoorn@eltan.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38431
Reviewed-by: Frans Hendriks <fhendriks@eltan.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src')
-rw-r--r-- | src/Kconfig | 6 | ||||
-rw-r--r-- | src/soc/amd/picasso/acpi/sleepstates.asl | 3 | ||||
-rw-r--r-- | src/soc/amd/stoneyridge/acpi/sleepstates.asl | 3 | ||||
-rw-r--r-- | src/southbridge/amd/common/acpi/sleepstates.asl | 3 | ||||
-rw-r--r-- | src/southbridge/intel/common/acpi/sleepstates.asl | 2 |
5 files changed, 17 insertions, 0 deletions
diff --git a/src/Kconfig b/src/Kconfig index 9118914e3c01..9522542cc355 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 d4aabdb7afad..c5e979e26878 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 d4aabdb7afad..c5e979e26878 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 21037243f986..9ee20b5dfa14 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 79818a109ab3..32cc22bd39bf 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}) |