/linux/drivers/net/ethernet/broadcom/bnxt/ |
H A D | bnxt_xdp.c | 26 struct bnxt_tx_ring_info *txr, in bnxt_xmit_bd() argument 44 prod = txr->tx_prod; in bnxt_xmit_bd() 45 tx_buf = &txr->tx_buf_ring[RING_TX(bp, prod)]; in bnxt_xmit_bd() 50 txbd = &txr->tx_desc_ring[TX_RING(bp, prod)][TX_IDX(prod)]; in bnxt_xmit_bd() 55 txbd->tx_bd_opaque = SET_TX_OPAQUE(bp, txr, prod, 1 + num_frags); in bnxt_xmit_bd() 66 WRITE_ONCE(txr->tx_prod, prod); in bnxt_xmit_bd() 69 frag_tx_buf = &txr->tx_buf_ring[RING_TX(bp, prod)]; in bnxt_xmit_bd() 72 txbd = &txr->tx_desc_ring[TX_RING(bp, prod)][TX_IDX(prod)]; in bnxt_xmit_bd() 90 WRITE_ONCE(txr->tx_prod, prod); in bnxt_xmit_bd() 95 static void __bnxt_xmit_xdp(struct bnxt *bp, struct bnxt_tx_ring_info *txr, in __bnxt_xmit_xdp() argument [all …]
|
H A D | bnxt.c | 403 void bnxt_sched_reset_txr(struct bnxt *bp, struct bnxt_tx_ring_info *txr, in bnxt_sched_reset_txr() argument 406 struct bnxt_napi *bnapi = txr->bnapi; in bnxt_sched_reset_txr() 412 txr->txq_index, txr->tx_hw_cons, in bnxt_sched_reset_txr() 413 txr->tx_cons, txr->tx_prod, curr); in bnxt_sched_reset_txr() 451 static void bnxt_txr_db_kick(struct bnxt *bp, struct bnxt_tx_ring_info *txr, in bnxt_txr_db_kick() argument 456 bnxt_db_write(bp, &txr->tx_db, prod); in bnxt_txr_db_kick() 457 txr->kick_pending = 0; in bnxt_txr_db_kick() 473 struct bnxt_tx_ring_info *txr; in bnxt_start_xmit() local 485 txr = &bp->tx_ring[bp->tx_ring_map[i]]; in bnxt_start_xmit() 486 prod = txr->tx_prod; in bnxt_start_xmit() [all …]
|
H A D | bnxt_xdp.h | 16 struct bnxt_tx_ring_info *txr,
|
H A D | bnxt.h | 73 #define SET_TX_OPAQUE(bp, txr, idx, bds) \ argument 74 (((txr)->tx_napi_idx << TX_OPAQUE_RING_SHIFT) | \ 1202 #define bnxt_for_each_napi_tx(iter, bnapi, txr) \ argument 1203 for (iter = 0, txr = (bnapi)->tx_ring[0]; txr; \ 1204 txr = (iter < BNXT_MAX_TXR_PER_NAPI - 1) ? \ 2785 const struct bnxt_tx_ring_info *txr) in bnxt_tx_avail() argument 2787 u32 used = READ_ONCE(txr->tx_prod) - READ_ONCE(txr->tx_cons); in bnxt_tx_avail() 2908 void bnxt_sched_reset_txr(struct bnxt *bp, struct bnxt_tx_ring_info *txr,
|
H A D | bnxt_ptp.c | 843 struct bnxt_tx_ring_info *txr; in bnxt_tx_ts_cmp() local 848 txr = bnapi->tx_ring[TX_OPAQUE_RING(opaque)]; in bnxt_tx_ts_cmp() 851 tx_buf = &txr->tx_buf_ring[RING_TX(bp, cons)]; in bnxt_tx_ts_cmp()
|
H A D | bnxt_ethtool.c | 4842 struct bnxt_tx_ring_info *txr = &bp->tx_ring[0]; in bnxt_run_loopback() local 4873 bnxt_xmit_bd(bp, txr, map, pkt_size, NULL); in bnxt_run_loopback() 4878 bnxt_db_write(bp, &txr->tx_db, txr->tx_prod); in bnxt_run_loopback()
|
/linux/drivers/net/ethernet/qualcomm/ |
H A D | qca_spi.c | 276 if (qca->txr.skb[qca->txr.head] == NULL) in qcaspi_transmit() 289 while (qca->txr.skb[qca->txr.head]) { in qcaspi_transmit() 290 pkt_len = qca->txr.skb[qca->txr.head]->len + QCASPI_HW_PKT_LEN; in qcaspi_transmit() 298 if (qcaspi_tx_frame(qca, qca->txr.skb[qca->txr.head]) == -1) { in qcaspi_transmit() 305 n_stats->tx_bytes += qca->txr.skb[qca->txr.head]->len; in qcaspi_transmit() 313 dev_kfree_skb(qca->txr.skb[qca->txr.head]); in qcaspi_transmit() 314 qca->txr.skb[qca->txr.head] = NULL; in qcaspi_transmit() 315 qca->txr.size -= pkt_len; in qcaspi_transmit() 316 new_head = qca->txr.head + 1; in qcaspi_transmit() 317 if (new_head >= qca->txr.count) in qcaspi_transmit() [all …]
|
H A D | qca_spi.h | 74 struct tx_ring txr; member
|
/linux/drivers/net/ethernet/broadcom/ |
H A D | bnx2.c | 246 static inline u32 bnx2_tx_avail(struct bnx2 *bp, struct bnx2_tx_ring_info *txr) in bnx2_tx_avail() argument 253 diff = READ_ONCE(txr->tx_prod) - READ_ONCE(txr->tx_cons); in bnx2_tx_avail() 697 struct bnx2_tx_ring_info *txr = &bnapi->tx_ring; in bnx2_free_tx_mem() local 699 if (txr->tx_desc_ring) { in bnx2_free_tx_mem() 701 txr->tx_desc_ring, in bnx2_free_tx_mem() 702 txr->tx_desc_mapping); in bnx2_free_tx_mem() 703 txr->tx_desc_ring = NULL; in bnx2_free_tx_mem() 705 kfree(txr->tx_buf_ring); in bnx2_free_tx_mem() 706 txr->tx_buf_ring = NULL; in bnx2_free_tx_mem() 749 struct bnx2_tx_ring_info *txr = &bnapi->tx_ring; in bnx2_alloc_tx_mem() local [all …]
|
H A D | bcmsysport.c | 1108 struct bcm_sysport_tx_ring *txr; in bcm_sysport_rx_isr() local 1143 txr = &priv->tx_rings[ring]; in bcm_sysport_rx_isr() 1145 if (likely(napi_schedule_prep(&txr->napi))) { in bcm_sysport_rx_isr() 1147 __napi_schedule(&txr->napi); in bcm_sysport_rx_isr() 1159 struct bcm_sysport_tx_ring *txr; in bcm_sysport_tx_isr() local 1175 txr = &priv->tx_rings[ring]; in bcm_sysport_tx_isr() 1177 if (likely(napi_schedule_prep(&txr->napi))) { in bcm_sysport_tx_isr() 1179 __napi_schedule_irqoff(&txr->napi); in bcm_sysport_tx_isr()
|
/linux/tools/testing/selftests/bpf/ |
H A D | xskxceiver.c | 265 struct xsk_ring_prod *txr; in __xsk_configure_socket() local 280 txr = ifobject->tx_on ? &xsk->tx : NULL; in __xsk_configure_socket() 282 return xsk_socket__create(&xsk->xsk, ifobject->ifindex, 0, umem->umem, rxr, txr, &cfg); in __xsk_configure_socket()
|