rxr 170 drivers/net/ethernet/amazon/ena/ena_netdev.c struct ena_ring *txr, *rxr; rxr 177 drivers/net/ethernet/amazon/ena/ena_netdev.c rxr = &adapter->rx_ring[i]; rxr 181 drivers/net/ethernet/amazon/ena/ena_netdev.c ena_init_io_rings_common(adapter, rxr, i); rxr 192 drivers/net/ethernet/amazon/ena/ena_netdev.c rxr->ring_size = adapter->requested_rx_ring_size; rxr 193 drivers/net/ethernet/amazon/ena/ena_netdev.c rxr->rx_copybreak = adapter->rx_copybreak; rxr 194 drivers/net/ethernet/amazon/ena/ena_netdev.c rxr->sgl_size = adapter->max_rx_sgl_size; rxr 195 drivers/net/ethernet/amazon/ena/ena_netdev.c rxr->smoothed_interval = rxr 197 drivers/net/ethernet/amazon/ena/ena_netdev.c rxr->empty_rx_queue = 0; rxr 723 drivers/net/ethernet/broadcom/bnx2.c struct bnx2_rx_ring_info *rxr = &bnapi->rx_ring; rxr 727 drivers/net/ethernet/broadcom/bnx2.c if (rxr->rx_desc_ring[j]) rxr 729 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_desc_ring[j], rxr 730 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_desc_mapping[j]); rxr 731 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_desc_ring[j] = NULL; rxr 733 drivers/net/ethernet/broadcom/bnx2.c vfree(rxr->rx_buf_ring); rxr 734 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_buf_ring = NULL; rxr 737 drivers/net/ethernet/broadcom/bnx2.c if (rxr->rx_pg_desc_ring[j]) rxr 739 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_desc_ring[j], rxr 740 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_desc_mapping[j]); rxr 741 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_desc_ring[j] = NULL; rxr 743 drivers/net/ethernet/broadcom/bnx2.c vfree(rxr->rx_pg_ring); rxr 744 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_ring = NULL; rxr 777 drivers/net/ethernet/broadcom/bnx2.c struct bnx2_rx_ring_info *rxr = &bnapi->rx_ring; rxr 780 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_buf_ring = rxr 782 drivers/net/ethernet/broadcom/bnx2.c if (!rxr->rx_buf_ring) rxr 786 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_desc_ring[j] = rxr 789 drivers/net/ethernet/broadcom/bnx2.c &rxr->rx_desc_mapping[j], rxr 791 drivers/net/ethernet/broadcom/bnx2.c if (!rxr->rx_desc_ring[j]) rxr 797 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_ring = rxr 800 drivers/net/ethernet/broadcom/bnx2.c if (!rxr->rx_pg_ring) rxr 806 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_desc_ring[j] = rxr 809 drivers/net/ethernet/broadcom/bnx2.c &rxr->rx_pg_desc_mapping[j], rxr 811 drivers/net/ethernet/broadcom/bnx2.c if (!rxr->rx_pg_desc_ring[j]) rxr 2728 drivers/net/ethernet/broadcom/bnx2.c bnx2_alloc_rx_page(struct bnx2 *bp, struct bnx2_rx_ring_info *rxr, u16 index, gfp_t gfp) rxr 2731 drivers/net/ethernet/broadcom/bnx2.c struct bnx2_sw_pg *rx_pg = &rxr->rx_pg_ring[index]; rxr 2733 drivers/net/ethernet/broadcom/bnx2.c &rxr->rx_pg_desc_ring[BNX2_RX_RING(index)][BNX2_RX_IDX(index)]; rxr 2753 drivers/net/ethernet/broadcom/bnx2.c bnx2_free_rx_page(struct bnx2 *bp, struct bnx2_rx_ring_info *rxr, u16 index) rxr 2755 drivers/net/ethernet/broadcom/bnx2.c struct bnx2_sw_pg *rx_pg = &rxr->rx_pg_ring[index]; rxr 2769 drivers/net/ethernet/broadcom/bnx2.c bnx2_alloc_rx_data(struct bnx2 *bp, struct bnx2_rx_ring_info *rxr, u16 index, gfp_t gfp) rxr 2772 drivers/net/ethernet/broadcom/bnx2.c struct bnx2_sw_bd *rx_buf = &rxr->rx_buf_ring[index]; rxr 2775 drivers/net/ethernet/broadcom/bnx2.c &rxr->rx_desc_ring[BNX2_RX_RING(index)][BNX2_RX_IDX(index)]; rxr 2796 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_prod_bseq += bp->rx_buf_use_size; rxr 2943 drivers/net/ethernet/broadcom/bnx2.c bnx2_reuse_rx_skb_pages(struct bnx2 *bp, struct bnx2_rx_ring_info *rxr, rxr 2950 drivers/net/ethernet/broadcom/bnx2.c u16 cons = rxr->rx_pg_cons; rxr 2952 drivers/net/ethernet/broadcom/bnx2.c cons_rx_pg = &rxr->rx_pg_ring[cons]; rxr 2971 drivers/net/ethernet/broadcom/bnx2.c hw_prod = rxr->rx_pg_prod; rxr 2976 drivers/net/ethernet/broadcom/bnx2.c prod_rx_pg = &rxr->rx_pg_ring[prod]; rxr 2977 drivers/net/ethernet/broadcom/bnx2.c cons_rx_pg = &rxr->rx_pg_ring[cons]; rxr 2978 drivers/net/ethernet/broadcom/bnx2.c cons_bd = &rxr->rx_pg_desc_ring[BNX2_RX_RING(cons)] rxr 2980 drivers/net/ethernet/broadcom/bnx2.c prod_bd = &rxr->rx_pg_desc_ring[BNX2_RX_RING(prod)] rxr 2996 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_prod = hw_prod; rxr 2997 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_cons = cons; rxr 3001 drivers/net/ethernet/broadcom/bnx2.c bnx2_reuse_rx_data(struct bnx2 *bp, struct bnx2_rx_ring_info *rxr, rxr 3007 drivers/net/ethernet/broadcom/bnx2.c cons_rx_buf = &rxr->rx_buf_ring[cons]; rxr 3008 drivers/net/ethernet/broadcom/bnx2.c prod_rx_buf = &rxr->rx_buf_ring[prod]; rxr 3014 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_prod_bseq += bp->rx_buf_use_size; rxr 3024 drivers/net/ethernet/broadcom/bnx2.c cons_bd = &rxr->rx_desc_ring[BNX2_RX_RING(cons)][BNX2_RX_IDX(cons)]; rxr 3025 drivers/net/ethernet/broadcom/bnx2.c prod_bd = &rxr->rx_desc_ring[BNX2_RX_RING(prod)][BNX2_RX_IDX(prod)]; rxr 3031 drivers/net/ethernet/broadcom/bnx2.c bnx2_rx_skb(struct bnx2 *bp, struct bnx2_rx_ring_info *rxr, u8 *data, rxr 3039 drivers/net/ethernet/broadcom/bnx2.c err = bnx2_alloc_rx_data(bp, rxr, prod, GFP_ATOMIC); rxr 3041 drivers/net/ethernet/broadcom/bnx2.c bnx2_reuse_rx_data(bp, rxr, data, (u16) (ring_idx >> 16), prod); rxr 3047 drivers/net/ethernet/broadcom/bnx2.c bnx2_reuse_rx_skb_pages(bp, rxr, NULL, pages); rxr 3066 drivers/net/ethernet/broadcom/bnx2.c u16 pg_cons = rxr->rx_pg_cons; rxr 3067 drivers/net/ethernet/broadcom/bnx2.c u16 pg_prod = rxr->rx_pg_prod; rxr 3080 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_cons = pg_cons; rxr 3081 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_prod = pg_prod; rxr 3082 drivers/net/ethernet/broadcom/bnx2.c bnx2_reuse_rx_skb_pages(bp, rxr, NULL, rxr 3095 drivers/net/ethernet/broadcom/bnx2.c rx_pg = &rxr->rx_pg_ring[pg_cons]; rxr 3107 drivers/net/ethernet/broadcom/bnx2.c err = bnx2_alloc_rx_page(bp, rxr, rxr 3111 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_cons = pg_cons; rxr 3112 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_prod = pg_prod; rxr 3113 drivers/net/ethernet/broadcom/bnx2.c bnx2_reuse_rx_skb_pages(bp, rxr, skb, rxr 3129 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_prod = pg_prod; rxr 3130 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_cons = pg_cons; rxr 3150 drivers/net/ethernet/broadcom/bnx2.c struct bnx2_rx_ring_info *rxr = &bnapi->rx_ring; rxr 3159 drivers/net/ethernet/broadcom/bnx2.c sw_cons = rxr->rx_cons; rxr 3160 drivers/net/ethernet/broadcom/bnx2.c sw_prod = rxr->rx_prod; rxr 3178 drivers/net/ethernet/broadcom/bnx2.c rx_buf = &rxr->rx_buf_ring[sw_ring_cons]; rxr 3192 drivers/net/ethernet/broadcom/bnx2.c next_rx_buf = &rxr->rx_buf_ring[next_ring_idx]; rxr 3213 drivers/net/ethernet/broadcom/bnx2.c bnx2_reuse_rx_data(bp, rxr, data, sw_ring_cons, rxr 3220 drivers/net/ethernet/broadcom/bnx2.c bnx2_reuse_rx_skb_pages(bp, rxr, NULL, pages); rxr 3230 drivers/net/ethernet/broadcom/bnx2.c bnx2_reuse_rx_data(bp, rxr, data, sw_ring_cons, rxr 3242 drivers/net/ethernet/broadcom/bnx2.c bnx2_reuse_rx_data(bp, rxr, data, rxr 3246 drivers/net/ethernet/broadcom/bnx2.c skb = bnx2_rx_skb(bp, rxr, data, len, hdr_len, dma_addr, rxr 3298 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_cons = sw_cons; rxr 3299 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_prod = sw_prod; rxr 3302 drivers/net/ethernet/broadcom/bnx2.c BNX2_WR16(bp, rxr->rx_pg_bidx_addr, rxr->rx_pg_prod); rxr 3304 drivers/net/ethernet/broadcom/bnx2.c BNX2_WR16(bp, rxr->rx_bidx_addr, sw_prod); rxr 3306 drivers/net/ethernet/broadcom/bnx2.c BNX2_WR(bp, rxr->rx_bseq_addr, rxr->rx_prod_bseq); rxr 3395 drivers/net/ethernet/broadcom/bnx2.c struct bnx2_rx_ring_info *rxr = &bnapi->rx_ring; rxr 3397 drivers/net/ethernet/broadcom/bnx2.c if ((bnx2_get_hw_rx_cons(bnapi) != rxr->rx_cons) || rxr 3489 drivers/net/ethernet/broadcom/bnx2.c struct bnx2_rx_ring_info *rxr = &bnapi->rx_ring; rxr 3494 drivers/net/ethernet/broadcom/bnx2.c if (bnx2_get_hw_rx_cons(bnapi) != rxr->rx_cons) rxr 5135 drivers/net/ethernet/broadcom/bnx2.c struct bnx2_rx_ring_info *rxr; rxr 5141 drivers/net/ethernet/broadcom/bnx2.c rxr = &bnapi->rx_ring; rxr 5145 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_prod_bseq = 0; rxr 5146 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_prod = 0; rxr 5147 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_cons = 0; rxr 5148 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_prod = 0; rxr 5149 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_cons = 0; rxr 5246 drivers/net/ethernet/broadcom/bnx2.c struct bnx2_rx_ring_info *rxr = &bnapi->rx_ring; rxr 5255 drivers/net/ethernet/broadcom/bnx2.c bnx2_init_rxbd_rings(rxr->rx_desc_ring, rxr->rx_desc_mapping, rxr 5267 drivers/net/ethernet/broadcom/bnx2.c bnx2_init_rxbd_rings(rxr->rx_pg_desc_ring, rxr 5268 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_desc_mapping, rxr 5275 drivers/net/ethernet/broadcom/bnx2.c val = (u64) rxr->rx_pg_desc_mapping[0] >> 32; rxr 5278 drivers/net/ethernet/broadcom/bnx2.c val = (u64) rxr->rx_pg_desc_mapping[0] & 0xffffffff; rxr 5285 drivers/net/ethernet/broadcom/bnx2.c val = (u64) rxr->rx_desc_mapping[0] >> 32; rxr 5288 drivers/net/ethernet/broadcom/bnx2.c val = (u64) rxr->rx_desc_mapping[0] & 0xffffffff; rxr 5291 drivers/net/ethernet/broadcom/bnx2.c ring_prod = prod = rxr->rx_pg_prod; rxr 5293 drivers/net/ethernet/broadcom/bnx2.c if (bnx2_alloc_rx_page(bp, rxr, ring_prod, GFP_KERNEL) < 0) { rxr 5301 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_prod = prod; rxr 5303 drivers/net/ethernet/broadcom/bnx2.c ring_prod = prod = rxr->rx_prod; rxr 5305 drivers/net/ethernet/broadcom/bnx2.c if (bnx2_alloc_rx_data(bp, rxr, ring_prod, GFP_KERNEL) < 0) { rxr 5313 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_prod = prod; rxr 5315 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_bidx_addr = MB_GET_CID_ADDR(cid) + BNX2_L2CTX_HOST_BDIDX; rxr 5316 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_bseq_addr = MB_GET_CID_ADDR(cid) + BNX2_L2CTX_HOST_BSEQ; rxr 5317 drivers/net/ethernet/broadcom/bnx2.c rxr->rx_pg_bidx_addr = MB_GET_CID_ADDR(cid) + BNX2_L2CTX_HOST_PG_BDIDX; rxr 5319 drivers/net/ethernet/broadcom/bnx2.c BNX2_WR16(bp, rxr->rx_pg_bidx_addr, rxr->rx_pg_prod); rxr 5320 drivers/net/ethernet/broadcom/bnx2.c BNX2_WR16(bp, rxr->rx_bidx_addr, prod); rxr 5322 drivers/net/ethernet/broadcom/bnx2.c BNX2_WR(bp, rxr->rx_bseq_addr, rxr->rx_prod_bseq); rxr 5484 drivers/net/ethernet/broadcom/bnx2.c struct bnx2_rx_ring_info *rxr = &bnapi->rx_ring; rxr 5487 drivers/net/ethernet/broadcom/bnx2.c if (!rxr->rx_buf_ring) rxr 5491 drivers/net/ethernet/broadcom/bnx2.c struct bnx2_sw_bd *rx_buf = &rxr->rx_buf_ring[j]; rxr 5507 drivers/net/ethernet/broadcom/bnx2.c bnx2_free_rx_page(bp, rxr, j); rxr 5821 drivers/net/ethernet/broadcom/bnx2.c struct bnx2_rx_ring_info *rxr; rxr 5826 drivers/net/ethernet/broadcom/bnx2.c rxr = &bnapi->rx_ring; rxr 5902 drivers/net/ethernet/broadcom/bnx2.c rx_buf = &rxr->rx_buf_ring[rx_start_idx]; rxr 686 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr, rxr 692 drivers/net/ethernet/broadcom/bnxt/bnxt.c page = page_pool_dev_alloc_pages(rxr->page_pool); rxr 699 drivers/net/ethernet/broadcom/bnxt/bnxt.c page_pool_recycle_direct(rxr->page_pool, page); rxr 727 drivers/net/ethernet/broadcom/bnxt/bnxt.c int bnxt_alloc_rx_data(struct bnxt *bp, struct bnxt_rx_ring_info *rxr, rxr 730 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct rx_bd *rxbd = &rxr->rx_desc_ring[RX_RING(prod)][RX_IDX(prod)]; rxr 731 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_sw_rx_bd *rx_buf = &rxr->rx_buf_ring[prod]; rxr 736 drivers/net/ethernet/broadcom/bnxt/bnxt.c __bnxt_alloc_rx_page(bp, &mapping, rxr, gfp); rxr 758 drivers/net/ethernet/broadcom/bnxt/bnxt.c void bnxt_reuse_rx_data(struct bnxt_rx_ring_info *rxr, u16 cons, void *data) rxr 760 drivers/net/ethernet/broadcom/bnxt/bnxt.c u16 prod = rxr->rx_prod; rxr 764 drivers/net/ethernet/broadcom/bnxt/bnxt.c prod_rx_buf = &rxr->rx_buf_ring[prod]; rxr 765 drivers/net/ethernet/broadcom/bnxt/bnxt.c cons_rx_buf = &rxr->rx_buf_ring[cons]; rxr 772 drivers/net/ethernet/broadcom/bnxt/bnxt.c prod_bd = &rxr->rx_desc_ring[RX_RING(prod)][RX_IDX(prod)]; rxr 773 drivers/net/ethernet/broadcom/bnxt/bnxt.c cons_bd = &rxr->rx_desc_ring[RX_RING(cons)][RX_IDX(cons)]; rxr 778 drivers/net/ethernet/broadcom/bnxt/bnxt.c static inline u16 bnxt_find_next_agg_idx(struct bnxt_rx_ring_info *rxr, u16 idx) rxr 780 drivers/net/ethernet/broadcom/bnxt/bnxt.c u16 next, max = rxr->rx_agg_bmap_size; rxr 782 drivers/net/ethernet/broadcom/bnxt/bnxt.c next = find_next_zero_bit(rxr->rx_agg_bmap, max, idx); rxr 784 drivers/net/ethernet/broadcom/bnxt/bnxt.c next = find_first_zero_bit(rxr->rx_agg_bmap, max); rxr 789 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr, rxr 793 drivers/net/ethernet/broadcom/bnxt/bnxt.c &rxr->rx_agg_desc_ring[RX_RING(prod)][RX_IDX(prod)]; rxr 798 drivers/net/ethernet/broadcom/bnxt/bnxt.c u16 sw_prod = rxr->rx_sw_agg_prod; rxr 802 drivers/net/ethernet/broadcom/bnxt/bnxt.c page = rxr->rx_page; rxr 807 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_page = page; rxr 808 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_page_offset = 0; rxr 810 drivers/net/ethernet/broadcom/bnxt/bnxt.c offset = rxr->rx_page_offset; rxr 811 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_page_offset += BNXT_RX_PAGE_SIZE; rxr 812 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (rxr->rx_page_offset == PAGE_SIZE) rxr 813 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_page = NULL; rxr 830 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (unlikely(test_bit(sw_prod, rxr->rx_agg_bmap))) rxr 831 drivers/net/ethernet/broadcom/bnxt/bnxt.c sw_prod = bnxt_find_next_agg_idx(rxr, sw_prod); rxr 833 drivers/net/ethernet/broadcom/bnxt/bnxt.c __set_bit(sw_prod, rxr->rx_agg_bmap); rxr 834 drivers/net/ethernet/broadcom/bnxt/bnxt.c rx_agg_buf = &rxr->rx_agg_ring[sw_prod]; rxr 835 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_sw_agg_prod = NEXT_RX_AGG(sw_prod); rxr 858 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr, rxr 861 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_tpa_info *tpa_info = &rxr->rx_tpa[agg_id]; rxr 871 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = bnapi->rx_ring; rxr 872 drivers/net/ethernet/broadcom/bnxt/bnxt.c u16 prod = rxr->rx_agg_prod; rxr 873 drivers/net/ethernet/broadcom/bnxt/bnxt.c u16 sw_prod = rxr->rx_sw_agg_prod; rxr 888 drivers/net/ethernet/broadcom/bnxt/bnxt.c agg = bnxt_get_tpa_agg_p5(bp, rxr, idx, start + i); rxr 892 drivers/net/ethernet/broadcom/bnxt/bnxt.c __clear_bit(cons, rxr->rx_agg_bmap); rxr 894 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (unlikely(test_bit(sw_prod, rxr->rx_agg_bmap))) rxr 895 drivers/net/ethernet/broadcom/bnxt/bnxt.c sw_prod = bnxt_find_next_agg_idx(rxr, sw_prod); rxr 897 drivers/net/ethernet/broadcom/bnxt/bnxt.c __set_bit(sw_prod, rxr->rx_agg_bmap); rxr 898 drivers/net/ethernet/broadcom/bnxt/bnxt.c prod_rx_buf = &rxr->rx_agg_ring[sw_prod]; rxr 899 drivers/net/ethernet/broadcom/bnxt/bnxt.c cons_rx_buf = &rxr->rx_agg_ring[cons]; rxr 911 drivers/net/ethernet/broadcom/bnxt/bnxt.c prod_bd = &rxr->rx_agg_desc_ring[RX_RING(prod)][RX_IDX(prod)]; rxr 919 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_agg_prod = prod; rxr 920 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_sw_agg_prod = sw_prod; rxr 924 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr, rxr 933 drivers/net/ethernet/broadcom/bnxt/bnxt.c u16 prod = rxr->rx_prod; rxr 937 drivers/net/ethernet/broadcom/bnxt/bnxt.c err = bnxt_alloc_rx_data(bp, rxr, prod, GFP_ATOMIC); rxr 939 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_reuse_rx_data(rxr, cons, data); rxr 945 drivers/net/ethernet/broadcom/bnxt/bnxt.c page_pool_release_page(rxr->page_pool, page); rxr 950 drivers/net/ethernet/broadcom/bnxt/bnxt.c skb = napi_alloc_skb(&rxr->bnapi->napi, payload); rxr 971 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr, u16 cons, rxr 976 drivers/net/ethernet/broadcom/bnxt/bnxt.c u16 prod = rxr->rx_prod; rxr 980 drivers/net/ethernet/broadcom/bnxt/bnxt.c err = bnxt_alloc_rx_data(bp, rxr, prod, GFP_ATOMIC); rxr 982 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_reuse_rx_data(rxr, cons, data); rxr 1006 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = bnapi->rx_ring; rxr 1007 drivers/net/ethernet/broadcom/bnxt/bnxt.c u16 prod = rxr->rx_agg_prod; rxr 1022 drivers/net/ethernet/broadcom/bnxt/bnxt.c agg = bnxt_get_tpa_agg_p5(bp, rxr, idx, i); rxr 1029 drivers/net/ethernet/broadcom/bnxt/bnxt.c cons_rx_buf = &rxr->rx_agg_ring[cons]; rxr 1032 drivers/net/ethernet/broadcom/bnxt/bnxt.c __clear_bit(cons, rxr->rx_agg_bmap); rxr 1042 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (bnxt_alloc_rx_page(bp, rxr, prod, GFP_ATOMIC) != 0) { rxr 1057 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_agg_prod = prod; rxr 1072 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_agg_prod = prod; rxr 1168 drivers/net/ethernet/broadcom/bnxt/bnxt.c static void bnxt_sched_reset(struct bnxt *bp, struct bnxt_rx_ring_info *rxr) rxr 1170 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (!rxr->bnapi->in_reset) { rxr 1171 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->bnapi->in_reset = true; rxr 1175 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_next_cons = 0xffff; rxr 1178 drivers/net/ethernet/broadcom/bnxt/bnxt.c static u16 bnxt_alloc_agg_idx(struct bnxt_rx_ring_info *rxr, u16 agg_id) rxr 1180 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_tpa_idx_map *map = rxr->rx_tpa_idx_map; rxr 1191 drivers/net/ethernet/broadcom/bnxt/bnxt.c static void bnxt_free_agg_idx(struct bnxt_rx_ring_info *rxr, u16 idx) rxr 1193 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_tpa_idx_map *map = rxr->rx_tpa_idx_map; rxr 1198 drivers/net/ethernet/broadcom/bnxt/bnxt.c static u16 bnxt_lookup_agg_idx(struct bnxt_rx_ring_info *rxr, u16 agg_id) rxr 1200 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_tpa_idx_map *map = rxr->rx_tpa_idx_map; rxr 1205 drivers/net/ethernet/broadcom/bnxt/bnxt.c static void bnxt_tpa_start(struct bnxt *bp, struct bnxt_rx_ring_info *rxr, rxr 1217 drivers/net/ethernet/broadcom/bnxt/bnxt.c agg_id = bnxt_alloc_agg_idx(rxr, agg_id); rxr 1222 drivers/net/ethernet/broadcom/bnxt/bnxt.c prod = rxr->rx_prod; rxr 1223 drivers/net/ethernet/broadcom/bnxt/bnxt.c cons_rx_buf = &rxr->rx_buf_ring[cons]; rxr 1224 drivers/net/ethernet/broadcom/bnxt/bnxt.c prod_rx_buf = &rxr->rx_buf_ring[prod]; rxr 1225 drivers/net/ethernet/broadcom/bnxt/bnxt.c tpa_info = &rxr->rx_tpa[agg_id]; rxr 1227 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (unlikely(cons != rxr->rx_next_cons || rxr 1230 drivers/net/ethernet/broadcom/bnxt/bnxt.c cons, rxr->rx_next_cons, rxr 1232 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_sched_reset(bp, rxr); rxr 1245 drivers/net/ethernet/broadcom/bnxt/bnxt.c prod_bd = &rxr->rx_desc_ring[RX_RING(prod)][RX_IDX(prod)]; rxr 1278 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_prod = NEXT_RX(prod); rxr 1280 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_next_cons = NEXT_RX(cons); rxr 1281 drivers/net/ethernet/broadcom/bnxt/bnxt.c cons_rx_buf = &rxr->rx_buf_ring[cons]; rxr 1283 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_reuse_rx_data(rxr, cons, cons_rx_buf->data); rxr 1284 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_prod = NEXT_RX(rxr->rx_prod); rxr 1509 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = bnapi->rx_ring; rxr 1529 drivers/net/ethernet/broadcom/bnxt/bnxt.c agg_id = bnxt_lookup_agg_idx(rxr, agg_id); rxr 1531 drivers/net/ethernet/broadcom/bnxt/bnxt.c tpa_info = &rxr->rx_tpa[agg_id]; rxr 1539 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_free_agg_idx(rxr, agg_id); rxr 1545 drivers/net/ethernet/broadcom/bnxt/bnxt.c tpa_info = &rxr->rx_tpa[agg_id]; rxr 1640 drivers/net/ethernet/broadcom/bnxt/bnxt.c static void bnxt_tpa_agg(struct bnxt *bp, struct bnxt_rx_ring_info *rxr, rxr 1646 drivers/net/ethernet/broadcom/bnxt/bnxt.c agg_id = bnxt_lookup_agg_idx(rxr, agg_id); rxr 1647 drivers/net/ethernet/broadcom/bnxt/bnxt.c tpa_info = &rxr->rx_tpa[agg_id]; rxr 1675 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = bnapi->rx_ring; rxr 1696 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_tpa_agg(bp, rxr, (struct rx_agg_cmp *)rxcmp); rxr 1708 drivers/net/ethernet/broadcom/bnxt/bnxt.c prod = rxr->rx_prod; rxr 1711 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_tpa_start(bp, rxr, (struct rx_tpa_start_cmp *)rxcmp, rxr 1735 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (unlikely(cons != rxr->rx_next_cons)) { rxr 1739 drivers/net/ethernet/broadcom/bnxt/bnxt.c cons, rxr->rx_next_cons); rxr 1740 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_sched_reset(bp, rxr); rxr 1743 drivers/net/ethernet/broadcom/bnxt/bnxt.c rx_buf = &rxr->rx_buf_ring[cons]; rxr 1764 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_reuse_rx_data(rxr, cons, data); rxr 1775 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_sched_reset(bp, rxr); rxr 1784 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (bnxt_rx_xdp(bp, rxr, cons, data, &data_ptr, &len, event)) { rxr 1791 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_reuse_rx_data(rxr, cons, data); rxr 1806 drivers/net/ethernet/broadcom/bnxt/bnxt.c skb = bp->rx_skb_func(bp, rxr, cons, data, data_ptr, dma_addr, rxr 1866 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_prod = NEXT_RX(prod); rxr 1867 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_next_cons = NEXT_RX(cons); rxr 2247 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = bnapi->rx_ring; rxr 2250 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_db_write(bp, &rxr->rx_agg_db, rxr->rx_agg_prod); rxr 2251 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_db_write(bp, &rxr->rx_db, rxr->rx_prod); rxr 2279 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = bnapi->rx_ring; rxr 2329 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_db_write(bp, &rxr->rx_db, rxr->rx_prod); rxr 2332 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_db_write(bp, &rxr->rx_agg_db, rxr->rx_agg_prod); rxr 2552 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; rxr 2556 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (rxr->rx_tpa) { rxr 2559 drivers/net/ethernet/broadcom/bnxt/bnxt.c &rxr->rx_tpa[j]; rxr 2578 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_sw_rx_bd *rx_buf = &rxr->rx_buf_ring[j]; rxr 2592 drivers/net/ethernet/broadcom/bnxt/bnxt.c page_pool_recycle_direct(rxr->page_pool, data); rxr 2604 drivers/net/ethernet/broadcom/bnxt/bnxt.c &rxr->rx_agg_ring[j]; rxr 2616 drivers/net/ethernet/broadcom/bnxt/bnxt.c __clear_bit(j, rxr->rx_agg_bmap); rxr 2620 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (rxr->rx_page) { rxr 2621 drivers/net/ethernet/broadcom/bnxt/bnxt.c __free_page(rxr->rx_page); rxr 2622 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_page = NULL; rxr 2624 drivers/net/ethernet/broadcom/bnxt/bnxt.c map = rxr->rx_tpa_idx_map; rxr 2720 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; rxr 2722 drivers/net/ethernet/broadcom/bnxt/bnxt.c kfree(rxr->rx_tpa_idx_map); rxr 2723 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_tpa_idx_map = NULL; rxr 2724 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (rxr->rx_tpa) { rxr 2725 drivers/net/ethernet/broadcom/bnxt/bnxt.c kfree(rxr->rx_tpa[0].agg_arr); rxr 2726 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_tpa[0].agg_arr = NULL; rxr 2728 drivers/net/ethernet/broadcom/bnxt/bnxt.c kfree(rxr->rx_tpa); rxr 2729 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_tpa = NULL; rxr 2746 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; rxr 2749 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_tpa = kcalloc(bp->max_tpa, sizeof(struct bnxt_tpa_info), rxr 2751 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (!rxr->rx_tpa) rxr 2757 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_tpa[0].agg_arr = agg; rxr 2761 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_tpa[j].agg_arr = agg + j * MAX_SKB_FRAGS; rxr 2762 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_tpa_idx_map = kzalloc(sizeof(*rxr->rx_tpa_idx_map), rxr 2764 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (!rxr->rx_tpa_idx_map) rxr 2779 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; rxr 2782 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (rxr->xdp_prog) rxr 2783 drivers/net/ethernet/broadcom/bnxt/bnxt.c bpf_prog_put(rxr->xdp_prog); rxr 2785 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (xdp_rxq_info_is_reg(&rxr->xdp_rxq)) rxr 2786 drivers/net/ethernet/broadcom/bnxt/bnxt.c xdp_rxq_info_unreg(&rxr->xdp_rxq); rxr 2788 drivers/net/ethernet/broadcom/bnxt/bnxt.c page_pool_destroy(rxr->page_pool); rxr 2789 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->page_pool = NULL; rxr 2791 drivers/net/ethernet/broadcom/bnxt/bnxt.c kfree(rxr->rx_agg_bmap); rxr 2792 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_agg_bmap = NULL; rxr 2794 drivers/net/ethernet/broadcom/bnxt/bnxt.c ring = &rxr->rx_ring_struct; rxr 2797 drivers/net/ethernet/broadcom/bnxt/bnxt.c ring = &rxr->rx_agg_ring_struct; rxr 2803 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr) rxr 2812 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->page_pool = page_pool_create(&pp); rxr 2813 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (IS_ERR(rxr->page_pool)) { rxr 2814 drivers/net/ethernet/broadcom/bnxt/bnxt.c int err = PTR_ERR(rxr->page_pool); rxr 2816 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->page_pool = NULL; rxr 2833 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; rxr 2836 drivers/net/ethernet/broadcom/bnxt/bnxt.c ring = &rxr->rx_ring_struct; rxr 2838 drivers/net/ethernet/broadcom/bnxt/bnxt.c rc = bnxt_alloc_rx_page_pool(bp, rxr); rxr 2842 drivers/net/ethernet/broadcom/bnxt/bnxt.c rc = xdp_rxq_info_reg(&rxr->xdp_rxq, bp->dev, i); rxr 2846 drivers/net/ethernet/broadcom/bnxt/bnxt.c rc = xdp_rxq_info_reg_mem_model(&rxr->xdp_rxq, rxr 2848 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->page_pool); rxr 2850 drivers/net/ethernet/broadcom/bnxt/bnxt.c xdp_rxq_info_unreg(&rxr->xdp_rxq); rxr 2862 drivers/net/ethernet/broadcom/bnxt/bnxt.c ring = &rxr->rx_agg_ring_struct; rxr 2868 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_agg_bmap_size = bp->rx_agg_ring_mask + 1; rxr 2869 drivers/net/ethernet/broadcom/bnxt/bnxt.c mem_size = rxr->rx_agg_bmap_size / 8; rxr 2870 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_agg_bmap = kzalloc(mem_size, GFP_KERNEL); rxr 2871 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (!rxr->rx_agg_bmap) rxr 3087 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr; rxr 3103 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr = bnapi->rx_ring; rxr 3104 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (!rxr) rxr 3107 drivers/net/ethernet/broadcom/bnxt/bnxt.c ring = &rxr->rx_ring_struct; rxr 3111 drivers/net/ethernet/broadcom/bnxt/bnxt.c rmem->pg_arr = (void **)rxr->rx_desc_ring; rxr 3112 drivers/net/ethernet/broadcom/bnxt/bnxt.c rmem->dma_arr = rxr->rx_desc_mapping; rxr 3114 drivers/net/ethernet/broadcom/bnxt/bnxt.c rmem->vmem = (void **)&rxr->rx_buf_ring; rxr 3116 drivers/net/ethernet/broadcom/bnxt/bnxt.c ring = &rxr->rx_agg_ring_struct; rxr 3120 drivers/net/ethernet/broadcom/bnxt/bnxt.c rmem->pg_arr = (void **)rxr->rx_agg_desc_ring; rxr 3121 drivers/net/ethernet/broadcom/bnxt/bnxt.c rmem->dma_arr = rxr->rx_agg_desc_mapping; rxr 3123 drivers/net/ethernet/broadcom/bnxt/bnxt.c rmem->vmem = (void **)&rxr->rx_agg_ring; rxr 3166 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr; rxr 3177 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr = &bp->rx_ring[ring_nr]; rxr 3178 drivers/net/ethernet/broadcom/bnxt/bnxt.c ring = &rxr->rx_ring_struct; rxr 3182 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->xdp_prog = bpf_prog_add(bp->xdp_prog, 1); rxr 3183 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (IS_ERR(rxr->xdp_prog)) { rxr 3184 drivers/net/ethernet/broadcom/bnxt/bnxt.c int rc = PTR_ERR(rxr->xdp_prog); rxr 3186 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->xdp_prog = NULL; rxr 3190 drivers/net/ethernet/broadcom/bnxt/bnxt.c prod = rxr->rx_prod; rxr 3192 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (bnxt_alloc_rx_data(bp, rxr, prod, GFP_KERNEL) != 0) { rxr 3199 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_prod = prod; rxr 3202 drivers/net/ethernet/broadcom/bnxt/bnxt.c ring = &rxr->rx_agg_ring_struct; rxr 3213 drivers/net/ethernet/broadcom/bnxt/bnxt.c prod = rxr->rx_agg_prod; rxr 3215 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (bnxt_alloc_rx_page(bp, rxr, prod, GFP_KERNEL) != 0) { rxr 3222 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_agg_prod = prod; rxr 3225 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (rxr->rx_tpa) { rxr 3235 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_tpa[i].data = data; rxr 3236 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_tpa[i].data_ptr = data + bp->rx_offset; rxr 3237 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_tpa[i].mapping = mapping; rxr 3859 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr; rxr 3874 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr = bnapi->rx_ring; rxr 3875 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (rxr) { rxr 3876 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_prod = 0; rxr 3877 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_agg_prod = 0; rxr 3878 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_sw_agg_prod = 0; rxr 3879 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_next_cons = 0; rxr 3998 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; rxr 4001 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_ring_struct.ring_mem.flags = rxr 4003 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_agg_ring_struct.ring_mem.flags = rxr 4006 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->bnapi = bp->bnapi[i]; rxr 4805 drivers/net/ethernet/broadcom/bnxt/bnxt.c static u16 bnxt_cp_ring_for_rx(struct bnxt *bp, struct bnxt_rx_ring_info *rxr) rxr 4808 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_napi *bnapi = rxr->bnapi; rxr 4814 drivers/net/ethernet/broadcom/bnxt/bnxt.c return bnxt_cp_ring_from_grp(bp, &rxr->rx_ring_struct); rxr 4873 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = &bp->rx_ring[0]; rxr 4896 drivers/net/ethernet/broadcom/bnxt/bnxt.c ring_id = rxr->rx_ring_struct.fw_ring_id; rxr 4898 drivers/net/ethernet/broadcom/bnxt/bnxt.c ring_id = bnxt_cp_ring_for_rx(bp, rxr); rxr 4900 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr++; rxr 4904 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr = &bp->rx_ring[0]; rxr 4998 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = &bp->rx_ring[0]; rxr 5001 drivers/net/ethernet/broadcom/bnxt/bnxt.c cpu_to_le16(rxr->rx_ring_struct.fw_ring_id); rxr 5003 drivers/net/ethernet/broadcom/bnxt/bnxt.c cpu_to_le16(bnxt_cp_ring_for_rx(bp, rxr)); rxr 5466 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; rxr 5467 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_ring_struct *ring = &rxr->rx_ring_struct; rxr 5468 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_napi *bnapi = rxr->bnapi; rxr 5474 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_set_db(bp, &rxr->rx_db, type, map_idx, ring->fw_ring_id); rxr 5477 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_db_write(bp, &rxr->rx_db, rxr->rx_prod); rxr 5499 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; rxr 5501 drivers/net/ethernet/broadcom/bnxt/bnxt.c &rxr->rx_agg_ring_struct; rxr 5509 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_set_db(bp, &rxr->rx_agg_db, type, map_idx, rxr 5511 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_db_write(bp, &rxr->rx_agg_db, rxr->rx_agg_prod); rxr 5512 drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_db_write(bp, &rxr->rx_db, rxr->rx_prod); rxr 5573 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; rxr 5574 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_ring_struct *ring = &rxr->rx_ring_struct; rxr 5575 drivers/net/ethernet/broadcom/bnxt/bnxt.c u32 grp_idx = rxr->bnapi->index; rxr 5578 drivers/net/ethernet/broadcom/bnxt/bnxt.c u32 cmpl_ring_id = bnxt_cp_ring_for_rx(bp, rxr); rxr 5595 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; rxr 5596 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_ring_struct *ring = &rxr->rx_agg_ring_struct; rxr 5597 drivers/net/ethernet/broadcom/bnxt/bnxt.c u32 grp_idx = rxr->bnapi->index; rxr 5600 drivers/net/ethernet/broadcom/bnxt/bnxt.c u32 cmpl_ring_id = bnxt_cp_ring_for_rx(bp, rxr); rxr 9898 drivers/net/ethernet/broadcom/bnxt/bnxt.c struct bnxt_rx_ring_info *rxr = bnapi->rx_ring; rxr 9901 drivers/net/ethernet/broadcom/bnxt/bnxt.c if (!rxr) rxr 9905 drivers/net/ethernet/broadcom/bnxt/bnxt.c i, rxr->rx_ring_struct.fw_ring_id, rxr->rx_prod, rxr 9906 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_agg_ring_struct.fw_ring_id, rxr->rx_agg_prod, rxr 9907 drivers/net/ethernet/broadcom/bnxt/bnxt.c rxr->rx_sw_agg_prod); rxr 1959 drivers/net/ethernet/broadcom/bnxt/bnxt.h int bnxt_alloc_rx_data(struct bnxt *bp, struct bnxt_rx_ring_info *rxr, rxr 1961 drivers/net/ethernet/broadcom/bnxt/bnxt.h void bnxt_reuse_rx_data(struct bnxt_rx_ring_info *rxr, u16 cons, void *data); rxr 2748 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c struct bnxt_rx_ring_info *rxr; rxr 2756 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c rxr = bnapi->rx_ring; rxr 2761 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c rx_buf = &rxr->rx_buf_ring[cons]; rxr 2815 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c struct bnxt_rx_ring_info *rxr = &bp->rx_ring[0]; rxr 2823 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c cpr = &rxr->bnapi->cp_ring; rxr 74 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c struct bnxt_rx_ring_info *rxr = bnapi->rx_ring; rxr 103 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c bnxt_db_write(bp, &rxr->rx_db, tx_buf->rx_prod); rxr 111 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c bool bnxt_rx_xdp(struct bnxt *bp, struct bnxt_rx_ring_info *rxr, u16 cons, rxr 114 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c struct bpf_prog *xdp_prog = READ_ONCE(rxr->xdp_prog); rxr 129 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c rx_buf = &rxr->rx_buf_ring[cons]; rxr 135 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c txr = rxr->bnapi->tx_ring; rxr 140 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c xdp.rxq = &rxr->xdp_rxq; rxr 166 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c bnxt_reuse_rx_data(rxr, cons, page); rxr 174 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c NEXT_RX(rxr->rx_prod)); rxr 175 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c bnxt_reuse_rx_data(rxr, cons, page); rxr 187 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c if (bnxt_alloc_rx_data(bp, rxr, rxr->rx_prod, GFP_ATOMIC)) { rxr 189 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c bnxt_reuse_rx_data(rxr, cons, page); rxr 195 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c page_pool_recycle_direct(rxr->page_pool, page); rxr 208 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c bnxt_reuse_rx_data(rxr, cons, page); rxr 17 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.h bool bnxt_rx_xdp(struct bnxt *bp, struct bnxt_rx_ring_info *rxr, u16 cons, rxr 831 drivers/net/ethernet/freescale/enetc/enetc.c static int enetc_alloc_rxbdr(struct enetc_bdr *rxr) rxr 835 drivers/net/ethernet/freescale/enetc/enetc.c rxr->rx_swbd = vzalloc(rxr->bd_count * sizeof(struct enetc_rx_swbd)); rxr 836 drivers/net/ethernet/freescale/enetc/enetc.c if (!rxr->rx_swbd) rxr 839 drivers/net/ethernet/freescale/enetc/enetc.c err = enetc_dma_alloc_bdr(rxr, sizeof(union enetc_rx_bd)); rxr 841 drivers/net/ethernet/freescale/enetc/enetc.c vfree(rxr->rx_swbd); rxr 845 drivers/net/ethernet/freescale/enetc/enetc.c rxr->next_to_clean = 0; rxr 846 drivers/net/ethernet/freescale/enetc/enetc.c rxr->next_to_use = 0; rxr 847 drivers/net/ethernet/freescale/enetc/enetc.c rxr->next_to_alloc = 0; rxr 852 drivers/net/ethernet/freescale/enetc/enetc.c static void enetc_free_rxbdr(struct enetc_bdr *rxr) rxr 856 drivers/net/ethernet/freescale/enetc/enetc.c size = rxr->bd_count * sizeof(union enetc_rx_bd); rxr 858 drivers/net/ethernet/freescale/enetc/enetc.c dma_free_coherent(rxr->dev, size, rxr->bd_base, rxr->bd_dma_base); rxr 859 drivers/net/ethernet/freescale/enetc/enetc.c rxr->bd_base = NULL; rxr 861 drivers/net/ethernet/freescale/enetc/enetc.c vfree(rxr->rx_swbd); rxr 862 drivers/net/ethernet/freescale/enetc/enetc.c rxr->rx_swbd = NULL; rxr 12631 drivers/net/ethernet/intel/i40e/i40e_main.c struct i40e_ring *rxr = vsi->rx_rings[queue_pair]; rxr 12632 drivers/net/ethernet/intel/i40e/i40e_main.c struct i40e_q_vector *q_vector = rxr->q_vector; rxr 12707 drivers/net/ethernet/intel/i40e/i40e_main.c struct i40e_ring *rxr = vsi->rx_rings[queue_pair]; rxr 12713 drivers/net/ethernet/intel/i40e/i40e_main.c i40e_irq_dynamic_enable(vsi, rxr->q_vector->v_idx); rxr 12727 drivers/net/ethernet/intel/i40e/i40e_main.c struct i40e_ring *rxr = vsi->rx_rings[queue_pair]; rxr 12738 drivers/net/ethernet/intel/i40e/i40e_main.c u32 intpf = vsi->base_vector + rxr->q_vector->v_idx; rxr 482 drivers/net/ethernet/intel/i40e/i40e_txrx.h bool i40e_alloc_rx_buffers(struct i40e_ring *rxr, u16 cleaned_count); rxr 439 drivers/net/ethernet/intel/iavf/iavf_txrx.h bool iavf_alloc_rx_buffers(struct iavf_ring *rxr, u16 cleaned_count); rxr 233 drivers/net/ethernet/intel/ice/ice_txrx.h bool ice_alloc_rx_bufs(struct ice_ring *rxr, u16 cleaned_count); rxr 91 drivers/net/ethernet/sgi/ioc3-eth.c unsigned long *rxr; /* pointer to receiver ring */ rxr 546 drivers/net/ethernet/sgi/ioc3-eth.c unsigned long *rxr; rxr 550 drivers/net/ethernet/sgi/ioc3-eth.c rxr = ip->rxr; /* Ring base */ rxr 571 drivers/net/ethernet/sgi/ioc3-eth.c d = rxr[rx_entry]; rxr 580 drivers/net/ethernet/sgi/ioc3-eth.c dma_unmap_single(ip->dma_dev, rxr[rx_entry], rxr 595 drivers/net/ethernet/sgi/ioc3-eth.c d = rxr[rx_entry]; rxr 605 drivers/net/ethernet/sgi/ioc3-eth.c rxr[n_entry] = cpu_to_be64(ioc3_map(d, PCI64_ATTR_BAR)); rxr 852 drivers/net/ethernet/sgi/ioc3-eth.c be64_to_cpu(ip->rxr[n_entry]), rxr 876 drivers/net/ethernet/sgi/ioc3-eth.c ip->rxr[i] = cpu_to_be64(ioc3_map(d, PCI64_ATTR_BAR)); rxr 1245 drivers/net/ethernet/sgi/ioc3-eth.c ip->rxr = dma_direct_alloc_pages(ip->dma_dev, RX_RING_SIZE, rxr 1247 drivers/net/ethernet/sgi/ioc3-eth.c if (!ip->rxr) { rxr 1315 drivers/net/ethernet/sgi/ioc3-eth.c if (ip->rxr) rxr 1316 drivers/net/ethernet/sgi/ioc3-eth.c dma_direct_free_pages(ip->dma_dev, RX_RING_SIZE, ip->rxr, rxr 1338 drivers/net/ethernet/sgi/ioc3-eth.c dma_direct_free_pages(ip->dma_dev, RX_RING_SIZE, ip->rxr,