summaryrefslogtreecommitdiffstats
path: root/sys/dev/vr
Commit message (Collapse)AuthorAgeFilesLines
* Tweak the Macronix driver to hopefully make it more reliable:wpaul1999-05-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | - Change to the same transmit scheme as the PNIC driver. - Dynamically set the cache alignment, and set burst size the same as the PNIC driver in mx_init(). - Enable 'store and forward' mode by default. This is the slowest option and it does reduce 100Mbps performance somewhat, but it's the most reliable setting I can find. I'm more interested in having the driver work reliably than trying to squeeze the best performance out of it. The reason I'm doing this is that on *some* systems you may see a lot of transmit underruns (which I can't explain: these are *fast* test systems) and these errors seem to cause unusual and decidedly non-tulip-like behavior. In normal 10Mbps mode, performance is fine (you can easily saturate a 10Mbps link). Also tweak some of the other drivers: - Increase the size of the TX ring for the Winbond, ASIX, VIA Rhine and PNIC drivers. - Set a larger value for ifq_maxlen in the ThunderLAN driver. The setting of TL_TX_LIST_CNT - 1 is too low (the ThunderLAN driver only allocates 20 transmit descriptors, and I don't want to fiddle with that now because the ThunderLAN's descriptor structure is an oddball size compared to the others).
* Use COMPAT_PCI_DRIVER() for registration if it exists. This shouldn'tpeter1999-04-241-2/+6
| | | | hurt the driver portability to 3.x too much for where drivers are shared.
* Add support for still more cheapo 10/100 cards: Delta Electronics andwpaul1999-02-232-6/+30
| | | | | | | | | | Addtron appear to have their own VIA Rhine II and RealTek 8139 boards with custom PCI vendor and device IDs. This commit updates the PCI vendor and device lists in the vr and rl drivers so that we can probe the additional devices. Found by: nosing around the PCI vendor and device code list at: http://www.halcyon.com/scripts/jboemler/pci/pcicode
* Remember to initialize ifp->if_snd.ifq_maxlen.wpaul1999-02-011-2/+3
|
* Tweak the vr_start() and vr_rxeof() routines a little to improvewpaul1999-01-102-31/+13
| | | | | | | performance and reliability a little. There was a condition before where transmission would stall during periods of heavy traffic exchange between two hosts. Also set the 'want interrupt' bit in receive descriptor control words.
* Minor bug: in the case where allocating a fresh mbuf for the receive ringwpaul1999-01-031-4/+3
| | | | | | fails, we need to set the descriptor status word so that the 'OWN' bit is set again so that the chip can reuse it. Previously, this wasn't being done.
* The VIA Rhine appears to be yet another chip that always includes thewpaul1998-12-241-2/+11
| | | | | ethernet CRC in received frames and has no option to turn this behavior off. Trim the CRC off manually in vr_rxeof().
* probe function changed from returning char * to const char *.dillon1998-12-141-4/+4
|
* The "easy" fixes for compiling the kernel -Wunused: remove unreferenced staticarchie1998-12-071-3/+3
| | | | and local variables, goto labels, and functions declared but not defined.
* Add sanity check to foo_start() routines: in the unlikely (thoughwpaul1998-12-051-2/+8
| | | | | | apparently possible) event that the transmit start routine is called with and empty if_snd queue, bail out instead of dereferencing unilitialized transmit list pointers and panicking.
* An early Christmas present: add driver support for a whole bunch ofwpaul1998-12-042-0/+2577
PCI fast ethernet adapters, plus man pages. if_pn.c: Netgear FA310TX model D1, LinkSys LNE100TX, Matrox FastNIC 10/100, various other PNIC devices if_mx.c: NDC Communications SOHOware SFA100 (Macronix 98713A), various other boards based on the Macronix 98713, 98713A, 98715, 98715A and 98725 chips if_vr.c: D-Link DFE530-TX, other boards based on the VIA Rhine and Rhine II chips (note: the D-Link and certain other cards that actually use a Rhine II chip still return the PCI device ID of the Rhine I. I don't know why, and it doesn't really matter since the driver treats both chips the same anyway.) if_wb.c: Trendware TE100-PCIE and various other cards based on the Winbond W89C840F chip (the Trendware card is identical to the sample boards Winbond sent me, so who knows how many clones there are running around) All drivers include support for ifmedia, BPF and hardware multicast filtering. Also updated GENERIC, LINT, RELNOTES.TXT, userconfig and sysinstall device list. I also have a driver for the ASIX AX88140A in the works.
OpenPOWER on IntegriCloud