45#define TX_INIT_RATE 16
46#define TX_INIT_MAX_RATE 64
47#define RX_INIT_LATENCY 64
48#define RX_INIT_EARLY_THRESH 64
49#define MIN_RX_EARLY_THRESHF 16
50#define MIN_RX_EARLY_THRESHL 4
52#define EEPROMSIZE 0x40
53#define MAX_EEPROMBUSY 1000
54#define EP_ID_PORT_START 0x110
55#define EP_ID_PORT_INC 0x10
56#define EP_ID_PORT_END 0x200
63#define EEPROM_CMD_RD 0x0080
64#define EEPROM_CMD_WR 0x0040
65#define EEPROM_CMD_ERASE 0x00c0
66#define EEPROM_CMD_EWEN 0x0030
68#define EEPROM_BUSY (1<<15)
69#define EEPROM_TST_MODE (1<<14)
74#define is_eeprom_busy(b) (inw((b)+EP_W0_EEPROM_COMMAND)&EEPROM_BUSY)
75#define GO_WINDOW(b,x) outw(WINDOW_SELECT|(x), (b)+EP_COMMAND)
87#define EEPROM_NODE_ADDR_0 0x0
88#define EEPROM_NODE_ADDR_1 0x1
89#define EEPROM_NODE_ADDR_2 0x2
90#define EEPROM_PROD_ID 0x3
91#define EEPROM_MFG_ID 0x7
92#define EEPROM_ADDR_CFG 0x8
93#define EEPROM_RESOURCE_CFG 0x9
109#define EP_COMMAND 0x0e
111#define EP_STATUS 0x0e
113#define EP_WINDOW 0x0f
119#define EP_W0_EEPROM_DATA 0x0c
120#define EP_W0_EEPROM_COMMAND 0x0a
121#define EP_W0_RESOURCE_CFG 0x08
122#define EP_W0_ADDRESS_CFG 0x06
123#define EP_W0_CONFIG_CTRL 0x04
125#define EP_W0_PRODUCT_ID 0x02
126#define EP_W0_MFG_ID 0x00
132#define EP_W1_TX_PIO_WR_2 0x02
133#define EP_W1_TX_PIO_WR_1 0x00
135#define EP_W1_FREE_TX 0x0c
136#define EP_W1_TX_STATUS 0x0b
137#define EP_W1_TIMER 0x0a
138#define EP_W1_RX_STATUS 0x08
139#define EP_W1_RX_PIO_RD_2 0x02
140#define EP_W1_RX_PIO_RD_1 0x00
146#define EP_W2_ADDR_5 0x05
147#define EP_W2_ADDR_4 0x04
148#define EP_W2_ADDR_3 0x03
149#define EP_W2_ADDR_2 0x02
150#define EP_W2_ADDR_1 0x01
151#define EP_W2_ADDR_0 0x00
157#define EP_W3_FREE_TX 0x0c
158#define EP_W3_FREE_RX 0x0a
164#define EP_W4_MEDIA_TYPE 0x0a
165#define EP_W4_CTRLR_STATUS 0x08
166#define EP_W4_NET_DIAG 0x06
167#define EP_W4_FIFO_DIAG 0x04
168#define EP_W4_HOST_DIAG 0x02
169#define EP_W4_TX_DIAG 0x00
175#define EP_W5_READ_0_MASK 0x0c
176#define EP_W5_INTR_MASK 0x0a
177#define EP_W5_RX_FILTER 0x08
178#define EP_W5_RX_EARLY_THRESH 0x06
179#define EP_W5_TX_AVAIL_THRESH 0x02
180#define EP_W5_TX_START_THRESH 0x00
186#define TX_TOTAL_OK 0x0c
187#define RX_TOTAL_OK 0x0a
188#define TX_DEFERRALS 0x08
189#define RX_FRAMES_OK 0x07
190#define TX_FRAMES_OK 0x06
191#define RX_OVERRUNS 0x05
192#define TX_COLLISIONS 0x04
193#define TX_AFTER_1_COLLISION 0x03
194#define TX_AFTER_X_COLLISIONS 0x02
195#define TX_NO_SQE 0x01
196#define TX_CD_LOST 0x00
212#define GLOBAL_RESET (unsigned short) 0x0000
214#define WINDOW_SELECT (unsigned short) (0x1<<11)
215#define START_TRANSCEIVER (unsigned short) (0x2<<11)
221#define RX_DISABLE (unsigned short) (0x3<<11)
223#define RX_ENABLE (unsigned short) (0x4<<11)
224#define RX_RESET (unsigned short) (0x5<<11)
225#define RX_DISCARD_TOP_PACK (unsigned short) (0x8<<11)
226#define TX_ENABLE (unsigned short) (0x9<<11)
227#define TX_DISABLE (unsigned short) (0xa<<11)
228#define TX_RESET (unsigned short) (0xb<<11)
229#define REQ_INTR (unsigned short) (0xc<<11)
230#define SET_INTR_MASK (unsigned short) (0xe<<11)
231#define SET_RD_0_MASK (unsigned short) (0xf<<11)
232#define SET_RX_FILTER (unsigned short) (0x10<<11)
233#define FIL_INDIVIDUAL (unsigned short) (0x1)
234#define FIL_GROUP (unsigned short) (0x2)
235#define FIL_BRDCST (unsigned short) (0x4)
236#define FIL_ALL (unsigned short) (0x8)
237#define SET_RX_EARLY_THRESH (unsigned short) (0x11<<11)
238#define SET_TX_AVAIL_THRESH (unsigned short) (0x12<<11)
239#define SET_TX_START_THRESH (unsigned short) (0x13<<11)
240#define STATS_ENABLE (unsigned short) (0x15<<11)
241#define STATS_DISABLE (unsigned short) (0x16<<11)
242#define STOP_TRANSCEIVER (unsigned short) (0x17<<11)
247#define ACK_INTR (unsigned short) (0x6800)
248#define C_INTR_LATCH (unsigned short) (ACK_INTR|0x1)
249#define C_CARD_FAILURE (unsigned short) (ACK_INTR|0x2)
250#define C_TX_COMPLETE (unsigned short) (ACK_INTR|0x4)
251#define C_TX_AVAIL (unsigned short) (ACK_INTR|0x8)
252#define C_RX_COMPLETE (unsigned short) (ACK_INTR|0x10)
253#define C_RX_EARLY (unsigned short) (ACK_INTR|0x20)
254#define C_INT_RQD (unsigned short) (ACK_INTR|0x40)
255#define C_UPD_STATS (unsigned short) (ACK_INTR|0x80)
275#define S_INTR_LATCH (unsigned short) (0x1)
276#define S_CARD_FAILURE (unsigned short) (0x2)
277#define S_TX_COMPLETE (unsigned short) (0x4)
278#define S_TX_AVAIL (unsigned short) (0x8)
279#define S_RX_COMPLETE (unsigned short) (0x10)
280#define S_RX_EARLY (unsigned short) (0x20)
281#define S_INT_RQD (unsigned short) (0x40)
282#define S_UPD_STATS (unsigned short) (0x80)
283#define S_5_INTS (S_CARD_FAILURE|S_TX_COMPLETE|\
284 S_TX_AVAIL|S_RX_COMPLETE|S_RX_EARLY)
285#define S_COMMAND_IN_PROGRESS (unsigned short) (0x1000)
304#define ERR_RX_INCOMPLETE (unsigned short) (0x1<<15)
305#define ERR_RX (unsigned short) (0x1<<14)
306#define ERR_RX_OVERRUN (unsigned short) (0x8<<11)
307#define ERR_RX_RUN_PKT (unsigned short) (0xb<<11)
308#define ERR_RX_ALIGN (unsigned short) (0xc<<11)
309#define ERR_RX_CRC (unsigned short) (0xd<<11)
310#define ERR_RX_OVERSIZE (unsigned short) (0x9<<11)
311#define ERR_RX_DRIBBLE (unsigned short) (0x2<<11)
331#define TXS_COMPLETE 0x80
332#define TXS_SUCCES_INTR_REQ 0x40
333#define TXS_JABBER 0x20
334#define TXS_UNDERRUN 0x10
335#define TXS_MAX_COLLISION 0x8
336#define TXS_STATUS_OVERFLOW 0x4
343#define IS_AUI (1<<13)
344#define IS_BNC (1<<12)
347#define ENABLE_DRQ_IRQ 0x0001
348#define W0_P4_CMD_RESET_ADAPTER 0x4
349#define W0_P4_CMD_ENABLE_ADAPTER 0x1
354#define ENABLE_UTP 0xc0
355#define DISABLE_UTP 0x0
361#define SET_IRQ(i) ( ((i)<<12) | 0xF00)
367#define RX_BYTES_MASK (unsigned short) (0x07ff)
368#define RX_ERROR 0x4000
369#define RX_INCOMPLETE 0x8000
375#define PROD_ID 0x9150
381#define RX_BYTES_MASK (unsigned short) (0x07ff)
void t5x9_disable(struct nic *nic)
int t5x9_probe(struct nic *nic, uint16_t prod_id_check, uint16_t prod_id_mask)
#define FILE_LICENCE(_licence)
Declare a particular licence as applying to a file.