Lines Matching refs:txdata
193 static u16 bnx2x_free_tx_pkt(struct bnx2x *bp, struct bnx2x_fp_txdata *txdata, in bnx2x_free_tx_pkt() argument
197 struct sw_tx_bd *tx_buf = &txdata->tx_buf_ring[idx]; in bnx2x_free_tx_pkt()
209 txdata->txq_index, idx, tx_buf, skb); in bnx2x_free_tx_pkt()
211 tx_start_bd = &txdata->tx_desc_ring[bd_idx].start_bd; in bnx2x_free_tx_pkt()
237 tx_data_bd = &txdata->tx_desc_ring[bd_idx].reg_bd; in bnx2x_free_tx_pkt()
251 tx_data_bd = &txdata->tx_desc_ring[bd_idx].reg_bd; in bnx2x_free_tx_pkt()
272 int bnx2x_tx_int(struct bnx2x *bp, struct bnx2x_fp_txdata *txdata) in bnx2x_tx_int() argument
275 u16 hw_cons, sw_cons, bd_cons = txdata->tx_bd_cons; in bnx2x_tx_int()
283 txq = netdev_get_tx_queue(bp->dev, txdata->txq_index); in bnx2x_tx_int()
284 hw_cons = le16_to_cpu(*txdata->tx_cons_sb); in bnx2x_tx_int()
285 sw_cons = txdata->tx_pkt_cons; in bnx2x_tx_int()
297 txdata->txq_index, hw_cons, sw_cons, pkt_cons); in bnx2x_tx_int()
299 bd_cons = bnx2x_free_tx_pkt(bp, txdata, pkt_cons, in bnx2x_tx_int()
307 txdata->tx_pkt_cons = sw_cons; in bnx2x_tx_int()
308 txdata->tx_bd_cons = bd_cons; in bnx2x_tx_int()
336 (bnx2x_tx_avail(bp, txdata) >= MAX_DESC_PER_TX_PKT)) in bnx2x_tx_int()
1497 struct bnx2x_fp_txdata *txdata = fp->txdata_ptr[cos]; in bnx2x_free_tx_skbs_queue() local
1500 u16 sw_prod = txdata->tx_pkt_prod; in bnx2x_free_tx_skbs_queue()
1501 u16 sw_cons = txdata->tx_pkt_cons; in bnx2x_free_tx_skbs_queue()
1504 bnx2x_free_tx_pkt(bp, txdata, TX_BD(sw_cons), in bnx2x_free_tx_skbs_queue()
1511 txdata->txq_index)); in bnx2x_free_tx_skbs_queue()
3287 struct bnx2x_fp_txdata *txdata, in bnx2x_tx_split() argument
3306 d_tx_bd = &txdata->tx_desc_ring[bd_prod].reg_bd; in bnx2x_tx_split()
3741 struct bnx2x_fp_txdata *txdata; in bnx2x_start_xmit() local
3769 txdata = &bp->bnx2x_txq[txq_index]; in bnx2x_start_xmit()
3780 if (unlikely(bnx2x_tx_avail(bp, txdata) < in bnx2x_start_xmit()
3785 if (txdata->tx_ring_size == 0) { in bnx2x_start_xmit()
3787 bnx2x_fp_qstats(bp, txdata->parent_fp); in bnx2x_start_xmit()
3792 bnx2x_fp_qstats(bp, txdata->parent_fp)->driver_xoff++; in bnx2x_start_xmit()
3851 pkt_prod = txdata->tx_pkt_prod; in bnx2x_start_xmit()
3852 bd_prod = TX_BD(txdata->tx_bd_prod); in bnx2x_start_xmit()
3858 tx_buf = &txdata->tx_buf_ring[TX_BD(pkt_prod)]; in bnx2x_start_xmit()
3859 tx_start_bd = &txdata->tx_desc_ring[bd_prod].start_bd; in bnx2x_start_xmit()
3885 tx_buf->first_bd = txdata->tx_bd_prod; in bnx2x_start_xmit()
3891 pkt_prod, tx_buf, txdata->tx_pkt_prod, bd_prod, tx_start_bd); in bnx2x_start_xmit()
3934 pbd_e2 = &txdata->tx_desc_ring[bd_prod].parse_bd_e2; in bnx2x_start_xmit()
3948 pbd2 = &txdata->tx_desc_ring[bd_prod].parse_2nd_bd; in bnx2x_start_xmit()
4017 pbd_e1x = &txdata->tx_desc_ring[bd_prod].parse_bd_e1x; in bnx2x_start_xmit()
4052 bd_prod = bnx2x_tx_split(bp, txdata, tx_buf, in bnx2x_start_xmit()
4091 bnx2x_free_tx_pkt(bp, txdata, in bnx2x_start_xmit()
4092 TX_BD(txdata->tx_pkt_prod), in bnx2x_start_xmit()
4098 tx_data_bd = &txdata->tx_desc_ring[bd_prod].reg_bd; in bnx2x_start_xmit()
4100 total_pkt_bd = &txdata->tx_desc_ring[bd_prod].reg_bd; in bnx2x_start_xmit()
4161 txdata->tx_pkt_prod++; in bnx2x_start_xmit()
4171 txdata->tx_db.data.prod += nbd; in bnx2x_start_xmit()
4175 DOORBELL_RELAXED(bp, txdata->cid, txdata->tx_db.raw); in bnx2x_start_xmit()
4177 txdata->tx_bd_prod += nbd; in bnx2x_start_xmit()
4179 if (unlikely(bnx2x_tx_avail(bp, txdata) < MAX_DESC_PER_TX_PKT)) { in bnx2x_start_xmit()
4187 bnx2x_fp_qstats(bp, txdata->parent_fp)->driver_xoff++; in bnx2x_start_xmit()
4188 if (bnx2x_tx_avail(bp, txdata) >= MAX_DESC_PER_TX_PKT) in bnx2x_start_xmit()
4191 txdata->tx_pkt++; in bnx2x_start_xmit()
4400 struct bnx2x_fp_txdata *txdata = fp->txdata_ptr[cos]; in bnx2x_free_fp_mem_at() local
4404 fp_index, cos, txdata->cid); in bnx2x_free_fp_mem_at()
4406 BNX2X_FREE(txdata->tx_buf_ring); in bnx2x_free_fp_mem_at()
4407 BNX2X_PCI_FREE(txdata->tx_desc_ring, in bnx2x_free_fp_mem_at()
4408 txdata->tx_desc_mapping, in bnx2x_free_fp_mem_at()
4564 struct bnx2x_fp_txdata *txdata = fp->txdata_ptr[cos]; in bnx2x_alloc_fp_mem_at() local
4570 txdata->tx_buf_ring = kcalloc(NUM_TX_BD, in bnx2x_alloc_fp_mem_at()
4573 if (!txdata->tx_buf_ring) in bnx2x_alloc_fp_mem_at()
4575 txdata->tx_desc_ring = BNX2X_PCI_ALLOC(&txdata->tx_desc_mapping, in bnx2x_alloc_fp_mem_at()
4577 if (!txdata->tx_desc_ring) in bnx2x_alloc_fp_mem_at()