Lines Matching defs:desc_data

22 				   struct xlgmac_desc_data *desc_data)
24 if (desc_data->skb_dma) {
25 if (desc_data->mapped_as_page) {
26 dma_unmap_page(pdata->dev, desc_data->skb_dma,
27 desc_data->skb_dma_len, DMA_TO_DEVICE);
29 dma_unmap_single(pdata->dev, desc_data->skb_dma,
30 desc_data->skb_dma_len, DMA_TO_DEVICE);
32 desc_data->skb_dma = 0;
33 desc_data->skb_dma_len = 0;
36 if (desc_data->skb) {
37 dev_kfree_skb_any(desc_data->skb);
38 desc_data->skb = NULL;
41 if (desc_data->rx.hdr.pa.pages)
42 put_page(desc_data->rx.hdr.pa.pages);
44 if (desc_data->rx.hdr.pa_unmap.pages) {
45 dma_unmap_page(pdata->dev, desc_data->rx.hdr.pa_unmap.pages_dma,
46 desc_data->rx.hdr.pa_unmap.pages_len,
48 put_page(desc_data->rx.hdr.pa_unmap.pages);
51 if (desc_data->rx.buf.pa.pages)
52 put_page(desc_data->rx.buf.pa.pages);
54 if (desc_data->rx.buf.pa_unmap.pages) {
55 dma_unmap_page(pdata->dev, desc_data->rx.buf.pa_unmap.pages_dma,
56 desc_data->rx.buf.pa_unmap.pages_len,
58 put_page(desc_data->rx.buf.pa_unmap.pages);
61 memset(&desc_data->tx, 0, sizeof(desc_data->tx));
62 memset(&desc_data->rx, 0, sizeof(desc_data->rx));
64 desc_data->mapped_as_page = 0;
66 if (desc_data->state_saved) {
67 desc_data->state_saved = 0;
68 desc_data->state.skb = NULL;
69 desc_data->state.len = 0;
70 desc_data->state.error = 0;
77 struct xlgmac_desc_data *desc_data;
85 desc_data = XLGMAC_GET_DESC_DATA(ring, i);
86 xlgmac_unmap_desc_data(pdata, desc_data);
391 struct xlgmac_desc_data *desc_data)
411 xlgmac_set_buffer_data(&desc_data->rx.hdr, &ring->rx_hdr_pa,
415 xlgmac_set_buffer_data(&desc_data->rx.buf, &ring->rx_buf_pa,
424 struct xlgmac_desc_data *desc_data;
441 desc_data = XLGMAC_GET_DESC_DATA(ring, j);
443 desc_data->dma_desc = dma_desc;
444 desc_data->dma_desc_addr = dma_desc_addr;
461 struct xlgmac_desc_data *desc_data;
478 desc_data = XLGMAC_GET_DESC_DATA(ring, j);
480 desc_data->dma_desc = dma_desc;
481 desc_data->dma_desc_addr = dma_desc_addr;
483 if (xlgmac_map_rx_buffer(pdata, ring, desc_data))
503 struct xlgmac_desc_data *desc_data;
530 desc_data = XLGMAC_GET_DESC_DATA(ring, cur_index);
540 desc_data->skb_dma = skb_dma;
541 desc_data->skb_dma_len = pkt_info->header_len;
551 desc_data = XLGMAC_GET_DESC_DATA(ring, cur_index);
564 desc_data->skb_dma = skb_dma;
565 desc_data->skb_dma_len = len;
576 desc_data = XLGMAC_GET_DESC_DATA(ring, cur_index);
597 desc_data->skb_dma = skb_dma;
598 desc_data->skb_dma_len = len;
599 desc_data->mapped_as_page = 1;
610 desc_data = XLGMAC_GET_DESC_DATA(ring, cur_index);
615 * that has been mapped so desc_data is always advanced past the last
618 desc_data = XLGMAC_GET_DESC_DATA(ring, cur_index - 1);
619 desc_data->skb = skb;
628 desc_data = XLGMAC_GET_DESC_DATA(ring, start_index++);
629 xlgmac_unmap_desc_data(pdata, desc_data);