qcacmn: buffer replenish and reap without map and unmap
use dma_inv_range call instead of dma map and unmap APIs during replenish and reap. This complete code is under a compile time macro. before change: 4160Mbps @ 96.5% (core 3) after change: 4160Mbps @ 90.5% (core 3) Change-Id: I61bca349a369ace06cd86f353880108cee013cb1
This commit is contained in:

committed by
Madan Koyyalamudi

parent
03f7a9accb
commit
9639c91317
@@ -2410,7 +2410,9 @@ static int dp_process_lmac_rings(struct dp_intr *int_ctx, int total_budget)
|
||||
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;
|
||||
struct rx_desc_pool *rx_desc_pool;
|
||||
|
||||
rx_desc_pool = &soc->rx_desc_buf[mac_for_pdev];
|
||||
if (wlan_cfg_per_pdev_lmac_ring(soc->wlan_cfg_ctx))
|
||||
rx_refill_buf_ring =
|
||||
&soc->rx_refill_buf_ring[mac_for_pdev];
|
||||
@@ -2419,11 +2421,12 @@ static int dp_process_lmac_rings(struct dp_intr *int_ctx, int total_budget)
|
||||
&soc->rx_refill_buf_ring[pdev->lmac_id];
|
||||
|
||||
intr_stats->num_host2rxdma_ring_masks++;
|
||||
DP_STATS_INC(pdev, replenish.low_thresh_intrs, 1);
|
||||
dp_rx_buffers_replenish(soc, mac_for_pdev,
|
||||
rx_refill_buf_ring,
|
||||
&soc->rx_desc_buf[mac_for_pdev],
|
||||
0, &desc_list, &tail);
|
||||
dp_rx_buffers_lt_replenish_simple(soc, mac_for_pdev,
|
||||
rx_refill_buf_ring,
|
||||
rx_desc_pool,
|
||||
0,
|
||||
&desc_list,
|
||||
&tail);
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user