Linux Step By Steps


From Tue Nov 7 04:14:45 2000

DJH> I'm trying to install a Netgear FA312 on my system to replace a failing
DJH> FA310 (which uses the DEC Tulip driver) into a monolithic 2.2.17 (i.e.
DJH> no modules). The driver provided on the Netgear disk doesn't compile per
DJH> their instructions. Anyone know if one of the existing kernel drivers
DJH> will work with this card? Thanks!

The Netgear FA312 (and FA311) are not based on any form or derivitive/clone of the DEC Tulip chip, and will not work with the Linux Tulip driver. The problem you are having with the Netgear supplied driver is that - get this - it is only intended for the Linux 2.0.xx kernels. The commments at the top of the Netgear supplied driver with an FA311 I bought recently indicate that it will not work with Linux 2.2.x kernels.

That said, the Netgear FA311/312 cards use a National Semiconductor ethernet controller, and are supported by the fairly new "natsemi.c" driver for Linux. You will have to add this to any 2.2.x kernel based system yourself. The driver is written by Donald Becker, and can be found on the site. The Linux 2.4 prerelease kernels appear to include the natsemi.c driver, BTW.

I have a Netgear FA310TX that works great with Caldera eDesktop 2.4, using the Tulip driver. I bought the FA311 thinking it was maybe just a newer version of the same card, only to find out all this. I ended up not even installing the card in my PC, once I found out what it was. I took it back and got my money back!

You can still buy the FA310TX from most online resellers I've checked, such as, but you'll have to search for it. Netgear doesn't list it on their WWW site in the product information anymore.

If you want a good Tulip-based card that is guaranteed by the manufacturer to work with kernel-supplied ethernet drivers, you might want to take a look at some of the Kingston cards. They've been advertised for some time now in the Linux Journal. I've not personally used one of their cards though...


From Alan Jackson <>

As an addendum. I wanted to install a NIC in my old 133mHz 586 machine running Caldera ed2.4, Linux 2.2.14.

Best Buy mostly carries Netgear and Linksys, and Netgear does talk about supporting Linux on their website, so I went for Netgear. I bought a FA311, brought it home and installed it. No problem. Then I started trying to get a driver to work. The floppy that came with the card had a Linux directory on it with precompiled drivers, and source code, for redhat 6.0, 6.1, 6.2, 7.0, and 7.1. Actually, all the pre 7.1 drivers were identical. I tried the precompiled, and that failed, not surprisingly. I tried compiling the source, and that failed. Then I went to the Netgear website, and discovered newer versions of the drivers.  

For Linux 2.2.x, the driver to use is fa31x. For Linux 2.4.x, there is a different driver out there.

Compiling the driver is moderately tricky, here is the command I used...

gcc -D__KERNEL__ -DMODULE -DMODVERSIONS -Wall -Wstrict-prototypes -O -m486 -c fa31x.c -I/usr/src/linux/include

The trailing include directory reference is crucial.

After compiling,

% cp fa31x.o /lib/modules/2.2.14/net/
% insmod -v fa31x

Then from the Control Center in KDE, start (restart) eth0. Try a ping to see if it's all working.

It has worked like a champ for me.