public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Support for GEODE CPU's in Kernel 2.6.10.
@ 2005-02-27 22:11 Kianusch Sayah Karadji
  2005-02-28 22:39 ` Henrik Brix Andersen
  2005-03-02 12:53 ` David Vrabel
  0 siblings, 2 replies; 4+ messages in thread
From: Kianusch Sayah Karadji @ 2005-02-27 22:11 UTC (permalink / raw)
  To: davej, hpa; +Cc: linux-kernel

[-- Attachment #1: Type: TEXT/PLAIN, Size: 424 bytes --]

Hi!

This is a small patch for GEODE CPU support in Kernel 2.6.10.

Those CPU's are found mostly in embedded systems ... one of the most 
prominent Hardware using GEODE CPU is probably soekris net4801 
(http://www.soekris.com).

This patch has been on my homepage 
(http://www.sk-tech.net/support/soekris.html) for quite a time - but I've 
been asked several time to have it included in the main kernel.

Regards
   Kianusch

[-- Attachment #2: geode.patch.2.6.10 --]
[-- Type: TEXT/PLAIN, Size: 4108 bytes --]

diff -Nur linux-2.6.10/arch/i386/Kconfig linux-2.6.10_geode/arch/i386/Kconfig
--- linux-2.6.10/arch/i386/Kconfig	Fri Dec 24 22:34:01 2004
+++ linux-2.6.10_geode/arch/i386/Kconfig	Sun Feb 27 22:37:48 2005
@@ -183,6 +183,7 @@
 	  - "Winchip-C6" for original IDT Winchip.
 	  - "Winchip-2" for IDT Winchip 2.
 	  - "Winchip-2A" for IDT Winchips with 3dNow! capabilities.
+	  - "MediaGX/Geode" for Cyrix MediaGX aka Geode.
 	  - "CyrixIII/VIA C3" for VIA Cyrix III or VIA C3.
 	  - "VIA C3-2 for VIA C3-2 "Nehemiah" (model 9 and above).
 
@@ -310,6 +311,13 @@
 	  stores for this CPU, which can increase performance of some
 	  operations.
 
+config MGEODE
+	bool "MediaGX/Geode"
+	help
+	  Select this for a Cyrix MediaGX aka Geode chip. Linux and GCC
+          treat this chip as a 586TSC with some extended instructions
+          and alignment reqirements.
+
 config MCYRIXIII
 	bool "CyrixIII/VIA-C3"
 	help
@@ -360,7 +368,7 @@
 	int
 	default "7" if MPENTIUM4 || X86_GENERIC
 	default "4" if X86_ELAN || M486 || M386
-	default "5" if MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCRUSOE || MEFFICEON || MCYRIXIII || MK6 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || M586 || MVIAC3_2
+	default "5" if MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCRUSOE || MEFFICEON || MCYRIXIII || MK6 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || M586 || MVIAC3_2 || MGEODE
 	default "6" if MK7 || MK8 || MPENTIUMM
 
 config RWSEM_GENERIC_SPINLOCK
@@ -375,7 +383,7 @@
 
 config X86_PPRO_FENCE
 	bool
-	depends on M686 || M586MMX || M586TSC || M586 || M486 || M386
+	depends on M686 || M586MMX || M586TSC || M586 || M486 || M386 || MGEODE
 	default y
 
 config X86_F00F_BUG
@@ -405,7 +413,7 @@
 
 config X86_ALIGNMENT_16
 	bool
-	depends on MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCYRIXIII || X86_ELAN || MK6 || M586MMX || M586TSC || M586 || M486 || MVIAC3_2
+	depends on MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCYRIXIII || X86_ELAN || MK6 || M586MMX || M586TSC || M586 || M486 || MVIAC3_2 || MGEODE
 	default y
 
 config X86_GOOD_APIC
@@ -430,7 +438,7 @@
 
 config X86_OOSTORE
 	bool
-	depends on (MWINCHIP3D || MWINCHIP2 || MWINCHIPC6) && MTRR
+	depends on (MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MGEODE) && MTRR
 	default y
 
 config HPET_TIMER
@@ -555,7 +563,7 @@
 
 config X86_TSC
 	bool
-	depends on (MWINCHIP3D || MWINCHIP2 || MCRUSOE || MEFFICEON || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || MK8 || MVIAC3_2) && !X86_NUMAQ
+	depends on (MWINCHIP3D || MWINCHIP2 || MCRUSOE || MEFFICEON || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || MK8 || MVIAC3_2 || MGEODE) && !X86_NUMAQ
 	default y
 
 config X86_MCE
diff -Nur linux-2.6.10/arch/i386/Makefile linux-2.6.10_geode/arch/i386/Makefile
--- linux-2.6.10/arch/i386/Makefile	Fri Dec 24 22:34:31 2004
+++ linux-2.6.10_geode/arch/i386/Makefile	Sun Feb 27 22:53:18 2005
@@ -14,6 +14,8 @@
 # 19990713  Artur Skawina <skawina@geocities.com>
 #           Added '-march' and '-mpreferred-stack-boundary' support
 #
+#           Kianusch Sayah Karadji <kianusch@sk-tech.net>
+#           Added support for GEODE CPU
 
 LDFLAGS		:= -m elf_i386
 OBJCOPYFLAGS	:= -O binary -R .note -R .comment -S
@@ -51,6 +53,9 @@
 
 # AMD Elan support
 cflags-$(CONFIG_X86_ELAN)	+= -march=i486
+
+# MediaGX aka Geode support
+cflags-$(CONFIG_MGEODE)		+= $(call cc-option,-march=pentium-mmx,-march=i586)
 
 # -mregparm=3 works ok on gcc-3.0 and later
 #
diff -Nur linux-2.6.10/include/asm-i386/module.h linux-2.6.10_geode/include/asm-i386/module.h
--- linux-2.6.10/include/asm-i386/module.h	Fri Dec 24 22:34:00 2004
+++ linux-2.6.10_geode/include/asm-i386/module.h	Sun Feb 27 22:34:19 2005
@@ -52,6 +52,8 @@
 #define MODULE_PROC_FAMILY "CYRIXIII "
 #elif defined CONFIG_MVIAC3_2
 #define MODULE_PROC_FAMILY "VIAC3-2 "
+#elif CONFIG_MGEODE
+#define MODULE_PROC_FAMILY "GEODE "
 #else
 #error unknown processor family
 #endif

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Support for GEODE CPU's in Kernel 2.6.10.
  2005-02-27 22:11 Support for GEODE CPU's in Kernel 2.6.10 Kianusch Sayah Karadji
@ 2005-02-28 22:39 ` Henrik Brix Andersen
  2005-03-02 12:53 ` David Vrabel
  1 sibling, 0 replies; 4+ messages in thread
From: Henrik Brix Andersen @ 2005-02-28 22:39 UTC (permalink / raw)
  To: Kianusch Sayah Karadji; +Cc: davej, hpa, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 401 bytes --]

On Sun, 2005-02-27 at 23:11 +0100, Kianusch Sayah Karadji wrote:
> This is a small patch for GEODE CPU support in Kernel 2.6.10.

I would very much welcome the addition of MGEODE. The in-kernel SCx200
drivers could also benefit from this (they should depend on MGEODE).

Signed-off-by: Henrik Brix Andersen <brix@gentoo.org>

./Brix
-- 
Henrik Brix Andersen <brix@gentoo.org>
Gentoo Linux

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Support for GEODE CPU's in Kernel 2.6.10.
  2005-02-27 22:11 Support for GEODE CPU's in Kernel 2.6.10 Kianusch Sayah Karadji
  2005-02-28 22:39 ` Henrik Brix Andersen
@ 2005-03-02 12:53 ` David Vrabel
  2005-03-03 22:17   ` Alan Cox
  1 sibling, 1 reply; 4+ messages in thread
From: David Vrabel @ 2005-03-02 12:53 UTC (permalink / raw)
  To: Kianusch Sayah Karadji; +Cc: davej, hpa, linux-kernel

Kianusch Sayah Karadji wrote:
> 
> This is a small patch for GEODE CPU support in Kernel 2.6.10.
> [...]
> +	  - "MediaGX/Geode" for Cyrix MediaGX aka Geode.

How about changing this to:

          - "Geode/MediaGX" for the AMD (formerly National) Geode family
and the Cyrix MediaGX.

And similarly for the MGEODE option and help text?  Since the AMD Geode
family is current and the MediaGX is old.  And perhaps expand the help
text to list the various SoCs since it's not immediately obvious from
their names that they have a Geode core?

David Vrabel
-- 
David Vrabel, Design Engineer

Arcom, Clifton Road           Tel: +44 (0)1223 411200 ext. 3233
Cambridge CB1 7EA, UK         Web: http://www.arcom.com/

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Support for GEODE CPU's in Kernel 2.6.10.
  2005-03-02 12:53 ` David Vrabel
@ 2005-03-03 22:17   ` Alan Cox
  0 siblings, 0 replies; 4+ messages in thread
From: Alan Cox @ 2005-03-03 22:17 UTC (permalink / raw)
  To: David Vrabel
  Cc: Kianusch Sayah Karadji, davej, hpa, Linux Kernel Mailing List

I'm not sure the change is any better. AMD now use Geode for two totally
unrelated CPU families and they need different configuration.


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2005-03-03 22:24 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-02-27 22:11 Support for GEODE CPU's in Kernel 2.6.10 Kianusch Sayah Karadji
2005-02-28 22:39 ` Henrik Brix Andersen
2005-03-02 12:53 ` David Vrabel
2005-03-03 22:17   ` Alan Cox

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox