From 0c1dd9c84188cc150a05302cc9b4af476a761d2b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ky=C3=B6sti=20M=C3=A4lkki?= Date: Wed, 17 Jun 2020 23:37:49 +0300 Subject: ACPI: Drop typedef global_nvs_t MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bring all GNVS related initialisation function to global scope to force identical signatures. Followup work is likely to remove some as duplicates. Change-Id: Id4299c41d79c228f3d35bc7cb9bf427ce1e82ba1 Signed-off-by: Kyösti Mälkki Reviewed-on: https://review.coreboot.org/c/coreboot/+/42489 Reviewed-by: Patrick Georgi Tested-by: build bot (Jenkins) --- src/include/acpi/acpi_gnvs.h | 17 +++++++++++++++++ src/include/cpu/x86/smm.h | 1 + 2 files changed, 18 insertions(+) (limited to 'src/include') diff --git a/src/include/acpi/acpi_gnvs.h b/src/include/acpi/acpi_gnvs.h index cc0c4710ae..6173fa168b 100644 --- a/src/include/acpi/acpi_gnvs.h +++ b/src/include/acpi/acpi_gnvs.h @@ -16,4 +16,21 @@ size_t gnvs_size_of_array(void); uint32_t *gnvs_cbmc_ptr(void); void *gnvs_chromeos_ptr(void); +/* + * Creates acpi gnvs and adds it to the DSDT table. + * GNVS creation is chipset specific and is done in soc specific acpi.c file. + */ +struct device; +void southbridge_inject_dsdt(const struct device *device); + +/* + * This function populates the gnvs structure in acpi table. + * Defined as weak in common acpi as gnvs structure definition is + * chipset specific. + */ +struct global_nvs; + +void acpi_create_gnvs(struct global_nvs *gnvs); +void acpi_init_gnvs(struct global_nvs *gnvs); + #endif diff --git a/src/include/cpu/x86/smm.h b/src/include/cpu/x86/smm.h index cdc690178a..56352c5d6f 100644 --- a/src/include/cpu/x86/smm.h +++ b/src/include/cpu/x86/smm.h @@ -86,6 +86,7 @@ struct smm_module_params { typedef asmlinkage void (*smm_handler_t)(void *); /* SMM Runtime helpers. */ +struct global_nvs *smm_get_gnvs(void); /* Entry point for SMM modules. */ asmlinkage void smm_handler_start(void *params); -- cgit v1.2.3