diff options
author | Aaron Durbin <adurbin@chromium.org> | 2016-07-13 12:08:33 -0500 |
---|---|---|
committer | Aaron Durbin <adurbin@chromium.org> | 2016-07-15 08:30:13 +0200 |
commit | 95c4344a2092bd9fd5eca74d23d0c270628f66d2 (patch) | |
tree | 81d73fb5f4f8ca621d85bae81349222518a46976 /src/arch | |
parent | ab1960c08af91d7d65c8108c2c3710b014194c78 (diff) | |
download | coreboot-95c4344a2092bd9fd5eca74d23d0c270628f66d2.tar.xz |
arch/x86: provide common ACPI_Sx constants
Instead of open coding the literal values provide more
semantic symbol to be used. This will allow for aligning
chipset code with this as well to reduce duplication.
BUG=chrome-os-partner:54977
Change-Id: I022bf1eb258f7244f2e5aa2fb72b7b82e1900a5c
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/15663
Tested-by: build bot (Jenkins)
Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Diffstat (limited to 'src/arch')
-rw-r--r-- | src/arch/x86/acpi_s3.c | 16 | ||||
-rw-r--r-- | src/arch/x86/include/arch/acpi.h | 15 |
2 files changed, 20 insertions, 11 deletions
diff --git a/src/arch/x86/acpi_s3.c b/src/arch/x86/acpi_s3.c index 7855a2f28d..c327cbd93a 100644 --- a/src/arch/x86/acpi_s3.c +++ b/src/arch/x86/acpi_s3.c @@ -36,13 +36,13 @@ int acpi_get_sleep_type(void) if (handoff == NULL) { printk(BIOS_DEBUG, "Unknown boot method, assuming normal.\n"); - return 0; + return ACPI_S0; } else if (handoff->s3_resume) { printk(BIOS_DEBUG, "S3 Resume.\n"); - return 3; + return ACPI_S3; } else { printk(BIOS_DEBUG, "Normal boot.\n"); - return 0; + return ACPI_S0; } } #endif @@ -57,25 +57,25 @@ int acpi_is_wakeup(void) { acpi_handoff_wakeup(); /* Both resume from S2 and resume from S3 restart at CPU reset */ - return (acpi_slp_type == 3 || acpi_slp_type == 2); + return (acpi_slp_type == ACPI_S3 || acpi_slp_type == ACPI_S2); } int acpi_is_wakeup_s3(void) { acpi_handoff_wakeup(); - return (acpi_slp_type == 3); + return (acpi_slp_type == ACPI_S3); } int acpi_is_wakeup_s4(void) { acpi_handoff_wakeup(); - return (acpi_slp_type == 4); + return (acpi_slp_type == ACPI_S4); } void acpi_fail_wakeup(void) { - if (acpi_slp_type == 3 || acpi_slp_type == 2) - acpi_slp_type = 0; + if (acpi_slp_type == ACPI_S3 || acpi_slp_type == ACPI_S2) + acpi_slp_type = ACPI_S0; } #endif /* ENV_RAMSTAGE */ diff --git a/src/arch/x86/include/arch/acpi.h b/src/arch/x86/include/arch/acpi.h index 7434000560..03cd70948e 100644 --- a/src/arch/x86/include/arch/acpi.h +++ b/src/arch/x86/include/arch/acpi.h @@ -615,7 +615,16 @@ void acpi_prepare_resume_backup(void); void mainboard_suspend_resume(void); void *acpi_find_wakeup_vector(void); -/* Returns 0 = S0, 1 = S1 ... */ +enum { + ACPI_S0, + ACPI_S1, + ACPI_S2, + ACPI_S3, + ACPI_S4, + ACPI_S5, +}; + +/* Returns ACPI_Sx values. */ int acpi_get_sleep_type(void); static inline int acpi_s3_resume_allowed(void) @@ -629,7 +638,7 @@ extern int acpi_slp_type; #ifdef __PRE_RAM__ static inline int acpi_is_wakeup_s3(void) { - return (acpi_get_sleep_type() == 3); + return (acpi_get_sleep_type() == ACPI_S3); } #else int acpi_is_wakeup(void); @@ -639,7 +648,7 @@ int acpi_is_wakeup_s4(void); void acpi_prepare_for_resume(void); #else -#define acpi_slp_type 0 +#define acpi_slp_type ACPI_S0 static inline int acpi_is_wakeup(void) { return 0; } static inline int acpi_is_wakeup_s3(void) { return 0; } static inline int acpi_is_wakeup_s4(void) { return 0; } |