* Copyright (c) 1982, 1990 The Regents of the University of California.
* %sccs.include.redist.c%
* @(#)if_lereg.h 7.2 (Berkeley) %G%
#define LEMINSIZE 60 /* should be 64 if mode DTCR is set */
#define LE_RLEN (LERBUFLOG2 << 13)
#define LE_TLEN (LETBUFLOG2 << 13)
#define vu_char volatile u_char
vu_char ler0_id
; /* ID */
vu_char ler0_status
; /* interrupt enable/status */
u_short ler1_rdp
; /* data port */
u_short ler1_rap
; /* register select port */
* Overlayed on 16K dual-port RAM.
* Current size is 13,758 bytes with 8 x 1518 receive buffers and
* 1 x 1518 transmit buffer.
u_short ler2_mode
; /* +0x0000 */
u_char ler2_padr
[6]; /* +0x0002 */
u_long ler2_ladrf0
; /* +0x0008 */
u_long ler2_ladrf1
; /* +0x000C */
u_short ler2_rdra
; /* +0x0010 */
u_short ler2_rlen
; /* +0x0012 */
u_short ler2_tdra
; /* +0x0014 */
u_short ler2_tlen
; /* +0x0016 */
/* receive message descriptors */
struct lermd
{ /* +0x0018 */
/* transmit message descriptors */
struct letmd
{ /* +0x0058 */
char ler2_rbuf
[LERBUF
][LEMTU
]; /* +0x0060 */
char ler2_tbuf
[LETBUF
][LEMTU
]; /* +0x2FD0 */
* Control and status bits -- lereg0
#define LE_IE 0x80 /* interrupt enable */
#define LE_IR 0x40 /* interrupt requested */
#define LE_LOCK 0x08 /* lock status register */
#define LE_ACK 0x04 /* ack of lock */
#define LE_JAB 0x02 /* loss of tx clock (???) */
#define LE_IPL(x) ((((x) >> 4) & 0x3) + 3)
* Control and status bits -- lereg1
* Control and status bits -- lereg2