[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20191106051130.485-1-baolu.lu@linux.intel.com>
Date: Wed, 6 Nov 2019 13:11:30 +0800
From: Lu Baolu <baolu.lu@...ux.intel.com>
To: Joerg Roedel <joro@...tes.org>,
David Woodhouse <dwmw2@...radead.org>
Cc: ashok.raj@...el.com, jacob.jun.pan@...el.com, kevin.tian@...el.com,
iommu@...ts.linux-foundation.org, linux-kernel@...r.kernel.org,
Lu Baolu <baolu.lu@...ux.intel.com>
Subject: [PATCH 1/1] iommu/vt-d: Add Kconfig option to enable/disable scalable mode
This adds a Kconfig option INTEL_IOMMU_SCALABLE_MODE_ON to make
it easier for distributions to enable or disable the Intel IOMMU
scalable mode during kernel build.
Signed-off-by: Lu Baolu <baolu.lu@...ux.intel.com>
---
drivers/iommu/Kconfig | 10 ++++++++++
drivers/iommu/intel-iommu.c | 5 +++++
2 files changed, 15 insertions(+)
diff --git a/drivers/iommu/Kconfig b/drivers/iommu/Kconfig
index e3842eabcfdd..32f30e27791c 100644
--- a/drivers/iommu/Kconfig
+++ b/drivers/iommu/Kconfig
@@ -242,6 +242,16 @@ config INTEL_IOMMU_FLOPPY_WA
workaround will setup a 1:1 mapping for the first
16MiB to make floppy (an ISA device) work.
+config INTEL_IOMMU_SCALABLE_MODE_ON
+ def_bool n
+ prompt "Enable Intel IOMMU scalable mode by default"
+ depends on INTEL_IOMMU
+ help
+ Selecting this option will enable the scalable mode if
+ hardware presents the capability. If this option is not
+ selected, scalable mode support could also be enabled
+ by passing intel_iommu=sm_on to the kernel.
+
config IRQ_REMAP
bool "Support for Interrupt Remapping"
depends on X86_64 && X86_IO_APIC && PCI_MSI && ACPI
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index 0f2f7124c1ca..545eb3b5c083 100644
--- a/drivers/iommu/intel-iommu.c
+++ b/drivers/iommu/intel-iommu.c
@@ -357,7 +357,12 @@ int dmar_disabled = 0;
int dmar_disabled = 1;
#endif /*CONFIG_INTEL_IOMMU_DEFAULT_ON*/
+#ifdef CONFIG_INTEL_IOMMU_SCALABLE_MODE_ON
+int intel_iommu_sm = 1;
+#else
int intel_iommu_sm;
+#endif /* CONFIG_INTEL_IOMMU_SCALABLE_MODE_ON */
+
int intel_iommu_enabled = 0;
EXPORT_SYMBOL_GPL(intel_iommu_enabled);
--
2.17.1
Powered by blists - more mailing lists