[vortex] 3c59x Linux-2.4 PCI bus error/Host error
Anup Pemmaiah
pemmaiah@cc.usu.edu
Thu Aug 8 13:10:00 2002
I tried with the 3c59x driver from the scyld website. But no luck. I got the
same host error with the same status in all the corresponding registers.
When my linux boots up, the 3c59x module gets installed during the start
up(I think it is statically compiled with the kernel. Because I removed all
the existing 3c59x.o files from all directories and still the module got
installed during start up). This module works fine. If I remove the module and
again reinstall the 3c59x module (either the one from scyld website or the one
came along with the kernel source) I get the previously mentioned errors. The
installation works fine. The problem arises when I try to transfer data.
I was curious, should I take care of something during removing the
module apart from "rmmod 3c59x". Is there any possibility of the previous
module holding some resources or setting some memory locations which might
create problems for the later modules.
It will be really great if I get some help. Have a great day.
Thank you,
Anup
>===== Original Message From Donald Becker <becker@scyld.com> =====
>On Sun, 28 Jul 2002, Anup Pemmaiah wrote:
>
>> Subject: RE: [vortex] 3c59x LK1.1.16 Linux-2.4 PCI bus error/Host error
>>
>> I have a similar problem as that of Eddie. I have 3c905 - 100 Base TX
>> Boomerang NIC. I use 3c59x driver for this. Installation works on
>> fine. When I start a tranmission, either the DHCP daemon to get th IP
>> address or just try
>> to transmit some message I get the PCI bus error/Host error as shown below.
>> When the error occurs the status register will have the value 0xe803 and
the
>> FIFO diagnostic register will have 2000.
>
>> When I went through the specifications of the driver, the first
>> bit of the
>> status register says the interrupt is latched and the second bit specifies
>> that there is a host error.
>
>Correct.
>
>> When I checked the reason for the Host error in the FIFO
>> doagnostic register where the 13th bit is set, it states that the
>> interrupt was generated because of "rxUnderrun".Since the reason it
>> states that the "Host is trying to read from the receive FIFO faster
>> than the network can fill it and therefore the host reads invalid
>> data", should I reduce the reading speed of the Host?
>
>This error can only occur when the host is using programmed-I/O to read
>the data from the NIC. The driver you are using should be using
>the bus-master capability, and never reading from the Rx FIFO.
>
>Something unusual is going on here. Unless Andrew or Bogdan has an
>idea, you should try the Scyld 3c59x.c driver to see if the problem
>exists with that driver as well.
> http://www.scyld.com/network/vortex.html
> ftp://ftp.scyld.com/pub/network/3c59x.c
>
>> Jul 27 22:55:42 Anup kernel: eth0: Host error, FIFO diagnostic register
2000.
>> Jul 27 22:55:42 Anup kernel: eth0: PCI bus error, bus status 00a00029
>
>Hmmm, there is nothing unusual reported in that status.
>Specifically, it is not reporting a PCI bus error.
>This is not similar to the previous problem.
>
>--
>Donald Becker becker@scyld.com
>Scyld Computing Corporation http://www.scyld.com
>410 Severn Ave. Suite 210 Second Generation Beowulf Clusters
>Annapolis MD 21403 410-990-9993
-------------------------------------------------
Anup Pemmaiah
435-512-0935(mobile)
pemmaiah@cc.usu.edu
-------------------------------------------------