ACPI: Use common code for MADT LAPIC NMIs

Use the broadcast ID to deliver LINT1 as NMI to all CPUs,
instead of listing individual LAPIC IDs.

Change-Id: Iaf714d8c2aabd16c59c3bcebc4a207406fc85ca9
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/69527
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
This commit is contained in:
Kyösti Mälkki
2022-11-12 21:13:45 +02:00
parent da1a58a503
commit 66b5e1b32d
13 changed files with 32 additions and 95 deletions

View File

@@ -69,12 +69,6 @@ static unsigned long acpi_madt_irq_overrides(unsigned long current)
current +=
acpi_create_madt_irqoverride((void *)current, 0, sci, sci, flags);
/* NMI */
current += acpi_create_madt_lapic_nmi((acpi_madt_lapic_nmi_t *)current, 0xff, 5, 1);
if (is_x2apic_mode())
current += acpi_create_madt_lx2apic_nmi((acpi_madt_lx2apic_nmi_t *)current,
0xffffffff, 0x5, 1);
return current;
}
@@ -91,7 +85,7 @@ unsigned long acpi_fill_madt(unsigned long current)
size_t ioapic_entries;
/* Local APICs */
current = acpi_create_madt_lapics(current);
current = acpi_create_madt_lapics_with_nmis(current);
/* IOAPIC */
ioapic_table = soc_get_ioapic_info(&ioapic_entries);