summaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/irqinit_32.c
diff options
context:
space:
mode:
authorPekka Enberg2009-04-09 10:52:27 +0200
committerIngo Molnar2009-04-10 14:35:57 +0200
commitab19c25abd14db28d7454f00805ea59f22ed6057 (patch)
treec6cea8626268f2e861d52281857ac9e886d22f70 /arch/x86/kernel/irqinit_32.c
parentx86: unify trivial differences in irqinit_{32,64}.c (diff)
downloadkernel-qcow2-linux-ab19c25abd14db28d7454f00805ea59f22ed6057.tar.gz
kernel-qcow2-linux-ab19c25abd14db28d7454f00805ea59f22ed6057.tar.xz
kernel-qcow2-linux-ab19c25abd14db28d7454f00805ea59f22ed6057.zip
x86: unify apic_intr_init() in irqinit_{32,64}.c
Impact: cleanup Reviewed-by Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/irqinit_32.c')
-rw-r--r--arch/x86/kernel/irqinit_32.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/arch/x86/kernel/irqinit_32.c b/arch/x86/kernel/irqinit_32.c
index 72ce94268d31..f3be5e974275 100644
--- a/arch/x86/kernel/irqinit_32.c
+++ b/arch/x86/kernel/irqinit_32.c
@@ -180,7 +180,12 @@ static void __init apic_intr_init(void)
{
smp_intr_init();
-#ifdef CONFIG_X86_LOCAL_APIC
+#ifdef CONFIG_X86_64
+ alloc_intr_gate(THERMAL_APIC_VECTOR, thermal_interrupt);
+ alloc_intr_gate(THRESHOLD_APIC_VECTOR, threshold_interrupt);
+#endif
+
+#if defined(CONFIG_X86_64) || defined(CONFIG_X86_LOCAL_APIC)
/* self generated IPI for local APIC timer */
alloc_intr_gate(LOCAL_TIMER_VECTOR, apic_timer_interrupt);
@@ -192,10 +197,12 @@ static void __init apic_intr_init(void)
alloc_intr_gate(ERROR_APIC_VECTOR, error_interrupt);
#endif
+#ifdef CONFIG_X86_32
#if defined(CONFIG_X86_LOCAL_APIC) && defined(CONFIG_X86_MCE_P4THERMAL)
/* thermal monitor LVT interrupt */
alloc_intr_gate(THERMAL_APIC_VECTOR, thermal_interrupt);
#endif
+#endif
}
#ifdef CONFIG_X86_32