Lines Matching refs:txr
252 static inline u32 bnx2_tx_avail(struct bnx2 *bp, struct bnx2_tx_ring_info *txr) in bnx2_tx_avail() argument
262 diff = txr->tx_prod - txr->tx_cons; in bnx2_tx_avail()
700 struct bnx2_tx_ring_info *txr = &bnapi->tx_ring; in bnx2_free_tx_mem() local
702 if (txr->tx_desc_ring) { in bnx2_free_tx_mem()
704 txr->tx_desc_ring, in bnx2_free_tx_mem()
705 txr->tx_desc_mapping); in bnx2_free_tx_mem()
706 txr->tx_desc_ring = NULL; in bnx2_free_tx_mem()
708 kfree(txr->tx_buf_ring); in bnx2_free_tx_mem()
709 txr->tx_buf_ring = NULL; in bnx2_free_tx_mem()
752 struct bnx2_tx_ring_info *txr = &bnapi->tx_ring; in bnx2_alloc_tx_mem() local
754 txr->tx_buf_ring = kzalloc(SW_TXBD_RING_SIZE, GFP_KERNEL); in bnx2_alloc_tx_mem()
755 if (txr->tx_buf_ring == NULL) in bnx2_alloc_tx_mem()
758 txr->tx_desc_ring = in bnx2_alloc_tx_mem()
760 &txr->tx_desc_mapping, GFP_KERNEL); in bnx2_alloc_tx_mem()
761 if (txr->tx_desc_ring == NULL) in bnx2_alloc_tx_mem()
2848 struct bnx2_tx_ring_info *txr = &bnapi->tx_ring; in bnx2_tx_int() local
2858 sw_cons = txr->tx_cons; in bnx2_tx_int()
2867 tx_buf = &txr->tx_buf_ring[sw_ring_cons]; in bnx2_tx_int()
2898 tx_buf = &txr->tx_buf_ring[BNX2_TX_RING_IDX(sw_cons)]; in bnx2_tx_int()
2918 txr->hw_tx_cons = hw_cons; in bnx2_tx_int()
2919 txr->tx_cons = sw_cons; in bnx2_tx_int()
2929 (bnx2_tx_avail(bp, txr) > bp->tx_wake_thresh)) { in bnx2_tx_int()
2932 (bnx2_tx_avail(bp, txr) > bp->tx_wake_thresh)) in bnx2_tx_int()
3396 struct bnx2_tx_ring_info *txr = &bnapi->tx_ring; in bnx2_has_fast_work() local
3400 (bnx2_get_hw_tx_cons(bnapi) != txr->hw_tx_cons)) in bnx2_has_fast_work()
3490 struct bnx2_tx_ring_info *txr = &bnapi->tx_ring; in bnx2_poll_work() local
3493 if (bnx2_get_hw_tx_cons(bnapi) != txr->hw_tx_cons) in bnx2_poll_work()
5120 struct bnx2_tx_ring_info *txr; in bnx2_clear_ring_states() local
5126 txr = &bnapi->tx_ring; in bnx2_clear_ring_states()
5129 txr->tx_cons = 0; in bnx2_clear_ring_states()
5130 txr->hw_tx_cons = 0; in bnx2_clear_ring_states()
5140 bnx2_init_tx_context(struct bnx2 *bp, u32 cid, struct bnx2_tx_ring_info *txr) in bnx2_init_tx_context() argument
5162 val = (u64) txr->tx_desc_mapping >> 32; in bnx2_init_tx_context()
5165 val = (u64) txr->tx_desc_mapping & 0xffffffff; in bnx2_init_tx_context()
5175 struct bnx2_tx_ring_info *txr; in bnx2_init_tx_ring() local
5178 txr = &bnapi->tx_ring; in bnx2_init_tx_ring()
5187 txbd = &txr->tx_desc_ring[BNX2_MAX_TX_DESC_CNT]; in bnx2_init_tx_ring()
5189 txbd->tx_bd_haddr_hi = (u64) txr->tx_desc_mapping >> 32; in bnx2_init_tx_ring()
5190 txbd->tx_bd_haddr_lo = (u64) txr->tx_desc_mapping & 0xffffffff; in bnx2_init_tx_ring()
5192 txr->tx_prod = 0; in bnx2_init_tx_ring()
5193 txr->tx_prod_bseq = 0; in bnx2_init_tx_ring()
5195 txr->tx_bidx_addr = MB_GET_CID_ADDR(cid) + BNX2_L2CTX_TX_HOST_BIDX; in bnx2_init_tx_ring()
5196 txr->tx_bseq_addr = MB_GET_CID_ADDR(cid) + BNX2_L2CTX_TX_HOST_BSEQ; in bnx2_init_tx_ring()
5198 bnx2_init_tx_context(bp, cid, txr); in bnx2_init_tx_ring()
5425 struct bnx2_tx_ring_info *txr = &bnapi->tx_ring; in bnx2_free_tx_skbs() local
5428 if (txr->tx_buf_ring == NULL) in bnx2_free_tx_skbs()
5432 struct bnx2_sw_tx_bd *tx_buf = &txr->tx_buf_ring[j]; in bnx2_free_tx_skbs()
5451 tx_buf = &txr->tx_buf_ring[BNX2_TX_RING_IDX(j)]; in bnx2_free_tx_skbs()
5806 struct bnx2_tx_ring_info *txr = &bnapi->tx_ring; in bnx2_run_loopback() local
5811 txr = &tx_napi->tx_ring; in bnx2_run_loopback()
5854 txbd = &txr->tx_desc_ring[BNX2_TX_RING_IDX(txr->tx_prod)]; in bnx2_run_loopback()
5862 txr->tx_prod = BNX2_NEXT_TX_BD(txr->tx_prod); in bnx2_run_loopback()
5863 txr->tx_prod_bseq += pkt_size; in bnx2_run_loopback()
5865 BNX2_WR16(bp, txr->tx_bidx_addr, txr->tx_prod); in bnx2_run_loopback()
5866 BNX2_WR(bp, txr->tx_bseq_addr, txr->tx_prod_bseq); in bnx2_run_loopback()
5880 if (bnx2_get_hw_tx_cons(tx_napi) != txr->tx_prod) in bnx2_run_loopback()
6591 struct bnx2_tx_ring_info *txr; in bnx2_start_xmit() local
6597 txr = &bnapi->tx_ring; in bnx2_start_xmit()
6600 if (unlikely(bnx2_tx_avail(bp, txr) < in bnx2_start_xmit()
6608 prod = txr->tx_prod; in bnx2_start_xmit()
6661 tx_buf = &txr->tx_buf_ring[ring_prod]; in bnx2_start_xmit()
6665 txbd = &txr->tx_desc_ring[ring_prod]; in bnx2_start_xmit()
6681 txbd = &txr->tx_desc_ring[ring_prod]; in bnx2_start_xmit()
6688 dma_unmap_addr_set(&txr->tx_buf_ring[ring_prod], mapping, in bnx2_start_xmit()
6705 txr->tx_prod_bseq += skb->len; in bnx2_start_xmit()
6707 BNX2_WR16(bp, txr->tx_bidx_addr, prod); in bnx2_start_xmit()
6708 BNX2_WR(bp, txr->tx_bseq_addr, txr->tx_prod_bseq); in bnx2_start_xmit()
6712 txr->tx_prod = prod; in bnx2_start_xmit()
6714 if (unlikely(bnx2_tx_avail(bp, txr) <= MAX_SKB_FRAGS)) { in bnx2_start_xmit()
6723 if (bnx2_tx_avail(bp, txr) > bp->tx_wake_thresh) in bnx2_start_xmit()
6733 prod = txr->tx_prod; in bnx2_start_xmit()
6735 tx_buf = &txr->tx_buf_ring[ring_prod]; in bnx2_start_xmit()
6744 tx_buf = &txr->tx_buf_ring[ring_prod]; in bnx2_start_xmit()