Home | History | Annotate | Line # | Download | only in ic
      1  1.1  bjh21 /*	$NetBSD: dp83905reg.h,v 1.1 2001/12/14 10:16:03 bjh21 Exp $	*/
      2  1.1  bjh21 
      3  1.1  bjh21 /*
      4  1.1  bjh21  * Ben Harris, 2001
      5  1.1  bjh21  *
      6  1.1  bjh21  * This file is in the public domain.
      7  1.1  bjh21  */
      8  1.1  bjh21 
      9  1.1  bjh21 /* dp83905reg.h - NatSemi DP83905 registers */
     10  1.1  bjh21 
     11  1.1  bjh21 /*
     12  1.1  bjh21  * This file describes the special registers in the National
     13  1.1  bjh21  * Semiconductor DP83905 AT/LANTIC AT Local Area Network Twisted-Pair
     14  1.1  bjh21  * Interface Controller.  The Macronix MX98905 is a clone of this chip.
     15  1.1  bjh21  *
     16  1.1  bjh21  * The DP83905 is a DP8390 with added glue logic to enable it to
     17  1.1  bjh21  * emulate both an NE2000 and a WD 8319.  It and its clones are
     18  1.1  bjh21  * commonly used on podulebus Ethernet cards.
     19  1.1  bjh21  */
     20  1.1  bjh21 
     21  1.1  bjh21 /* Extra registers (in page 0) */
     22  1.1  bjh21 #define DP83905_MCRA	0x0a
     23  1.1  bjh21 #define DP83905_MCRB	0x0b
     24  1.1  bjh21 
     25  1.1  bjh21 #define DP83905_MCRA_IOADDR_MASK	0x07 /* I/O Address */
     26  1.1  bjh21 #define DP83905_MCRA_IOADDR_300		0x00
     27  1.1  bjh21 #define DP83905_MCRA_IOADDR_SOFT	0x01
     28  1.1  bjh21 #define DP83905_MCRA_IOADDR_240		0x02
     29  1.1  bjh21 #define DP83905_MCRA_IOADDR_280		0x03
     30  1.1  bjh21 #define DP83905_MCRA_IOADDR_2C0		0x04
     31  1.1  bjh21 #define DP83905_MCRA_IOADDR_320		0x05
     32  1.1  bjh21 #define DP83905_MCRA_IOADDR_340		0x06
     33  1.1  bjh21 #define DP83905_MCRA_IOADDR_360		0x07
     34  1.1  bjh21 #define DP83905_MCRA_INT_MASK		0x38 /* Interrupt line used */
     35  1.1  bjh21 #define DP83905_MCRA_INT0		0x00
     36  1.1  bjh21 #define DP83905_MCRA_INT1		0x08
     37  1.1  bjh21 #define DP83905_MCRA_INT2		0x10
     38  1.1  bjh21 #define DP83905_MCRA_INT3		0x18
     39  1.1  bjh21 #define DP83905_MCRA_FREAD		0x40 /* Fast read */
     40  1.1  bjh21 #define DP83905_MCRA_MEMIO		0x80 /* Memory or I/O mode (1=>mem) */
     41  1.1  bjh21 
     42  1.1  bjh21 #define DP83905_MCRB_PHY_MASK		0x03 /* Physical layer interface */
     43  1.1  bjh21 #define DP83905_MCRB_PHY_10_T		0x00 /* TPI (10BASE-T squelch) */
     44  1.1  bjh21 #define DP83905_MCRB_PHY_10_2		0x01 /* Thin Ethernet (10BASE2) */
     45  1.1  bjh21 #define DP83905_MCRB_PHY_AUI		0x02 /* Thick Ethernet (10BASE5/AUI) */
     46  1.1  bjh21 #define DP83905_MCRB_PHY_TPI_NONSPEC	0x03 /* TPI (Reduced squelch) */
     47  1.1  bjh21 #define DP83905_MCRB_GDLNK		0x04 /* Good link */
     48  1.1  bjh21 #define DP83905_MCRB_IO16CON		0x08 /* IO16* control */
     49  1.1  bjh21 #define DP83905_MCRB_CHRDY		0x10 /* CHRDY from IORD/WR* or BALE */
     50  1.1  bjh21 #define DP83905_MCRB_BE			0x20 /* Bus error */
     51  1.1  bjh21 #define DP83905_MCRB_BPWR		0x40 /* Boot PROM write */
     52  1.1  bjh21 #define DP83905_MCRB_EELOAD		0x80 /* EEPROM load */
     53