]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Add support for the 8139C+ chipset. Unlike the other chips in the 8139
authorBill Paul <wpaul@FreeBSD.org>
Thu, 10 Jul 2003 20:38:48 +0000 (20:38 +0000)
committerBill Paul <wpaul@FreeBSD.org>
Thu, 10 Jul 2003 20:38:48 +0000 (20:38 +0000)
commit96fd5c300d86908ddd27f38ff4e2375be88c99fc
treee6d1a7540c7dc28314f8ded21b24d4506ca6532c
parente0b2dc93291f2a85b9181beb4d4624223562af37
Add support for the 8139C+ chipset. Unlike the other chips in the 8139
series, the 8139C+ has a descriptor-based DMA mechanism, and its
performance is actually pretty respectable. Note: the 8139D chip does
not support C+ mode. Only the 8139C+ and 8169 gigE chips support C+ mode.

Supported features:

- RX and TX checksum offload
- hardware VLAN tag insertion/extraction
- TX interrupt moderation using the 8139's on-board timer

Everything should be properly busdma'ed and endian-independent, so
things should work ok on non-x86 platforms. Unfortunately, my call
for testers on this code was met with deafening silence, and I don't
have access to any non-x86 FreeBSD boxes at the moment, so this is
speculation.

The device detection code has been cleaned up a little as well
(thanks to Michal Mertl) for the patches.

There are also updates to the rl(4) man page (which I accidentally
checked in before when I updated the dc(4) man page. Oops.)

Todo: finish support for the 8169 gigabit ethernet chip. This
mainly requires writing an rlgphy driver to handle the 8169's built-in
PHY. This will have to wait until I actually get my hands on an 8169
card for testing though. (I still can't find a source for one in the
U.S. Suggestions/pointers welcome.)
sys/pci/if_rl.c
sys/pci/if_rlreg.h