Date: Fri, 4 Jul 2003 17:18:13 -0700 (PDT) From: wpaul@FreeBSD.ORG (Bill Paul) To: hackers@freebsd.org, current@freebsd.org Subject: Call for testers: rl(4) optimized for 8139C+ Message-ID: <20030705001813.3BA9237B401@hub.freebsd.org>
next in thread | raw e-mail | index | archive | help
Somehow I doubt I'm going to get a lot of responses to this, since I'm not sure how many people besides me actually have an 8139C+ NIC. That said, if you have one, and you're running FreeBSD 5.1 or later, please try the driver code at: http://www.freebsd.org/~wpaul/RealTek/cplus If you actually have a C+ card, it will show up like this: rl0: <RealTek 8139 10/100BaseTX (C+)> port 0xc000-0xc0ff mem 0xdc001000-0xdc0010ff irq 11 at device 13.0 on pci0 rl0: Ethernet address: 00:e0:4c:00:00:1b miibus5: <MII bus> on rl0 rlphy0: <RealTek internal media interface> on miibus5 rlphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto Also, ifconfig rl0 will show this: rl0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500 options=1b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING> The 8139C+ uses real descriptor-based DMA and actually exhibits pretty good performance. (With my Athlon 900Mhz test machine, I can achieve 143000 frames/sec raw transmit speed.) This driver supports the following features: - RX and TX descriptor lists - RX and TX TCP/IP checksum offload - RX and TX hardware vlan tagging - TX interrupt moderation (using the 8139C+'s on-board timer) The chip supports TCP large send, but there's no driver support for that because there's no way to exploit it in FreeBSD. The chip also supports two TX DMA queues (normal and high priority), but the driver only takes advantage of one. If you have a -current system, please compile this code with -DNEW_BUSDMA_API (this enables the use of the two new arguments to the bus_dma_tag_create() function which appeared a couple of days ago). I'm mostly looking for performance reports and success/failure reports concerning VLANs. (I don't have an easy way to test the VLAN support at home. I think I did everything right, but I want to be sure before I commit to the tree.) There is preliminary support for the 8169 gigE chip, but I don't have a card to test with, so don't expect RealTek gigE NICs to work yet. Lastly, I'm also interested to see just what NICs are out there that use the 8139C+. The only way to spot the presence of such a chip raw transmit speed.) This driver supports the following features: - RX and TX descriptor lists - RX and TX TCP/IP checksum offload - RX and TX hardware vlan tagging - TX interrupt moderation (using the 8139C+'s on-board timer) The chip supports TCP large send, but there's no driver support for that because there's no way to exploit it in FreeBSD. The chip also supports two TX DMA queues (normal and high priority), but the driver only takes advantage of one. If you have a -current system, please compile this code with -DNEW_BUSDMA_API (this enables the use of the two new arguments to the bus_dma_tag_create() function which appeared a couple of days ago). I'm mostly looking for performance reports and success/failure reports concerning VLANs. (I don't have an easy way to test the VLAN support at home. I think I did everything right, but I want to be sure before I commit to the tree.) There is preliminary support for the 8169 gigE chip, but I don't have a card to test with, so don't expect RealTek gigE NICs to work yet. Lastly, I'm also interested to see just what NICs are out there that use the 8139C+. The only way to tell if you have the chip is to check the part number on it. (It should in fact say 8139C+.) I hope RealTek has actually sold this chip well, because it actually seems to perform really well. -Bill -- ============================================================================= -Bill Paul (510) 749-2329 | Senior Engineer, Master of Unix-Fu wpaul@windriver.com | Wind River Systems ============================================================================= "If stupidity were a handicap, you'd have the best parking spot." =============================================================================
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030705001813.3BA9237B401>