diff options
author | Arthur Heymans <arthur@aheymans.xyz> | 2019-08-12 09:21:30 +0200 |
---|---|---|
committer | Arthur Heymans <arthur@aheymans.xyz> | 2019-08-13 10:50:51 +0000 |
commit | 08456363f2e30980fa40556bea1c8b0d7e69f7ec (patch) | |
tree | 523b77399c62143d2a7f546fe744967a6d514da3 | |
parent | 15063e8819f2f218033a3b43cbc73963634ff145 (diff) |
nb/intel/gm45: Don't create DMAR tables for disabled IGD
Change-Id: Ia9b74cfb8b68240e87d7adfa28d37db408edb519
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/34836
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Rudolph <siro@das-labor.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
-rw-r--r-- | src/northbridge/intel/gm45/acpi.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/northbridge/intel/gm45/acpi.c b/src/northbridge/intel/gm45/acpi.c index 69ebdd7b75..ef152db213 100644 --- a/src/northbridge/intel/gm45/acpi.c +++ b/src/northbridge/intel/gm45/acpi.c @@ -74,6 +74,9 @@ static unsigned long acpi_fill_dmar(unsigned long current) dev = pcidev_on_root(3, 0); int me_active = dev && dev->enabled; + dev = pcidev_on_root(2, 0); + int igd_active = dev && dev->enabled; + int stepping = pci_read_config8(pcidev_on_root(0, 0), PCI_CLASS_REVISION); @@ -82,7 +85,7 @@ static unsigned long acpi_fill_dmar(unsigned long current) current += acpi_create_dmar_ds_pci(current, 0, 0x1b, 0); acpi_dmar_drhd_fixup(tmp, current); - if (stepping != STEPPING_B2) { + if (stepping != STEPPING_B2 && igd_active) { tmp = current; current += acpi_create_dmar_drhd(current, 0, 0, IOMMU_BASE2); current += acpi_create_dmar_ds_pci(current, 0, 0x2, 0); |