[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: interesting things with PC164 and latest milo-980602
- From: "Alexander V. Lukyanov" <lav yars free net>
- To: Quant-X Alpha Linux Support <support quant-x com>, axp-list redhat com
- Cc: linux-alpha vger rutgers edu
- Subject: Re: interesting things with PC164 and latest milo-980602
- Date: Mon, 7 Sep 1998 14:36:54 +0400
On Sun, Sep 06, 1998 at 11:33:01PM +0200, Quant-X Alpha Linux Support wrote:
> Hi Alexander !
>
> > compiler, kernel and some apps going to older milos is impossible on pc164.
> >
> > The hang happens just after the line
> > SMC FDC37C93X Ultra I/O Controller found @ 0x370
>
> > Suspiciously looks like a hang I experienced a while ago with older kernels.
> > At that time the hang magically disappeared when I inserted a delay in a
> > function for the smc fdc init. Have not tried that now yet.
>
> Same here on our 1GB Ram LX. It hangs most of the time there,
> sometimes a line earlier (PCI message).
> I must boot up to nine times to avoid this. :-(
> This timing problem happens also when using 2.0.33...
>
> > At that time the hang magically disappeared when I inserted a delay in a
> > function for the smc fdc init. Have not tried that now yet.
>
> Cool. Please post your delay-patch here...
Ok, here is it. Just verified and it cures the hang I experienced with 2.1.119
and egcs-1.1/ev56. Looks like the hang happens when egcs produces too fast
code :) since the last time I noticed the hang I used egcs snapshot which
made dhrystone fater than egcs-1.1/ev5. dhrystone with egcs-1.1/ev56 is almost
as fast.
I don't know why the hang happens, but it seems to be hardware related.
Maybe some hardware doesn't like too fast accesses.
--- smc37c93x.c.~1~ Tue Apr 7 14:45:04 1998
+++ smc37c93x.c Mon Sep 7 14:19:06 1998
@@ -12,6 +12,7 @@
#include <asm/hwrpb.h>
#include <asm/io.h>
#include <asm/segment.h>
+#include <asm/delay.h>
#if 0
# define DBG_DEVS(args) printk args
@@ -233,6 +234,8 @@
int __init SMC93x_Init(void)
{
unsigned long SMCUltraBase;
+
+ udelay(500);
if ((SMCUltraBase = SMCDetectUltraIO()) != 0UL) {
printk("SMC FDC37C93X Ultra I/O Controller found @ 0x%lx\n",
Alexander.
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
[]