2003-06-05 11:26:12

by Hiroshi Miura

[permalink] [raw]
Subject: [PATCH 2.5.70] NatSemi Geode out-of-order store enables

Hello,

This is a patch to enable oostore feature of geode.
Most geode specific code already merged, but it need
a definition of CONFIG_OOSTORE to speedup geode.

in arch/i386/kernel/cpu/cyrix.c:
static void __init set_cx86_reorder(void)
{
#ifdef CONFIG_OOSTORE
u8 ccr3;

printk(KERN_INFO "Enable Memory access reorder on Cyrix/NSC processor.\n");
ccr3 = getCx86(CX86_CCR3);
setCx86(CX86_CCR3, (ccr3 & 0x0f) | 0x10); /* enable MAPEN */

/* Load/Store Serialize to mem access disable (=reorder it) */
setCx86(CX86_PCR0, getCx86(CX86_PCR0) & ~0x80);
#ifdef CONFIG_NOHIGHMEM
/* set load/store serialize from 1GB to 4GB */
ccr3 |= 0xe0;
#endif
setCx86(CX86_CCR3, ccr3);
#endif
}

To enable this following Kconfig patch might be good.
If user configure for 386 or 586, geode oostore is only disabled.
If configure for geode, an oostore feature is enabled and he/she will get more speed.


--- linux.o/arch/i386/Kconfig 2003-05-29 00:56:37.000000000 +0900
+++ linux/arch/i386/Kconfig 2003-05-29 19:42:32.000000000 +0900
@@ -284,6 +284,13 @@
of SSE and tells gcc to treat the CPU as a 686.
Note, this kernel will not boot on older (pre model 9) C3s.

+config MGEODE
+ bool "MediaGX/Geode"
+ help
+ Select this for a Cyrix MediaGX/GXM or NatSemi Geode GXM/GXLV/GX1
+ chip. Linux and GCC treat this chip as a 586MMX with some
+ extended instructions and work arounds.
+
endchoice

config X86_GENERIC
@@ -310,7 +317,7 @@
int
default "7" if MPENTIUM4 || X86_GENERIC
default "4" if MELAN || M486 || M386
- default "5" if MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCRUSOE || MCYRIXIII || MK6 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || M586 || MVIAC3_2
+ default "5" if MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MCRUSOE || MCYRIXIII || MK6 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || M586 || MVIAC3_2 || MGEODE
default "6" if MK7 || MK8

config RWSEM_GENERIC_SPINLOCK
@@ -355,7 +362,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 || MELAN || MK6 || M586MMX || M586TSC || M586 || M486 || MVIAC3_2 || MGEODE
default y

config X86_GOOD_APIC
@@ -380,7 +387,7 @@

config X86_OOSTORE
bool
- depends on MWINCHIP3D || MWINCHIP2 || MWINCHIPC6
+ depends on MWINCHIP3D || MWINCHIP2 || MWINCHIPC6 || MGEODE
default y

config HUGETLB_PAGE
@@ -489,7 +496,7 @@

config X86_TSC
bool
- depends on (MWINCHIP3D || MWINCHIP2 || MCRUSOE || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || MK8 || MVIAC3_2) && !X86_NUMAQ
+ depends on (MWINCHIP3D || MWINCHIP2 || MCRUSOE || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || MK8 || MVIAC3_2 || MGEODE) && !X86_NUMAQ
default y

config X86_MCE

--- linux.o/include/asm-i386/module.h 2003-03-25 07:00:02.000000000 +0900
+++ linux/include/asm-i386/module.h 2003-05-29 19:45:06.000000000 +0900
@@ -48,6 +48,8 @@
#define MODULE_PROC_FAMILY "CYRIXIII "
#elif CONFIG_MVIAC3_2
#define MODULE_PROC_FAMILY "VIAC3-2 "
+#elif CONFIG_MGEODE
+#define MODULE_PROC_FAMILY "GEODE "
#else
#error unknown processor family
#endif

--
Hiroshi Miura --- http://www.da-cha.org/
NTTDATA Corp. Marketing & Business Strategy Planning Dept. --- [email protected]
Key fingerprint = 9117 9407 5684 FBF1 4063 15B4 401D D077 04AB 8617
-- My hacking life is happy as the day is long


2003-06-05 13:53:09

by Alan Cox

[permalink] [raw]
Subject: Re: [PATCH 2.5.70] NatSemi Geode out-of-order store enables

