2001-02-02 23:01:32

by Ivan Passos

[permalink] [raw]
Subject: 2.2.18: weird eepro100 msgs


Hello,

The system is as follows:
- Intel CA810EAL motherboard (built-in EtherExpress Pro 10/100)
- 128MB RAM
- 10GB IDE HD (Western Digital WD100)
- Linux kernel 2.2.18

Sometimes when I reboot the system, as soon as the eepro100 module is
loaded, I start to get these msgs on the screen:

eth0: card reports no resources.
eth0: card reports no RX buffers.
eth0: card reports no resources.
eth0: card reports no RX buffers.
eth0: card reports no resources.
eth0: card reports no RX buffers.
(...)

They go on forever, and the box becomes inoperational (I can see the msgs
on the screen, but I can't login, type anything ...). If I reboot the
system, the msgs do NOT show up anymore, and then I can use the system
again.

Could anyone _please_ shed a light on this one for me?!?! How could I
solve it?? What kind of additional info you need?? Please let me know.

Later,
Ivan


2001-02-02 23:35:37

by Ion Badulescu

[permalink] [raw]
Subject: Re: 2.2.18: weird eepro100 msgs

On Fri, 2 Feb 2001 15:01:05 -0800 (PST), Ivan Passos <[email protected]> wrote:

> Sometimes when I reboot the system, as soon as the eepro100 module is
> loaded, I start to get these msgs on the screen:
>
> eth0: card reports no resources.
> eth0: card reports no RX buffers.
> eth0: card reports no resources.
> eth0: card reports no RX buffers.
> eth0: card reports no resources.
> eth0: card reports no RX buffers.
> (...)

Does the following patch, taken from 2.4.1, help?

Ion

--
It is better to keep your mouth shut and be thought a fool,
than to open it and remove all doubt.
------------------------
--- linux-2.2.18/drivers/net/eepro100-old.c Fri Feb 2 15:30:23 2001
+++ linux-2.2.18/drivers/net/eepro100.c Fri Feb 2 15:33:19 2001
@@ -751,6 +751,7 @@
This takes less than 10usec and will easily finish before the next
action. */
outl(PortReset, ioaddr + SCBPort);
+ inl(ioaddr + SCBPort);
/* Honor PortReset timing. */
udelay(10);

@@ -839,6 +840,7 @@
#endif /* kernel_bloat */

outl(PortReset, ioaddr + SCBPort);
+ inl(ioaddr + SCBPort);
/* Honor PortReset timing. */
udelay(10);

@@ -1062,6 +1064,9 @@
/* Set the segment registers to '0'. */
wait_for_cmd_done(ioaddr + SCBCmd);
outl(0, ioaddr + SCBPointer);
+ /* impose a delay to avoid a bug */
+ inl(ioaddr + SCBPointer);
+ udelay(10);
outb(RxAddrLoad, ioaddr + SCBCmd);
wait_for_cmd_done(ioaddr + SCBCmd);
outb(CUCmdBase, ioaddr + SCBCmd);

2001-02-03 01:21:05

by Ivan Passos

[permalink] [raw]
Subject: Re: 2.2.18: weird eepro100 msgs


On Fri, 2 Feb 2001, Ion Badulescu wrote:

> On Fri, 2 Feb 2001 15:01:05 -0800 (PST), Ivan Passos <[email protected]> wrote:
>
> > Sometimes when I reboot the system, as soon as the eepro100 module is
> > loaded, I start to get these msgs on the screen:
> >
> > eth0: card reports no resources.
> > eth0: card reports no RX buffers.
> > eth0: card reports no resources.
> > eth0: card reports no RX buffers.
> > eth0: card reports no resources.
> > eth0: card reports no RX buffers.
> > (...)
>
> Does the following patch, taken from 2.4.1, help?

I'm currently testing. I'll get back to you soon (have to reboot the
system a lot to make sure it's really solved ... :)).

Thanks for the quick response!!

Later,
Ivan

2001-02-24 01:54:16

by Ivan Passos

[permalink] [raw]
Subject: Re: 2.2.18: weird eepro100 msgs


On Fri, 2 Feb 2001, Ivan Passos wrote:
>
> On Fri, 2 Feb 2001, Ion Badulescu wrote:
>
> > On Fri, 2 Feb 2001 15:01:05 -0800 (PST), Ivan Passos <[email protected]> wrote:
> >
> > > Sometimes when I reboot the system, as soon as the eepro100 module is
> > > loaded, I start to get these msgs on the screen:
> > >
> > > eth0: card reports no resources.
> > > eth0: card reports no RX buffers.
> > > eth0: card reports no resources.
> > > eth0: card reports no RX buffers.
> > > eth0: card reports no resources.
> > > eth0: card reports no RX buffers.
> > > (...)
> >
> > Does the following patch, taken from 2.4.1, help?
>
> I'm currently testing. I'll get back to you soon (have to reboot the
> system a lot to make sure it's really solved ... :)).

Yes, the patch did solve the problem.

Alan, could you please include this patch on your 2.2.19pre series (if
it's not already included)??

Ion, thanks again for your help!!

Later,
Ivan

--- linux-2.2.18/drivers/net/eepro100-old.c Fri Feb 2 15:30:23 2001
+++ linux-2.2.18/drivers/net/eepro100.c Fri Feb 2 15:33:19 2001
@@ -751,6 +751,7 @@
This takes less than 10usec and will easily finish before the next
action. */
outl(PortReset, ioaddr + SCBPort);
+ inl(ioaddr + SCBPort);
/* Honor PortReset timing. */
udelay(10);

@@ -839,6 +840,7 @@
#endif /* kernel_bloat */

outl(PortReset, ioaddr + SCBPort);
+ inl(ioaddr + SCBPort);
/* Honor PortReset timing. */
udelay(10);

@@ -1062,6 +1064,9 @@
/* Set the segment registers to '0'. */
wait_for_cmd_done(ioaddr + SCBCmd);
outl(0, ioaddr + SCBPointer);
+ /* impose a delay to avoid a bug */
+ inl(ioaddr + SCBPointer);
+ udelay(10);
outb(RxAddrLoad, ioaddr + SCBCmd);
wait_for_cmd_done(ioaddr + SCBCmd);
outb(CUCmdBase, ioaddr + SCBCmd);