20#define XILTEMAC_DRIVER_PREFIX "xiltemac"
22#define DRIVER_PREFIX XILTEMAC_DRIVER_PREFIX
27#define XTE_DISR_OFFSET 0x00000000
28#define XTE_DIPR_OFFSET 0x00000004
29#define XTE_DIER_OFFSET 0x00000008
30#define XTE_DIIR_OFFSET 0x00000018
31#define XTE_DGIE_OFFSET 0x0000001C
32#define XTE_IPISR_OFFSET 0x00000020
33#define XTE_IPIER_OFFSET 0x00000028
34#define XTE_DSR_OFFSET 0x00000040
38#define XTE_PFIFO_TX_BASE_OFFSET 0x00002000
39#define XTE_PFIFO_TX_VACANCY_OFFSET 0x00002004
40#define XTE_PFIFO_TX_DATA_OFFSET 0x00002100
44#define XTE_PFIFO_RX_BASE_OFFSET 0x00002010
45#define XTE_PFIFO_RX_VACANCY_OFFSET 0x00002014
46#define XTE_PFIFO_RX_DATA_OFFSET 0x00002200
50#define XTE_PFIFO_COUNT_MASK 0x00FFFFFF
54#define XTE_DMA_SEND_OFFSET 0x00002300
55#define XTE_DMA_RECV_OFFSET 0x00002340
59#define XTE_CR_OFFSET 0x00001000
60#define XTE_TPLR_OFFSET 0x00001004
61#define XTE_TSR_OFFSET 0x00001008
62#define XTE_RPLR_OFFSET 0x0000100C
63#define XTE_RSR_OFFSET 0x00001010
64#define XTE_IFGP_OFFSET 0x00001014
65#define XTE_TPPR_OFFSET 0x00001018
73#define XTE_HOST_IPIF_OFFSET 0x00003000
75#define XTE_ERXC0_OFFSET (XTE_HOST_IPIF_OFFSET + 0x00000200)
76#define XTE_ERXC1_OFFSET (XTE_HOST_IPIF_OFFSET + 0x00000240)
77#define XTE_ETXC_OFFSET (XTE_HOST_IPIF_OFFSET + 0x00000280)
78#define XTE_EFCC_OFFSET (XTE_HOST_IPIF_OFFSET + 0x000002C0)
79#define XTE_ECFG_OFFSET (XTE_HOST_IPIF_OFFSET + 0x00000300)
80#define XTE_EGMIC_OFFSET (XTE_HOST_IPIF_OFFSET + 0x00000320)
81#define XTE_EMC_OFFSET (XTE_HOST_IPIF_OFFSET + 0x00000340)
82#define XTE_EUAW0_OFFSET (XTE_HOST_IPIF_OFFSET + 0x00000380)
83#define XTE_EUAW1_OFFSET (XTE_HOST_IPIF_OFFSET + 0x00000384)
84#define XTE_EMAW0_OFFSET (XTE_HOST_IPIF_OFFSET + 0x00000388)
85#define XTE_EMAW1_OFFSET (XTE_HOST_IPIF_OFFSET + 0x0000038C)
86#define XTE_EAFM_OFFSET (XTE_HOST_IPIF_OFFSET + 0x00000390)
87#define XTE_EIRS_OFFSET (XTE_HOST_IPIF_OFFSET + 0x000003A0)
88#define XTE_EIREN_OFFSET (XTE_HOST_IPIF_OFFSET + 0x000003A4)
89#define XTE_EMIID_OFFSET (XTE_HOST_IPIF_OFFSET + 0x000003B0)
90#define XTE_EMIIC_OFFSET (XTE_HOST_IPIF_OFFSET + 0x000003B4)
102#define XTE_DXR_SEND_FIFO_MASK 0x00000040
103#define XTE_DXR_RECV_FIFO_MASK 0x00000020
104#define XTE_DXR_RECV_DMA_MASK 0x00000010
105#define XTE_DXR_SEND_DMA_MASK 0x00000008
106#define XTE_DXR_CORE_MASK 0x00000004
107#define XTE_DXR_DPTO_MASK 0x00000002
108#define XTE_DXR_TERR_MASK 0x00000001
114#define XTE_IPXR_XMIT_DONE_MASK 0x00000001
115#define XTE_IPXR_RECV_DONE_MASK 0x00000002
116#define XTE_IPXR_AUTO_NEG_MASK 0x00000004
117#define XTE_IPXR_RECV_REJECT_MASK 0x00000008
118#define XTE_IPXR_XMIT_SFIFO_EMPTY_MASK 0x00000010
119#define XTE_IPXR_RECV_LFIFO_EMPTY_MASK 0x00000020
120#define XTE_IPXR_XMIT_LFIFO_FULL_MASK 0x00000040
121#define XTE_IPXR_RECV_LFIFO_OVER_MASK 0x00000080
125#define XTE_IPXR_RECV_LFIFO_UNDER_MASK 0x00000100
126#define XTE_IPXR_XMIT_SFIFO_OVER_MASK 0x00000200
127#define XTE_IPXR_XMIT_SFIFO_UNDER_MASK 0x00000400
128#define XTE_IPXR_XMIT_LFIFO_OVER_MASK 0x00000800
129#define XTE_IPXR_XMIT_LFIFO_UNDER_MASK 0x00001000
130#define XTE_IPXR_RECV_PFIFO_ABORT_MASK 0x00002000
132#define XTE_IPXR_RECV_LFIFO_ABORT_MASK 0x00004000
135#define XTE_IPXR_RECV_DROPPED_MASK \
136 (XTE_IPXR_RECV_REJECT_MASK | \
137 XTE_IPXR_RECV_PFIFO_ABORT_MASK | \
138 XTE_IPXR_RECV_LFIFO_ABORT_MASK)
140#define XTE_IPXR_XMIT_ERROR_MASK \
141 (XTE_IPXR_XMIT_SFIFO_OVER_MASK | \
142 XTE_IPXR_XMIT_SFIFO_UNDER_MASK | \
143 XTE_IPXR_XMIT_LFIFO_OVER_MASK | \
144 XTE_IPXR_XMIT_LFIFO_UNDER_MASK)
147#define XTE_IPXR_RECV_ERROR_MASK \
148 (XTE_IPXR_RECV_DROPPED_MASK | \
149 XTE_IPXR_RECV_LFIFO_UNDER_MASK)
152#define XTE_IPXR_FIFO_FATAL_ERROR_MASK \
153 (XTE_IPXR_XMIT_SFIFO_OVER_MASK | \
154 XTE_IPXR_XMIT_SFIFO_UNDER_MASK | \
155 XTE_IPXR_XMIT_LFIFO_OVER_MASK | \
156 XTE_IPXR_XMIT_LFIFO_UNDER_MASK | \
157 XTE_IPXR_RECV_LFIFO_UNDER_MASK)
165#define XTE_DSR_RESET_MASK 0x0000000A
171#define XTE_DGIE_ENABLE_MASK 0x80000000
177#define XTE_CR_HTRST_MASK 0x00000008
178#define XTE_CR_BCREJ_MASK 0x00000004
180#define XTE_CR_MCREJ_MASK 0x00000002
182#define XTE_CR_HDUPLEX_MASK 0x00000001
187#define XTE_TPLR_TXPL_MASK 0x00003FFF
192#define XTE_TSR_TXED_MASK 0x80000000
193#define XTE_TSR_PFIFOU_MASK 0x40000000
194#define XTE_TSR_TXA_MASK 0x3E000000
195#define XTE_TSR_TXLC_MASK 0x01000000
196#define XTE_TSR_TPCF_MASK 0x00000001
199#define XTE_TSR_ERROR_MASK \
200 (XTE_TSR_TXED_MASK | \
201 XTE_TSR_PFIFOU_MASK | \
208#define XTE_RPLR_RXPL_MASK 0x00003FFF
213#define XTE_RSR_RPCF_MASK 0x00000001
218#define XTE_IFG_IFGD_MASK 0x000000FF
223#define XTE_TPPR_TPPD_MASK 0x0000FFFF
228#define XTE_ERXC1_RXRST_MASK 0x80000000
229#define XTE_ERXC1_RXJMBO_MASK 0x40000000
230#define XTE_ERXC1_RXFCS_MASK 0x20000000
231#define XTE_ERXC1_RXEN_MASK 0x10000000
232#define XTE_ERXC1_RXVLAN_MASK 0x08000000
233#define XTE_ERXC1_RXHD_MASK 0x04000000
234#define XTE_ERXC1_RXLT_MASK 0x02000000
235#define XTE_ERXC1_ERXC1_MASK 0x0000FFFF
243#define XTE_ETXC_TXRST_MASK 0x80000000
244#define XTE_ETXC_TXJMBO_MASK 0x40000000
245#define XTE_ETXC_TXFCS_MASK 0x20000000
246#define XTE_ETXC_TXEN_MASK 0x10000000
247#define XTE_ETXC_TXVLAN_MASK 0x08000000
248#define XTE_ETXC_TXHD_MASK 0x04000000
249#define XTE_ETXC_TXIFG_MASK 0x02000000
254#define XTE_EFCC_TXFLO_MASK 0x40000000
255#define XTE_EFCC_RXFLO_MASK 0x20000000
260#define XTE_ECFG_LINKSPD_MASK 0xC0000000
261#define XTE_ECFG_RGMII_MASK 0x20000000
262#define XTE_ECFG_SGMII_MASK 0x10000000
263#define XTE_ECFG_1000BASEX_MASK 0x08000000
264#define XTE_ECFG_HOSTEN_MASK 0x04000000
265#define XTE_ECFG_TX16BIT 0x02000000
266#define XTE_ECFG_RX16BIT 0x01000000
268#define XTE_ECFG_LINKSPD_10 0x00000000
270#define XTE_ECFG_LINKSPD_100 0x40000000
272#define XTE_ECFG_LINKSPD_1000 0x80000000
277#define XTE_EGMIC_RGLINKSPD_MASK 0xC0000000
278#define XTE_EGMIC_SGLINKSPD_MASK 0x0000000C
279#define XTE_EGMIC_RGSTATUS_MASK 0x00000002
280#define XTE_EGMIC_RGHALFDUPLEX_MASK 0x00000001
282#define XTE_EGMIC_RGLINKSPD_10 0x00000000
284#define XTE_EGMIC_RGLINKSPD_100 0x40000000
286#define XTE_EGMIC_RGLINKSPD_1000 0x80000000
288#define XTE_EGMIC_SGLINKSPD_10 0x00000000
290#define XTE_EGMIC_SGLINKSPD_100 0x00000004
292#define XTE_EGMIC_SGLINKSPD_1000 0x00000008
297#define XTE_EMC_MDIO_MASK 0x00000040
298#define XTE_EMC_CLK_DVD_MAX 0x3F
303#define XTE_EUAW1_MASK 0x0000FFFF
311#define XTE_EMAW1_CAMRNW_MASK 0x00800000
312#define XTE_EMAW1_CAMADDR_MASK 0x00030000
313#define XTE_EUAW1_MASK 0x0000FFFF
317#define XTE_EMAW1_CAMMADDR_SHIFT_MASK 16
324#define XTE_EAFM_EPPRM_MASK 0x80000000
329#define XTE_EMIID_MIIMWRDATA_MASK 0x0000FFFF
334#define XTE_EMIID_MIIMDECADDR_MASK 0x0000FFFF
339 volatile uint32_t iInterrupts;
341 volatile uint32_t iRxInterrupts;
342 volatile uint32_t iRxRejectedInterrupts;
343 volatile uint32_t iRxRejectedInvalidFrame;
344 volatile uint32_t iRxRejectedDataFifoFull;
345 volatile uint32_t iRxRejectedLengthFifoFull;
346 volatile uint32_t iRxMaxDrained;
347 volatile uint32_t iRxStrayEvents;
349 volatile uint32_t iTxInterrupts;
350 volatile uint32_t iTxMaxDrained;
353#define MAX_UNIT_BYTES 50
357 struct arpcom iArpcom;
361 char iUnitName[MAX_UNIT_BYTES];
368#if PPC_HAS_CLASSIC_EXCEPTIONS
Interrupt Handler Support.
uint32_t rtems_event_set
This integer type represents a bit field which can hold exactly 32 individual events.
Definition: event.h:436
ISR_Handler_entry rtems_isr_entry
Interrupt service routines installed by rtems_interrupt_catch() shall have this type.
Definition: intr.h:134
Definition: xiltemac.h:338
Definition: xiltemac.h:356