diff --git a/dp/wifi3.0/dp_main.c b/dp/wifi3.0/dp_main.c index 42561b7994..e7c63317a6 100644 --- a/dp/wifi3.0/dp_main.c +++ b/dp/wifi3.0/dp_main.c @@ -1673,8 +1673,14 @@ static int dp_process_lmac_rings(struct dp_intr *int_ctx, int total_budget) (1 << mac_for_pdev)) { union dp_rx_desc_list_elem_t *desc_list = NULL; union dp_rx_desc_list_elem_t *tail = NULL; - struct dp_srng *rx_refill_buf_ring = - &soc->rx_refill_buf_ring[mac_for_pdev]; + struct dp_srng *rx_refill_buf_ring; + + if (wlan_cfg_per_pdev_lmac_ring(soc->wlan_cfg_ctx)) + rx_refill_buf_ring = + &soc->rx_refill_buf_ring[mac_for_pdev]; + else + rx_refill_buf_ring = + &soc->rx_refill_buf_ring[pdev->lmac_id]; intr_stats->num_host2rxdma_ring_masks++; DP_STATS_INC(pdev, replenish.low_thresh_intrs, diff --git a/dp/wifi3.0/dp_rx_err.c b/dp/wifi3.0/dp_rx_err.c index 04056ad45c..ddba3f45fd 100644 --- a/dp/wifi3.0/dp_rx_err.c +++ b/dp/wifi3.0/dp_rx_err.c @@ -2264,7 +2264,10 @@ dp_rxdma_err_process(struct dp_intr *int_ctx, struct dp_soc *soc, dp_srng_access_end(int_ctx, soc, err_dst_srng); if (rx_bufs_used) { - dp_rxdma_srng = &soc->rx_refill_buf_ring[mac_id]; + if (wlan_cfg_per_pdev_lmac_ring(soc->wlan_cfg_ctx)) + dp_rxdma_srng = &soc->rx_refill_buf_ring[mac_id]; + else + dp_rxdma_srng = &soc->rx_refill_buf_ring[pdev->lmac_id]; rx_desc_pool = &soc->rx_desc_buf[mac_id]; dp_rx_buffers_replenish(soc, mac_id, dp_rxdma_srng,