Lines Matching refs:tx_skb
195 struct nixge_tx_skb *tx_skb;
273 if (priv->tx_skb)
274 devm_kfree(ndev->dev.parent, priv->tx_skb);
303 priv->tx_skb = devm_kcalloc(ndev->dev.parent,
304 TX_BD_NUM, sizeof(*priv->tx_skb),
306 if (!priv->tx_skb)
441 struct nixge_tx_skb *tx_skb)
443 if (tx_skb->mapping) {
444 if (tx_skb->mapped_as_page)
445 dma_unmap_page(priv->ndev->dev.parent, tx_skb->mapping,
446 tx_skb->size, DMA_TO_DEVICE);
449 tx_skb->mapping,
450 tx_skb->size, DMA_TO_DEVICE);
451 tx_skb->mapping = 0;
454 if (tx_skb->skb) {
455 dev_kfree_skb_any(tx_skb->skb);
456 tx_skb->skb = NULL;
464 struct nixge_tx_skb *tx_skb;
470 tx_skb = &priv->tx_skb[priv->tx_bd_ci];
475 nixge_tx_skb_unmap(priv, tx_skb);
484 tx_skb = &priv->tx_skb[priv->tx_bd_ci];
511 struct nixge_tx_skb *tx_skb;
519 tx_skb = &priv->tx_skb[priv->tx_bd_tail];
535 tx_skb->skb = NULL;
536 tx_skb->mapping = cur_phys;
537 tx_skb->size = skb_headlen(skb);
538 tx_skb->mapped_as_page = false;
544 tx_skb = &priv->tx_skb[priv->tx_bd_tail];
556 tx_skb->skb = NULL;
557 tx_skb->mapping = cur_phys;
558 tx_skb->size = skb_frag_size(frag);
559 tx_skb->mapped_as_page = true;
563 tx_skb->skb = skb;
581 tx_skb = &priv->tx_skb[priv->tx_bd_tail];
582 nixge_tx_skb_unmap(priv, tx_skb);
588 tx_skb->mapping,
589 tx_skb->size, DMA_TO_DEVICE);
795 struct nixge_tx_skb *tx_skb;
803 tx_skb = &lp->tx_skb[i];
804 nixge_tx_skb_unmap(lp, tx_skb);