aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pci/intr_remapping.c
diff options
context:
space:
mode:
authorWeidong Han <weidong.han@intel.com>2009-04-17 16:42:15 +0800
committerIngo Molnar <mingo@elte.hu>2009-04-19 10:21:54 +0200
commit03ea81550676296d94596e4337c771c6ba29f542 (patch)
tree85ac9b9541fca0d5cc74571009af32863ba17185 /drivers/pci/intr_remapping.c
parent937582382c71b75b29fbb92615629494e1a05ac0 (diff)
downloadkernel_samsung_smdk4412-03ea81550676296d94596e4337c771c6ba29f542.zip
kernel_samsung_smdk4412-03ea81550676296d94596e4337c771c6ba29f542.tar.gz
kernel_samsung_smdk4412-03ea81550676296d94596e4337c771c6ba29f542.tar.bz2
x86, intr-remap: add option to disable interrupt remapping
Add option "nointremap" to disable interrupt remapping. [ Impact: add new boot option ] Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com> Signed-off-by: Weidong Han <weidong.han@intel.com> Acked-by: David Woodhouse <David.Woodhouse@intel.com> Cc: iommu@lists.linux-foundation.org Cc: allen.m.kay@intel.com Cc: fenghua.yu@intel.com LKML-Reference: <1239957736-6161-5-git-send-email-weidong.han@intel.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'drivers/pci/intr_remapping.c')
-rw-r--r--drivers/pci/intr_remapping.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/pci/intr_remapping.c b/drivers/pci/intr_remapping.c
index 5c21426..842039e 100644
--- a/drivers/pci/intr_remapping.c
+++ b/drivers/pci/intr_remapping.c
@@ -15,6 +15,14 @@ static struct ioapic_scope ir_ioapic[MAX_IO_APICS];
static int ir_ioapic_num;
int intr_remapping_enabled;
+static int disable_intremap;
+static __init int setup_nointremap(char *str)
+{
+ disable_intremap = 1;
+ return 0;
+}
+early_param("nointremap", setup_nointremap);
+
struct irq_2_iommu {
struct intel_iommu *iommu;
u16 irte_index;
@@ -506,6 +514,9 @@ int __init intr_remapping_supported(void)
{
struct dmar_drhd_unit *drhd;
+ if (disable_intremap)
+ return 0;
+
for_each_drhd_unit(drhd) {
struct intel_iommu *iommu = drhd->iommu;