aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/pci/dmar.c7
-rw-r--r--drivers/pci/intel-iommu.c6
2 files changed, 9 insertions, 4 deletions
diff --git a/drivers/pci/dmar.c b/drivers/pci/dmar.c
index 22b02c6df854..437399667e5a 100644
--- a/drivers/pci/dmar.c
+++ b/drivers/pci/dmar.c
@@ -613,10 +613,13 @@ void __init detect_intel_iommu(void)
613 "x2apic and Intr-remapping.\n"); 613 "x2apic and Intr-remapping.\n");
614#endif 614#endif
615#ifdef CONFIG_DMAR 615#ifdef CONFIG_DMAR
616 if (ret && !no_iommu && !iommu_detected && !swiotlb && 616 if (ret && !no_iommu && !iommu_detected && !dmar_disabled)
617 !dmar_disabled)
618 iommu_detected = 1; 617 iommu_detected = 1;
619#endif 618#endif
619#ifdef CONFIG_X86
620 if (ret)
621 x86_init.iommu.iommu_init = intel_iommu_init;
622#endif
620 } 623 }
621 early_acpi_os_unmap_memory(dmar_tbl, dmar_tbl_size); 624 early_acpi_os_unmap_memory(dmar_tbl, dmar_tbl_size);
622 dmar_tbl = NULL; 625 dmar_tbl = NULL;
diff --git a/drivers/pci/intel-iommu.c b/drivers/pci/intel-iommu.c
index b1e97e682500..43d755a2e14a 100644
--- a/drivers/pci/intel-iommu.c
+++ b/drivers/pci/intel-iommu.c
@@ -3231,7 +3231,7 @@ int __init intel_iommu_init(void)
3231 * Check the need for DMA-remapping initialization now. 3231 * Check the need for DMA-remapping initialization now.
3232 * Above initialization will also be used by Interrupt-remapping. 3232 * Above initialization will also be used by Interrupt-remapping.
3233 */ 3233 */
3234 if (no_iommu || swiotlb || dmar_disabled) 3234 if (no_iommu || dmar_disabled)
3235 return -ENODEV; 3235 return -ENODEV;
3236 3236
3237 iommu_init_mempool(); 3237 iommu_init_mempool();
@@ -3252,7 +3252,9 @@ int __init intel_iommu_init(void)
3252 "PCI-DMA: Intel(R) Virtualization Technology for Directed I/O\n"); 3252 "PCI-DMA: Intel(R) Virtualization Technology for Directed I/O\n");
3253 3253
3254 init_timer(&unmap_timer); 3254 init_timer(&unmap_timer);
3255 force_iommu = 1; 3255#ifdef CONFIG_SWIOTLB
3256 swiotlb = 0;
3257#endif
3256 dma_ops = &intel_dma_ops; 3258 dma_ops = &intel_dma_ops;
3257 3259
3258 init_iommu_sysfs(); 3260 init_iommu_sysfs();