Merge branch 'e1000-upstream' of git://198.78.49.142/linux-2.6
[powerpc.git] / arch / i386 / kernel / cpu / amd.c
index e7697e0..0810f81 100644 (file)
@@ -216,6 +216,12 @@ static void __init init_amd(struct cpuinfo_x86 *c)
                        c->x86_max_cores = 1;
        }
 
+       if (cpuid_eax(0x80000000) >= 0x80000007) {
+               c->x86_power = cpuid_edx(0x80000007);
+               if (c->x86_power & (1<<8))
+                       set_bit(X86_FEATURE_CONSTANT_TSC, c->x86_capability);
+       }
+
 #ifdef CONFIG_X86_HT
        /*
         * On a AMD dual core setup the lower bits of the APIC id
@@ -233,6 +239,7 @@ static void __init init_amd(struct cpuinfo_x86 *c)
                       cpu, c->x86_max_cores, cpu_core_id[cpu]);
        }
 #endif
+
 }
 
 static unsigned int amd_size_cache(struct cpuinfo_x86 * c, unsigned int size)
@@ -275,3 +282,11 @@ int __init amd_init_cpu(void)
 }
 
 //early_arch_initcall(amd_init_cpu);
+
+static int __init amd_exit_cpu(void)
+{
+       cpu_devs[X86_VENDOR_AMD] = NULL;
+       return 0;
+}
+
+late_initcall(amd_exit_cpu);