diff options
author | Allen Kay <allen.m.kay@intel.com> | 2011-04-02 15:49:25 +0100 |
---|---|---|
committer | Allen Kay <allen.m.kay@intel.com> | 2011-04-02 15:49:25 +0100 |
commit | 0be477c900b73d6a2d7cceb0cded9df0d48179f2 (patch) | |
tree | fe6b1ce9708d47c95e5b892b6c27943d849e1174 /xen/arch/x86/apic.c | |
parent | 9da48f2428c5970f0350c74e07c4ca479d3fa06d (diff) | |
download | xen-0be477c900b73d6a2d7cceb0cded9df0d48179f2.tar.gz xen-0be477c900b73d6a2d7cceb0cded9df0d48179f2.tar.bz2 xen-0be477c900b73d6a2d7cceb0cded9df0d48179f2.zip |
[VTD] check BIOS settings before enabling interrupt remapping or x2apic
Check flags field in ACPI DMAR structure before enabling interrupt
remapping or x2apic. This allows platform vendors to disable
interrupt remapping or x2apic features if on board BIOS does not
support them.
Signed-off-by: Allen Kay <allen.m.kay@intel.com>
Diffstat (limited to 'xen/arch/x86/apic.c')
-rw-r--r-- | xen/arch/x86/apic.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/xen/arch/x86/apic.c b/xen/arch/x86/apic.c index 64d0c88c5b..cfdb13abf6 100644 --- a/xen/arch/x86/apic.c +++ b/xen/arch/x86/apic.c @@ -516,7 +516,7 @@ static void resume_x2apic(void) mask_8259A(); mask_IO_APIC_setup(ioapic_entries); - iommu_enable_IR(); + iommu_enable_x2apic_IR(); __enable_x2apic(); restore_IO_APIC_setup(ioapic_entries); @@ -735,7 +735,7 @@ int lapic_suspend(void) local_irq_save(flags); disable_local_APIC(); - iommu_disable_IR(); + iommu_disable_x2apic_IR(); local_irq_restore(flags); return 0; } @@ -958,7 +958,7 @@ void __init x2apic_bsp_setup(void) mask_8259A(); mask_IO_APIC_setup(ioapic_entries); - if ( iommu_enable_IR() ) + if ( iommu_enable_x2apic_IR() ) { if ( x2apic_enabled ) panic("Interrupt remapping could not be enabled while " |