mirror of
https://github.com/torvalds/linux.git
synced 2024-11-16 17:12:06 +00:00
x86, CPU, AMD: Move K8 TLB flush filter workaround to K8 code
This belongs with the rest of the code in init_amd_k8() which gets executed on family 0xf. Signed-off-by: Borislav Petkov <bp@suse.de>
This commit is contained in:
parent
585e4777be
commit
6f9b63a0ae
@ -566,6 +566,17 @@ static void init_amd_k8(struct cpuinfo_x86 *c)
|
|||||||
|
|
||||||
if (!c->x86_model_id[0])
|
if (!c->x86_model_id[0])
|
||||||
strcpy(c->x86_model_id, "Hammer");
|
strcpy(c->x86_model_id, "Hammer");
|
||||||
|
|
||||||
|
#ifdef CONFIG_SMP
|
||||||
|
/*
|
||||||
|
* Disable TLB flush filter by setting HWCR.FFDIS on K8
|
||||||
|
* bit 6 of msr C001_0015
|
||||||
|
*
|
||||||
|
* Errata 63 for SH-B3 steppings
|
||||||
|
* Errata 122 for all steppings (F+ have it disabled by default)
|
||||||
|
*/
|
||||||
|
msr_set_bit(MSR_K7_HWCR, 6);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
static void init_amd_gh(struct cpuinfo_x86 *c)
|
static void init_amd_gh(struct cpuinfo_x86 *c)
|
||||||
@ -636,18 +647,6 @@ static void init_amd(struct cpuinfo_x86 *c)
|
|||||||
{
|
{
|
||||||
u32 dummy;
|
u32 dummy;
|
||||||
|
|
||||||
#ifdef CONFIG_SMP
|
|
||||||
/*
|
|
||||||
* Disable TLB flush filter by setting HWCR.FFDIS on K8
|
|
||||||
* bit 6 of msr C001_0015
|
|
||||||
*
|
|
||||||
* Errata 63 for SH-B3 steppings
|
|
||||||
* Errata 122 for all steppings (F+ have it disabled by default)
|
|
||||||
*/
|
|
||||||
if (c->x86 == 0xf)
|
|
||||||
msr_set_bit(MSR_K7_HWCR, 6);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
early_init_amd(c);
|
early_init_amd(c);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Loading…
Reference in New Issue
Block a user