> Most geode specific code already merged, but it need
> a definition of CONFIG_OOSTORE to speedup geode.

The OOSTORE shouldnt be needed according to the natsemi info,
you can just drop the ifdef

2003-06-05 21:41:36

by Hiroshi Miura

[permalink] [raw]
Subject: Re: [PATCH 2.5.70] NatSemi Geode out-of-order store enables

Hello,

At Thu, 5 Jun 2003 10:06:34 -0400 (EDT),
Alan Cox wrote:
>
> > Most geode specific code already merged, but it need
> > a definition of CONFIG_OOSTORE to speedup geode.
>
> The OOSTORE shouldnt be needed according to the natsemi info,
> you can just drop the ifdef

Thanks.

This patch does it. And remove CONFIG_NOHIGHMEM because
Geode supports MEM up to 512MB from GX1 datasheet.

Please apply it.

/usr/src$ diff -u linux-2.5.70/arch/i386/kernel/cpu/cyrix.c.keep linux-2.5.70/arch/i386/kernel/cpu/cyrix.c
--- linux-2.5.70/arch/i386/kernel/cpu/cyrix.c.keep 2003-06-06 06:41:09.000000000 +0900
+++ linux-2.5.70/arch/i386/kernel/cpu/cyrix.c 2003-06-06 06:41:23.000000000 +0900
@@ -109,7 +109,6 @@

static void __init set_cx86_reorder(void)
{
-#ifdef CONFIG_OOSTORE
u8 ccr3;

printk(KERN_INFO "Enable Memory access reorder on Cyrix/NSC processor.\n");
@@ -118,12 +117,9 @@

/* Load/Store Serialize to mem access disable (=reorder it) */
setCx86(CX86_PCR0, getCx86(CX86_PCR0) & ~0x80);
-#ifdef CONFIG_NOHIGHMEM
/* set load/store serialize from 1GB to 4GB */
ccr3 |= 0xe0;
-#endif
setCx86(CX86_CCR3, ccr3);
-#endif
}

static void __init set_cx86_memwb(void)



--
Hiroshi Miura --- http://www.da-cha.org/
NTTDATA Corp. Marketing & Business Strategy Planning Dept. --- [email protected]
Key fingerprint = 9117 9407 5684 FBF1 4063 15B4 401D D077 04AB 8617
-- My hacking life is happy as the day is long

2003-06-06 01:46:38

by joe briggs

[permalink] [raw]
Subject: HELP!! REDHAT QUESTION

Please help. I have a redhat 7.3 computer accross the country that was
installed using the WORKSTATION option. I desperately need to telnet into
it, but with the new xinetd.d stuff, don't know how. Can ANYBODY tell me how
to get the telnet deamon running on this box so that I can remotely log in?


--
Joe Briggs
Briggs Media Systems
105 Burnsen Ave.
Manchester NH 01304 USA
TEL/FAX 603-232-3115 MOBILE 603-493-2386
http://www.briggsmedia.com

2003-06-06 01:59:01

by George G. Davis

[permalink] [raw]
Subject: Re: HELP!! REDHAT QUESTION

joe briggs wrote:
> Please help. I have a redhat 7.3 computer accross the country that was
> installed using the WORKSTATION option. I desperately need to telnet into
> it, but with the new xinetd.d stuff, don't know how. Can ANYBODY tell me how
> to get the telnet deamon running on this box so that I can remotely log in?
>

Hi Joe,

There's probably an admin tool for this, but:

sed /disable/s/no/yes/ /etc/xinetd.d/telnet


However, if it's "accross the country", you probably should be running sshd
instead. : )

HTH!

--
Regards,
George


>


2003-06-06 02:06:11

by Joe

[permalink] [raw]
Subject: Re: HELP!! REDHAT QUESTION

joe briggs wrote:

>Please help. I have a redhat 7.3 computer accross the country that was
>installed using the WORKSTATION option. I desperately need to telnet into
>it, but with the new xinetd.d stuff, don't know how. Can ANYBODY tell me how
>to get the telnet deamon running on this box so that I can remotely log in?
>

First of all, if it was installed using the
workstation option, there is no remote
access, period.

That's why I always do a custom install.

If after the fact the appropriate daemons
are installed, be advised that telnet is an
incredibly poor choice, since you type
your password in the clear, and all traffic
to and from the remote host is in the clear,
begging to be snooped.

Please don't enable telnet, but use secure
shell for remote access - ssh clients are
easily and freely available, even for the
win doze pee cee platform (google for
putty.exe) -

Joe