x2apic/intr-remap: decouple interrupt remapping from x2apic

interrupt remapping must be enabled before enabling x2apic, but
interrupt remapping doesn't depend on x2apic, it can be used
separately. Enable interrupt remapping in init_dmars even x2apic
is not supported.

[dwmw2: Update Kconfig accordingly, fix build with INTR_REMAP && !X2APIC]

Signed-off-by: Weidong Han <[email protected]>
Acked-by: Ingo Molnar <[email protected]>
Signed-off-by: David Woodhouse <[email protected]>
This commit is contained in:
Han, Weidong 2009-04-03 17:15:50 +08:00 • committed by David Woodhouse
commit d0b03bd1c6
4 changed files with 35 additions and 8 deletions

View file

@ -1947,6 +1947,15 @@ static int __init init_dmars(void)
}
}
#ifdef CONFIG_INTR_REMAP
if (!intr_remapping_enabled) {
ret = enable_intr_remapping(0);
if (ret)
printk(KERN_ERR
"IOMMU: enable interrupt remapping failed\n");
}
#endif
/*
* For each rmrr
* for each dev attached to rmrr