summaryrefslogtreecommitdiffstats
path: root/src/soc/amd/picasso
diff options
context:
space:
mode:
authorRaul E Rangel <rrangel@chromium.org>2021-12-06 10:53:54 -0700
committerFelix Held <felix-coreboot@felixheld.de>2021-12-08 17:52:03 +0000
commitc7ab9f410cfea6bd6260ecb8ac336f87f4cf3736 (patch)
tree2615eda091f426dac7470e02b39ed8b05372870b /src/soc/amd/picasso
parent9a185e5bfe1a26551f59c5b63c6f3625b184900f (diff)
downloadcoreboot-c7ab9f410cfea6bd6260ecb8ac336f87f4cf3736.tar.gz
coreboot-c7ab9f410cfea6bd6260ecb8ac336f87f4cf3736.tar.bz2
coreboot-c7ab9f410cfea6bd6260ecb8ac336f87f4cf3736.zip
soc/amd/{cezanne,picasso,stoney}: Clear PM/GPE when enabling ACPI
According to https://uefi.org/specs/ACPI/6.4/16_Waking_and_Sleeping/sleeping-states.html?highlight=power%20states# > For ACPI/legacy systems, when transitioning from the legacy to the G0 > working state this register is cleared by platform firmware prior to > setting the SCI_EN bit. This change makes sure we clear the PM/GPE blocks are cleared before enabling the SCI_EN bit. BUG=b:172021431 TEST=Boot guybrush and morphius to OS and verify suspend resume still works. Signed-off-by: Raul E Rangel <rrangel@chromium.org> Change-Id: Icc6f542185dc520f8d181423961b74481c0b5506 Reviewed-on: https://review.coreboot.org/c/coreboot/+/59928 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Diffstat (limited to 'src/soc/amd/picasso')
-rw-r--r--src/soc/amd/picasso/smihandler.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/soc/amd/picasso/smihandler.c b/src/soc/amd/picasso/smihandler.c
index b13c6e0be724..f9f5fc021084 100644
--- a/src/soc/amd/picasso/smihandler.c
+++ b/src/soc/amd/picasso/smihandler.c
@@ -23,6 +23,7 @@ static void fch_apmc_smi_handler(void)
switch (cmd) {
case APM_CNT_ACPI_ENABLE:
+ acpi_clear_pm_gpe_status();
acpi_enable_sci();
break;
case APM_CNT_ACPI_DISABLE: