summaryrefslogtreecommitdiff
path: root/arch/x86/include/asm/x86_init.h
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2009-08-20 19:06:25 +0400
committerThomas Gleixner <tglx@linutronix.de>2009-08-31 11:35:47 +0400
commit2d826404f0bdcac2a4dd7e3c446b70d6a3b63b78 (patch)
tree7db2dc0fbde3a25a89f1fc1514152567f612ccde /arch/x86/include/asm/x86_init.h
parent47926214d8b2bef13b2be57c500194a804f16198 (diff)
downloadlinux-2d826404f0bdcac2a4dd7e3c446b70d6a3b63b78.tar.xz
x86: Move tsc_calibration to x86_init_ops
TSC calibration is modified by the vmware hypervisor and paravirt by separate means. Moorestown wants to add its own calibration routine as well. So make calibrate_tsc a proper x86_init_ops function and override it by paravirt or by the early setup of the vmware hypervisor. 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.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/x86/include/asm/x86_init.h b/arch/x86/include/asm/x86_init.h
index f8bdd2271a04..20df51871713 100644
--- a/arch/x86/include/asm/x86_init.h
+++ b/arch/x86/include/asm/x86_init.h
@@ -112,8 +112,17 @@ struct x86_cpuinit_ops {
void (*setup_percpu_clockev)(void);
};
+/**
+ * struct x86_platform_ops - platform specific runtime functions
+ * @calibrate_tsc: calibrate TSC
+ */
+struct x86_platform_ops {
+ unsigned long (*calibrate_tsc)(void);
+};
+
extern struct x86_init_ops x86_init;
extern struct x86_cpuinit_ops x86_cpuinit;
+extern struct x86_platform_ops x86_platform;
extern void x86_init_noop(void);
extern void x86_init_uint_noop(unsigned int unused);