Home | History | Annotate | Download | only in netboot
      1 /* mostly stolen from FreeBSD if_de.c, if_devar.h */
      2 
      3 #define TULIP_CSR_READ(csr)		(membase[csr*2])
      4 #define CSR_READ(csr)			(membase[csr*2])
      5 #define TULIP_CSR_WRITE(csr, val)	(membase[csr*2] = val)
      6 #define CSR_WRITE(csr, val)		(membase[csr*2] = val)
      7 
      8 #define csr_0			0
      9 #define csr_1			1
     10 #define csr_2			2
     11 #define csr_3			3
     12 #define csr_4			4
     13 #define csr_5			5
     14 #define csr_6			6
     15 #define csr_7			7
     16 #define csr_8			8
     17 #define csr_9			9
     18 #define csr_10			10
     19 #define csr_11			11
     20 #define csr_12			12
     21 #define csr_13			13
     22 #define csr_14			14
     23 #define csr_15			15
     24 
     25 #define csr_busmode		csr_0
     26 #define csr_txpoll		csr_1
     27 #define csr_rxpoll		csr_2
     28 #define csr_rxlist		csr_3
     29 #define csr_txlist		csr_4
     30 #define csr_status		csr_5
     31 #define csr_command		csr_6
     32 #define csr_intr		csr_7
     33 #define csr_missed_frames	csr_8
     34 #define csr_enetrom		csr_9		/* 21040 */
     35 #define csr_reserved		csr_10		/* 21040 */
     36 #define csr_full_duplex		csr_11		/* 21040 */
     37 #define csr_bootrom		csr_10		/* 21041/21140A/?? */
     38 #define csr_gp			csr_12		/* 21140* */
     39 #define csr_watchdog		csr_15		/* 21140* */
     40 #define csr_gp_timer		csr_11		/* 21041/21140* */
     41 #define csr_srom_mii		csr_9		/* 21041/21140* */
     42 #define csr_sia_status		csr_12		/* 2104x */
     43 #define csr_sia_connectivity	csr_13		/* 2104x */
     44 #define csr_sia_tx_rx		csr_14		/* 2104x */
     45 #define csr_sia_general		csr_15		/* 2104x */
     46 
     47 #define SROMSEL		0x0800
     48 #define SROMCS		0x0001
     49 #define SROMCLKON	0x0002
     50 #define SROMCLKOFF	0x0002
     51 #define SROMRD		0x4000
     52 #define SROMWR		0x2000
     53 #define SROM_BITWIDTH	6
     54 #define SROMCMD_RD	6
     55 #define SROMCSON	0x0001
     56 #define SROMDOUT	0x0004
     57 #define SROMDIN		0x0008
     58 
     59 
     60 struct txdesc {
     61 	unsigned long	status;		/* owner, status */
     62 	unsigned long	buf1sz:11,	/* size of buffer 1 */
     63 			buf2sz:11,	/* size of buffer 2 */
     64 			control:10;	/* control bits */
     65 	const unsigned char *buf1addr;	/* buffer 1 address */
     66 	const unsigned char *buf2addr;	/* buffer 2 address */
     67 };
     68 
     69 struct rxdesc {
     70 	unsigned long	status;		/* owner, status */
     71 	unsigned long	buf1sz:11,	/* size of buffer 1 */
     72 			buf2sz:11,	/* size of buffer 2 */
     73 			control:10;	/* control bits */
     74 	unsigned char	*buf1addr;	/* buffer 1 address */
     75 	unsigned char	*buf2addr;	/* buffer 2 address */
     76 };
     77