From d4aa2c434869edffc7d49b9e52ba8c182b8ef69a Mon Sep 17 00:00:00 2001 From: Martin Roth Date: Tue, 6 Sep 2016 10:28:22 -0600 Subject: [PATCH] include/arch/acpi.h: change IVRS efr field to iommu_feature_info The field that was previously named 'efr' is actually the iommu feature info field. The efr field is a 64-bit field that is only present in type 11h or type 40h headers that follows the iommu feature info field. Change-Id: I62c158a258d43bf1912fedd63cc31b80321a27c6 Signed-off-by: Martin Roth Reviewed-on: https://review.coreboot.org/16508 Tested-by: build bot (Jenkins) Reviewed-by: Paul Menzel Tested-by: Raptor Engineering Automated Test Stand Reviewed-by: Patrick Georgi --- src/arch/x86/include/arch/acpi.h | 6 +++--- src/southbridge/amd/sr5650/sr5650.c | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/arch/x86/include/arch/acpi.h b/src/arch/x86/include/arch/acpi.h index a30c5f105c..e81ddbf02f 100644 --- a/src/arch/x86/include/arch/acpi.h +++ b/src/arch/x86/include/arch/acpi.h @@ -225,7 +225,7 @@ typedef struct acpi_madt { typedef struct acpi_ivrs_info { } __attribute__ ((packed)) acpi_ivrs_info_t; -/* IVRS IVHD (I/O Virtualization Hardware Definition Block) */ +/* IVRS IVHD (I/O Virtualization Hardware Definition Block) Type 10h */ typedef struct acpi_ivrs_ivhd { uint8_t type; uint8_t flags; @@ -236,11 +236,11 @@ typedef struct acpi_ivrs_ivhd { uint32_t iommu_base_high; uint16_t pci_segment_group; uint16_t iommu_info; - uint32_t efr; + uint32_t iommu_feature_info; uint8_t entry[0]; } __attribute__ ((packed)) acpi_ivrs_ivhd_t; -/* IVRS (I/O Virtualization Reporting Structure) */ +/* IVRS (I/O Virtualization Reporting Structure) Type 10h */ typedef struct acpi_ivrs { struct acpi_table_header header; uint32_t iv_info; diff --git a/src/southbridge/amd/sr5650/sr5650.c b/src/southbridge/amd/sr5650/sr5650.c index 87845c6d89..853678382b 100644 --- a/src/southbridge/amd/sr5650/sr5650.c +++ b/src/southbridge/amd/sr5650/sr5650.c @@ -860,7 +860,7 @@ static unsigned long acpi_fill_ivrs(acpi_ivrs_t* ivrs, unsigned long current) ivrs->ivhd.pci_segment_group = 0x0; ivrs->ivhd.iommu_info = 0x0; ivrs->ivhd.iommu_info |= (0x14 << 8); - ivrs->ivhd.efr = 0x0; + ivrs->ivhd.iommu_feature_info = 0x0; /* Describe HPET */ p = (uint8_t *)current;