aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pci/dmar.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/pci/dmar.c')
-rw-r--r--drivers/pci/dmar.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/drivers/pci/dmar.c b/drivers/pci/dmar.c
index aba151ca6d26..23a119e6485e 100644
--- a/drivers/pci/dmar.c
+++ b/drivers/pci/dmar.c
@@ -449,6 +449,22 @@ int __init early_dmar_detect(void)
449 return (ACPI_SUCCESS(status) ? 1 : 0); 449 return (ACPI_SUCCESS(status) ? 1 : 0);
450} 450}
451 451
452void __init detect_intel_iommu(void)
453{
454 int ret;
455
456 ret = early_dmar_detect();
457
458#ifdef CONFIG_DMAR
459 {
460 if (ret && !no_iommu && !iommu_detected && !swiotlb &&
461 !dmar_disabled)
462 iommu_detected = 1;
463 }
464#endif
465}
466
467
452int alloc_iommu(struct dmar_drhd_unit *drhd) 468int alloc_iommu(struct dmar_drhd_unit *drhd)
453{ 469{
454 struct intel_iommu *iommu; 470 struct intel_iommu *iommu;