summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKyösti Mälkki <kyosti.malkki@gmail.com>2020-11-17 16:41:38 +0200
committerFelix Held <felix-coreboot@felixheld.de>2020-11-19 14:48:31 +0000
commitb8c7ea0f697110aae87d1cbd345ffdeab08e8623 (patch)
tree1ecfd7f54473e7b5acd6fa796c3e297209ea9d12
parent67a2507c78bbad898e7ee1dbc789c6f3f076b1dd (diff)
ACPI S3: Replace acpi_is_wakeup()
It was supposed to return true for both S2 and S3, but level S2 was never stored in acpi_slp_type or otherwise implemented. Change-Id: Ida0165e647545069c0d42d38b9f45a95e78dacbe Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/47693 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Angel Pons <th3fanbus@gmail.com>
-rw-r--r--src/acpi/acpi.c2
-rw-r--r--src/arch/x86/acpi_s3.c9
-rw-r--r--src/cpu/amd/agesa/family14/model_14_init.c2
-rw-r--r--src/cpu/amd/agesa/family15tn/model_15_init.c2
-rw-r--r--src/cpu/amd/agesa/family16kb/model_16_init.c2
-rw-r--r--src/include/acpi/acpi.h2
-rw-r--r--src/lib/hardwaremain.c2
-rw-r--r--src/vendorcode/google/chromeos/elog.c2
8 files changed, 7 insertions, 16 deletions
diff --git a/src/acpi/acpi.c b/src/acpi/acpi.c
index 259813bc26..5fb2422cdb 100644
--- a/src/acpi/acpi.c
+++ b/src/acpi/acpi.c
@@ -1541,7 +1541,7 @@ void *acpi_find_wakeup_vector(void)
void *wake_vec;
int i;
- if (!acpi_is_wakeup())
+ if (!acpi_is_wakeup_s3())
return NULL;
printk(BIOS_DEBUG, "Trying to find the wakeup vector...\n");
diff --git a/src/arch/x86/acpi_s3.c b/src/arch/x86/acpi_s3.c
index af4ab5efa5..1c304321a2 100644
--- a/src/arch/x86/acpi_s3.c
+++ b/src/arch/x86/acpi_s3.c
@@ -12,7 +12,7 @@
#if ENV_RAMSTAGE || ENV_POSTCAR
-/* This is filled with acpi_is_wakeup() call early in ramstage. */
+/* This is filled with acpi_is_wakeup_s3() call early in ramstage. */
static int acpi_slp_type = -1;
static void acpi_handoff_wakeup(void)
@@ -28,13 +28,6 @@ static void acpi_handoff_wakeup(void)
}
}
-int acpi_is_wakeup(void)
-{
- acpi_handoff_wakeup();
- /* Both resume from S2 and resume from S3 restart at CPU reset */
- return (acpi_slp_type == ACPI_S3 || acpi_slp_type == ACPI_S2);
-}
-
int acpi_is_wakeup_s3(void)
{
acpi_handoff_wakeup();
diff --git a/src/cpu/amd/agesa/family14/model_14_init.c b/src/cpu/amd/agesa/family14/model_14_init.c
index de5bcdcad0..942539cac2 100644
--- a/src/cpu/amd/agesa/family14/model_14_init.c
+++ b/src/cpu/amd/agesa/family14/model_14_init.c
@@ -52,7 +52,7 @@ static void model_14_init(struct device *dev)
msr.lo |= SYSCFG_MSR_MtrrFixDramEn;
wrmsr(SYSCFG_MSR, msr);
- if (acpi_is_wakeup())
+ if (acpi_is_wakeup_s3())
restore_mtrr();
x86_mtrr_check();
diff --git a/src/cpu/amd/agesa/family15tn/model_15_init.c b/src/cpu/amd/agesa/family15tn/model_15_init.c
index c2406d850c..83efb44693 100644
--- a/src/cpu/amd/agesa/family15tn/model_15_init.c
+++ b/src/cpu/amd/agesa/family15tn/model_15_init.c
@@ -51,7 +51,7 @@ static void model_15_init(struct device *dev)
msr.lo |= SYSCFG_MSR_MtrrFixDramEn;
wrmsr(SYSCFG_MSR, msr);
- if (acpi_is_wakeup())
+ if (acpi_is_wakeup_s3())
restore_mtrr();
x86_mtrr_check();
diff --git a/src/cpu/amd/agesa/family16kb/model_16_init.c b/src/cpu/amd/agesa/family16kb/model_16_init.c
index 2f4fd63a7a..c1c75775e0 100644
--- a/src/cpu/amd/agesa/family16kb/model_16_init.c
+++ b/src/cpu/amd/agesa/family16kb/model_16_init.c
@@ -49,7 +49,7 @@ static void model_16_init(struct device *dev)
msr.lo |= SYSCFG_MSR_MtrrFixDramEn;
wrmsr(SYSCFG_MSR, msr);
- if (acpi_is_wakeup())
+ if (acpi_is_wakeup_s3())
restore_mtrr();
x86_mtrr_check();
diff --git a/src/include/acpi/acpi.h b/src/include/acpi/acpi.h
index 2fc5f8e006..bdea467af9 100644
--- a/src/include/acpi/acpi.h
+++ b/src/include/acpi/acpi.h
@@ -1070,12 +1070,10 @@ static inline int acpi_is_wakeup_s3(void)
return (acpi_get_sleep_type() == ACPI_S3);
}
#else
-int acpi_is_wakeup(void);
int acpi_is_wakeup_s3(void);
#endif
#else
-static inline int acpi_is_wakeup(void) { return 0; }
static inline int acpi_is_wakeup_s3(void) { return 0; }
#endif
diff --git a/src/lib/hardwaremain.c b/src/lib/hardwaremain.c
index 3fe50c9bb6..173ee97192 100644
--- a/src/lib/hardwaremain.c
+++ b/src/lib/hardwaremain.c
@@ -444,7 +444,7 @@ void main(void)
post_code(POST_ENTRY_RAMSTAGE);
/* Handoff sleep type from romstage. */
- acpi_is_wakeup();
+ acpi_is_wakeup_s3();
threads_initialize();
/* Schedule the static boot state entries. */
diff --git a/src/vendorcode/google/chromeos/elog.c b/src/vendorcode/google/chromeos/elog.c
index 523b7c46eb..dff75204a5 100644
--- a/src/vendorcode/google/chromeos/elog.c
+++ b/src/vendorcode/google/chromeos/elog.c
@@ -19,7 +19,7 @@ static void elog_add_boot_reason(void *unused)
}
/* Skip logging developer mode in ACPI resume path */
- if (dev && !acpi_is_wakeup()) {
+ if (dev && !acpi_is_wakeup_s3()) {
elog_add_event(ELOG_TYPE_CROS_DEVELOPER_MODE);
printk(BIOS_DEBUG, "%s: Logged dev mode boot\n", __func__);