diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2009-08-19 06:35:53 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2009-08-31 03:35:46 -0400 |
commit | 736decac643e8982655e22ac7f0e5e61c5b7f9bd (patch) | |
tree | 779e2a12713a27de723b0f600a13c746aa4615ad /arch/x86/include/asm/x86_init.h | |
parent | f1d7062a235d057e5d85ed2860bef609e0160cde (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.h | 19 |
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 | */ | ||
86 | struct 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 | */ | ||
107 | struct x86_cpuinit_ops { | ||
108 | void (*setup_percpu_clockev)(void); | ||
91 | }; | 109 | }; |
92 | 110 | ||
93 | extern struct x86_init_ops x86_init; | 111 | extern struct x86_init_ops x86_init; |
112 | extern struct x86_cpuinit_ops x86_cpuinit; | ||
94 | 113 | ||
95 | extern void x86_init_noop(void); | 114 | extern void x86_init_noop(void); |
96 | extern void x86_init_uint_noop(unsigned int unused); | 115 | extern void x86_init_uint_noop(unsigned int unused); |