aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/cpu
diff options
context:
space:
mode:
authorAndi Kleen <ak@suse.de>2008-01-30 07:33:20 -0500
committerIngo Molnar <mingo@elte.hu>2008-01-30 07:33:20 -0500
commit404ee5b14b68d3cba287c2596588b83790c49f7b (patch)
tree6007a5d2c461c3435edbc9335c84ff45ec4715ca /arch/x86/kernel/cpu
parent8424950b5e85543a494b5d940bb2f5f9f16f56a9 (diff)
x86: convert TSC disabling to generic cpuid disable bitmap
Fix from: Ian Campbell <ijc@hellion.org.uk> Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86/kernel/cpu')
-rw-r--r--arch/x86/kernel/cpu/bugs.c2
-rw-r--r--arch/x86/kernel/cpu/common.c9
2 files changed, 1 insertions, 10 deletions
diff --git a/arch/x86/kernel/cpu/bugs.c b/arch/x86/kernel/cpu/bugs.c
index a96abd453e0d..9b95edcfc6ae 100644
--- a/arch/x86/kernel/cpu/bugs.c
+++ b/arch/x86/kernel/cpu/bugs.c
@@ -154,7 +154,7 @@ static void __init check_config(void)
154 * If we configured ourselves for a TSC, we'd better have one! 154 * If we configured ourselves for a TSC, we'd better have one!
155 */ 155 */
156#ifdef CONFIG_X86_TSC 156#ifdef CONFIG_X86_TSC
157 if (!cpu_has_tsc && !tsc_disable) 157 if (!cpu_has_tsc)
158 panic("Kernel compiled for Pentium+, requires TSC feature!"); 158 panic("Kernel compiled for Pentium+, requires TSC feature!");
159#endif 159#endif
160 160
diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index c66991a04a8a..dfc9563fc4f0 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -446,10 +446,6 @@ void __cpuinit identify_cpu(struct cpuinfo_x86 *c)
446 * we do "generic changes." 446 * we do "generic changes."
447 */ 447 */
448 448
449 /* TSC disabled? */
450 if ( tsc_disable )
451 clear_bit(X86_FEATURE_TSC, c->x86_capability);
452
453 /* If the model name is still unset, do table lookup. */ 449 /* If the model name is still unset, do table lookup. */
454 if ( !c->x86_model_id[0] ) { 450 if ( !c->x86_model_id[0] ) {
455 char *p; 451 char *p;
@@ -650,11 +646,6 @@ void __cpuinit cpu_init(void)
650 646
651 if (cpu_has_vme || cpu_has_tsc || cpu_has_de) 647 if (cpu_has_vme || cpu_has_tsc || cpu_has_de)
652 clear_in_cr4(X86_CR4_VME|X86_CR4_PVI|X86_CR4_TSD|X86_CR4_DE); 648 clear_in_cr4(X86_CR4_VME|X86_CR4_PVI|X86_CR4_TSD|X86_CR4_DE);
653 if (tsc_disable && cpu_has_tsc) {
654 printk(KERN_NOTICE "Disabling TSC...\n");
655 /**** FIX-HPA: DOES THIS REALLY BELONG HERE? ****/
656 clear_bit(X86_FEATURE_TSC, boot_cpu_data.x86_capability);
657 }
658 649
659 load_idt(&idt_descr); 650 load_idt(&idt_descr);
660 switch_to_new_gdt(); 651 switch_to_new_gdt();