aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/include/asm/x86_init.h
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2009-08-19 06:35:53 -0400
committerThomas Gleixner <tglx@linutronix.de>2009-08-31 03:35:46 -0400
commit736decac643e8982655e22ac7f0e5e61c5b7f9bd (patch)
tree779e2a12713a27de723b0f600a13c746aa4615ad /arch/x86/include/asm/x86_init.h
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/include/asm/x86_init.h')
-rw-r--r--arch/x86/include/asm/x86_init.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/arch/x86/include/asm/x86_init.h b/arch/x86/include/asm/x86_init.h
index b9bb4faefc48..b7d258f4c401 100644
--- a/arch/x86/include/asm/x86_init.h
+++ b/arch/x86/include/asm/x86_init.h
@@ -79,6 +79,15 @@ struct x86_init_paging {
79}; 79};
80 80
81/** 81/**
82 * struct x86_init_timers - platform specific timer setup
83 * @setup_perpcu_clockev: set up the per cpu clock event device for the
84 * boot cpu
85 */
86struct x86_init_timers {
87 void (*setup_percpu_clockev)(void);
88};
89
90/**
82 * struct x86_init_ops - functions for platform specific setup 91 * struct x86_init_ops - functions for platform specific setup
83 * 92 *
84 */ 93 */
@@ -88,9 +97,19 @@ struct x86_init_ops {
88 struct x86_init_irqs irqs; 97 struct x86_init_irqs irqs;
89 struct x86_init_oem oem; 98 struct x86_init_oem oem;
90 struct x86_init_paging paging; 99 struct x86_init_paging paging;
100 struct x86_init_timers timers;
101};
102
103/**
104 * struct x86_cpuinit_ops - platform specific cpu hotplug setups
105 * @setup_percpu_clockev: set up the per cpu clock event device
106 */
107struct x86_cpuinit_ops {
108 void (*setup_percpu_clockev)(void);
91}; 109};
92 110
93extern struct x86_init_ops x86_init; 111extern struct x86_init_ops x86_init;
112extern struct x86_cpuinit_ops x86_cpuinit;
94 113
95extern void x86_init_noop(void); 114extern void x86_init_noop(void);
96extern void x86_init_uint_noop(unsigned int unused); 115extern void x86_init_uint_noop(unsigned int unused);