Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 27 Oct 1998 20:44:02 -0500 (EST)
From:      Bill Paul <wpaul@skynet.ctr.columbia.edu>
To:        hackers@FreeBSD.ORG, hardware@FreeBSD.ORG
Subject:   Call for testers for Winbond W89C840F driver
Message-ID:  <199810280144.UAA11413@skynet.ctr.columbia.edu>

next in thread | raw e-mail | index | archive | help
This is a call for testers for the Winbond W89C840F fast ethernet
driver. The Winbond 840F is a tulip clone with a couple of wrinkles:
the registers are spaced 4 bytes apart instead of 8 and the receive
filter is programmed by writing directly to registers instead of
loading a setup frame via the transmit DMA engine. The receive filter
also has only one perfect address and a 64-bit multicast hash filter
instead of a 16 entry perfect filter ans a 512-bit hash table.

The driver source is available from the following locations:

http://www.freebsd.org/~wpaul/Winbond/3.0	source for FreeBSD 3.0
http://www.freebsd.org/~wpaul/Winbond/2.2	source for FreeBSD 2.2.x

To add the driver to an existing system, do the following:

- Download the correct version of if_wb.c and if_wbreg.h for your
  version of FreeBSD.
- Copy if_wb.c and if_wbreg.h to /sys/pci.
- Edit /sys/conf/files and add a line that says:

pci/if_wb.c		optional wb device-driver

- Edit your kernel config file (e.g. /sys/i386/conf/GENERIC) and add
  a line that says:

device wb0

- Configure a and compile a new kernel and boot it.

So far, the only card I've found that uses the Winbond chip is the
Trendware TE100-PCIE (www.trendware.com). Trendware also makes DEC
tulip and PNIC adapters. I believe Winbond may make their own cards with 
this chip as well.

Note:

- This is the W89C940F is _NOT_ The same as the W89C840F. The 940 is
  a 10Mbps only NE2000 clone.

- The wb driver uses the same 'kludge descriptor' hack as the PNIC
  driver. I get the idea that the behavior I noticed with the PNIC
  is par for the course with tulip and tulip-like devices. I think
  reloading the transmit list base address register is only possible
  when the transmitter is in the 'stopped' state. Now I defy anybody
  to tell me how to put the transmitter in the 'stopped' state other
  than by resetting the chip.

As usual, please report successes or failures to 
wpaul@skynet.ctr.columbia.edu.

-Bill

-- 
=============================================================================
-Bill Paul            (212) 854-6020 | System Manager, Master of Unix-Fu
Work:         wpaul@ctr.columbia.edu | Center for Telecommunications Research
Home:  wpaul@skynet.ctr.columbia.edu | Columbia University, New York City
=============================================================================
 "It is not I who am crazy; it is I who am mad!" - Ren Hoek, "Space Madness"
=============================================================================

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199810280144.UAA11413>