aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/time_64.c
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2009-08-19 15:37:03 +0200
committerThomas Gleixner <tglx@linutronix.de>2009-08-31 09:35:46 +0200
commit845b3944bbdf9e9247849bf037f27ff3a3f26d87 (patch)
treeb14b40b5ba650996c646ed760cfa4b3283e04953 /arch/x86/kernel/time_64.c
parentx86: Move percpu clockevents setup to x86_init_ops (diff)
downloadlinux-dev-845b3944bbdf9e9247849bf037f27ff3a3f26d87.tar.xz
linux-dev-845b3944bbdf9e9247849bf037f27ff3a3f26d87.zip
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/kernel/time_64.c')
-rw-r--r--arch/x86/kernel/time_64.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/arch/x86/kernel/time_64.c b/arch/x86/kernel/time_64.c
index 5ba343e61844..38a7df94c107 100644
--- a/arch/x86/kernel/time_64.c
+++ b/arch/x86/kernel/time_64.c
@@ -19,6 +19,7 @@
#include <linux/mca.h>
#include <linux/nmi.h>
+#include <asm/x86_init.h>
#include <asm/i8253.h>
#include <asm/hpet.h>
#include <asm/vgtod.h>
@@ -127,9 +128,13 @@ void __init hpet_time_init(void)
setup_irq(0, &irq0);
}
+static void x86_late_time_init(void)
+{
+ x86_init.timers.timer_init();
+}
+
void __init time_init(void)
{
tsc_init();
-
- late_time_init = choose_time_init();
+ late_time_init = x86_late_time_init;
}