Lines Matching refs:tx_buf
31 struct bnxt_sw_tx_bd *tx_buf;
45 tx_buf = &txr->tx_buf_ring[RING_TX(bp, prod)];
46 tx_buf->nr_frags = num_frags;
48 tx_buf->page = virt_to_head_page(xdp->data);
92 return tx_buf;
99 struct bnxt_sw_tx_bd *tx_buf;
101 tx_buf = bnxt_xmit_bd(bp, txr, mapping, len, xdp);
102 tx_buf->rx_prod = rx_prod;
103 tx_buf->action = XDP_TX;
112 struct bnxt_sw_tx_bd *tx_buf;
114 tx_buf = bnxt_xmit_bd(bp, txr, mapping, len, NULL);
115 tx_buf->action = XDP_REDIRECT;
116 tx_buf->xdpf = xdpf;
117 dma_unmap_addr_set(tx_buf, mapping, mapping);
118 dma_unmap_len_set(tx_buf, len, 0);
127 struct bnxt_sw_tx_bd *tx_buf;
136 tx_buf = &txr->tx_buf_ring[RING_TX(bp, tx_cons)];
138 if (tx_buf->action == XDP_REDIRECT) {
142 dma_unmap_addr(tx_buf, mapping),
143 dma_unmap_len(tx_buf, len),
145 xdp_return_frame(tx_buf->xdpf);
146 tx_buf->action = 0;
147 tx_buf->xdpf = NULL;
148 } else if (tx_buf->action == XDP_TX) {
149 tx_buf->action = 0;
153 frags = tx_buf->nr_frags;
156 tx_buf = &txr->tx_buf_ring[RING_TX(bp, tx_cons)];
157 page_pool_recycle_direct(rxr->page_pool, tx_buf->page);
169 tx_buf = &txr->tx_buf_ring[RING_TX(bp, last_tx_cons)];
170 bnxt_db_write(bp, &rxr->rx_db, tx_buf->rx_prod);