From 1f6e6813554606bb23481fe64401809ab43bdcc7 Mon Sep 17 00:00:00 2001 From: Duncan Laurie Date: Mon, 19 Sep 2016 12:04:19 -0700 Subject: x86: acpi: Add function for querying GPE status Add a function that can be implemented by the SOC to read and clear the status of a single GPE. This can be used during firmware to poll for interrupt status. BUG=chrome-os-partner:53336 Change-Id: I551276f36ff0d2eb5b5ea13f019cdf4a3c749a09 Signed-off-by: Duncan Laurie Reviewed-on: https://review.coreboot.org/16669 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin --- src/arch/x86/acpi.c | 5 +++++ src/arch/x86/include/arch/acpi.h | 3 +++ 2 files changed, 8 insertions(+) (limited to 'src/arch') diff --git a/src/arch/x86/acpi.c b/src/arch/x86/acpi.c index bbeb92f3ba..edb6835dc8 100644 --- a/src/arch/x86/acpi.c +++ b/src/arch/x86/acpi.c @@ -1093,3 +1093,8 @@ void acpi_save_gnvs(u32 gnvs_address) if (gnvs) *gnvs = gnvs_address; } + +__attribute__ ((weak)) int acpi_get_gpe(int gpe) +{ + return -1; /* implemented by SOC */ +} diff --git a/src/arch/x86/include/arch/acpi.h b/src/arch/x86/include/arch/acpi.h index e81ddbf02f..7d2993162d 100644 --- a/src/arch/x86/include/arch/acpi.h +++ b/src/arch/x86/include/arch/acpi.h @@ -677,6 +677,9 @@ static inline int acpi_sleep_from_pm1(uint32_t pm1_cnt) /* Returns ACPI_Sx values. */ int acpi_get_sleep_type(void); +/* Read and clear GPE status */ +int acpi_get_gpe(int gpe); + static inline int acpi_s3_resume_allowed(void) { return IS_ENABLED(CONFIG_HAVE_ACPI_RESUME); -- cgit v1.2.3