[coreboot-gerrit] Patch set updated for coreboot: ACPI: Add code to create root port entry in DMAR table

Werner Zeh (werner.zeh@siemens.com) gerrit at coreboot.org
Wed Aug 3 06:23:56 CEST 2016


Werner Zeh (werner.zeh at siemens.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/15912

-gerrit

commit 713c2dd7000dcda85ab8fa18d2450f163fb73c81
Author: Werner Zeh <werner.zeh at 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 with "Address Translation Service" capability can be
    reported in DMAR table in the ATSR scope to let the OS know how to
    handle these devices the right way when VT-d is used.
    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 at 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,



More information about the coreboot-gerrit mailing list