Linux Network Drivers

This is the primary site for information on and updates to the Linux Ethernet device drivers.

Linux now has driver support for all mass-market PCI Ethernet chips as of January 1999. While a few specific boards are not supported because e.g. of unique transceiver interfaces, they are rare exceptions.

This statement was not true for a short period in 1998 as several new chips became widely available. My driver work in 1998 included new drivers for the Packet Engines "Hamachi" GNIC-II, VIA "Rhine" VT86c100, and Winbond W89c840. Most of my other PCI drivers were significantly reworked to support the new 2.2.* kernel structure.

The new probe structure not only allows forward compatibility with the new kernels, it makes it easier to support branded and work-alike (e.g. clones) of existing designs. As an example of the wide device support needed in a single driver, the Tulip driver currently supports six unique chips from Digital, and Tulip-like chips from Lite-On, Macronix, and ASIX. Branded versions of these chips are sold by LinkSys, Compex and Netgear.

1998 work also included tested CardBus support for two additional drivers (EPIC and Tulip), significant extentions to support new hardware with the 3Com PCI and Tulip drivers, and work-in-progress on the HAL Synfinity mesh adapter.


Note: PCMCIA device drivers are tied to a particular Socket Services version and thus are separately distributed on

A few of these drivers were not written by me, even though most include my name on the author list by virtue of starting from my skeleton driver or including generic code. You should contact the other listed authors for updates or bugfixes for those drivers.

--Donald Becker

Other Major Sites for Linux Network Information

Quick index to driver pages by speed.

Gigabit Ethernet

Fast Ethernet (and FE boards with 10mbps-only transceivers)

Note: ISA boards based on the DP83800 are not supported due to the non-availability of documentation for this chip.

10mbps Ethernet Drivers (New and updated versions)

Many additional drivers are in the current kernel. If an update is available here it's probably to fix a specific problems, and not to make major unstable changes in a driver.

Note: ISA boards based on the DP83800 are not supported due to the unavailability of documentation for this chip.

Parallel Port "pocket" Ethernet Adapters

Common Problems and Fixes

Support Programs

Support Information

PCI Ethernet Device Drivers and Documentation

Digital "Tulip" driver for DEC 21*4*-based boards.
This page contains the instructions and updated drivers for SMC EtherPower and others PCI Ethernet and Fast Ethernet adatpers. Driver development is reported on the Tulip development.
3Com logo "Vortex" and "Boomerang" EtherLink III PCI/EISA (3c590 3c592 3c595 3c597 3c900 and 3c905) driver.
This is a driver for the 3Com 100Mbs PCI and EISA ethercards.
With a description and instructions.
Written by me, Donald Becker.
Intel EtherExpress Pro 100 driver.
This is a new driver for the Intel EtherExpress Pro 100B and PCI Pro/10+ boards with the i82557 chip.
Note that this is not for the older Pro 10 or Pro 100A boards.
Intel EtherExpress Pro/10 PCI (w/ i82596 chip) driver -- NEW!.
This is a driver for the Intel PCI EtherExpress Pro/10 with the i82596 chip written by John Stalba,
Note that this is not for the Pro/10+ boards that use i82557 chip (use the EEPro100 driver instead) , or for the ISA EEPro10 with the i82595 chip (see the ISA section below).
TI ThunderLAN driver (external link -- Caldera/James Banks).
The "TLAN" TNETE100PCE chip, rarely seen except on the Compaq "Integrated NetFlex-3 10 T UTP Module"
PCI NE2000 driver.
See also the PCI NE2000 updates (remote link).
Packet Engines "Yellowfin" G-NIC driver
SMC EtherPower II (EPIC/100 83c170 chip) driver.
RealTek RTL8129/8139 driver.

Pointers to Other Ethercard Drivers

Intel EtherExpress Pro/10 ISA (i82595) updated driver
Crystal/Cirrus/IBM-EtherJet CS89[02] device driver.
A Linux driver for Crystal LAN Ethernet chips, as used on several IBM products, written for and maintained by Crystal Semiconductor. Written By Russell Nelson of Crynwr Software.
3Com logo Updated 3Com EtherLink (3c5*9) driver with Plug-and-Play patch.
With a description and instructions. This update is only needed with the 1.2.* kernel and the 3c509B.
Written by me, Donald Becker.
3Com logo A driver for the 3Com 3c515 ISA Fast EtherLink card.
Written by me, Donald Becker.
NI5010 driver
Written by Jan-Pascal van Best .
Updated SMC Ultra / SMC EtherEZ driver for 1.2.13.
Now with Programmed-I/O (in addition to the original ISA "high memory") support.
This driver update source file is for kernels 1.2.13 through 1.3.90. This is a drop-in replacement for drivers/net/smc-ultra.c. The 2.0.0 kernels already include these changes.
Written by me, Donald Becker.

Other Ethercard Drivers

These drivers are either unreleased, in alpha test, incorporated in some other package, or here for historical reasons.
3Com logo A driver for the 3Com 3c515 ISA Fast EtherLink card.
Written by me, Donald Becker.
A driver for SMC-91c92 PCMCIA ethernet adapters.
This driver supports the Megahertz X-Jack PCMCIA ethercard, and may support others with the SMC 9000 series chips as well.
This driver is now distributed as part of David Hind's PCMCIA package. You should use that version in preference to the one here.
HP PC-LAN+ (27247 and 27252A) driver.
This is a driver for the recent HP 8390-based ethercards. Don't confuse these with the PC-LAN-non-'+' or the HP2405J PCnet/LANCE card.
Details of the driver are here.
Written by me, Donald Becker.
Zenith Z-Note and IBM ThinkPad built-in network.
Written by me, Donald Becker.
Ansel Communications AC3200 EISA adaptor.
Written by me, Donald Becker.

Non License-Conforming Drivers

Several drivers have been distributed that are little more than renamed versions of my drivers. Some have my name, the copyright notice or the Gnu GPL license notice removed. The less flagrant violations merely fail to note that the driver has been modified from the original version. (The GPL requires such a note.) Here is a mapping from the bogus driver name to the official name:
mpx5030.c rtl8139.c
smc1211.c rtl8139.c
rtl8029.c ne2k-pci.c

Unsupported boards

Linux now supports almost every current-production PCI Fast and Gigabit Ethernet chip!

The exceptions are generally unique boards based on supported chips:

Of course we can't make any claims about not-yet-introduced chips.

Token Ring

The 2.0.* kernels include support for most common ISA adapters.

Other resources

Author:Donald Becker

CESDIS is located at the NASA Goddard Space Flight Center in Greenbelt MD.