Lines Matching refs:desc_data
311 struct mtk_star_ring_desc_data *desc_data) in mtk_star_ring_pop_tail() argument
322 desc_data->len = status & MTK_STAR_DESC_MSK_LEN; in mtk_star_ring_pop_tail()
323 desc_data->flags = status & ~MTK_STAR_DESC_MSK_LEN; in mtk_star_ring_pop_tail()
324 desc_data->dma_addr = ring->dma_addrs[ring->tail]; in mtk_star_ring_pop_tail()
325 desc_data->skb = ring->skbs[ring->tail]; in mtk_star_ring_pop_tail()
341 struct mtk_star_ring_desc_data *desc_data, in mtk_star_ring_push_head() argument
349 ring->skbs[ring->head] = desc_data->skb; in mtk_star_ring_push_head()
350 ring->dma_addrs[ring->head] = desc_data->dma_addr; in mtk_star_ring_push_head()
352 status |= desc_data->len; in mtk_star_ring_push_head()
356 WRITE_ONCE(desc->data_ptr, desc_data->dma_addr); in mtk_star_ring_push_head()
368 struct mtk_star_ring_desc_data *desc_data) in mtk_star_ring_push_head_rx() argument
370 mtk_star_ring_push_head(ring, desc_data, 0); in mtk_star_ring_push_head_rx()
375 struct mtk_star_ring_desc_data *desc_data) in mtk_star_ring_push_head_tx() argument
381 mtk_star_ring_push_head(ring, desc_data, flags); in mtk_star_ring_push_head_tx()
407 struct mtk_star_ring_desc_data *desc_data) in mtk_star_dma_unmap_rx() argument
411 dma_unmap_single(dev, desc_data->dma_addr, in mtk_star_dma_unmap_rx()
412 skb_tailroom(desc_data->skb), DMA_FROM_DEVICE); in mtk_star_dma_unmap_rx()
424 struct mtk_star_ring_desc_data *desc_data) in mtk_star_dma_unmap_tx() argument
428 return dma_unmap_single(dev, desc_data->dma_addr, in mtk_star_dma_unmap_tx()
429 skb_headlen(desc_data->skb), DMA_TO_DEVICE); in mtk_star_dma_unmap_tx()
730 struct mtk_star_ring_desc_data desc_data; in mtk_star_ring_free_skbs() local
737 desc_data.dma_addr = ring->dma_addrs[i]; in mtk_star_ring_free_skbs()
738 desc_data.skb = ring->skbs[i]; in mtk_star_ring_free_skbs()
740 unmap_func(priv, &desc_data); in mtk_star_ring_free_skbs()
741 dev_kfree_skb(desc_data.skb); in mtk_star_ring_free_skbs()
1103 struct mtk_star_ring_desc_data desc_data; in mtk_star_netdev_start_xmit() local
1115 desc_data.dma_addr = mtk_star_dma_map_tx(priv, skb); in mtk_star_netdev_start_xmit()
1116 if (dma_mapping_error(dev, desc_data.dma_addr)) in mtk_star_netdev_start_xmit()
1119 desc_data.skb = skb; in mtk_star_netdev_start_xmit()
1120 desc_data.len = skb->len; in mtk_star_netdev_start_xmit()
1121 mtk_star_ring_push_head_tx(ring, &desc_data); in mtk_star_netdev_start_xmit()
1143 struct mtk_star_ring_desc_data desc_data; in mtk_star_tx_complete_one() local
1146 ret = mtk_star_ring_pop_tail(ring, &desc_data); in mtk_star_tx_complete_one()
1150 mtk_star_dma_unmap_tx(priv, &desc_data); in mtk_star_tx_complete_one()
1151 ret = desc_data.skb->len; in mtk_star_tx_complete_one()
1152 dev_kfree_skb_irq(desc_data.skb); in mtk_star_tx_complete_one()
1275 struct mtk_star_ring_desc_data desc_data; in mtk_star_rx() local
1282 ret = mtk_star_ring_pop_tail(ring, &desc_data); in mtk_star_rx()
1286 curr_skb = desc_data.skb; in mtk_star_rx()
1288 if ((desc_data.flags & MTK_STAR_DESC_BIT_RX_CRCE) || in mtk_star_rx()
1289 (desc_data.flags & MTK_STAR_DESC_BIT_RX_OSIZE)) { in mtk_star_rx()
1317 mtk_star_dma_unmap_rx(priv, &desc_data); in mtk_star_rx()
1319 skb_put(desc_data.skb, desc_data.len); in mtk_star_rx()
1320 desc_data.skb->ip_summed = CHECKSUM_NONE; in mtk_star_rx()
1321 desc_data.skb->protocol = eth_type_trans(desc_data.skb, ndev); in mtk_star_rx()
1322 desc_data.skb->dev = ndev; in mtk_star_rx()
1323 netif_receive_skb(desc_data.skb); in mtk_star_rx()
1326 desc_data.dma_addr = new_dma_addr; in mtk_star_rx()
1332 desc_data.len = skb_tailroom(new_skb); in mtk_star_rx()
1333 desc_data.skb = new_skb; in mtk_star_rx()
1334 mtk_star_ring_push_head_rx(ring, &desc_data); in mtk_star_rx()