/*------------------------------------------------------------------------
. smc9194.c
. This is a driver for SMC's 9000 series of Ethernet cards.
.
. Copyright (C) 1996 by Erik Stahlman
. This software may be used and distributed according to the terms
. of the GNU General Public License, incorporated herein by reference.
.
. "Features" of the SMC chip:
. 4608 byte packet memory. ( for the 91C92. Others have more )
. EEPROM for configuration
. AUI/TP selection ( mine has 10Base2/10BaseT select )
.
. Arguments:
. io = for the base address
. irq = for the IRQ
. ifport = 0 for autodetect, 1 for TP, 2 for AUI ( or 10base2 )
.
. author:
. Erik Stahlman ( erik@vt.edu )
. contributors:
. Arnaldo Carvalho de Melo <acme@conectiva.com.br>
.
. Hardware multicast code from Peter Cammaert ( pc@denkart.be )
.
. Sources:
. o SMC databook
. o skeleton.c by Donald Becker ( becker@scyld.com )
. o ( a LOT of advice from Becker as well )
.
. History:
. 12/07/95 Erik Stahlman written, got receive/xmit handled
. 01/03/96 Erik Stahlman worked out some bugs, actually usable!!! :-)
. 01/06/96 Erik Stahlman cleaned up some, better testing, etc
. 01/29/96 Erik Stahlman fixed autoirq, added multicast
. 02/01/96 Erik Stahlman 1. disabled all interrupts in smc_reset
. 2. got rid of post-decrementing bug -- UGH.
. 02/13/96 Erik Stahlman Tried to fix autoirq failure. Added more
. descriptive error messages.
. 02/15/96 Erik Stahlman Fixed typo that caused detection failure
. 02/23/96 Erik Stahlman Modified it to fit into kernel tree
. Added support to change hardware address
. Cleared stats on opens
. 02/26/96 Erik Stahlman Trial support for Kernel 1.2.13
. Kludge for automatic IRQ detection
. 03/04/96 Erik Stahlman Fixed kernel 1.3.70 +
. Fixed bug reported by Gardner Buchanan in
. smc_enable, with outw instead of outb