aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/include/asm/setup.h
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2009-08-19 09:37:03 -0400
committerThomas Gleixner <tglx@linutronix.de>2009-08-31 03:35:46 -0400
commit845b3944bbdf9e9247849bf037f27ff3a3f26d87 (patch)
treeb14b40b5ba650996c646ed760cfa4b3283e04953 /arch/x86/include/asm/setup.h
parent736decac643e8982655e22ac7f0e5e61c5b7f9bd (diff)
x86: Add timer_init to x86_init_ops
The timer init code is convoluted with several quirks and the paravirt timer chooser. Figuring out which code path is actually taken is not for the faint hearted. Move the numaq TSC quirk to tsc_pre_init x86_init_ops function and replace the paravirt time chooser and the remaining x86 quirk with a simple x86_init_ops function. Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86/include/asm/setup.h')
-rw-r--r--arch/x86/include/asm/setup.h21
1 files changed, 2 insertions, 19 deletions
diff --git a/arch/x86/include/asm/setup.h b/arch/x86/include/asm/setup.h
index 58b58952b80d..861e1fe2303b 100644
--- a/arch/x86/include/asm/setup.h
+++ b/arch/x86/include/asm/setup.h
@@ -5,24 +5,6 @@
5 5
6#define COMMAND_LINE_SIZE 2048 6#define COMMAND_LINE_SIZE 2048
7 7
8#ifndef __ASSEMBLY__
9
10#include <asm/x86_init.h>
11
12/*
13 * Any setup quirks to be performed?
14 */
15
16struct x86_quirks {
17 int (*arch_pre_time_init)(void);
18 int (*arch_time_init)(void);
19};
20
21extern void x86_quirk_pre_time_init(void);
22extern void x86_quirk_time_init(void);
23
24#endif /* __ASSEMBLY__ */
25
26#ifdef __i386__ 8#ifdef __i386__
27 9
28#include <linux/pfn.h> 10#include <linux/pfn.h>
@@ -42,6 +24,7 @@ extern void x86_quirk_time_init(void);
42 24
43#ifndef __ASSEMBLY__ 25#ifndef __ASSEMBLY__
44#include <asm/bootparam.h> 26#include <asm/bootparam.h>
27#include <asm/x86_init.h>
45 28
46/* Interrupt control for vSMPowered x86_64 systems */ 29/* Interrupt control for vSMPowered x86_64 systems */
47#ifdef CONFIG_X86_64 30#ifdef CONFIG_X86_64
@@ -60,11 +43,11 @@ static inline void visws_early_detect(void) { }
60static inline int is_visws_box(void) { return 0; } 43static inline int is_visws_box(void) { return 0; }
61#endif 44#endif
62 45
63extern struct x86_quirks *x86_quirks;
64extern unsigned long saved_video_mode; 46extern unsigned long saved_video_mode;
65 47
66extern void reserve_standard_io_resources(void); 48extern void reserve_standard_io_resources(void);
67extern void i386_reserve_resources(void); 49extern void i386_reserve_resources(void);
50extern void setup_default_timer_irq(void);
68 51
69#ifndef _SETUP 52#ifndef _SETUP
70 53