[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
-------------------------------------------------