summaryrefslogtreecommitdiff
path: root/arch/x86/kernel/x86_init.c
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2009-08-19 12:35:53 +0200
committerThomas Gleixner <tglx@linutronix.de>2009-08-31 09:35:46 +0200
commit736decac643e8982655e22ac7f0e5e61c5b7f9bd (patch)
tree779e2a12713a27de723b0f600a13c746aa4615ad /arch/x86/kernel/x86_init.c
parentf1d7062a235d057e5d85ed2860bef609e0160cde (diff)
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>
Diffstat (limited to 'arch/x86/kernel/x86_init.c')
-rw-r--r--arch/x86/kernel/x86_init.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/x86/kernel/x86_init.c b/arch/x86/kernel/x86_init.c
index 7df020e6740d..e666a98db7cd 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 @@ struct __initdata x86_init_ops x86_init = {
.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,
};