aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86_64/kernel
diff options
context:
space:
mode:
authorAndi Kleen <ak@suse.de>2006-01-11 16:42:02 -0500
committerLinus Torvalds <torvalds@g5.osdl.org>2006-01-11 22:01:09 -0500
commit130951ccb14167c20b87e8bed52b60864ed53c2b (patch)
treec54ee85b8f63d82007d1473a35b24fed3d5e2359 /arch/x86_64/kernel
parent2765130b020c22f803afba74772f33f2ad13bf28 (diff)
[PATCH] x86_64: Support constant TSC feature in future AMD CPUs.
Based on the documentation recently posted by Richard Brunner. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/x86_64/kernel')
-rw-r--r--arch/x86_64/kernel/setup.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/x86_64/kernel/setup.c b/arch/x86_64/kernel/setup.c
index a0e0c9ca8f10..754a05f9b4db 100644
--- a/arch/x86_64/kernel/setup.c
+++ b/arch/x86_64/kernel/setup.c
@@ -910,6 +910,10 @@ static int __init init_amd(struct cpuinfo_x86 *c)
910 } 910 }
911 display_cacheinfo(c); 911 display_cacheinfo(c);
912 912
913 /* c->x86_power is 8000_0007 edx. Bit 8 is constant TSC */
914 if (c->x86_power & (1<<8))
915 set_bit(X86_FEATURE_CONSTANT_TSC, &c->x86_capability);
916
913 if (c->extended_cpuid_level >= 0x80000008) { 917 if (c->extended_cpuid_level >= 0x80000008) {
914 c->x86_max_cores = (cpuid_ecx(0x80000008) & 0xff) + 1; 918 c->x86_max_cores = (cpuid_ecx(0x80000008) & 0xff) + 1;
915 if (c->x86_max_cores & (c->x86_max_cores - 1)) 919 if (c->x86_max_cores & (c->x86_max_cores - 1))
@@ -1268,6 +1272,8 @@ static int show_cpuinfo(struct seq_file *m, void *v)
1268 "ttp", /* thermal trip */ 1272 "ttp", /* thermal trip */
1269 "tm", 1273 "tm",
1270 "stc" 1274 "stc"
1275 "?",
1276 "constant_tsc",
1271 }; 1277 };
1272 1278
1273 1279