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:
Borislav Petkov 2014-07-29 17:41:23 +02:00
parent 585e4777be
commit 6f9b63a0ae

View File

@ -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);
/* /*