45#define GE_RXDESC_MEMSIZE (1 * PAGE_SIZE)
46#define GE_RXDESC_MAX 64
47#define GE_RXBUF_SIZE 2048
48#define GE_RXBUF_MEMSIZE (GE_RXDESC_MAX*GE_RXBUF_SIZE)
50#define GE_RXDESC_MEMSIZE (GE_RXDESC_MAX * sizeof(struct gt_eth_desc))
51#define GE_RXDESC_MAX (sc->num_rxdesc)
52#define GE_RXBUF_MEMSIZE 0
55#define GE_RXBUF_NSEGS ((GE_RXBUF_MEMSIZE/PAGE_SIZE)+1)
56#define GE_DMSEG_MAX (GE_RXBUF_NSEGS)
61 void *gdm_unaligned_buf;
73#define GE_TXDESC_MEMSIZE (1 * PAGE_SIZE)
74#define GE_TXDESC_MAX (GE_TXDESC_MEMSIZE / 16)
75#define GE_TXBUF_SIZE (4 * PAGE_SIZE)
77#define GE_TXDESC_MEMSIZE (sc->num_txdesc * sizeof(struct gt_eth_desc))
78#define GE_TXDESC_MAX (sc->num_txdesc)
82 struct ifqueue txq_pendq;
83 struct ifqueue txq_sentq;
91 unsigned int txq_ei_gapcount;
93 unsigned int txq_nactive;
95 unsigned int txq_outptr;
96 unsigned int txq_inptr;
98 uint32_t txq_intrbits;
99 uint32_t txq_esdcmrbits;
100 uint32_t txq_epsrbits;
102 bus_addr_t txq_ectdp;
103 bus_addr_t txq_desc_busaddr;
105 bus_addr_t txq_buf_busaddr;
116 uint8_t rb_data[GE_RXBUF_SIZE];
124 struct mbuf *rxq_curpkt;
130 struct mbuf **rxq_bufs;
133 unsigned int rxq_active;
134 uint32_t rxq_intrbits;
135 bus_addr_t rxq_desc_busaddr;
137 bus_size_t rxq_efrdp;
138 bus_size_t rxq_ecrdp;
157#define dv_xname ac_if.if_name
163 struct ethercom sc_ec;
170 bus_space_tag_t sc_gt_memt;
171 bus_space_handle_t sc_gt_memh;
172 bus_space_handle_t sc_memh;
173 bus_dma_tag_t sc_dmat;
178 unsigned char irq_no;
181 int num_rxdesc, num_txdesc;
185 unsigned int sc_tickflags;
186#define GE_TICK_TX_IFSTART 0x0001
187#define GE_TICK_RX_RESTART 0x0002
188 unsigned int sc_flags;
189#define GE_ALLMULTI 0x0001
190#define GE_PHYSTSCHG 0x0002
191#define GE_RXACTIVE 0x0004
192#define GE_NOFREE 0x0008
195 uint32_t sc_intrmask;
196 uint32_t sc_idlemask;
197 size_t sc_max_frame_length;
203 uint64_t *sc_hashtable;
204 unsigned int sc_hashmask;
219gfe_mii_read(
int phy,
void *arg,
unsigned reg, uint32_t *pval);
222gfe_mii_write(
int phy,
void *arg,
unsigned reg, uint32_t value);
Objects_Id rtems_id
Used to manage and manipulate RTEMS object identifiers.
Definition: types.h:83
Definition: rtemscompat_defs.h:91
Definition: rtemsmain.c:734
Definition: rtemscompat1.h:15
Definition: if_gfevar.h:58
Definition: if_gfevar.h:115
Definition: if_gfevar.h:120
Definition: if_gfevar.h:160
Definition: if_gfevar.h:81
Definition: gtethreg.h:61