x86: Move percpu clockevents setup to x86_init_ops
paravirt overrides the setup of the default apic timers as per cpu
timers. Moorestown needs to override that as well.
Move it to x86_init_ops setup and create a separate x86_cpuinit struct
which holds the function for the secondary evtl. hotplugabble CPUs.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
diff --git a/arch/x86/kernel/x86_init.c b/arch/x86/kernel/x86_init.c
index 7df020e..e666a98 100644
--- a/arch/x86/kernel/x86_init.c
+++ b/arch/x86/kernel/x86_init.c
@@ -9,6 +9,7 @@
#include <asm/paravirt.h>
#include <asm/mpspec.h>
#include <asm/setup.h>
+#include <asm/apic.h>
#include <asm/e820.h>
#include <asm/irq.h>
@@ -54,4 +55,12 @@
.pagetable_setup_start = native_pagetable_setup_start,
.pagetable_setup_done = native_pagetable_setup_done,
},
+
+ .timers = {
+ .setup_percpu_clockev = setup_boot_APIC_clock,
+ },
+};
+
+__cpuinitdata struct x86_cpuinit_ops x86_cpuinit = {
+ .setup_percpu_clockev = setup_secondary_APIC_clock,
};