aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/irqinit.c
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2009-08-20 03:59:09 -0400
committerThomas Gleixner <tglx@linutronix.de>2009-08-31 03:35:45 -0400
commit66bcaf0bde100a4b54b82fc6fea6ceee2212ffb4 (patch)
tree4d9e290bcf8da7e043d12f047b10ea4b6c3f33ff /arch/x86/kernel/irqinit.c
parentd9112f43021554ded2ef2b9bea5f88ba4b52abe0 (diff)
x86: Move irq_init to x86_init_ops
irq_init is overridden by x86_quirks and by paravirts. Unify the whole mess and make it an unconditional x86_init_ops function which defaults to the standard function and can be overridden by the early platform code. Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86/kernel/irqinit.c')
-rw-r--r--arch/x86/kernel/irqinit.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/arch/x86/kernel/irqinit.c b/arch/x86/kernel/irqinit.c
index acdf088c7583..e0142cda2394 100644
--- a/arch/x86/kernel/irqinit.c
+++ b/arch/x86/kernel/irqinit.c
@@ -140,8 +140,10 @@ void __init init_ISA_irqs(void)
140 } 140 }
141} 141}
142 142
143/* Overridden in paravirt.c */ 143void init_IRQ(void)
144void init_IRQ(void) __attribute__((weak, alias("native_init_IRQ"))); 144{
145 x86_init.irqs.intr_init();
146}
145 147
146static void __init smp_intr_init(void) 148static void __init smp_intr_init(void)
147{ 149{
@@ -238,12 +240,6 @@ void __init native_init_IRQ(void)
238 240
239#ifdef CONFIG_X86_32 241#ifdef CONFIG_X86_32
240 /* 242 /*
241 * Call quirks after call gates are initialised (usually add in
242 * the architecture specific gates):
243 */
244 x86_quirk_intr_init();
245
246 /*
247 * External FPU? Set up irq13 if so, for 243 * External FPU? Set up irq13 if so, for
248 * original braindamaged IBM FERR coupling. 244 * original braindamaged IBM FERR coupling.
249 */ 245 */