]> git.sur5r.net Git - freertos/blob - Demo/CORTEX_A2F200_IAR_and_Keil/MicroSemi_Code/drivers/mss_ethernet_mac/mss_ethernet_mac_regs.h
git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@1375 1d2547de-c912-0410...
[freertos] / Demo / CORTEX_A2F200_IAR_and_Keil / MicroSemi_Code / drivers / mss_ethernet_mac / mss_ethernet_mac_regs.h
1 /***************************************************************************//**\r
2  * @file\r
3  * SmartFusion MSS Ethernet MAC registers.\r
4  *\r
5  * (c) Copyright 2007 Actel Corporation\r
6  *\r
7  * IP core registers definitions. This file contains the definitions required\r
8  * for accessing the IP core through the hardware abstraction layer (HAL).\r
9  * This file was automatically generated, using "get_header.exe" version 0.4.0,\r
10  * from the IP-XACT description for:\r
11  *\r
12  *\r
13  * SVN $Revision: 2364 $\r
14  * SVN $Date: 2010-03-01 17:58:41 +0000 (Mon, 01 Mar 2010) $\r
15  *\r
16  *******************************************************************************/\r
17 #ifndef MSS_ETHERNET_MAC_REGISTERS_H_\r
18 #define MSS_ETHERNET_MAC_REGISTERS_H_\r
19 \r
20 #ifdef __cplusplus\r
21 extern "C" {\r
22 #endif\r
23 \r
24 #include "../../CMSIS/a2fxxxm3.h"\r
25 #include "mss_ethernet_mac.h"\r
26 #include "mss_ethernet_mac_user_cfg.h"\r
27 \r
28 typedef uint32_t addr_t;\r
29 \r
30 \r
31 /***************************************************************************//**\r
32  * Descriptor structure\r
33  */\r
34 typedef struct {\r
35     volatile uint32_t   descriptor_0;\r
36     volatile uint32_t   descriptor_1;\r
37     volatile uint32_t   buffer_1;\r
38     volatile uint32_t   buffer_2;\r
39 } MAC_descriptor_t;\r
40 \r
41 \r
42 /***************************************************************************//**\r
43  * There should be one instance of this structure for each instance of\r
44  * the MAC in your system. MSS_MAC_init routine initializes this structure.\r
45  * It is used to identify the various MACs in your system and an initilized\r
46  * MAC instance's structure should be passed as first parameter to MAC functions\r
47  * to identify which MAC should perform the requested operation.\r
48  * Software using the MAC driver should only need to create one single\r
49  * instance of this data structure for each MAC hardware instance in\r
50  * the system. Using MAC_get_configuration routine, latest status of the driver\r
51  * may be read by receiving its flags field, similarly MAC_configure routine lets\r
52  * you modify some of these flags.\r
53  */\r
54 #include "net/pack_struct_start.h"\r
55 typedef struct {\r
56         addr_t          base_address;           /**< Register base address of the driver*/\r
57     uint8_t             flags;                  /**< Configuration of the driver*/\r
58     int8_t              last_error;             /**< Index of last error happened inside the driver*/\r
59     uint8_t     mac_address[6];                 /**< MAC address of the drived instance*/\r
60     uint8_t     mac_filter_data[90];    /**< MAC filter data, 15 addresses to be used for\r
61                                             received data filtering*/\r
62     uint16_t    last_timer_value;               /**< Last read value of timer */\r
63     uint32_t    time_out_value;                 /**< Time out value */\r
64     MSS_MAC_callback_t listener;            /**< Pointer to the call-back function to be triggered\r
65                                             when a package is received*/\r
66 \r
67         /* transmit related info: */\r
68     uint32_t    tx_desc_index;          /**< index of the transmit descriptor getting used*/\r
69 //    uint8_t     tx_buffers[TX_RING_SIZE][MSS_TX_BUFF_SIZE];/**< array of transmit buffers*/\r
70     MAC_descriptor_t tx_descriptors[TX_RING_SIZE];/**< array of transmit descriptors*/\r
71 \r
72         /* receive related info: */\r
73     uint32_t    rx_desc_index;          /**< index of the receive descriptor getting used*/\r
74 //    uint8_t     rx_buffers[RX_RING_SIZE][MSS_RX_BUFF_SIZE+4];/**< array of receive buffers*/\r
75     MAC_descriptor_t rx_descriptors[RX_RING_SIZE];/**< array of receive descriptors*/\r
76 \r
77     uint8_t             phy_address;            /**< MII address of the connected PHY*/\r
78 \r
79         struct {\r
80                 uint32_t rx_interrupts;                 /**< Number of receive interrupts occurred.*/\r
81                 uint32_t rx_filtering_fail;             /**< Number of received frames which did not pass\r
82                                                                                         the address recognition process.*/\r
83                 uint32_t rx_descriptor_error;   /**< Number of occurrences of; no receive buffer was\r
84                                                                                         available when trying to store the received data.*/\r
85                 uint32_t rx_runt_frame;                 /**< Number of occurrences of; the frame is damaged by\r
86                                                                                         a collision or by a premature termination before\r
87                                                                                         the end of a collision window.*/\r
88                 uint32_t rx_not_first;                  /**< Number of occurrences of; start of the frame is\r
89                                                                                         not the first descriptor of a frame.*/\r
90                 uint32_t rx_not_last;                   /**< Number of occurrences of; end of the frame is not\r
91                                                                                         the first descriptor of a frame.*/\r
92                 uint32_t rx_frame_too_long;             /**< Number of occurrences of; a current frame is\r
93                                                                                         longer than maximum size of 1,518 bytes, as specified\r
94                                                                                         by 802.3.*/\r
95                 uint32_t rx_collision_seen;             /**< Number of occurrences of; a late collision was seen\r
96                                                                                         (collision after 64 bytes following SFD).*/\r
97                 uint32_t rx_crc_error;                  /**< Number of occurrences of; a CRC error has occurred\r
98                                                                                         in the received frame.*/\r
99                 uint32_t rx_fifo_overflow;              /**< Number of frames not accepted due to the receive\r
100                                                                                         FIFO overflow.*/\r
101                 uint32_t rx_missed_frame;               /**< Number of frames not accepted due to the\r
102                                                                                         unavailability of the receive descriptor.*/\r
103                 \r
104                 uint32_t tx_interrupts;                 /**< Number of transmit interrupts occurred.*/\r
105                 uint32_t tx_loss_of_carrier;    /**< Number of occurrences of; a loss of the carrier\r
106                                                                                         during a transmission.*/\r
107                 uint32_t tx_no_carrier;                 /**< Number of occurrences of; the carrier was not asserted\r
108                                                                                         by an external transceiver during the transmission.*/\r
109                 uint32_t tx_late_collision;             /**< Number of occurrences of; a collision was detected\r
110                                                                                         after transmitting 64 bytes.*/\r
111                 uint32_t tx_excessive_collision;/**< Number of occurrences of; the transmission was\r
112                                                                                         aborted after 16 retries.*/\r
113                 uint32_t tx_collision_count;    /**< Number of collisions occurred.*/\r
114                 uint32_t tx_underflow_error;    /**< Number of occurrences of; the FIFO was empty during\r
115                                                                                         the frame transmission.*/\r
116     } statistics;\r
117 } MAC_instance_t\r
118 #include "net/pack_struct_end.h"\r
119 \r
120 \r
121 /*------------------------------------------------------------------------------\r
122  *\r
123  */\r
124 typedef struct\r
125 {\r
126     uint32_t CSR0_SWR;\r
127     uint32_t CSR0_BAR;\r
128     uint32_t CSR0_DSL[5];\r
129     uint32_t CSR0_BLE;\r
130     uint32_t CSR0_PBL[6];\r
131     uint32_t CSR0_RESERVED0[3];\r
132     uint32_t CSR0_TAP[3];\r
133     uint32_t CSR0_DBO;\r
134     uint32_t CSR0_RESERVED1[11];\r
135 \r
136     uint32_t MAC_CSR_RESERVED0[32];\r
137 \r
138     uint32_t CSR1[32];\r
139 \r
140     uint32_t MAC_CSR_RESERVED1[32];\r
141 \r
142     uint32_t CSR2[32];\r
143 \r
144     uint32_t MAC_CSR_RESERVED2[32];\r
145 \r
146     uint32_t CSR3[32];\r
147 \r
148     uint32_t MAC_CSR_RESERVED3[32];\r
149 \r
150     uint32_t CSR4[32];\r
151 \r
152     uint32_t MAC_CSR_RESERVED4[32];\r
153 \r
154     uint32_t CSR5_TI;\r
155     uint32_t CSR5_TPS;\r
156     uint32_t CSR5_TU;\r
157     uint32_t CSR5_RESERVED0[2];\r
158     uint32_t CSR5_UNF;\r
159     uint32_t CSR5_RI;\r
160     uint32_t CSR5_RU;\r
161     uint32_t CSR5_RPS;\r
162     uint32_t CSR5_RESERVED1;\r
163     uint32_t CSR5_ETI;\r
164     uint32_t CSR5_GTE;\r
165     uint32_t CSR5_RESERVED2[2];\r
166     uint32_t CSR5_ERI;\r
167     uint32_t CSR5_AIS;\r
168     uint32_t CSR5_NIS;\r
169     uint32_t CSR5_RS[3];\r
170     uint32_t CSR5_TS[3];\r
171     uint32_t CSR5_RESERVED3[9];\r
172 \r
173     uint32_t MAC_CSR_RESERVED5[32];\r
174 \r
175     uint32_t CSR6_HP;\r
176     uint32_t CSR6_SR;\r
177     uint32_t CSR6_HO;\r
178     uint32_t CSR6_PB;\r
179     uint32_t CSR6_IF;\r
180     uint32_t CSR6_RESERVED0;\r
181     uint32_t CSR6_PR;\r
182     uint32_t CSR6_PM;\r
183     uint32_t CSR6_RESERVED1;\r
184     uint32_t CSR6_FD;\r
185     uint32_t CSR6_RESERVED2[3];\r
186     uint32_t CSR6_ST;\r
187     uint32_t CSR6_TR[2];\r
188     uint32_t CSR6_RESERVED3[5];\r
189     uint32_t CSR6_SF;\r
190     uint32_t CSR6_TTM;\r
191     uint32_t CSR6_RESERVED4[7];\r
192     uint32_t CSR6_RA;\r
193     uint32_t CSR6_RESERVED5;\r
194 \r
195     uint32_t MAC_CSR_RESERVED6[32];\r
196 \r
197     uint32_t CSR7_TIE;\r
198     uint32_t CSR7_TSE;\r
199     uint32_t CSR7_TUE;\r
200     uint32_t CSR7_RESERVED0[2];\r
201     uint32_t CSR7_UNE;\r
202     uint32_t CSR7_RIE;\r
203     uint32_t CSR7_RUE;\r
204     uint32_t CSR7_RSE;\r
205     uint32_t CSR7_RESERVED1;\r
206     uint32_t CSR7_ETE;\r
207     uint32_t CSR7_GTE;\r
208     uint32_t CSR7_RESERVED2[2];\r
209     uint32_t CSR7_ERE;\r
210     uint32_t CSR7_AIE;\r
211     uint32_t CSR7_NIE;\r
212     uint32_t CSR7[15];\r
213 \r
214     uint32_t MAC_CSR_RESERVED7[32];\r
215 \r
216     uint32_t CSR8[32];\r
217 \r
218     uint32_t MAC_CSR_RESERVED8[32];\r
219 \r
220     uint32_t CSR9_SCS;\r
221     uint32_t CSR9_SCLK;\r
222     uint32_t CSR9_SDI;\r
223     uint32_t CSR9_SDO;\r
224     uint32_t CSR9_RESERVED0[12];\r
225     uint32_t CSR9_MDC;\r
226     uint32_t CSR9_MDO;\r
227     uint32_t CSR9_MDEN;\r
228     uint32_t CSR9_MDI;\r
229     uint32_t CSR9_RESERVED1[12];\r
230 \r
231     uint32_t MAC_CSR_RESERVED9[32];\r
232 \r
233     uint32_t CSR10[32];\r
234 \r
235     uint32_t MAC_CSR_RESERVED10[32];\r
236 \r
237     uint32_t CSR11_TIM[16];\r
238     uint32_t CSR11_CON;\r
239     uint32_t CSR11_NRP[3];\r
240     uint32_t CSR11_RT[4];\r
241     uint32_t CSR11_NTP[3];\r
242     uint32_t CSR11_TT[4];\r
243     uint32_t CSR11_CS;\r
244 } MAC_BitBand_TypeDef;\r
245 \r
246 #define MAC_BITBAND   ((MAC_BitBand_TypeDef *) BITBAND_ADDRESS(MAC_BASE))\r
247 \r
248 /*******************************************************************************\r
249  * CSR0 register:\r
250  *------------------------------------------------------------------------------\r
251  * CSR0 - Bus Mode Register\r
252  */\r
253 #define CSR0_REG_OFFSET 0x00\r
254 \r
255 /*------------------------------------------------------------------------------\r
256  * CSR0_DBO:\r
257  *   DBO field of register CSR0.\r
258  *------------------------------------------------------------------------------\r
259  * Descriptor byte ordering mode\r
260  */\r
261 #define CSR0_DBO_OFFSET   0x00\r
262 #define CSR0_DBO_MASK     0x00100000UL\r
263 #define CSR0_DBO_SHIFT    20\r
264 \r
265 /*\r
266  * Allowed values for CSR0_DBO:\r
267  *------------------------------------------------------------------------------\r
268  * LITTLEENDIAN:   Little endian mode used for data descriptors\r
269  * BIGENDIAN:      Big endian mode used for data descriptors\r
270  */\r
271 #define LITTLEENDIAN    0u\r
272 #define BIGENDIAN       1u\r
273 \r
274 /*------------------------------------------------------------------------------\r
275  * CSR0_TAP:\r
276  *   TAP field of register CSR0.\r
277  *------------------------------------------------------------------------------\r
278  * Transmit automatic polling\r
279  */\r
280 #define CSR0_TAP_OFFSET   0x00\r
281 #define CSR0_TAP_MASK     0x000E0000UL\r
282 #define CSR0_TAP_SHIFT    17\r
283 \r
284 /*\r
285  * Allowed values for CSR0_TAP:\r
286  *------------------------------------------------------------------------------\r
287  * TAP_DISABLED:   TAP disabled\r
288  * TAP_819US:      TAP 819/81.9us\r
289  * TAP_2450US:     TAP 2450/245us\r
290  * TAP_5730US:     TAP 5730/573us\r
291  * TAP_51_2US:     TAP 51.2/5.12us\r
292  * TAP_102_4US:    TAP 102.4/10.24us\r
293  * TAP_153_6US:    TAP 156.6/15.26us\r
294  * TAP_358_4US:    TAP 358.4/35.84us\r
295  */\r
296 #define TAP_DISABLED    0x0\r
297 #define TAP_819US       0x1\r
298 #define TAP_2450US      0x2\r
299 #define TAP_5730US      0x3\r
300 #define TAP_51_2US      0x4\r
301 #define TAP_102_4US     0x5\r
302 #define TAP_153_6US     0x6\r
303 #define TAP_358_4US     0x7\r
304 \r
305 /*------------------------------------------------------------------------------\r
306  * CSR0_PBL:\r
307  *   PBL field of register CSR0.\r
308  *------------------------------------------------------------------------------\r
309  * Programmable burst length\r
310  */\r
311 #define CSR0_PBL_OFFSET   0x00\r
312 #define CSR0_PBL_MASK     0x00003F00uL\r
313 #define CSR0_PBL_SHIFT    8\r
314 \r
315 /*------------------------------------------------------------------------------\r
316  * CSR0_BLE:\r
317  *   BLE field of register CSR0.\r
318  *------------------------------------------------------------------------------\r
319  * Big/little endian\r
320  */\r
321 #define CSR0_BLE_OFFSET   0x00\r
322 #define CSR0_BLE_MASK     0x00000080uL\r
323 #define CSR0_BLE_SHIFT    7\r
324 \r
325 /*------------------------------------------------------------------------------\r
326  * CSR0_DSL:\r
327  *   DSL field of register CSR0.\r
328  *------------------------------------------------------------------------------\r
329  * Descriptor skip length\r
330  */\r
331 #define CSR0_DSL_OFFSET   0x00\r
332 #define CSR0_DSL_MASK     0x0000007CuL\r
333 #define CSR0_DSL_SHIFT    2\r
334 \r
335 /*------------------------------------------------------------------------------\r
336  * CSR0_BAR:\r
337  *   BAR field of register CSR0.\r
338  *------------------------------------------------------------------------------\r
339  * Bus arbitration scheme\r
340  */\r
341 #define CSR0_BAR_OFFSET   0x00\r
342 #define CSR0_BAR_MASK     0x00000002uL\r
343 #define CSR0_BAR_SHIFT    1\r
344 \r
345 /*------------------------------------------------------------------------------\r
346  * CSR0_SWR:\r
347  *   SWR field of register CSR0.\r
348  *------------------------------------------------------------------------------\r
349  * Software reset\r
350  */\r
351 #define CSR0_SWR_OFFSET   0x00\r
352 #define CSR0_SWR_MASK     0x00000001uL\r
353 #define CSR0_SWR_SHIFT    0\r
354 \r
355 /*******************************************************************************\r
356  * CSR1 register:\r
357  *------------------------------------------------------------------------------\r
358  * CSR1 - Transmit Poll Demand Register\r
359  */\r
360 #define CSR1_REG_OFFSET 0x08\r
361 \r
362 /*------------------------------------------------------------------------------\r
363  * CSR1_TPD3:\r
364  *   TPD3 field of register CSR1.\r
365  *------------------------------------------------------------------------------\r
366  * TPD(31..24)\r
367  */\r
368 #define CSR1_TPD3_OFFSET   0x08\r
369 #define CSR1_TPD3_MASK     0xFF000000uL\r
370 #define CSR1_TPD3_SHIFT    24\r
371 \r
372 /*------------------------------------------------------------------------------\r
373  * CSR1_TPD2:\r
374  *   TPD2 field of register CSR1.\r
375  *------------------------------------------------------------------------------\r
376  * TPD(23..16)\r
377  */\r
378 #define CSR1_TPD2_OFFSET   0x08\r
379 #define CSR1_TPD2_MASK     0x00FF0000uL\r
380 #define CSR1_TPD2_SHIFT    16\r
381 \r
382 /*------------------------------------------------------------------------------\r
383  * CSR1_TPD1:\r
384  *   TPD1 field of register CSR1.\r
385  *------------------------------------------------------------------------------\r
386  * TPD(15..8)\r
387  */\r
388 #define CSR1_TPD1_OFFSET   0x08\r
389 #define CSR1_TPD1_MASK     0x0000FF00uL\r
390 #define CSR1_TPD1_SHIFT    8\r
391 \r
392 /*------------------------------------------------------------------------------\r
393  * CSR1_TPD0:\r
394  *   TPD0 field of register CSR1.\r
395  *------------------------------------------------------------------------------\r
396  * TPD(7..0)\r
397  */\r
398 #define CSR1_TPD0_OFFSET   0x08\r
399 #define CSR1_TPD0_MASK     0x000000FFuL\r
400 #define CSR1_TPD0_SHIFT    0\r
401 \r
402 /*******************************************************************************\r
403  * CSR2 register:\r
404  *------------------------------------------------------------------------------\r
405  * CSR2 - Receive Poll Demand Register\r
406  */\r
407 #define CSR2_REG_OFFSET 0x10\r
408 \r
409 /*------------------------------------------------------------------------------\r
410  * CSR2_RPD3:\r
411  *   RPD3 field of register CSR2.\r
412  *------------------------------------------------------------------------------\r
413  * RPD(31..24)\r
414  */\r
415 #define CSR2_RPD3_OFFSET   0x10\r
416 #define CSR2_RPD3_MASK     0xFF000000uL\r
417 #define CSR2_RPD3_SHIFT    24\r
418 \r
419 /*------------------------------------------------------------------------------\r
420  * CSR2_RPD2:\r
421  *   RPD2 field of register CSR2.\r
422  *------------------------------------------------------------------------------\r
423  * RPD(23..16)\r
424  */\r
425 #define CSR2_RPD2_OFFSET   0x10\r
426 #define CSR2_RPD2_MASK     0x00FF0000uL\r
427 #define CSR2_RPD2_SHIFT    16\r
428 \r
429 /*------------------------------------------------------------------------------\r
430  * CSR2_RPD1:\r
431  *   RPD1 field of register CSR2.\r
432  *------------------------------------------------------------------------------\r
433  * RPD(15..8)\r
434  */\r
435 #define CSR2_RPD1_OFFSET   0x10\r
436 #define CSR2_RPD1_MASK     0x0000FF00uL\r
437 #define CSR2_RPD1_SHIFT    8\r
438 \r
439 /*------------------------------------------------------------------------------\r
440  * CSR2_RPD0:\r
441  *   RPD0 field of register CSR2.\r
442  *------------------------------------------------------------------------------\r
443  * RPD(7..0)\r
444  */\r
445 #define CSR2_RPD0_OFFSET   0x10\r
446 #define CSR2_RPD0_MASK     0x000000FFuL\r
447 #define CSR2_RPD0_SHIFT    0\r
448 \r
449 /*******************************************************************************\r
450  * CSR3 register:\r
451  *------------------------------------------------------------------------------\r
452  * CSR3 - Receive Descriptor List Base Address Register\r
453  */\r
454 #define CSR3_REG_OFFSET 0x18\r
455 \r
456 /*------------------------------------------------------------------------------\r
457  * CSR3_RLA3:\r
458  *   RLA3 field of register CSR3.\r
459  *------------------------------------------------------------------------------\r
460  * RLA(31..24)\r
461  */\r
462 #define CSR3_RLA3_OFFSET   0x18\r
463 #define CSR3_RLA3_MASK     0xFF000000uL\r
464 #define CSR3_RLA3_SHIFT    24\r
465 \r
466 /*------------------------------------------------------------------------------\r
467  * CSR3_RLA2:\r
468  *   RLA2 field of register CSR3.\r
469  *------------------------------------------------------------------------------\r
470  * RLA(23..16)\r
471  */\r
472 #define CSR3_RLA2_OFFSET   0x18\r
473 #define CSR3_RLA2_MASK     0x00FF0000uL\r
474 #define CSR3_RLA2_SHIFT    16\r
475 \r
476 /*------------------------------------------------------------------------------\r
477  * CSR3_RLA1:\r
478  *   RLA1 field of register CSR3.\r
479  *------------------------------------------------------------------------------\r
480  * RLA(15..8)\r
481  */\r
482 #define CSR3_RLA1_OFFSET   0x18\r
483 #define CSR3_RLA1_MASK     0x0000FF00uL\r
484 #define CSR3_RLA1_SHIFT    8\r
485 \r
486 /*------------------------------------------------------------------------------\r
487  * CSR3_RLA0:\r
488  *   RLA0 field of register CSR3.\r
489  *------------------------------------------------------------------------------\r
490  * RLA(7..0)\r
491  */\r
492 #define CSR3_RLA0_OFFSET   0x18\r
493 #define CSR3_RLA0_MASK     0x000000FFuL\r
494 #define CSR3_RLA0_SHIFT    0\r
495 \r
496 /*******************************************************************************\r
497  * CSR4 register:\r
498  *------------------------------------------------------------------------------\r
499  * CSR4 - Transmit Descriptor List Base Address Register\r
500  */\r
501 #define CSR4_REG_OFFSET 0x20\r
502 \r
503 /*------------------------------------------------------------------------------\r
504  * CSR4_TLA3:\r
505  *   TLA3 field of register CSR4.\r
506  *------------------------------------------------------------------------------\r
507  * TLA(31..24)\r
508  */\r
509 #define CSR4_TLA3_OFFSET   0x20\r
510 #define CSR4_TLA3_MASK     0xFF000000uL\r
511 #define CSR4_TLA3_SHIFT    24\r
512 \r
513 /*------------------------------------------------------------------------------\r
514  * CSR4_TLA2:\r
515  *   TLA2 field of register CSR4.\r
516  *------------------------------------------------------------------------------\r
517  * TLA(23..16)\r
518  */\r
519 #define CSR4_TLA2_OFFSET   0x20\r
520 #define CSR4_TLA2_MASK     0x00FF0000uL\r
521 #define CSR4_TLA2_SHIFT    16\r
522 \r
523 /*------------------------------------------------------------------------------\r
524  * CSR4_TLA1:\r
525  *   TLA1 field of register CSR4.\r
526  *------------------------------------------------------------------------------\r
527  * TLA(15..8)\r
528  */\r
529 #define CSR4_TLA1_OFFSET   0x20\r
530 #define CSR4_TLA1_MASK     0x0000FF00uL\r
531 #define CSR4_TLA1_SHIFT    8\r
532 \r
533 /*------------------------------------------------------------------------------\r
534  * CSR4_TLA0:\r
535  *   TLA0 field of register CSR4.\r
536  *------------------------------------------------------------------------------\r
537  * TLA(7..0)\r
538  */\r
539 #define CSR4_TLA0_OFFSET   0x20\r
540 #define CSR4_TLA0_MASK     0x000000FFuL\r
541 #define CSR4_TLA0_SHIFT    0\r
542 \r
543 /*******************************************************************************\r
544  * CSR5 register:\r
545  *------------------------------------------------------------------------------\r
546  * CSR5 - Status Register\r
547  */\r
548 #define CSR5_REG_OFFSET 0x28\r
549 #define CSR5_INT_BITS   (CSR5_NIS_MASK | CSR5_AIS_MASK | CSR5_ERI_MASK | \\r
550         CSR5_GTE_MASK | CSR5_ETI_MASK | CSR5_RPS_MASK | CSR5_RU_MASK | \\r
551         CSR5_RI_MASK | CSR5_UNF_MASK | CSR5_TU_MASK | CSR5_TPS_MASK | CSR5_TI_MASK)\r
552 \r
553 /*------------------------------------------------------------------------------\r
554  * CSR5_TS:\r
555  *   TS field of register CSR5.\r
556  *------------------------------------------------------------------------------\r
557  * Transmit process state\r
558  */\r
559 #define CSR5_TS_OFFSET   0x28\r
560 #define CSR5_TS_MASK     0x00700000uL\r
561 #define CSR5_TS_SHIFT    20\r
562 \r
563 /** 000 - Stopped; RESET or STOP TRANSMIT command issued.             */\r
564 #define CSR5_TS_STOPPED    0u\r
565 /** 001 - Running, fetching the transmit descriptor.                  */\r
566 #define CSR5_TS_RUNNING_FD 1u\r
567 /** 010 - Running, waiting for end of transmission.                   */\r
568 #define CSR5_TS_RUNNING_WT 2u\r
569 /** 011 - Running, transferring data buffer from host memory to FIFO. */\r
570 #define CSR5_TS_RUNNING_TD 3u\r
571 /** 101 - Running, setup packet.                                      */\r
572 #define CSR5_TS_RUNNING_SP 5u\r
573 /** 110 - Suspended; FIFO underflow or unavailable descriptor.        */\r
574 #define CSR5_TS_SUSPENDED  6u\r
575 /** 111 - Running, closing transmit descriptor.                       */\r
576 #define CSR5_TS_RUNNING_CD 7u\r
577 \r
578 /*------------------------------------------------------------------------------\r
579  * CSR5_RS:\r
580  *   RS field of register CSR5.\r
581  *------------------------------------------------------------------------------\r
582  * Receive process state\r
583  */\r
584 #define CSR5_RS_OFFSET   0x28\r
585 #define CSR5_RS_MASK     0x00060000uL\r
586 #define CSR5_RS_SHIFT    17\r
587 \r
588 /** 000 - Stopped; RESET or STOP RECEIVE command issued.                      */\r
589 #define CSR5_RS_STOPPED    0u\r
590 /** 001 - Running, fetching the receive descriptor.                           */\r
591 #define CSR5_RS_RUNNING_FD 1u\r
592 /** 010 - Running, waiting for the end-of-receive packet before prefetch of the\r
593  *next descriptor. */\r
594 #define CSR5_RS_RUNNING_WR 2u\r
595 /** 011 - Running, waiting for the receive packet.                            */\r
596 #define CSR5_RS_RUNNING_RB 3u\r
597 /** 100 - Suspended, unavailable receive buffer.                              */\r
598 #define CSR5_RS_SUSPENDED  4u\r
599 /** 101 - Running, closing the receive descriptor.                            */\r
600 #define CSR5_RS_RUNNING_CD 5u\r
601 /** 111 - Running, transferring data from FIFO to host memory.                */\r
602 #define CSR5_RS_RUNNING_TD 7u\r
603 \r
604 /*------------------------------------------------------------------------------\r
605  * CSR5_NIS:\r
606  *   NIS field of register CSR5.\r
607  *------------------------------------------------------------------------------\r
608  * Normal interrupt summary\r
609  */\r
610 #define CSR5_NIS_OFFSET   0x28\r
611 #define CSR5_NIS_MASK     0x00010000uL\r
612 #define CSR5_NIS_SHIFT    16\r
613 \r
614 /*------------------------------------------------------------------------------\r
615  * CSR5_AIS:\r
616  *   AIS field of register CSR5.\r
617  *------------------------------------------------------------------------------\r
618  * Abnormal interrupt summary\r
619  */\r
620 #define CSR5_AIS_OFFSET   0x28\r
621 #define CSR5_AIS_MASK     0x00008000UL\r
622 #define CSR5_AIS_SHIFT    15\r
623 \r
624 /*------------------------------------------------------------------------------\r
625  * CSR5_ERI:\r
626  *   ERI field of register CSR5.\r
627  *------------------------------------------------------------------------------\r
628  * Early receive interrupt\r
629  */\r
630 #define CSR5_ERI_OFFSET   0x28\r
631 #define CSR5_ERI_MASK     0x00004000UL\r
632 #define CSR5_ERI_SHIFT    14\r
633 \r
634 /*------------------------------------------------------------------------------\r
635  * CSR5_GTE:\r
636  *   GTE field of register CSR5.\r
637  *------------------------------------------------------------------------------\r
638  * General-purpose timer expiration\r
639  */\r
640 #define CSR5_GTE_OFFSET   0x28\r
641 #define CSR5_GTE_MASK     0x00000800UL\r
642 #define CSR5_GTE_SHIFT    11\r
643 \r
644 /*------------------------------------------------------------------------------\r
645  * CSR5_ETI:\r
646  *   ETI field of register CSR5.\r
647  *------------------------------------------------------------------------------\r
648  * Early transmit interrupt\r
649  */\r
650 #define CSR5_ETI_OFFSET   0x28\r
651 #define CSR5_ETI_MASK     0x00000400UL\r
652 #define CSR5_ETI_SHIFT    10\r
653 \r
654 /*------------------------------------------------------------------------------\r
655  * CSR5_RPS:\r
656  *   RPS field of register CSR5.\r
657  *------------------------------------------------------------------------------\r
658  * Receive process stopped\r
659  */\r
660 #define CSR5_RPS_OFFSET   0x28\r
661 #define CSR5_RPS_MASK     0x00000100UL\r
662 #define CSR5_RPS_SHIFT    8\r
663 \r
664 /*------------------------------------------------------------------------------\r
665  * CSR5_RU:\r
666  *   RU field of register CSR5.\r
667  *------------------------------------------------------------------------------\r
668  * Receive buffer unavailable\r
669  */\r
670 #define CSR5_RU_OFFSET   0x28\r
671 #define CSR5_RU_MASK     0x00000080UL\r
672 #define CSR5_RU_SHIFT    7\r
673 \r
674 /*------------------------------------------------------------------------------\r
675  * CSR5_RI:\r
676  *   RI field of register CSR5.\r
677  *------------------------------------------------------------------------------\r
678  * Receive interrupt\r
679  */\r
680 #define CSR5_RI_OFFSET   0x28\r
681 #define CSR5_RI_MASK     0x00000040UL\r
682 #define CSR5_RI_SHIFT    6\r
683 \r
684 /*------------------------------------------------------------------------------\r
685  * CSR5_UNF:\r
686  *   UNF field of register CSR5.\r
687  *------------------------------------------------------------------------------\r
688  * Transmit underflow\r
689  */\r
690 #define CSR5_UNF_OFFSET   0x28\r
691 #define CSR5_UNF_MASK     0x00000020UL\r
692 #define CSR5_UNF_SHIFT    5\r
693 \r
694 /*------------------------------------------------------------------------------\r
695  * CSR5_TU:\r
696  *   TU field of register CSR5.\r
697  *------------------------------------------------------------------------------\r
698  * Transmit buffer unavailable\r
699  */\r
700 #define CSR5_TU_OFFSET   0x28\r
701 #define CSR5_TU_MASK     0x00000004UL\r
702 #define CSR5_TU_SHIFT    2\r
703 \r
704 /*------------------------------------------------------------------------------\r
705  * CSR5_TPS:\r
706  *   TPS field of register CSR5.\r
707  *------------------------------------------------------------------------------\r
708  * Transmit process stopped\r
709  */\r
710 #define CSR5_TPS_OFFSET   0x28\r
711 #define CSR5_TPS_MASK     0x00000002UL\r
712 #define CSR5_TPS_SHIFT    1\r
713 \r
714 /*------------------------------------------------------------------------------\r
715  * CSR5_TI:\r
716  *   TI field of register CSR5.\r
717  *------------------------------------------------------------------------------\r
718  * Transmit interrupt\r
719  */\r
720 #define CSR5_TI_OFFSET   0x28\r
721 #define CSR5_TI_MASK     0x00000001UL\r
722 #define CSR5_TI_SHIFT    0\r
723 \r
724 /*******************************************************************************\r
725  * CSR6 register:\r
726  *------------------------------------------------------------------------------\r
727  * CSR6 - Operation Mode Register\r
728  */\r
729 #define CSR6_REG_OFFSET 0x30\r
730 \r
731 /*------------------------------------------------------------------------------\r
732  * CSR6_RA:\r
733  *   RA field of register CSR6.\r
734  *------------------------------------------------------------------------------\r
735  * Receive all\r
736  */\r
737 #define CSR6_RA_OFFSET   0x30\r
738 #define CSR6_RA_MASK     0x40000000UL\r
739 #define CSR6_RA_SHIFT    30\r
740 \r
741 /*------------------------------------------------------------------------------\r
742  * CSR6_TTM:\r
743  *   TTM field of register CSR6.\r
744  *------------------------------------------------------------------------------\r
745  * Transmit threshold mode\r
746  */\r
747 #define CSR6_TTM_OFFSET   0x30\r
748 #define CSR6_TTM_MASK     0x00400000UL\r
749 #define CSR6_TTM_SHIFT    22\r
750 \r
751 /*------------------------------------------------------------------------------\r
752  * CSR6_SF:\r
753  *   SF field of register CSR6.\r
754  *------------------------------------------------------------------------------\r
755  * Store and forward\r
756  */\r
757 #define CSR6_SF_OFFSET   0x30\r
758 #define CSR6_SF_MASK     0x00200000UL\r
759 #define CSR6_SF_SHIFT    21\r
760 \r
761 /*------------------------------------------------------------------------------\r
762  * CSR6_TR:\r
763  *   TR field of register CSR6.\r
764  *------------------------------------------------------------------------------\r
765  * Threshold control bits\r
766  */\r
767 #define CSR6_TR_OFFSET   0x30\r
768 #define CSR6_TR_MASK     0x0000C000UL\r
769 #define CSR6_TR_SHIFT    14\r
770 \r
771 /*------------------------------------------------------------------------------\r
772  * CSR6_ST:\r
773  *   ST field of register CSR6.\r
774  *------------------------------------------------------------------------------\r
775  * Start/stop transmit command\r
776  */\r
777 #define CSR6_ST_OFFSET   0x30\r
778 #define CSR6_ST_MASK     0x00002000UL\r
779 #define CSR6_ST_SHIFT    13\r
780 \r
781 /*------------------------------------------------------------------------------\r
782  * CSR6_FD:\r
783  *   FD field of register CSR6.\r
784  *------------------------------------------------------------------------------\r
785  * Full-duplex mode\r
786  */\r
787 #define CSR6_FD_OFFSET   0x30\r
788 #define CSR6_FD_MASK     0x00000200UL\r
789 #define CSR6_FD_SHIFT    9\r
790 \r
791 /*------------------------------------------------------------------------------\r
792  * CSR6_PM:\r
793  *   PM field of register CSR6.\r
794  *------------------------------------------------------------------------------\r
795  * Pass all multicast\r
796  */\r
797 #define CSR6_PM_OFFSET   0x30\r
798 #define CSR6_PM_MASK     0x00000080UL\r
799 #define CSR6_PM_SHIFT    7\r
800 \r
801 /*------------------------------------------------------------------------------\r
802  * CSR6_PR:\r
803  *   PR field of register CSR6.\r
804  *------------------------------------------------------------------------------\r
805  * Promiscuous mode\r
806  */\r
807 #define CSR6_PR_OFFSET   0x30\r
808 #define CSR6_PR_MASK     0x00000040UL\r
809 #define CSR6_PR_SHIFT    6\r
810 \r
811 /*------------------------------------------------------------------------------\r
812  * CSR6_IF:\r
813  *   IF field of register CSR6.\r
814  *------------------------------------------------------------------------------\r
815  * Inverse filtering\r
816  */\r
817 #define CSR6_IF_OFFSET   0x30\r
818 #define CSR6_IF_MASK     0x00000010UL\r
819 #define CSR6_IF_SHIFT    4\r
820 \r
821 /*------------------------------------------------------------------------------\r
822  * CSR6_PB:\r
823  *   PB field of register CSR6.\r
824  *------------------------------------------------------------------------------\r
825  * Pass bad frames\r
826  */\r
827 #define CSR6_PB_OFFSET   0x30\r
828 #define CSR6_PB_MASK     0x00000008UL\r
829 #define CSR6_PB_SHIFT    3\r
830 \r
831 /*------------------------------------------------------------------------------\r
832  * CSR6_HO:\r
833  *   HO field of register CSR6.\r
834  *------------------------------------------------------------------------------\r
835  * Hash-only filtering mode\r
836  */\r
837 #define CSR6_HO_OFFSET   0x30\r
838 #define CSR6_HO_MASK     0x00000004UL\r
839 #define CSR6_HO_SHIFT    2\r
840 \r
841 /*------------------------------------------------------------------------------\r
842  * CSR6_SR:\r
843  *   SR field of register CSR6.\r
844  *------------------------------------------------------------------------------\r
845  * Start/stop receive command\r
846  */\r
847 #define CSR6_SR_OFFSET   0x30\r
848 #define CSR6_SR_MASK     0x00000002UL\r
849 #define CSR6_SR_SHIFT    1\r
850 \r
851 /*------------------------------------------------------------------------------\r
852  * CSR6_HP:\r
853  *   HP field of register CSR6.\r
854  *------------------------------------------------------------------------------\r
855  * Hash/perfect receive filtering mode\r
856  */\r
857 #define CSR6_HP_OFFSET   0x30\r
858 #define CSR6_HP_MASK     0x00000001UL\r
859 #define CSR6_HP_SHIFT    0\r
860 \r
861 /*******************************************************************************\r
862  * CSR7 register:\r
863  *------------------------------------------------------------------------------\r
864  * CSR7 - Interrupt Enable Register\r
865  */\r
866 #define CSR7_REG_OFFSET 0x38\r
867 \r
868 /*------------------------------------------------------------------------------\r
869  * CSR7_NIE:\r
870  *   NIE field of register CSR7.\r
871  *------------------------------------------------------------------------------\r
872  * Normal interrupt summary enable\r
873  */\r
874 #define CSR7_NIE_OFFSET   0x38\r
875 #define CSR7_NIE_MASK     0x00010000UL\r
876 #define CSR7_NIE_SHIFT    16\r
877 \r
878 /*------------------------------------------------------------------------------\r
879  * CSR7_AIE:\r
880  *   AIE field of register CSR7.\r
881  *------------------------------------------------------------------------------\r
882  * Abnormal interrupt summary enable\r
883  */\r
884 #define CSR7_AIE_OFFSET   0x38\r
885 #define CSR7_AIE_MASK     0x00008000UL\r
886 #define CSR7_AIE_SHIFT    15\r
887 \r
888 /*------------------------------------------------------------------------------\r
889  * CSR7_ERE:\r
890  *   ERE field of register CSR7.\r
891  *------------------------------------------------------------------------------\r
892  * Early receive interrupt enable\r
893  */\r
894 #define CSR7_ERE_OFFSET   0x38\r
895 #define CSR7_ERE_MASK     0x00004000UL\r
896 #define CSR7_ERE_SHIFT    14\r
897 \r
898 /*------------------------------------------------------------------------------\r
899  * CSR7_GTE:\r
900  *   GTE field of register CSR7.\r
901  *------------------------------------------------------------------------------\r
902  * General-purpose timer overflow enable\r
903  */\r
904 #define CSR7_GTE_OFFSET   0x38\r
905 #define CSR7_GTE_MASK     0x00000800UL\r
906 #define CSR7_GTE_SHIFT    11\r
907 \r
908 /*------------------------------------------------------------------------------\r
909  * CSR7_ETE:\r
910  *   ETE field of register CSR7.\r
911  *------------------------------------------------------------------------------\r
912  * Early transmit interrupt enable\r
913  */\r
914 #define CSR7_ETE_OFFSET   0x38\r
915 #define CSR7_ETE_MASK     0x00000400UL\r
916 #define CSR7_ETE_SHIFT    10\r
917 \r
918 /*------------------------------------------------------------------------------\r
919  * CSR7_RSE:\r
920  *   RSE field of register CSR7.\r
921  *------------------------------------------------------------------------------\r
922  * Receive stopped enable\r
923  */\r
924 #define CSR7_RSE_OFFSET   0x38\r
925 #define CSR7_RSE_MASK     0x00000100UL\r
926 #define CSR7_RSE_SHIFT    8\r
927 \r
928 /*------------------------------------------------------------------------------\r
929  * CSR7_RUE:\r
930  *   RUE field of register CSR7.\r
931  *------------------------------------------------------------------------------\r
932  * Receive buffer unavailable enable\r
933  */\r
934 #define CSR7_RUE_OFFSET   0x38\r
935 #define CSR7_RUE_MASK     0x00000080UL\r
936 #define CSR7_RUE_SHIFT    7\r
937 \r
938 /*------------------------------------------------------------------------------\r
939  * CSR7_RIE:\r
940  *   RIE field of register CSR7.\r
941  *------------------------------------------------------------------------------\r
942  * Receive interrupt enable\r
943  */\r
944 #define CSR7_RIE_OFFSET   0x38\r
945 #define CSR7_RIE_MASK     0x00000040UL\r
946 #define CSR7_RIE_SHIFT    6\r
947 \r
948 /*------------------------------------------------------------------------------\r
949  * CSR7_UNE:\r
950  *   UNE field of register CSR7.\r
951  *------------------------------------------------------------------------------\r
952  * Underflow interrupt enable\r
953  */\r
954 #define CSR7_UNE_OFFSET   0x38\r
955 #define CSR7_UNE_MASK     0x00000020UL\r
956 #define CSR7_UNE_SHIFT    5\r
957 \r
958 /*------------------------------------------------------------------------------\r
959  * CSR7_TUE:\r
960  *   TUE field of register CSR7.\r
961  *------------------------------------------------------------------------------\r
962  * Transmit buffer unavailable enable\r
963  */\r
964 #define CSR7_TUE_OFFSET   0x38\r
965 #define CSR7_TUE_MASK     0x00000004UL\r
966 #define CSR7_TUE_SHIFT    2\r
967 \r
968 /*------------------------------------------------------------------------------\r
969  * CSR7_TSE:\r
970  *   TSE field of register CSR7.\r
971  *------------------------------------------------------------------------------\r
972  * Transmit stopped enable\r
973  */\r
974 #define CSR7_TSE_OFFSET   0x38\r
975 #define CSR7_TSE_MASK     0x00000002UL\r
976 #define CSR7_TSE_SHIFT    1\r
977 \r
978 /*------------------------------------------------------------------------------\r
979  * CSR7_TIE:\r
980  *   TIE field of register CSR7.\r
981  *------------------------------------------------------------------------------\r
982  * Transmit interrupt enable\r
983  */\r
984 #define CSR7_TIE_OFFSET   0x38\r
985 #define CSR7_TIE_MASK     0x00000001UL\r
986 #define CSR7_TIE_SHIFT    0\r
987 \r
988 /*******************************************************************************\r
989  * CSR8 register:\r
990  *------------------------------------------------------------------------------\r
991  * CSR8 - Missed Frames and Overflow Counter Register\r
992  */\r
993 #define CSR8_REG_OFFSET 0x40\r
994 \r
995 /*------------------------------------------------------------------------------\r
996  * CSR8_OCO:\r
997  *   OCO field of register CSR8.\r
998  *------------------------------------------------------------------------------\r
999  * Overflow counter overflow\r
1000  */\r
1001 #define CSR8_OCO_OFFSET   0x40\r
1002 #define CSR8_OCO_MASK     0x10000000UL\r
1003 #define CSR8_OCO_SHIFT    28\r
1004 \r
1005 /*------------------------------------------------------------------------------\r
1006  * CSR8_FOC:\r
1007  *   FOC field of register CSR8.\r
1008  *------------------------------------------------------------------------------\r
1009  * FIFO overflow counter\r
1010  */\r
1011 #define CSR8_FOC_OFFSET   0x40\r
1012 #define CSR8_FOC_MASK     0x0FFE0000UL\r
1013 #define CSR8_FOC_SHIFT    17\r
1014 \r
1015 /*------------------------------------------------------------------------------\r
1016  * CSR8_MFO:\r
1017  *   MFO field of register CSR8.\r
1018  *------------------------------------------------------------------------------\r
1019  * Missed frame overflow\r
1020  */\r
1021 #define CSR8_MFO_OFFSET   0x40\r
1022 #define CSR8_MFO_MASK     0x00010000UL\r
1023 #define CSR8_MFO_SHIFT    16\r
1024 \r
1025 /*------------------------------------------------------------------------------\r
1026  * CSR8_MFC:\r
1027  *   MFC field of register CSR8.\r
1028  *------------------------------------------------------------------------------\r
1029  * Missed frame counter\r
1030  */\r
1031 #define CSR8_MFC_OFFSET   0x40\r
1032 #define CSR8_MFC_MASK     0x0000FFFFUL\r
1033 #define CSR8_MFC_SHIFT    0\r
1034 \r
1035 /*******************************************************************************\r
1036  * CSR9 register:\r
1037  *------------------------------------------------------------------------------\r
1038  * CSR9 - MII Management and Serial ROM Interface Register\r
1039  */\r
1040 #define CSR9_REG_OFFSET 0x48\r
1041 \r
1042 /*------------------------------------------------------------------------------\r
1043  * CSR9_MDI:\r
1044  *   MDI field of register CSR9.\r
1045  *------------------------------------------------------------------------------\r
1046  * MII management data in signal\r
1047  */\r
1048 #define CSR9_MDI_OFFSET   0x48\r
1049 #define CSR9_MDI_MASK     0x00080000UL\r
1050 #define CSR9_MDI_SHIFT    19\r
1051 \r
1052 /*------------------------------------------------------------------------------\r
1053  * CSR9_MII:\r
1054  *   MII field of register CSR9.\r
1055  *------------------------------------------------------------------------------\r
1056  * MII management operation mode\r
1057  */\r
1058 #define CSR9_MII_OFFSET   0x48\r
1059 #define CSR9_MII_MASK     0x00040000UL\r
1060 #define CSR9_MII_SHIFT    18\r
1061 \r
1062 /*------------------------------------------------------------------------------\r
1063  * CSR9_MDO:\r
1064  *   MDO field of register CSR9.\r
1065  *------------------------------------------------------------------------------\r
1066  * MII management write data\r
1067  */\r
1068 #define CSR9_MDO_OFFSET   0x48\r
1069 #define CSR9_MDO_MASK     0x00020000UL\r
1070 #define CSR9_MDO_SHIFT    17\r
1071 \r
1072 /*------------------------------------------------------------------------------\r
1073  * CSR9_MDC:\r
1074  *   MDC field of register CSR9.\r
1075  *------------------------------------------------------------------------------\r
1076  * MII management clock\r
1077  */\r
1078 #define CSR9_MDC_OFFSET   0x48\r
1079 #define CSR9_MDC_MASK     0x00010000UL\r
1080 #define CSR9_MDC_SHIFT    16\r
1081 \r
1082 /*------------------------------------------------------------------------------\r
1083  * CSR9_SDO:\r
1084  *   SDO field of register CSR9.\r
1085  *------------------------------------------------------------------------------\r
1086  * Serial ROM data output\r
1087  */\r
1088 #define CSR9_SDO_OFFSET   0x48\r
1089 #define CSR9_SDO_MASK     0x00000008UL\r
1090 #define CSR9_SDO_SHIFT    3\r
1091 \r
1092 /*------------------------------------------------------------------------------\r
1093  * CSR9_SDI:\r
1094  *   SDI field of register CSR9.\r
1095  *------------------------------------------------------------------------------\r
1096  * Serial ROM data input\r
1097  */\r
1098 #define CSR9_SDI_OFFSET   0x48\r
1099 #define CSR9_SDI_MASK     0x00000004UL\r
1100 #define CSR9_SDI_SHIFT    2\r
1101 \r
1102 /*------------------------------------------------------------------------------\r
1103  * CSR9_SCLK:\r
1104  *   SCLK field of register CSR9.\r
1105  *------------------------------------------------------------------------------\r
1106  * Serial ROM clock\r
1107  */\r
1108 #define CSR9_SCLK_OFFSET   0x48\r
1109 #define CSR9_SCLK_MASK     0x00000002UL\r
1110 #define CSR9_SCLK_SHIFT    1\r
1111 \r
1112 /*------------------------------------------------------------------------------\r
1113  * CSR9_SCS:\r
1114  *   SCS field of register CSR9.\r
1115  *------------------------------------------------------------------------------\r
1116  * Serial ROM chip select\r
1117  */\r
1118 #define CSR9_SCS_OFFSET   0x48\r
1119 #define CSR9_SCS_MASK     0x00000001UL\r
1120 #define CSR9_SCS_SHIFT    0\r
1121 \r
1122 /*******************************************************************************\r
1123  * CSR11 register:\r
1124  *------------------------------------------------------------------------------\r
1125  * CSR11 - General-Purpose Timer and Interrupt Mitigation Control Register\r
1126  */\r
1127 #define CSR11_REG_OFFSET        0x58\r
1128 \r
1129 /*------------------------------------------------------------------------------\r
1130  * CSR11_CS:\r
1131  *   CS field of register CSR11.\r
1132  *------------------------------------------------------------------------------\r
1133  * Cycle size\r
1134  */\r
1135 #define CSR11_CS_OFFSET   0x58\r
1136 #define CSR11_CS_MASK     0x80000000UL\r
1137 #define CSR11_CS_SHIFT    31\r
1138 \r
1139 /*------------------------------------------------------------------------------\r
1140  * CSR11_TT:\r
1141  *   TT field of register CSR11.\r
1142  *------------------------------------------------------------------------------\r
1143  * Transmit timer\r
1144  */\r
1145 #define CSR11_TT_OFFSET   0x58\r
1146 #define CSR11_TT_MASK     0x78000000UL\r
1147 #define CSR11_TT_SHIFT    27\r
1148 \r
1149 /*------------------------------------------------------------------------------\r
1150  * CSR11_NTP:\r
1151  *   NTP field of register CSR11.\r
1152  *------------------------------------------------------------------------------\r
1153  * Number of transmit packets\r
1154  */\r
1155 #define CSR11_NTP_OFFSET   0x58\r
1156 #define CSR11_NTP_MASK     0x07000000UL\r
1157 #define CSR11_NTP_SHIFT    24\r
1158 \r
1159 /*------------------------------------------------------------------------------\r
1160  * CSR11_RT:\r
1161  *   RT field of register CSR11.\r
1162  *------------------------------------------------------------------------------\r
1163  * Receive timer\r
1164  */\r
1165 #define CSR11_RT_OFFSET   0x58\r
1166 #define CSR11_RT_MASK     0x00F00000UL\r
1167 #define CSR11_RT_SHIFT    20\r
1168 \r
1169 /*------------------------------------------------------------------------------\r
1170  * CSR11_NRP:\r
1171  *   NRP field of register CSR11.\r
1172  *------------------------------------------------------------------------------\r
1173  * Number of receive packets\r
1174  */\r
1175 #define CSR11_NRP_OFFSET   0x58\r
1176 #define CSR11_NRP_MASK     0x000E0000UL\r
1177 #define CSR11_NRP_SHIFT    17\r
1178 \r
1179 /*------------------------------------------------------------------------------\r
1180  * CSR11_CON:\r
1181  *   CON field of register CSR11.\r
1182  *------------------------------------------------------------------------------\r
1183  * Continuous mode\r
1184  */\r
1185 #define CSR11_CON_OFFSET   0x58\r
1186 #define CSR11_CON_MASK     0x00010000UL\r
1187 #define CSR11_CON_SHIFT    16\r
1188 \r
1189 /*------------------------------------------------------------------------------\r
1190  * CSR11_TIM:\r
1191  *   TIM field of register CSR11.\r
1192  *------------------------------------------------------------------------------\r
1193  * Timer value\r
1194  */\r
1195 #define CSR11_TIM_OFFSET   0x58\r
1196 #define CSR11_TIM_MASK     0x0000FFFFUL\r
1197 #define CSR11_TIM_SHIFT    0\r
1198 \r
1199 #ifdef __cplusplus\r
1200 }\r
1201 #endif\r
1202 \r
1203 #endif /* MSS_ETHERNET_MAC_REGISTERS_H_*/\r