]> git.hungrycats.org Git - linux/commitdiff
[PATCH] add explicit Pentium II support
authorRobert Love <rml@tech9.net>
Sun, 12 Jan 2003 03:23:34 +0000 (19:23 -0800)
committerLinus Torvalds <torvalds@home.transmeta.com>
Sun, 12 Jan 2003 03:23:34 +0000 (19:23 -0800)
This separates the "PPro/Celeron/Pentium-II" compile option into "PPro"
and "Pentium-II/Celeron" options.

This allows us to explicitly support the Pentium II and Celeron,
specifically adding the `-march' option for the chip and enabling the
unaligned copy optimizations.  PPro support remains unchanged.

This patch is by Luuk van der Duim with some changes by me (primarily to
also support the pre-Coppermine Celeron chips, since those use Pentium
II cores).  This patch has been in 2.5-mm for awhile and Andrew ack'ed
this submission.

arch/i386/Kconfig
arch/i386/Makefile

index beef65e96835e254c2b082ab688b050e2ab59eb5..8886e24c47961f077f4da60a9343374f264ad06a 100644 (file)
@@ -117,9 +117,9 @@ config M386
          (time stamp counter) register.
          - "Pentium-Classic" for the Intel Pentium.
          - "Pentium-MMX" for the Intel Pentium MMX.
-         - "Pentium-Pro" for the Intel Pentium Pro/Celeron/Pentium II.
-         - "Pentium-III" for the Intel Pentium III
-         and Celerons based on the Coppermine core.
+         - "Pentium-Pro" for the Intel Pentium Pro.
+         - "Pentium-II" for the Intel Pentium II or pre-Coppermine Celeron.
+         - "Pentium-III" for the Intel Pentium III or Coppermine Celeron.
          - "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).
@@ -159,18 +159,28 @@ config M586MMX
          extended instructions.
 
 config M686
-       bool "Pentium-Pro/Celeron/Pentium-II"
+       bool "Pentium-Pro"
        help
-         Select this for a Pro/Celeron/Pentium II.  This enables the use of
+         Select this for Intel Pentium Pro chips.  This enables the use of
          Pentium Pro extended instructions, and disables the init-time guard
          against the f00f bug found in earlier Pentiums.
 
+config MPENTIUMII
+       bool "Pentium-II/Celeron(pre-Coppermine)"
+       help
+         Select this for Intel chips based on the Pentium-II and
+         pre-Coppermine Celeron core.  This option enables an unaligned
+         copy optimization, compiles the kernel with optimization flags
+         tailored for the chip, and applies any applicable Pentium Pro
+         optimizations.
+
 config MPENTIUMIII
        bool "Pentium-III/Celeron(Coppermine)"
        help
          Select this for Intel chips based on the Pentium-III and
-         Celeron-Coppermine core.  Enables use of some extended prefetch
-         instructions, in addition to the Pentium II extensions.
+         Celeron-Coppermine core.  This option enables use of some
+         extended prefetch instructions in addition to the Pentium II
+         extensions.
 
 config MPENTIUM4
        bool "Pentium-4"
@@ -258,7 +268,7 @@ config X86_XADD
 
 config X86_L1_CACHE_SHIFT
        int
-       default "5" if MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCRUSOE || MCYRIXIII || MK6 || MPENTIUMIII || M686 || M586MMX || M586TSC || M586
+       default "5" if MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCRUSOE || MCYRIXIII || MK6 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || M586
        default "4" if MELAN || M486 || M386
        default "6" if MK7 || MK8
        default "7" if MPENTIUM4
@@ -310,22 +320,22 @@ config X86_ALIGNMENT_16
 
 config X86_TSC
        bool
-       depends on MWINCHIP3D || MWINCHIP2 || MCRUSOE || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMIII || M686 || M586MMX || M586TSC || MK8
+       depends on MWINCHIP3D || MWINCHIP2 || MCRUSOE || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || MK8
        default y
 
 config X86_GOOD_APIC
        bool
-       depends on MK7 || MPENTIUM4 || MPENTIUMIII || M686 || M586MMX || MK8
+       depends on MK7 || MPENTIUM4 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || MK8
        default y
 
 config X86_INTEL_USERCOPY
        bool
-       depends on MPENTIUM4 || MPENTIUMIII || M586MMX
+       depends on MPENTIUM4 || MPENTIUMIII || MPENTIUMII || M586MMX
        default y
 
 config X86_USE_PPRO_CHECKSUM
        bool
-       depends on MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMIII || M686 || MK8
+       depends on MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMIII || MPENTIUMII || M686 || MK8
        default y
 
 config X86_USE_3DNOW
index 8de1d269d25213a7f8d1a1a3dbc3f71ec1a1a38f..ffb77023d82736ba3544f146cdcd733c5b5be9ad 100644 (file)
@@ -34,6 +34,7 @@ cflags-$(CONFIG_M586)         += -march=i586
 cflags-$(CONFIG_M586TSC)       += -march=i586
 cflags-$(CONFIG_M586MMX)       += $(call check_gcc,-march=pentium-mmx,-march=i586)
 cflags-$(CONFIG_M686)          += -march=i686
+cflags-$(CONFIG_MPENTIUMII)    += $(call check_gcc,-march=pentium2,-march=i686)
 cflags-$(CONFIG_MPENTIUMIII)   += $(call check_gcc,-march=pentium3,-march=i686)
 cflags-$(CONFIG_MPENTIUM4)     += $(call check_gcc,-march=pentium4,-march=i686)
 cflags-$(CONFIG_MK6)           += $(call check_gcc,-march=k6,-march=i586)