lkml.org 
[lkml]   [2004]   [Jan]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[3/3] AMD Elan is a different subarch
    - AMD Elan is a different subarch, you can't configure a kernel that
    runs on both the AMD Elan and other i386 CPUs
    - added optimizing CFLAGS for the AMD Elan


    diffstat output:

    arch/i386/Kconfig | 17 +++++++++++++++--
    arch/i386/Makefile | 3 +++
    arch/i386/boot/setup.S | 2 +-
    arch/i386/kernel/cpu/cpufreq/Kconfig | 2 +-
    include/asm-i386/timex.h | 2 +-
    5 files changed, 21 insertions(+), 5 deletions(-)



    --- linux-2.6.0-test5-mm4/arch/i386/boot/setup.S.old 2003-09-25 14:28:07.000000000 +0200
    +++ linux-2.6.0-test5-mm4/arch/i386/boot/setup.S 2003-09-25 14:28:16.000000000 +0200
    @@ -755,7 +755,7 @@
    # AMD Elan bug fix by Robert Schwebel.
    #

    -#if defined(CONFIG_MELAN)
    +#if defined(CONFIG_X86_ELAN)
    movb $0x02, %al # alternate A20 gate
    outb %al, $0x92 # this works on SC410/SC520
    a20_elan_wait:
    --- linux-2.6.0-test5-mm4/include/asm-i386/timex.h.old 2003-09-25 14:28:07.000000000 +0200
    +++ linux-2.6.0-test5-mm4/include/asm-i386/timex.h 2003-09-25 14:28:16.000000000 +0200
    @@ -12,7 +12,7 @@
    #ifdef CONFIG_X86_PC9800
    extern int CLOCK_TICK_RATE;
    #else
    -#ifdef CONFIG_MELAN
    +#ifdef CONFIG_X86_ELAN
    # define CLOCK_TICK_RATE 1189200 /* AMD Elan has different frequency! */
    #else
    # define CLOCK_TICK_RATE 1193182 /* Underlying HZ */
    --- linux-2.6.1-rc1/arch/i386/kernel/cpu/cpufreq/Kconfig.old 2004-01-08 04:04:37.000000000 +0100
    +++ linux-2.6.1-rc1/arch/i386/kernel/cpu/cpufreq/Kconfig 2004-01-08 04:05:26.000000000 +0100
    @@ -54,7 +54,7 @@

    config ELAN_CPUFREQ
    tristate "AMD Elan"
    - depends on CPU_FREQ_TABLE && MELAN
    + depends on CPU_FREQ_TABLE && X86_ELAN
    ---help---
    This adds the CPUFreq driver for AMD Elan SC400 and SC410
    processors.
    --- linux-2.6.1-mm2/arch/i386/Kconfig.old 2004-01-12 23:55:45.000000000 +0100
    +++ linux-2.6.1-mm2/arch/i386/Kconfig 2004-01-12 23:57:45.000000000 +0100
    @@ -43,6 +43,15 @@
    help
    Choose this option if your computer is a standard PC or compatible.

    +config X86_ELAN
    + bool "AMD Elan"
    + help
    + Select this for an AMD Elan processor.
    +
    + Do not use this option for K6/Athlon/Opteron processors!
    +
    + If unsure, choose "PC-compatible" instead.
    +
    config X86_VOYAGER
    bool "Voyager (NCR)"
    help
    @@ -130,6 +139,8 @@
    default y
    depends on SMP && X86_ES7000 && MPENTIUMIII

    +if !X86_ELAN
    +
    choice
    prompt "Processor family"
    default M686
    @@ -319,6 +330,8 @@
    when it has moderate overhead. This is intended for generic
    distributions kernels.

    +endif
    +
    #
    # Define implied options from the CPU selection here
    #
    @@ -335,7 +348,7 @@
    config X86_L1_CACHE_SHIFT
    int
    default "7" if MPENTIUM4 || X86_GENERIC
    - default "4" if MELAN || M486 || M386
    + default "4" if X86_ELAN || M486 || M386
    default "5" if MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCRUSOE || MCYRIXIII || MK6 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || M586 || MVIAC3_2
    default "6" if MK7 || MK8

    @@ -381,7 +394,7 @@

    config X86_ALIGNMENT_16
    bool
    - depends on MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCYRIXIII || MELAN || MK6 || M586MMX || M586TSC || M586 || M486 || MVIAC3_2
    + depends on MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCYRIXIII || X86_ELAN || MK6 || M586MMX || M586TSC || M586 || M486 || MVIAC3_2
    default y

    config X86_GOOD_APIC
    --- linux-2.6.1-mm2/arch/i386/Makefile.old 2004-01-13 00:33:12.000000000 +0100
    +++ linux-2.6.1-mm2/arch/i386/Makefile 2004-01-13 00:34:48.000000000 +0100
    @@ -48,6 +48,9 @@
    cflags-$(CONFIG_MCYRIXIII) += $(call check_gcc,-march=c3,-march=i486) $(align)-functions=0 $(align)-jumps=0 $(align)-loops=0
    cflags-$(CONFIG_MVIAC3_2) += $(call check_gcc,-march=c3-2,-march=i686)

    +# AMD Elan support
    +cflags-$(CONFIG_X86_ELAN) += -march=i486
    +
    CFLAGS += $(cflags-y)

    # Default subarch .c files
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/
    \
     
     \ /
      Last update: 2005-03-22 14:00    [W:0.031 / U:29.768 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site