@@ -186,7 +186,7 @@ void intel_unlock_cpuid_leafs(struct cpuinfo_x86 *c)
186
186
if (boot_cpu_data .x86_vendor != X86_VENDOR_INTEL )
187
187
return ;
188
188
189
- if (c -> x86 < 6 || ( c -> x86 == 6 && c -> x86_model < 0xd ) )
189
+ if (c -> x86_vfm < INTEL_PENTIUM_M_DOTHAN )
190
190
return ;
191
191
192
192
/*
@@ -341,9 +341,7 @@ static void bsp_init_intel(struct cpuinfo_x86 *c)
341
341
int ppro_with_ram_bug (void )
342
342
{
343
343
/* Uses data from early_cpu_detect now */
344
- if (boot_cpu_data .x86_vendor == X86_VENDOR_INTEL &&
345
- boot_cpu_data .x86 == 6 &&
346
- boot_cpu_data .x86_model == 1 &&
344
+ if (boot_cpu_data .x86_vfm == INTEL_PENTIUM_PRO &&
347
345
boot_cpu_data .x86_stepping < 8 ) {
348
346
pr_info ("Pentium Pro with Errata#50 detected. Taking evasive action.\n" );
349
347
return 1 ;
@@ -404,7 +402,8 @@ static void intel_workarounds(struct cpuinfo_x86 *c)
404
402
* SEP CPUID bug: Pentium Pro reports SEP but doesn't have it until
405
403
* model 3 mask 3
406
404
*/
407
- if ((c -> x86 <<8 | c -> x86_model <<4 | c -> x86_stepping ) < 0x633 )
405
+ if ((c -> x86_vfm == INTEL_PENTIUM_II_KLAMATH && c -> x86_stepping < 3 ) ||
406
+ c -> x86_vfm < INTEL_PENTIUM_II_KLAMATH )
408
407
clear_cpu_cap (c , X86_FEATURE_SEP );
409
408
410
409
/*
@@ -606,7 +605,7 @@ static unsigned int intel_size_cache(struct cpuinfo_x86 *c, unsigned int size)
606
605
* to determine which, so we use a boottime override
607
606
* for the 512kb model, and assume 256 otherwise.
608
607
*/
609
- if (( c -> x86 == 6 ) && ( c -> x86_model == 11 ) && ( size == 0 ) )
608
+ if (c -> x86_vfm == INTEL_PENTIUM_III_TUALATIN && size == 0 )
610
609
size = 256 ;
611
610
612
611
/*
0 commit comments