PentiumPro/II split in x86 config (2)
PATCH 1/1 PentiumPro/II split in x86 config (2)
Corrected to detect correctly a PII.
Any chance to have this in next pre ? I think it is safe, old configs set up for CONFIG_M686 will work just the same, but now people can have a slightly better PII binary...
arch/i386/Makefile renamed from arch/i386/Makefile.orig +4 -0
@@ -50,6 +50,10 @@ CFLAGS += -march=i686 endif +ifdef CONFIG_MPENTIUMII +CFLAGS += -march=i686 +endif + ifdef CONFIG_MPENTIUMIII CFLAGS += -march=i686 endif
arch/i386/config.in renamed from arch/i386/config.in.orig +9 -1
@@ -32,7 +32,8 @@ 586/K5/5x86/6x86/6x86MX CONFIG_M586 \ Pentium-Classic CONFIG_M586TSC \ Pentium-MMX CONFIG_M586MMX \ - Pentium-Pro/Celeron/Pentium-II CONFIG_M686 \ + Pentium-Pro CONFIG_M686 \ + Pentium-II/Celeron CONFIG_MPENTIUMII \ Pentium-III/Celeron(Coppermine) CONFIG_MPENTIUMIII \ Pentium-4 CONFIG_MPENTIUM4 \ K6/K6-II/K6-III CONFIG_MK6 \
@@ -99,6 +99,13 @@ define_bool CONFIG_X86_USE_PPRO_CHECKSUM y define_bool CONFIG_X86_PPRO_FENCE y fi +if [ "$CONFIG_MPENTIUMII" = "y" ]; then + define_int CONFIG_X86_L1_CACHE_SHIFT 5 + define_bool CONFIG_X86_TSC y + define_bool CONFIG_X86_GOOD_APIC y + define_bool CONFIG_X86_PGE y + define_bool CONFIG_X86_USE_PPRO_CHECKSUM y +fi if [ "$CONFIG_MPENTIUMIII" = "y" ]; then define_int CONFIG_X86_L1_CACHE_SHIFT 5 define_bool CONFIG_X86_TSC y
arch/i386/defconfig renamed from arch/i386/defconfig.orig +1 -0
@@ -27,6 +27,7 @@ # CONFIG_M586TSC is not set # CONFIG_M586MMX is not set # CONFIG_M686 is not set +# CONFIG_MPENTIUMII is not set CONFIG_MPENTIUMIII=y # CONFIG_MPENTIUM4 is not set # CONFIG_MK6 is not set
arch/i386/kernel/setup.c renamed from arch/i386/kernel/setup.c.orig +10 -0
@@ -2092,6 +2092,14 @@extern void trap_init_f00f_bug (void ); +static void __init check_intel_compat (struct cpuinfo_x86 *c) +{ +#if defined(CONFIG_MPENTIUMII ) || defined(CONFIG_MPENTIUMIII ) || defined(CONFIG_MPENTIUM4 ) +if ( (c->x86 <6 ) || ((c->x86==6 ) && (c->x86_model<=1 )) ) +panic ("Kernel is unsafe/incompatible with this CPU model. Check your build settings !\n" ); +#endif +} +static void __init init_intel (struct cpuinfo_x86 *c) {#ifndef CONFIG_M686
@@ -2100,6 +2108,8 @@char *p =NULL ;unsigned int l1i =0 , l1d =0 , l2 =0 , l3 =0 ;/* Cache sizes */ +check_intel_compat (c); +#ifndef CONFIG_M686 /* * All current models of Pentium and Pentium with MMX technology CPUs
Signature · 4 lines
J.A. Magallon # Let the source be with you... mailto:[email protected] Mandrake Linux release 8.3 (Cooker) for i586 Linux werewolf 2.4.19-pre8-jam4 #2 SMP dom may 26 11:20:42 CEST 2002 i686