Lines Matching refs:rxr
726 struct bnxt_rx_ring_info *rxr, in __bnxt_alloc_rx_page() argument
732 page = page_pool_dev_alloc_pages(rxr->page_pool); in __bnxt_alloc_rx_page()
739 page_pool_recycle_direct(rxr->page_pool, page); in __bnxt_alloc_rx_page()
767 int bnxt_alloc_rx_data(struct bnxt *bp, struct bnxt_rx_ring_info *rxr, in bnxt_alloc_rx_data() argument
770 struct rx_bd *rxbd = &rxr->rx_desc_ring[RX_RING(prod)][RX_IDX(prod)]; in bnxt_alloc_rx_data()
771 struct bnxt_sw_rx_bd *rx_buf = &rxr->rx_buf_ring[prod]; in bnxt_alloc_rx_data()
776 __bnxt_alloc_rx_page(bp, &mapping, rxr, gfp); in bnxt_alloc_rx_data()
798 void bnxt_reuse_rx_data(struct bnxt_rx_ring_info *rxr, u16 cons, void *data) in bnxt_reuse_rx_data() argument
800 u16 prod = rxr->rx_prod; in bnxt_reuse_rx_data()
804 prod_rx_buf = &rxr->rx_buf_ring[prod]; in bnxt_reuse_rx_data()
805 cons_rx_buf = &rxr->rx_buf_ring[cons]; in bnxt_reuse_rx_data()
812 prod_bd = &rxr->rx_desc_ring[RX_RING(prod)][RX_IDX(prod)]; in bnxt_reuse_rx_data()
813 cons_bd = &rxr->rx_desc_ring[RX_RING(cons)][RX_IDX(cons)]; in bnxt_reuse_rx_data()
818 static inline u16 bnxt_find_next_agg_idx(struct bnxt_rx_ring_info *rxr, u16 idx) in bnxt_find_next_agg_idx() argument
820 u16 next, max = rxr->rx_agg_bmap_size; in bnxt_find_next_agg_idx()
822 next = find_next_zero_bit(rxr->rx_agg_bmap, max, idx); in bnxt_find_next_agg_idx()
824 next = find_first_zero_bit(rxr->rx_agg_bmap, max); in bnxt_find_next_agg_idx()
829 struct bnxt_rx_ring_info *rxr, in bnxt_alloc_rx_page() argument
833 &rxr->rx_agg_desc_ring[RX_RING(prod)][RX_IDX(prod)]; in bnxt_alloc_rx_page()
838 u16 sw_prod = rxr->rx_sw_agg_prod; in bnxt_alloc_rx_page()
842 page = rxr->rx_page; in bnxt_alloc_rx_page()
847 rxr->rx_page = page; in bnxt_alloc_rx_page()
848 rxr->rx_page_offset = 0; in bnxt_alloc_rx_page()
850 offset = rxr->rx_page_offset; in bnxt_alloc_rx_page()
851 rxr->rx_page_offset += BNXT_RX_PAGE_SIZE; in bnxt_alloc_rx_page()
852 if (rxr->rx_page_offset == PAGE_SIZE) in bnxt_alloc_rx_page()
853 rxr->rx_page = NULL; in bnxt_alloc_rx_page()
870 if (unlikely(test_bit(sw_prod, rxr->rx_agg_bmap))) in bnxt_alloc_rx_page()
871 sw_prod = bnxt_find_next_agg_idx(rxr, sw_prod); in bnxt_alloc_rx_page()
873 __set_bit(sw_prod, rxr->rx_agg_bmap); in bnxt_alloc_rx_page()
874 rx_agg_buf = &rxr->rx_agg_ring[sw_prod]; in bnxt_alloc_rx_page()
875 rxr->rx_sw_agg_prod = NEXT_RX_AGG(sw_prod); in bnxt_alloc_rx_page()
898 struct bnxt_rx_ring_info *rxr, in bnxt_get_tpa_agg_p5() argument
901 struct bnxt_tpa_info *tpa_info = &rxr->rx_tpa[agg_id]; in bnxt_get_tpa_agg_p5()
911 struct bnxt_rx_ring_info *rxr = bnapi->rx_ring; in bnxt_reuse_rx_agg_bufs() local
912 u16 prod = rxr->rx_agg_prod; in bnxt_reuse_rx_agg_bufs()
913 u16 sw_prod = rxr->rx_sw_agg_prod; in bnxt_reuse_rx_agg_bufs()
928 agg = bnxt_get_tpa_agg_p5(bp, rxr, idx, start + i); in bnxt_reuse_rx_agg_bufs()
932 __clear_bit(cons, rxr->rx_agg_bmap); in bnxt_reuse_rx_agg_bufs()
934 if (unlikely(test_bit(sw_prod, rxr->rx_agg_bmap))) in bnxt_reuse_rx_agg_bufs()
935 sw_prod = bnxt_find_next_agg_idx(rxr, sw_prod); in bnxt_reuse_rx_agg_bufs()
937 __set_bit(sw_prod, rxr->rx_agg_bmap); in bnxt_reuse_rx_agg_bufs()
938 prod_rx_buf = &rxr->rx_agg_ring[sw_prod]; in bnxt_reuse_rx_agg_bufs()
939 cons_rx_buf = &rxr->rx_agg_ring[cons]; in bnxt_reuse_rx_agg_bufs()
951 prod_bd = &rxr->rx_agg_desc_ring[RX_RING(prod)][RX_IDX(prod)]; in bnxt_reuse_rx_agg_bufs()
959 rxr->rx_agg_prod = prod; in bnxt_reuse_rx_agg_bufs()
960 rxr->rx_sw_agg_prod = sw_prod; in bnxt_reuse_rx_agg_bufs()
964 struct bnxt_rx_ring_info *rxr, in bnxt_rx_page_skb() argument
973 u16 prod = rxr->rx_prod; in bnxt_rx_page_skb()
977 err = bnxt_alloc_rx_data(bp, rxr, prod, GFP_ATOMIC); in bnxt_rx_page_skb()
979 bnxt_reuse_rx_data(rxr, cons, data); in bnxt_rx_page_skb()
985 page_pool_release_page(rxr->page_pool, page); in bnxt_rx_page_skb()
990 skb = napi_alloc_skb(&rxr->bnapi->napi, payload); in bnxt_rx_page_skb()
1011 struct bnxt_rx_ring_info *rxr, u16 cons, in bnxt_rx_skb() argument
1016 u16 prod = rxr->rx_prod; in bnxt_rx_skb()
1020 err = bnxt_alloc_rx_data(bp, rxr, prod, GFP_ATOMIC); in bnxt_rx_skb()
1022 bnxt_reuse_rx_data(rxr, cons, data); in bnxt_rx_skb()
1046 struct bnxt_rx_ring_info *rxr = bnapi->rx_ring; in bnxt_rx_pages() local
1047 u16 prod = rxr->rx_agg_prod; in bnxt_rx_pages()
1062 agg = bnxt_get_tpa_agg_p5(bp, rxr, idx, i); in bnxt_rx_pages()
1069 cons_rx_buf = &rxr->rx_agg_ring[cons]; in bnxt_rx_pages()
1072 __clear_bit(cons, rxr->rx_agg_bmap); in bnxt_rx_pages()
1082 if (bnxt_alloc_rx_page(bp, rxr, prod, GFP_ATOMIC) != 0) { in bnxt_rx_pages()
1097 rxr->rx_agg_prod = prod; in bnxt_rx_pages()
1112 rxr->rx_agg_prod = prod; in bnxt_rx_pages()
1203 static void bnxt_sched_reset(struct bnxt *bp, struct bnxt_rx_ring_info *rxr) in bnxt_sched_reset() argument
1205 if (!rxr->bnapi->in_reset) { in bnxt_sched_reset()
1206 rxr->bnapi->in_reset = true; in bnxt_sched_reset()
1213 rxr->rx_next_cons = 0xffff; in bnxt_sched_reset()
1216 static u16 bnxt_alloc_agg_idx(struct bnxt_rx_ring_info *rxr, u16 agg_id) in bnxt_alloc_agg_idx() argument
1218 struct bnxt_tpa_idx_map *map = rxr->rx_tpa_idx_map; in bnxt_alloc_agg_idx()
1229 static void bnxt_free_agg_idx(struct bnxt_rx_ring_info *rxr, u16 idx) in bnxt_free_agg_idx() argument
1231 struct bnxt_tpa_idx_map *map = rxr->rx_tpa_idx_map; in bnxt_free_agg_idx()
1236 static u16 bnxt_lookup_agg_idx(struct bnxt_rx_ring_info *rxr, u16 agg_id) in bnxt_lookup_agg_idx() argument
1238 struct bnxt_tpa_idx_map *map = rxr->rx_tpa_idx_map; in bnxt_lookup_agg_idx()
1243 static void bnxt_tpa_start(struct bnxt *bp, struct bnxt_rx_ring_info *rxr, in bnxt_tpa_start() argument
1255 agg_id = bnxt_alloc_agg_idx(rxr, agg_id); in bnxt_tpa_start()
1260 prod = rxr->rx_prod; in bnxt_tpa_start()
1261 cons_rx_buf = &rxr->rx_buf_ring[cons]; in bnxt_tpa_start()
1262 prod_rx_buf = &rxr->rx_buf_ring[prod]; in bnxt_tpa_start()
1263 tpa_info = &rxr->rx_tpa[agg_id]; in bnxt_tpa_start()
1265 if (unlikely(cons != rxr->rx_next_cons || in bnxt_tpa_start()
1268 cons, rxr->rx_next_cons, in bnxt_tpa_start()
1270 bnxt_sched_reset(bp, rxr); in bnxt_tpa_start()
1283 prod_bd = &rxr->rx_desc_ring[RX_RING(prod)][RX_IDX(prod)]; in bnxt_tpa_start()
1315 rxr->rx_prod = NEXT_RX(prod); in bnxt_tpa_start()
1317 rxr->rx_next_cons = NEXT_RX(cons); in bnxt_tpa_start()
1318 cons_rx_buf = &rxr->rx_buf_ring[cons]; in bnxt_tpa_start()
1320 bnxt_reuse_rx_data(rxr, cons, cons_rx_buf->data); in bnxt_tpa_start()
1321 rxr->rx_prod = NEXT_RX(rxr->rx_prod); in bnxt_tpa_start()
1546 struct bnxt_rx_ring_info *rxr = bnapi->rx_ring; in bnxt_tpa_end() local
1566 agg_id = bnxt_lookup_agg_idx(rxr, agg_id); in bnxt_tpa_end()
1568 tpa_info = &rxr->rx_tpa[agg_id]; in bnxt_tpa_end()
1576 bnxt_free_agg_idx(rxr, agg_id); in bnxt_tpa_end()
1582 tpa_info = &rxr->rx_tpa[agg_id]; in bnxt_tpa_end()
1682 static void bnxt_tpa_agg(struct bnxt *bp, struct bnxt_rx_ring_info *rxr, in bnxt_tpa_agg() argument
1688 agg_id = bnxt_lookup_agg_idx(rxr, agg_id); in bnxt_tpa_agg()
1689 tpa_info = &rxr->rx_tpa[agg_id]; in bnxt_tpa_agg()
1717 struct bnxt_rx_ring_info *rxr = bnapi->rx_ring; in bnxt_rx_pkt() local
1738 bnxt_tpa_agg(bp, rxr, (struct rx_agg_cmp *)rxcmp); in bnxt_rx_pkt()
1754 prod = rxr->rx_prod; in bnxt_rx_pkt()
1757 bnxt_tpa_start(bp, rxr, (struct rx_tpa_start_cmp *)rxcmp, in bnxt_rx_pkt()
1781 if (unlikely(cons != rxr->rx_next_cons)) { in bnxt_rx_pkt()
1785 if (rxr->rx_next_cons != 0xffff) in bnxt_rx_pkt()
1787 cons, rxr->rx_next_cons); in bnxt_rx_pkt()
1788 bnxt_sched_reset(bp, rxr); in bnxt_rx_pkt()
1793 rx_buf = &rxr->rx_buf_ring[cons]; in bnxt_rx_pkt()
1814 bnxt_reuse_rx_data(rxr, cons, data); in bnxt_rx_pkt()
1826 bnxt_sched_reset(bp, rxr); in bnxt_rx_pkt()
1835 if (bnxt_rx_xdp(bp, rxr, cons, data, &data_ptr, &len, event)) { in bnxt_rx_pkt()
1842 bnxt_reuse_rx_data(rxr, cons, data); in bnxt_rx_pkt()
1857 skb = bp->rx_skb_func(bp, rxr, cons, data, data_ptr, dma_addr, in bnxt_rx_pkt()
1923 rxr->rx_prod = NEXT_RX(prod); in bnxt_rx_pkt()
1924 rxr->rx_next_cons = NEXT_RX(cons); in bnxt_rx_pkt()
2150 struct bnxt_rx_ring_info *rxr; in bnxt_async_event_process() local
2167 rxr = bp->bnapi[grp_idx]->rx_ring; in bnxt_async_event_process()
2168 bnxt_sched_reset(bp, rxr); in bnxt_async_event_process()
2370 struct bnxt_rx_ring_info *rxr = bnapi->rx_ring; in __bnxt_poll_work_done() local
2373 bnxt_db_write(bp, &rxr->rx_agg_db, rxr->rx_agg_prod); in __bnxt_poll_work_done()
2374 bnxt_db_write(bp, &rxr->rx_db, rxr->rx_prod); in __bnxt_poll_work_done()
2402 struct bnxt_rx_ring_info *rxr = bnapi->rx_ring; in bnxt_poll_nitroa0() local
2456 bnxt_db_write(bp, &rxr->rx_db, rxr->rx_prod); in bnxt_poll_nitroa0()
2459 bnxt_db_write(bp, &rxr->rx_agg_db, rxr->rx_agg_prod); in bnxt_poll_nitroa0()
2672 struct bnxt_rx_ring_info *rxr = &bp->rx_ring[ring_nr]; in bnxt_free_one_rx_ring_skbs() local
2679 if (!rxr->rx_tpa) in bnxt_free_one_rx_ring_skbs()
2683 struct bnxt_tpa_info *tpa_info = &rxr->rx_tpa[i]; in bnxt_free_one_rx_ring_skbs()
2699 if (!rxr->rx_buf_ring) in bnxt_free_one_rx_ring_skbs()
2703 struct bnxt_sw_rx_bd *rx_buf = &rxr->rx_buf_ring[i]; in bnxt_free_one_rx_ring_skbs()
2716 page_pool_recycle_direct(rxr->page_pool, data); in bnxt_free_one_rx_ring_skbs()
2726 if (!rxr->rx_agg_ring) in bnxt_free_one_rx_ring_skbs()
2730 struct bnxt_sw_rx_agg_bd *rx_agg_buf = &rxr->rx_agg_ring[i]; in bnxt_free_one_rx_ring_skbs()
2741 __clear_bit(i, rxr->rx_agg_bmap); in bnxt_free_one_rx_ring_skbs()
2747 if (rxr->rx_page) { in bnxt_free_one_rx_ring_skbs()
2748 __free_page(rxr->rx_page); in bnxt_free_one_rx_ring_skbs()
2749 rxr->rx_page = NULL; in bnxt_free_one_rx_ring_skbs()
2751 map = rxr->rx_tpa_idx_map; in bnxt_free_one_rx_ring_skbs()
2860 struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; in bnxt_free_tpa_info() local
2862 kfree(rxr->rx_tpa_idx_map); in bnxt_free_tpa_info()
2863 rxr->rx_tpa_idx_map = NULL; in bnxt_free_tpa_info()
2864 if (rxr->rx_tpa) { in bnxt_free_tpa_info()
2865 kfree(rxr->rx_tpa[0].agg_arr); in bnxt_free_tpa_info()
2866 rxr->rx_tpa[0].agg_arr = NULL; in bnxt_free_tpa_info()
2868 kfree(rxr->rx_tpa); in bnxt_free_tpa_info()
2869 rxr->rx_tpa = NULL; in bnxt_free_tpa_info()
2886 struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; in bnxt_alloc_tpa_info() local
2889 rxr->rx_tpa = kcalloc(bp->max_tpa, sizeof(struct bnxt_tpa_info), in bnxt_alloc_tpa_info()
2891 if (!rxr->rx_tpa) in bnxt_alloc_tpa_info()
2897 rxr->rx_tpa[0].agg_arr = agg; in bnxt_alloc_tpa_info()
2901 rxr->rx_tpa[j].agg_arr = agg + j * MAX_SKB_FRAGS; in bnxt_alloc_tpa_info()
2902 rxr->rx_tpa_idx_map = kzalloc(sizeof(*rxr->rx_tpa_idx_map), in bnxt_alloc_tpa_info()
2904 if (!rxr->rx_tpa_idx_map) in bnxt_alloc_tpa_info()
2919 struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; in bnxt_free_rx_rings() local
2922 if (rxr->xdp_prog) in bnxt_free_rx_rings()
2923 bpf_prog_put(rxr->xdp_prog); in bnxt_free_rx_rings()
2925 if (xdp_rxq_info_is_reg(&rxr->xdp_rxq)) in bnxt_free_rx_rings()
2926 xdp_rxq_info_unreg(&rxr->xdp_rxq); in bnxt_free_rx_rings()
2928 page_pool_destroy(rxr->page_pool); in bnxt_free_rx_rings()
2929 rxr->page_pool = NULL; in bnxt_free_rx_rings()
2931 kfree(rxr->rx_agg_bmap); in bnxt_free_rx_rings()
2932 rxr->rx_agg_bmap = NULL; in bnxt_free_rx_rings()
2934 ring = &rxr->rx_ring_struct; in bnxt_free_rx_rings()
2937 ring = &rxr->rx_agg_ring_struct; in bnxt_free_rx_rings()
2943 struct bnxt_rx_ring_info *rxr) in bnxt_alloc_rx_page_pool() argument
2952 rxr->page_pool = page_pool_create(&pp); in bnxt_alloc_rx_page_pool()
2953 if (IS_ERR(rxr->page_pool)) { in bnxt_alloc_rx_page_pool()
2954 int err = PTR_ERR(rxr->page_pool); in bnxt_alloc_rx_page_pool()
2956 rxr->page_pool = NULL; in bnxt_alloc_rx_page_pool()
2973 struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; in bnxt_alloc_rx_rings() local
2976 ring = &rxr->rx_ring_struct; in bnxt_alloc_rx_rings()
2978 rc = bnxt_alloc_rx_page_pool(bp, rxr); in bnxt_alloc_rx_rings()
2982 rc = xdp_rxq_info_reg(&rxr->xdp_rxq, bp->dev, i); in bnxt_alloc_rx_rings()
2986 rc = xdp_rxq_info_reg_mem_model(&rxr->xdp_rxq, in bnxt_alloc_rx_rings()
2988 rxr->page_pool); in bnxt_alloc_rx_rings()
2990 xdp_rxq_info_unreg(&rxr->xdp_rxq); in bnxt_alloc_rx_rings()
3002 ring = &rxr->rx_agg_ring_struct; in bnxt_alloc_rx_rings()
3008 rxr->rx_agg_bmap_size = bp->rx_agg_ring_mask + 1; in bnxt_alloc_rx_rings()
3009 mem_size = rxr->rx_agg_bmap_size / 8; in bnxt_alloc_rx_rings()
3010 rxr->rx_agg_bmap = kzalloc(mem_size, GFP_KERNEL); in bnxt_alloc_rx_rings()
3011 if (!rxr->rx_agg_bmap) in bnxt_alloc_rx_rings()
3227 struct bnxt_rx_ring_info *rxr; in bnxt_init_ring_struct() local
3243 rxr = bnapi->rx_ring; in bnxt_init_ring_struct()
3244 if (!rxr) in bnxt_init_ring_struct()
3247 ring = &rxr->rx_ring_struct; in bnxt_init_ring_struct()
3251 rmem->pg_arr = (void **)rxr->rx_desc_ring; in bnxt_init_ring_struct()
3252 rmem->dma_arr = rxr->rx_desc_mapping; in bnxt_init_ring_struct()
3254 rmem->vmem = (void **)&rxr->rx_buf_ring; in bnxt_init_ring_struct()
3256 ring = &rxr->rx_agg_ring_struct; in bnxt_init_ring_struct()
3260 rmem->pg_arr = (void **)rxr->rx_agg_desc_ring; in bnxt_init_ring_struct()
3261 rmem->dma_arr = rxr->rx_agg_desc_mapping; in bnxt_init_ring_struct()
3263 rmem->vmem = (void **)&rxr->rx_agg_ring; in bnxt_init_ring_struct()
3305 struct bnxt_rx_ring_info *rxr = &bp->rx_ring[ring_nr]; in bnxt_alloc_one_rx_ring() local
3310 prod = rxr->rx_prod; in bnxt_alloc_one_rx_ring()
3312 if (bnxt_alloc_rx_data(bp, rxr, prod, GFP_KERNEL)) { in bnxt_alloc_one_rx_ring()
3319 rxr->rx_prod = prod; in bnxt_alloc_one_rx_ring()
3324 prod = rxr->rx_agg_prod; in bnxt_alloc_one_rx_ring()
3326 if (bnxt_alloc_rx_page(bp, rxr, prod, GFP_KERNEL)) { in bnxt_alloc_one_rx_ring()
3333 rxr->rx_agg_prod = prod; in bnxt_alloc_one_rx_ring()
3335 if (rxr->rx_tpa) { in bnxt_alloc_one_rx_ring()
3344 rxr->rx_tpa[i].data = data; in bnxt_alloc_one_rx_ring()
3345 rxr->rx_tpa[i].data_ptr = data + bp->rx_offset; in bnxt_alloc_one_rx_ring()
3346 rxr->rx_tpa[i].mapping = mapping; in bnxt_alloc_one_rx_ring()
3354 struct bnxt_rx_ring_info *rxr; in bnxt_init_one_rx_ring() local
3364 rxr = &bp->rx_ring[ring_nr]; in bnxt_init_one_rx_ring()
3365 ring = &rxr->rx_ring_struct; in bnxt_init_one_rx_ring()
3370 rxr->xdp_prog = bp->xdp_prog; in bnxt_init_one_rx_ring()
3374 ring = &rxr->rx_agg_ring_struct; in bnxt_init_one_rx_ring()
4111 struct bnxt_rx_ring_info *rxr; in bnxt_clear_ring_indices() local
4126 rxr = bnapi->rx_ring; in bnxt_clear_ring_indices()
4127 if (rxr) { in bnxt_clear_ring_indices()
4128 rxr->rx_prod = 0; in bnxt_clear_ring_indices()
4129 rxr->rx_agg_prod = 0; in bnxt_clear_ring_indices()
4130 rxr->rx_sw_agg_prod = 0; in bnxt_clear_ring_indices()
4131 rxr->rx_next_cons = 0; in bnxt_clear_ring_indices()
4253 struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; in bnxt_alloc_mem() local
4256 rxr->rx_ring_struct.ring_mem.flags = in bnxt_alloc_mem()
4258 rxr->rx_agg_ring_struct.ring_mem.flags = in bnxt_alloc_mem()
4261 rxr->bnapi = bp->bnapi[i]; in bnxt_alloc_mem()
5070 static u16 bnxt_cp_ring_for_rx(struct bnxt *bp, struct bnxt_rx_ring_info *rxr) in bnxt_cp_ring_for_rx() argument
5073 struct bnxt_napi *bnapi = rxr->bnapi; in bnxt_cp_ring_for_rx()
5079 return bnxt_cp_ring_from_grp(bp, &rxr->rx_ring_struct); in bnxt_cp_ring_for_rx()
5174 struct bnxt_rx_ring_info *rxr; in __bnxt_fill_hw_rss_tbl_p5() local
5183 rxr = &bp->rx_ring[j]; in __bnxt_fill_hw_rss_tbl_p5()
5185 ring_id = rxr->rx_ring_struct.fw_ring_id; in __bnxt_fill_hw_rss_tbl_p5()
5187 ring_id = bnxt_cp_ring_for_rx(bp, rxr); in __bnxt_fill_hw_rss_tbl_p5()
5338 struct bnxt_rx_ring_info *rxr = &bp->rx_ring[0]; in bnxt_hwrm_vnic_cfg() local
5341 cpu_to_le16(rxr->rx_ring_struct.fw_ring_id); in bnxt_hwrm_vnic_cfg()
5343 cpu_to_le16(bnxt_cp_ring_for_rx(bp, rxr)); in bnxt_hwrm_vnic_cfg()
5810 struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; in bnxt_hwrm_ring_alloc() local
5811 struct bnxt_ring_struct *ring = &rxr->rx_ring_struct; in bnxt_hwrm_ring_alloc()
5812 struct bnxt_napi *bnapi = rxr->bnapi; in bnxt_hwrm_ring_alloc()
5818 bnxt_set_db(bp, &rxr->rx_db, type, map_idx, ring->fw_ring_id); in bnxt_hwrm_ring_alloc()
5821 bnxt_db_write(bp, &rxr->rx_db, rxr->rx_prod); in bnxt_hwrm_ring_alloc()
5843 struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; in bnxt_hwrm_ring_alloc() local
5845 &rxr->rx_agg_ring_struct; in bnxt_hwrm_ring_alloc()
5853 bnxt_set_db(bp, &rxr->rx_agg_db, type, map_idx, in bnxt_hwrm_ring_alloc()
5855 bnxt_db_write(bp, &rxr->rx_agg_db, rxr->rx_agg_prod); in bnxt_hwrm_ring_alloc()
5856 bnxt_db_write(bp, &rxr->rx_db, rxr->rx_prod); in bnxt_hwrm_ring_alloc()
5917 struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; in bnxt_hwrm_ring_free() local
5918 struct bnxt_ring_struct *ring = &rxr->rx_ring_struct; in bnxt_hwrm_ring_free()
5919 u32 grp_idx = rxr->bnapi->index; in bnxt_hwrm_ring_free()
5922 u32 cmpl_ring_id = bnxt_cp_ring_for_rx(bp, rxr); in bnxt_hwrm_ring_free()
5939 struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; in bnxt_hwrm_ring_free() local
5940 struct bnxt_ring_struct *ring = &rxr->rx_agg_ring_struct; in bnxt_hwrm_ring_free()
5941 u32 grp_idx = rxr->bnapi->index; in bnxt_hwrm_ring_free()
5944 u32 cmpl_ring_id = bnxt_cp_ring_for_rx(bp, rxr); in bnxt_hwrm_ring_free()
10664 struct bnxt_rx_ring_info *rxr = bnapi->rx_ring; in bnxt_dump_rx_sw_state() local
10667 if (!rxr) in bnxt_dump_rx_sw_state()
10671 i, rxr->rx_ring_struct.fw_ring_id, rxr->rx_prod, in bnxt_dump_rx_sw_state()
10672 rxr->rx_agg_ring_struct.fw_ring_id, rxr->rx_agg_prod, in bnxt_dump_rx_sw_state()
10673 rxr->rx_sw_agg_prod); in bnxt_dump_rx_sw_state()
10702 struct bnxt_rx_ring_info *rxr = &bp->rx_ring[ring_nr]; in bnxt_hwrm_rx_ring_reset() local
10704 struct bnxt_napi *bnapi = rxr->bnapi; in bnxt_hwrm_rx_ring_reset()
10868 struct bnxt_rx_ring_info *rxr = &bp->rx_ring[i]; in bnxt_rx_ring_reset() local
10872 if (!rxr->bnapi->in_reset) in bnxt_rx_ring_reset()
10886 rxr->rx_prod = 0; in bnxt_rx_ring_reset()
10887 rxr->rx_agg_prod = 0; in bnxt_rx_ring_reset()
10888 rxr->rx_sw_agg_prod = 0; in bnxt_rx_ring_reset()
10889 rxr->rx_next_cons = 0; in bnxt_rx_ring_reset()
10890 rxr->bnapi->in_reset = false; in bnxt_rx_ring_reset()
10892 cpr = &rxr->bnapi->cp_ring; in bnxt_rx_ring_reset()
10895 bnxt_db_write(bp, &rxr->rx_agg_db, rxr->rx_agg_prod); in bnxt_rx_ring_reset()
10896 bnxt_db_write(bp, &rxr->rx_db, rxr->rx_prod); in bnxt_rx_ring_reset()