Lean Sheng Tan has submitted this change. ( https://review.coreboot.org/c/coreboot/+/76295?usp=email )
Change subject: acpi/acpi.c: Move setting FADT SCI INT to arch specific code ......................................................................
acpi/acpi.c: Move setting FADT SCI INT to arch specific code
Signed-off-by: Arthur Heymans arthur@aheymans.xyz Change-Id: Ic1533cb520a057b29fc8f926db38338cd3401b18 Reviewed-on: https://review.coreboot.org/c/coreboot/+/76295 Reviewed-by: Eric Lai eric_lai@quanta.corp-partner.google.com Tested-by: build bot (Jenkins) no-reply@coreboot.org Reviewed-by: Lean Sheng Tan sheng.tan@9elements.com Reviewed-by: Kyösti Mälkki kyosti.malkki@gmail.com Reviewed-by: Sridhar Siricilla sridhar.siricilla@intel.com --- M src/acpi/acpi.c M src/arch/x86/acpi.c 2 files changed, 18 insertions(+), 25 deletions(-)
Approvals: Kyösti Mälkki: Looks good to me, approved build bot (Jenkins): Verified Lean Sheng Tan: Looks good to me, approved Sridhar Siricilla: Looks good to me, approved Eric Lai: Looks good to me, approved
diff --git a/src/acpi/acpi.c b/src/acpi/acpi.c index 1330f12..a2e9fdb 100644 --- a/src/acpi/acpi.c +++ b/src/acpi/acpi.c @@ -27,11 +27,6 @@ #include <types.h> #include <version.h>
-#if ENV_X86 -#include <arch/ioapic.h> -#include <arch/smp/mpspec.h> -#endif - static acpi_rsdp_t *valid_rsdp(acpi_rsdp_t *rsdp);
u8 acpi_checksum(u8 *table, u32 length) @@ -139,24 +134,6 @@ return sizeof(acpi_mcfg_mmconfig_t); }
-static u16 acpi_sci_int(void) -{ -#if ENV_X86 - u8 gsi, irq, flags; - - ioapic_get_sci_pin(&gsi, &irq, &flags); - - /* ACPI Release 6.5, 5.2.9 and 5.2.15.5. */ - if (!CONFIG(ACPI_HAVE_PCAT_8259)) - return gsi; - - assert(irq < 16); - return irq; -#else - return 0; -#endif -} - static void acpi_create_madt(acpi_header_t *header, void *unused) { acpi_madt_t *madt = (acpi_madt_t *)header; @@ -1103,8 +1080,6 @@
fadt->preferred_pm_profile = acpi_get_preferred_pm_profile();
- fadt->sci_int = acpi_sci_int(); - arch_fill_fadt(fadt);
acpi_fill_fadt(fadt); diff --git a/src/arch/x86/acpi.c b/src/arch/x86/acpi.c index ffa3463..018cdf5 100644 --- a/src/arch/x86/acpi.c +++ b/src/arch/x86/acpi.c @@ -1,12 +1,30 @@ /* SPDX-License-Identifier: GPL-2.0-only */
#include <acpi/acpi.h> +#include <arch/ioapic.h> #include <cf9_reset.h> #include <cpu/x86/smm.h> #include <pc80/mc146818rtc.h>
+static u16 acpi_sci_int(void) +{ + u8 gsi, irq, flags; + + ioapic_get_sci_pin(&gsi, &irq, &flags); + + /* ACPI Release 6.5, 5.2.9 and 5.2.15.5. */ + if (!CONFIG(ACPI_HAVE_PCAT_8259)) + return gsi; + + assert(irq < 16); + return irq; +} + + void arch_fill_fadt(acpi_fadt_t *fadt) { + fadt->sci_int = acpi_sci_int(); + if (CONFIG(HAVE_CF9_RESET)) { fadt->reset_reg.space_id = ACPI_ADDRESS_SPACE_IO; fadt->reset_reg.bit_width = 8;