diff -Pur linux-2.4.19.orig/Documentation/Configure.help linux-2.4.19/Documentation/Configure.help --- linux-2.4.19.orig/Documentation/Configure.help 2002-08-03 02:39:42.000000000 +0200 +++ linux-2.4.19/Documentation/Configure.help 2002-09-08 19:31:31.000000000 +0200 @@ -3963,7 +3963,11 @@ and Celerons based on the Coppermine core. - "Pentium-4" for the Intel Pentium 4. - "K6" for the AMD K6, K6-II and K6-III (aka K6-3D). - - "Athlon" for the AMD K7 family (Athlon/Duron/Thunderbird). + - "Atlon-TB" for the AMD Athlon Thunderbird + and Durons based on the Splitfire core. + - "Athlon-XP" for the AMD AthlonXP + and Mobile and Durons based on Morgan core. + - "Athlon-MP" for the AMD AthlonMP - "Elan" for the AMD Elan family (Elan SC400/SC410). - "Crusoe" for the Transmeta Crusoe series. - "Winchip-C6" for original IDT Winchip. diff -Pur linux-2.4.19.orig/arch/i386/Makefile linux-2.4.19/arch/i386/Makefile --- linux-2.4.19.orig/arch/i386/Makefile 2001-04-12 21:20:31.000000000 +0200 +++ linux-2.4.19/arch/i386/Makefile 2002-09-08 18:58:38.000000000 +0200 @@ -62,10 +62,17 @@ CFLAGS += $(shell if $(CC) -march=k6 -S -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo "-march=k6"; else echo "-march=i586"; fi) endif -ifdef CONFIG_MK7 -CFLAGS += $(shell if $(CC) -march=athlon -S -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo "-march=athlon"; else echo "-march=i686 -malign-functions=4"; fi) +ifdef CONFIG_MATHLONTB +CFLAGS += $(shell if $(CC) -march=athlon-tbird -S -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo "-march=athlon-tbird"; elif $(CC) -march=athlon -S -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo "-march=athlon"; else echo "-march=i686 -malign-functions=4"; fi) endif +ifdef CONFIG_MATHLONXP +CFLAGS += $(shell if $(CC) -march=athlon-xp -S -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo "-march=athlon-xp"; elif $(CC) -march=athlon -S -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo "-march=athlon"; else echo "-march=i686 -malign-functions=4"; fi) +endif + +ifdef CONFIG_MATHLONMP +CFLAGS += $(shell if $(CC) -march=athlon-mp -S -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo "-march=athlon-mp"; elif $(CC) -march=athlon -S -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo "-march=athlon"; else echo "-march=i686 -malign-functions=4"; fi) +endif ifdef CONFIG_MCRUSOE CFLAGS += -march=i686 -malign-functions=0 -malign-jumps=0 -malign-loops=0 endif diff -Pur linux-2.4.19.orig/arch/i386/config.in linux-2.4.19/arch/i386/config.in --- linux-2.4.19.orig/arch/i386/config.in 2002-08-03 02:39:42.000000000 +0200 +++ linux-2.4.19/arch/i386/config.in 2002-09-08 19:16:05.000000000 +0200 @@ -36,7 +36,9 @@ Pentium-III/Celeron(Coppermine) CONFIG_MPENTIUMIII \ Pentium-4 CONFIG_MPENTIUM4 \ K6/K6-II/K6-III CONFIG_MK6 \ - Athlon/Duron/K7 CONFIG_MK7 \ + Athlon-TB/Duron(Splitfire) CONFIG_MATHLONTB \ + Athlon-XP/Athlon4/Duron(Morgan) CONFIG_MATHLONXP \ + Athlon-MP CONFIG_MATHLONMP \ Elan CONFIG_MELAN \ Crusoe CONFIG_MCRUSOE \ Winchip-C6 CONFIG_MWINCHIPC6 \ @@ -119,7 +121,23 @@ define_bool CONFIG_X86_TSC y define_bool CONFIG_X86_USE_PPRO_CHECKSUM y fi -if [ "$CONFIG_MK7" = "y" ]; then +if [ "$CONFIG_MATHLONTB" = "y" ]; then + define_int CONFIG_X86_L1_CACHE_SHIFT 6 + define_bool CONFIG_X86_TSC y + define_bool CONFIG_X86_GOOD_APIC y + define_bool CONFIG_X86_USE_3DNOW y + define_bool CONFIG_X86_PGE y + define_bool CONFIG_X86_USE_PPRO_CHECKSUM y +fi +if [ "$CONFIG_MATHLONXP" = "y" ]; then + define_int CONFIG_X86_L1_CACHE_SHIFT 6 + define_bool CONFIG_X86_TSC y + define_bool CONFIG_X86_GOOD_APIC y + define_bool CONFIG_X86_USE_3DNOW y + define_bool CONFIG_X86_PGE y + define_bool CONFIG_X86_USE_PPRO_CHECKSUM y +fi +if [ "$CONFIG_MATHLONMP" = "y" ]; then define_int CONFIG_X86_L1_CACHE_SHIFT 6 define_bool CONFIG_X86_TSC y define_bool CONFIG_X86_GOOD_APIC y