49 (p->
des01.
tx.excessive_collisions) ||
66 static int ndesc_get_tx_len(
struct dma_desc *p)
68 return p->
des01.
tx.buffer1_size;
83 "frame spanned multiple buffers\n");
118 #ifdef STMMAC_VLAN_TAG_USED
133 ndesc_rx_set_on_ring_chain(p, (i == ring_size - 1));
141 static void ndesc_init_tx_desc(
struct dma_desc *p,
unsigned int ring_size)
146 ndesc_tx_set_on_ring_chain(p, (i == (ring_size - 1)));
151 static int ndesc_get_tx_owner(
struct dma_desc *p)
156 static int ndesc_get_rx_owner(
struct dma_desc *p)
161 static void ndesc_set_tx_owner(
struct dma_desc *p)
166 static void ndesc_set_rx_owner(
struct dma_desc *p)
171 static int ndesc_get_tx_ls(
struct dma_desc *p)
173 return p->
des01.
tx.last_segment;
176 static void ndesc_release_tx_desc(
struct dma_desc *p)
178 int ter = p->
des01.
tx.end_ring;
181 ndesc_end_tx_desc(p, ter);
184 static void ndesc_prepare_tx_desc(
struct dma_desc *p,
int is_fs,
int len,
187 p->
des01.
tx.first_segment = is_fs;
188 norm_set_tx_desc_len(p, len);
194 static void ndesc_clear_tx_ic(
struct dma_desc *p)
199 static void ndesc_close_tx_desc(
struct dma_desc *p)
205 static int ndesc_get_rx_frame_len(
struct dma_desc *p,
int rx_coe_type)
213 return p->
des01.
rx.frame_length - 2;
215 return p->
des01.
rx.frame_length;
219 .tx_status = ndesc_get_tx_status,
220 .rx_status = ndesc_get_rx_status,
221 .get_tx_len = ndesc_get_tx_len,
222 .init_rx_desc = ndesc_init_rx_desc,
223 .init_tx_desc = ndesc_init_tx_desc,
224 .get_tx_owner = ndesc_get_tx_owner,
225 .get_rx_owner = ndesc_get_rx_owner,
226 .release_tx_desc = ndesc_release_tx_desc,
227 .prepare_tx_desc = ndesc_prepare_tx_desc,
228 .clear_tx_ic = ndesc_clear_tx_ic,
229 .close_tx_desc = ndesc_close_tx_desc,
230 .get_tx_ls = ndesc_get_tx_ls,
231 .set_tx_owner = ndesc_set_tx_owner,
232 .set_rx_owner = ndesc_set_rx_owner,
233 .get_rx_frame_len = ndesc_get_rx_frame_len,