diff options
Diffstat (limited to 'drivers/pci/dmar.c')
| -rw-r--r-- | drivers/pci/dmar.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/pci/dmar.c b/drivers/pci/dmar.c index b952ebc7a78b..416f6ac65b76 100644 --- a/drivers/pci/dmar.c +++ b/drivers/pci/dmar.c | |||
| @@ -645,10 +645,13 @@ void __init detect_intel_iommu(void) | |||
| 645 | "x2apic and Intr-remapping.\n"); | 645 | "x2apic and Intr-remapping.\n"); |
| 646 | #endif | 646 | #endif |
| 647 | #ifdef CONFIG_DMAR | 647 | #ifdef CONFIG_DMAR |
| 648 | if (ret && !no_iommu && !iommu_detected && !swiotlb && | 648 | if (ret && !no_iommu && !iommu_detected && !dmar_disabled) |
| 649 | !dmar_disabled) | ||
| 650 | iommu_detected = 1; | 649 | iommu_detected = 1; |
| 651 | #endif | 650 | #endif |
| 651 | #ifdef CONFIG_X86 | ||
| 652 | if (ret) | ||
| 653 | x86_init.iommu.iommu_init = intel_iommu_init; | ||
| 654 | #endif | ||
| 652 | } | 655 | } |
| 653 | early_acpi_os_unmap_memory(dmar_tbl, dmar_tbl_size); | 656 | early_acpi_os_unmap_memory(dmar_tbl, dmar_tbl_size); |
| 654 | dmar_tbl = NULL; | 657 | dmar_tbl = NULL; |
