acpi/acpi.c: Fix printing all ACPI tables
Loop over tables in xsdt instead of maintaining a list of local variables to loop over. Some tables were not generated directly in the write_acpi_tables function, like IVRS or SRAT. Now those tables are printed too and the code is simpler. Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> Change-Id: Ie0a6e2b6e2b72b5c8f59e730bea9b51007b507b6 Reviewed-on: https://review.coreboot.org/c/coreboot/+/75860 Reviewed-by: Lean Sheng Tan <sheng.tan@9elements.com> Reviewed-by: Marvin Drees <marvin.drees@9elements.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
This commit is contained in:
parent
b5f6320c69
commit
3e523b495c
|
@ -2136,12 +2136,8 @@ unsigned long write_acpi_tables(unsigned long start)
|
||||||
|
|
||||||
if (CONFIG(DEBUG_ACPICA_COMPATIBLE)) {
|
if (CONFIG(DEBUG_ACPICA_COMPATIBLE)) {
|
||||||
printk(BIOS_DEBUG, "Printing ACPI tables in ACPICA compatible format\n");
|
printk(BIOS_DEBUG, "Printing ACPI tables in ACPICA compatible format\n");
|
||||||
void *acpi_tables[] = { rsdt, xsdt, fadt, facs, slic, ssdt, dsdt,
|
for (size_t i = 0; xsdt->entry[i] != 0; i++) {
|
||||||
mcfg, tcpa, tpm2, madt, lpit, bert };
|
acpidump_print((void *)(uintptr_t)xsdt->entry[i]);
|
||||||
for (size_t i = 0; i < ARRAY_SIZE(acpi_tables); i++) {
|
|
||||||
if (acpi_tables[i] == NULL)
|
|
||||||
continue;
|
|
||||||
acpidump_print(acpi_tables[i]);
|
|
||||||
}
|
}
|
||||||
printk(BIOS_DEBUG, "Done printing ACPI tables in ACPICA compatible format\n");
|
printk(BIOS_DEBUG, "Done printing ACPI tables in ACPICA compatible format\n");
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue