* Copyright (c) 1991 The Regents of the University of California.
* %sccs.include.redist.c%
* @(#)if_ecreg.h 7.2 (Berkeley) %G%
* Device definitions for the i82586 generally and the 3com ec507
* ISA bus ethernet controller.
* Intermediate System Control Block pointer
#define CUS_SUSPENDED 0x100
#define RUS_SUSPENDED 0x10
* Individual Address Setup
* Load Multicast Addresses
u_short count
; /* number of bytes, 14 bits only */
/* char mcaddrs[6]; /* white lie, data goes here */
#define COLLISIONS(p) (p->com0 & 0xf)
#define EXCOL 0x10 /* Excessive Collisions, Aborted */
#define HEARTBEAT 0x20 /* CDT signal monitored and OK (good) */
#define TXDEFFERED 0x40 /* ``due to Previous Link Activity'' */
#define DMALATE 0x80 /* DMA underrun */
#define NOCTS 0x100 /* Transmission stopped due to ... */
#define NOCARSENSE 0x200 /* Loss of Carrier sense during TX */
#define LATECOLL 0x400 /* Late Collision detected */
#define TXERRS 0x7d0 /* Various Bad Things */
#define COM1_TRANSMIT 0x4
u_short proto
; /* Length for 802.3 */
* Transmit Buffer Descriptor
* This really should be a separate structure,
* but it will be convenient to lump them together.
* Receive Frame Descriptor
* Receive Buffer Descriptor
* Set Operating Parameters
u_char data1
; /* addr len, no src ins, lpbk, prmble */
u_char data2
; /* max restries, slot time high */
u_char promisc
; /* brddis, mnch/nrz, tnocr, crc16, bstf, pad */
u_char cdf_cds
; /* carrier detect/sense filter(length) & src */
#define COM1_CONFIGURE 0x2
struct ec_82586params modes
;
struct ec_transmit tcom
[NTXBUF
];
struct ec_rfd rcom
[NRXBUF
];
struct ec_configure config
;
struct ec_iasetup iasetup
;
struct ec_mcsetup mcsetup
;
char txbuf
[NTXBUF
][ECMTU
];
char rxbuf
[NRXBUF
][ECMTU
];