Proposed patch to tulip.c v0.91g

George Varndell
Fri Jul 23 07:48:53 1999

William J. Earl wrote:
>      I have been using a Netgear FA310TX card for a while now, and I
> have noticed quite a few incoming packet drops, when running in
> 10BaseT half-duplex mode, attached to an unswitched hub.  The problem
> was particularly bad for ARP replies.  The FA310TX uses the Lite-On
> PNIC controller.  I have applied a workaround for the PNIC receiver
> bug which causes this problem to tulip.c, based on the workaround
> developed by Bill Paul for the BSD if_pn.c driver.  The workaround
> appears to solve the problem for me.
I work in the real time OS industry, doing board support code and
device drivers and I often turn to Linux device drivers for info
and examples. I'd like to share some info that may help here.
I was tasked to bring up several PCI ethernet cards, including a
Netgear FA310TX (rev D1) card, on a new PPC embedded platform.
This PPC platform has a PCI bridge which allows control over the
timing and drive strength of certain PCI bus signals.
Using the power-up defaults of the bridge, I was able to bring up
various other PCI ethernet cards ('97x, '558) rather quickly, but
had serious problems with the Netgear. The symptoms were nearly
identical to those described in William Earl's (and other) message(s).
Searching the web for PNIC docs (ha!), I found the BSD web site with
the S/W workaround and considered pulling that code into my driver,
but chose to explore 'tuning' the PCI signals first.
To make a long story short, I was able to make the problem go away
(completely) by altering the PCI signal behavior of the bridge.
I won't go into specifics because I know this not an option for most,
but it seems the PNIC is rather picky about certain things.
If anyone wants more info, please email me directly.

George Varndell