diff options
author | Arthur Heymans <arthur@aheymans.xyz> | 2022-12-02 13:27:35 +0100 |
---|---|---|
committer | Felix Held <felix-coreboot@felixheld.de> | 2022-12-07 23:03:04 +0000 |
commit | d90154c8de06b9cfa1b25b7fc22f08a7d8f1c298 (patch) | |
tree | 04ddbd6f89effe1dfc00d8510ba9eb5d3f0c7599 /src/soc/intel/apollolake | |
parent | f1e78a1349d40f2e8a74b15471fc5560976a566f (diff) |
soc/intel: Set IO APIC DMAR entry based on hw
This avoids the need to hardcode the IOAPIC ID.
Change-Id: I0965b511e71c58f1c31433bc54595a5fabb1c206
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/70268
Reviewed-by: Werner Zeh <werner.zeh@siemens.com>
Reviewed-by: Sean Rhodes <sean@starlabs.systems>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Diffstat (limited to 'src/soc/intel/apollolake')
-rw-r--r-- | src/soc/intel/apollolake/acpi.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/soc/intel/apollolake/acpi.c b/src/soc/intel/apollolake/acpi.c index a537b0f42b..b71ca64b72 100644 --- a/src/soc/intel/apollolake/acpi.c +++ b/src/soc/intel/apollolake/acpi.c @@ -3,6 +3,7 @@ #include <acpi/acpi.h> #include <acpi/acpi_gnvs.h> #include <acpi/acpigen.h> +#include <arch/ioapic.h> #include <console/console.h> #include <device/device.h> #include <device/mmio.h> @@ -142,8 +143,8 @@ static unsigned long soc_fill_dmar(unsigned long current) current += acpi_create_dmar_drhd(current, DRHD_INCLUDE_PCI_ALL, 0, defvtbar); - current += acpi_create_dmar_ds_ioapic(current, - 2, ibdf.bus, ibdf.dev, ibdf.fn); + current += acpi_create_dmar_ds_ioapic_from_hw(current, + IO_APIC_ADDR, ibdf.bus, ibdf.dev, ibdf.fn); current += acpi_create_dmar_ds_msi_hpet(current, 0, hbdf.bus, hbdf.dev, hbdf.fn); acpi_dmar_drhd_fixup(tmp, current); |