Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 20 Aug 1999 13:18:06 -0400 (EDT)
From:      Bill Paul <wpaul@skynet.ctr.columbia.edu>
To:        hackers@freebsd.org, hardware@freebsd.org
Subject:   Call for testers, new driver, blah blah blah...
Message-ID:  <199908201718.NAA28805@skynet.ctr.columbia.edu>

next in thread | raw e-mail | index | archive | help
This is a call for testers for a new device driver for yet another PCI
fast ethernet controller: the Sundance Technologies ST201. This chipset
is currently being used on the D-Link DFE-550TX. The chip on the D-Link
is labeled DL10050, but it's actually an ST201. I don't know what other
cards use this chip; D-Link contacted me about writing a driver and sent 
me two sample cards, and do far theirs is the only one that I know of. 
The driver is set up to recognize the stock Sundance PCI vendor/device ID 
as well as D-Link's.

The Sundance ST201 is a clone of (wait for it) the 3Com 3c90x Etherlink XL
series. No, really. Honest and for true. It uses the same DMA descriptor 
format and operation is very similar to the 3Com cards, although the 
actual register layout is different. The ST201 also has only a 64-bit 
multicast hash filtering table where the 3Com cards have a 256-bit table.
Also, the ST201 supports only an MII transceiver interface and has no
built in BNC/10baseT/AUI ports like the 3Coms.

One thing that is a lot like the 3Coms is the fact that packet fragment
buffers can be aligned on any byte boundaries, which means that there's
no copying required to assure proper payload alignment on the alpha.
Performance seems good so far though I haven't really torture tested it
yet.

Currently, there are drivers for 3.2+ and 4.0 available. You can download
them from:

	http://www.freebsd.org/~wpaul/Sundance/3.0
	http://www.freebsd.org/~wpaul/Sundance/4.0

Both versions support FreeBSD/i386 and FreeBSD/alpha and the 4.0 version
uses newbus and can be compiled as a loadable module.

There's no README yet, so here are some quick instructions:

- Download the version of if_ste.c and if_stereg.h for your FreeBSD
  installation.
- Copy if_ste.c and if_stereg.h to /sys/pci
- Edit /sys/conf/files and add a line that says:
pci/if_ste.c		optional ste0 device-driver
  NOTE: for FreeBSD 4.0, leave out the "device-driver" part. It's no
  longer needed.
- Edit your kernel config file, e.g. /sys/i386/conf/GENERIC and add
  a line that says:
device ste0
- Config and compile a new kernel and boot it.

Note that I chose the name "ste" so as not to get it confused with
the SCSI tape device "st". I realize we use sa instead of st now, but
I'll probably create a driver version for 2.2.x soon, and st is still
used there.

As usual, report problems or send large bags of cash to
wpaul@skynet.ctr.columbia.edu. I plan to merge this driver into the
-current branch just as soon as I can whip up a man page for it.

Share and enjoy!

-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?199908201718.NAA28805>