qcacmn: Enable low watermark interrupt for WKK RxMON
Enable low watermark interrupt for WKK RxMON CRs-Fixed: 3347545 Change-Id: Ia78878aab1ded951a2ecd4a276696ac150910c43
This commit is contained in:

zatwierdzone przez
Madan Koyyalamudi

rodzic
6748c79f29
commit
05a6d5283d
@@ -472,7 +472,7 @@ QDF_STATUS dp_vdev_set_monitor_mode_buf_rings_rx_2_0(struct dp_pdev *pdev)
|
||||
rx_mon_max_entries = wlan_cfg_get_dp_soc_rx_mon_buf_ring_size(soc_cfg_ctx);
|
||||
|
||||
hal_set_low_threshold(soc->rxdma_mon_buf_ring[0].hal_srng,
|
||||
rx_mon_max_entries >> 2);
|
||||
MON_BUF_MIN_ENTRIES << 2);
|
||||
status = htt_srng_setup(soc->htt_handle, 0,
|
||||
soc->rxdma_mon_buf_ring[0].hal_srng,
|
||||
RXDMA_MONITOR_BUF);
|
||||
@@ -782,7 +782,8 @@ QDF_STATUS dp_mon_soc_htt_srng_setup_2_0(struct dp_soc *soc)
|
||||
struct dp_mon_soc_be *mon_soc_be = dp_get_be_mon_soc_from_dp_mon_soc(mon_soc);
|
||||
QDF_STATUS status;
|
||||
|
||||
hal_set_low_threshold(soc->rxdma_mon_buf_ring[0].hal_srng, 0);
|
||||
hal_set_low_threshold(soc->rxdma_mon_buf_ring[0].hal_srng,
|
||||
MON_BUF_MIN_ENTRIES << 2);
|
||||
status = htt_srng_setup(soc->htt_handle, 0,
|
||||
soc->rxdma_mon_buf_ring[0].hal_srng,
|
||||
RXDMA_MONITOR_BUF);
|
||||
@@ -884,7 +885,7 @@ QDF_STATUS dp_rx_mon_refill_buf_ring_2_0(struct dp_intr *int_ctx)
|
||||
struct dp_intr_stats *intr_stats = &int_ctx->intr_stats;
|
||||
struct dp_mon_soc_be *mon_soc_be = dp_get_be_mon_soc_from_dp_mon_soc(mon_soc);
|
||||
uint32_t num_entries_avail;
|
||||
int sync_hw_ptr = 1;
|
||||
int sync_hw_ptr = 1, hp = 0, tp = 0;
|
||||
void *hal_srng;
|
||||
|
||||
rx_mon_buf_ring = &soc->rxdma_mon_buf_ring[0];
|
||||
@@ -896,6 +897,7 @@ QDF_STATUS dp_rx_mon_refill_buf_ring_2_0(struct dp_intr *int_ctx)
|
||||
num_entries_avail = hal_srng_src_num_avail(soc->hal_soc,
|
||||
hal_srng,
|
||||
sync_hw_ptr);
|
||||
hal_get_sw_hptp(soc->hal_soc, (hal_ring_handle_t)hal_srng, &tp, &hp);
|
||||
hal_srng_access_end(soc->hal_soc, hal_srng);
|
||||
|
||||
if (num_entries_avail)
|
||||
@@ -1299,7 +1301,7 @@ static void dp_mon_register_intr_ops_2_0(struct dp_soc *soc)
|
||||
struct dp_mon_soc *mon_soc = soc->monitor_soc;
|
||||
|
||||
mon_soc->mon_ops->rx_mon_refill_buf_ring =
|
||||
NULL,
|
||||
dp_rx_mon_refill_buf_ring_2_0,
|
||||
mon_soc->mon_ops->tx_mon_refill_buf_ring =
|
||||
NULL,
|
||||
mon_soc->mon_rx_process = dp_rx_mon_process_2_0;
|
||||
|
@@ -1018,10 +1018,10 @@ dp_rx_mon_flush_status_buf_queue(struct dp_pdev *pdev)
|
||||
if (work_done) {
|
||||
mon_pdev->rx_mon_stats.mon_rx_bufs_replenished_dest +=
|
||||
work_done;
|
||||
dp_mon_buffers_replenish(soc, &soc->rxdma_mon_buf_ring[0],
|
||||
rx_mon_desc_pool,
|
||||
work_done,
|
||||
&desc_list, &tail, NULL);
|
||||
if (desc_list)
|
||||
dp_mon_add_desc_list_to_free_list(soc,
|
||||
&desc_list, &tail,
|
||||
rx_mon_desc_pool);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1051,10 +1051,9 @@ dp_rx_mon_handle_flush_n_trucated_ppdu(struct dp_soc *soc,
|
||||
DP_STATS_INC(mon_soc, frag_free, 1);
|
||||
dp_mon_add_to_free_desc_list(&desc_list, &tail, mon_desc);
|
||||
work_done = 1;
|
||||
dp_mon_buffers_replenish(soc, &soc->rxdma_mon_buf_ring[0],
|
||||
rx_mon_desc_pool,
|
||||
work_done,
|
||||
&desc_list, &tail, NULL);
|
||||
if (desc_list)
|
||||
dp_mon_add_desc_list_to_free_list(soc, &desc_list, &tail,
|
||||
rx_mon_desc_pool);
|
||||
}
|
||||
|
||||
uint8_t dp_rx_mon_process_tlv_status(struct dp_pdev *pdev,
|
||||
@@ -1514,11 +1513,11 @@ dp_rx_mon_process_status_tlv(struct dp_pdev *pdev)
|
||||
dp_mon_rx_stats_update_rssi_dbm_params(mon_pdev, ppdu_info);
|
||||
if (work_done) {
|
||||
mon_pdev->rx_mon_stats.mon_rx_bufs_replenished_dest +=
|
||||
work_done;
|
||||
dp_mon_buffers_replenish(soc, &soc->rxdma_mon_buf_ring[0],
|
||||
rx_mon_desc_pool,
|
||||
work_done,
|
||||
&desc_list, &tail, NULL);
|
||||
work_done;
|
||||
if (desc_list)
|
||||
dp_mon_add_desc_list_to_free_list(soc,
|
||||
&desc_list, &tail,
|
||||
rx_mon_desc_pool);
|
||||
}
|
||||
|
||||
ppdu_info->rx_status.tsft = ppdu_info->rx_status.tsft +
|
||||
|
Reference in New Issue
Block a user