mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-15 23:25:07 +00:00
x86: clean up cpu capabilities accesses, centaur.c
Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
16282a8e25
commit
e1a94a974c
1 changed files with 7 additions and 7 deletions
|
@ -282,12 +282,12 @@ static void __cpuinit init_c3(struct cpuinfo_x86 *c)
|
||||||
rdmsr(MSR_VIA_FCR, lo, hi);
|
rdmsr(MSR_VIA_FCR, lo, hi);
|
||||||
lo |= (1<<1 | 1<<7);
|
lo |= (1<<1 | 1<<7);
|
||||||
wrmsr(MSR_VIA_FCR, lo, hi);
|
wrmsr(MSR_VIA_FCR, lo, hi);
|
||||||
set_bit(X86_FEATURE_CX8, c->x86_capability);
|
set_cpu_cap(c, X86_FEATURE_CX8);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Before Nehemiah, the C3's had 3dNOW! */
|
/* Before Nehemiah, the C3's had 3dNOW! */
|
||||||
if (c->x86_model >= 6 && c->x86_model < 9)
|
if (c->x86_model >= 6 && c->x86_model < 9)
|
||||||
set_bit(X86_FEATURE_3DNOW, c->x86_capability);
|
set_cpu_cap(c, X86_FEATURE_3DNOW);
|
||||||
|
|
||||||
get_model_name(c);
|
get_model_name(c);
|
||||||
display_cacheinfo(c);
|
display_cacheinfo(c);
|
||||||
|
@ -327,7 +327,7 @@ static void __cpuinit init_centaur(struct cpuinfo_x86 *c)
|
||||||
* Bit 31 in normal CPUID used for nonstandard 3DNow ID;
|
* Bit 31 in normal CPUID used for nonstandard 3DNow ID;
|
||||||
* 3DNow is IDd by bit 31 in extended CPUID (1*32+31) anyway
|
* 3DNow is IDd by bit 31 in extended CPUID (1*32+31) anyway
|
||||||
*/
|
*/
|
||||||
clear_bit(0*32+31, c->x86_capability);
|
clear_cpu_cap(c, 0*32+31);
|
||||||
|
|
||||||
switch (c->x86) {
|
switch (c->x86) {
|
||||||
case 5:
|
case 5:
|
||||||
|
@ -337,7 +337,7 @@ static void __cpuinit init_centaur(struct cpuinfo_x86 *c)
|
||||||
fcr_set = ECX8|DSMC|EDCTLB|EMMX|ERETSTK;
|
fcr_set = ECX8|DSMC|EDCTLB|EMMX|ERETSTK;
|
||||||
fcr_clr = DPDC;
|
fcr_clr = DPDC;
|
||||||
printk(KERN_NOTICE "Disabling bugged TSC.\n");
|
printk(KERN_NOTICE "Disabling bugged TSC.\n");
|
||||||
clear_bit(X86_FEATURE_TSC, c->x86_capability);
|
clear_cpu_cap(c, X86_FEATURE_TSC);
|
||||||
#ifdef CONFIG_X86_OOSTORE
|
#ifdef CONFIG_X86_OOSTORE
|
||||||
centaur_create_optimal_mcr();
|
centaur_create_optimal_mcr();
|
||||||
/*
|
/*
|
||||||
|
@ -418,12 +418,12 @@ static void __cpuinit init_centaur(struct cpuinfo_x86 *c)
|
||||||
printk(KERN_INFO "Centaur FCR is 0x%X\n", lo);
|
printk(KERN_INFO "Centaur FCR is 0x%X\n", lo);
|
||||||
}
|
}
|
||||||
/* Emulate MTRRs using Centaur's MCR. */
|
/* Emulate MTRRs using Centaur's MCR. */
|
||||||
set_bit(X86_FEATURE_CENTAUR_MCR, c->x86_capability);
|
set_cpu_cap(c, X86_FEATURE_CENTAUR_MCR);
|
||||||
/* Report CX8 */
|
/* Report CX8 */
|
||||||
set_bit(X86_FEATURE_CX8, c->x86_capability);
|
set_cpu_cap(c, X86_FEATURE_CX8);
|
||||||
/* Set 3DNow! on Winchip 2 and above. */
|
/* Set 3DNow! on Winchip 2 and above. */
|
||||||
if (c->x86_model >= 8)
|
if (c->x86_model >= 8)
|
||||||
set_bit(X86_FEATURE_3DNOW, c->x86_capability);
|
set_cpu_cap(c, X86_FEATURE_3DNOW);
|
||||||
/* See if we can find out some more. */
|
/* See if we can find out some more. */
|
||||||
if (cpuid_eax(0x80000000) >= 0x80000005) {
|
if (cpuid_eax(0x80000000) >= 0x80000005) {
|
||||||
/* Yes, we can. */
|
/* Yes, we can. */
|
||||||
|
|
Loading…
Reference in a new issue