|
|
1.1 ! root 1: /* Declarations specific to this driver */ ! 2: #define NTBUF 2 ! 3: #define TLEN 1 ! 4: #define NRBUF 8 ! 5: #define RLEN 3 ! 6: #define BUFSIZE 1518 ! 7: #define RAP 0xe ! 8: #define RDP 0xc ! 9: ! 10: /* Control and status register 0 flags */ ! 11: ! 12: #define ERR 0x8000 ! 13: #define BABL 0x4000 ! 14: #define CERR 0x2000 ! 15: #define MISS 0x1000 ! 16: #define MERR 0x0800 ! 17: #define RINT 0x0400 ! 18: #define TINT 0x0200 ! 19: #define IDON 0x0100 ! 20: #define INTR 0x0080 ! 21: #define INEA 0x0040 ! 22: #define RXON 0x0020 ! 23: #define TXON 0x0010 ! 24: #define TDMD 0x0008 ! 25: #define STOP 0x0004 ! 26: #define STRT 0x0002 ! 27: #define INIT 0x0001 ! 28: ! 29: /* Coontrol and status register 3 flags */ ! 30: ! 31: #define BSWP 0x0004 ! 32: #define ACON 0x0002 ! 33: #define BCON 0x0001 ! 34: ! 35: /* Initialisation block (must be on word boundary) */ ! 36: ! 37: struct init_block { ! 38: u_short mode; /* Mode register */ ! 39: u_char padr[6]; /* Ethernet address */ ! 40: u_char ladrf[8]; /* Logical address filter (multicast) */ ! 41: u_short rdra; /* Low order pointer to receive ring */ ! 42: u_short rlen; /* High order pointer and no. rings */ ! 43: u_short tdra; /* Low order pointer to transmit ring */ ! 44: u_short tlen; /* High order pointer and no rings */ ! 45: }; ! 46: ! 47: /* Mode settings */ ! 48: ! 49: #define PROM 0x8000 /* Promiscuous */ ! 50: #define INTL 0x0040 /* Internal loopback */ ! 51: #define DRTY 0x0020 /* Disable retry */ ! 52: #define COLL 0x0010 /* Force collision */ ! 53: #define DTCR 0x0008 /* Disable transmit crc */ ! 54: #define LOOP 0x0004 /* Loop back */ ! 55: #define DTX 0x0002 /* Disable transmitter */ ! 56: #define DRX 0x0001 /* Disable receiver */ ! 57: ! 58: /* Message descriptor structure */ ! 59: ! 60: struct mds { ! 61: u_short addr; ! 62: u_short flags; ! 63: u_short bcnt; ! 64: u_short mcnt; ! 65: }; ! 66: ! 67: /* Receive ring status flags */ ! 68: ! 69: #define OWN 0x8000 /* Owner bit, 0=host, 1=Lance */ ! 70: #define MDERR 0x4000 /* Error */ ! 71: #define FRAM 0x2000 /* Framing error error */ ! 72: #define OFLO 0x1000 /* Silo overflow */ ! 73: #define CRC 0x0800 /* CRC error */ ! 74: #define RBUFF 0x0400 /* Buffer error */ ! 75: #define STP 0x0200 /* Start of packet */ ! 76: #define ENP 0x0100 /* End of packet */ ! 77: ! 78: /* Transmit ring flags */ ! 79: ! 80: #define MORE 0x1000 /* More than 1 retry */ ! 81: #define ONE 0x0800 /* One retry */ ! 82: #define DEF 0x0400 /* Deferred transmit */ ! 83: ! 84: /* Transmit errors */ ! 85: ! 86: #define TBUFF 0x8000 /* Buffer error */ ! 87: #define UFLO 0x4000 /* Silo underflow */ ! 88: #define LCOL 0x1000 /* Late collision */ ! 89: #define LCAR 0x0800 /* Loss of carrier */ ! 90: #define RTRY 0x0400 /* Tried 16 times */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.