Werner Zeh (werner.zeh@siemens.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/15912
-gerrit
commit 8696717b321710a4b7962b2c1085d2fe8d6a1a05 Author: Werner Zeh werner.zeh@siemens.com Date: Wed Jul 27 07:07:20 2016 +0200
ACPI: Add code to create root port entry in DMAR table
PCI root ports need to be reported in DMAR table in the ATSR scope. Add code to create an entry for a PCI root port using the type "SCOPE_PCI_SUB".
Change-Id: Ie2c46db7292d9f1637ffe2e9cfaf6619372ddf13 Signed-off-by: Werner Zeh werner.zeh@siemens.com --- src/arch/x86/acpi.c | 7 +++++++ src/arch/x86/include/arch/acpi.h | 2 ++ 2 files changed, 9 insertions(+)
diff --git a/src/arch/x86/acpi.c b/src/arch/x86/acpi.c index 7d78f04..5893461 100644 --- a/src/arch/x86/acpi.c +++ b/src/arch/x86/acpi.c @@ -477,6 +477,13 @@ static unsigned long acpi_create_dmar_drhd_ds(unsigned long current, return ds->length; }
+unsigned long acpi_create_dmar_drhd_ds_pci_br(unsigned long current, u8 bus, + u8 dev, u8 fn) +{ + return acpi_create_dmar_drhd_ds(current, + SCOPE_PCI_SUB, 0, bus, dev, fn); +} + unsigned long acpi_create_dmar_drhd_ds_pci(unsigned long current, u8 bus, u8 dev, u8 fn) { diff --git a/src/arch/x86/include/arch/acpi.h b/src/arch/x86/include/arch/acpi.h index b27dfff..5d08369 100644 --- a/src/arch/x86/include/arch/acpi.h +++ b/src/arch/x86/include/arch/acpi.h @@ -620,6 +620,8 @@ unsigned long acpi_create_dmar_atsr(unsigned long current, u8 flags, u16 segment); void acpi_dmar_drhd_fixup(unsigned long base, unsigned long current); void acpi_dmar_atsr_fixup(unsigned long base, unsigned long current); +unsigned long acpi_create_dmar_drhd_ds_pci_br(unsigned long current, + u8 bus, u8 dev, u8 fn); unsigned long acpi_create_dmar_drhd_ds_pci(unsigned long current, u8 bus, u8 dev, u8 fn); unsigned long acpi_create_dmar_drhd_ds_ioapic(unsigned long current,