qcacmn: Add support to enable tx hw latency stats at run time

This feature can be enabled runtime using sysfs interface.
Support is added to dump and clear the histogram stats.

The lower delay regions has to be more granular to indicate any
medium related issues for time sensitive XR applications.

Change-Id: I0a44a54d12d92ce016de349810cb2bedebaf9a58
CRs-Fixed: 2981006
This commit is contained in:
Yeshwanth Sriram Guntuka
2021-11-15 21:41:57 +05:30
committed by Madan Koyyalamudi
parent 3de51ff2c5
commit df666b7116
13 changed files with 515 additions and 103 deletions

View File

@@ -1618,8 +1618,10 @@ void dp_rx_compute_delay(struct dp_vdev *vdev, qdf_nbuf_t nbuf)
uint8_t tid = qdf_nbuf_get_tid_val(nbuf);
uint32_t interframe_delay =
(uint32_t)(current_ts - vdev->prev_rx_deliver_tstamp);
struct cdp_tid_rx_stats *rstats =
&vdev->pdev->stats.tid_stats.tid_rx_stats[ring_id][tid];
dp_update_delay_stats(vdev->pdev, to_stack, tid,
dp_update_delay_stats(NULL, rstats, to_stack, tid,
CDP_DELAY_STATS_REAP_STACK, ring_id);
/*
* Update interframe delay stats calculated at deliver_data_ol point.
@@ -1628,7 +1630,7 @@ void dp_rx_compute_delay(struct dp_vdev *vdev, qdf_nbuf_t nbuf)
* On the other side, this will help in avoiding extra per packet check
* of vdev->prev_rx_deliver_tstamp.
*/
dp_update_delay_stats(vdev->pdev, interframe_delay, tid,
dp_update_delay_stats(NULL, rstats, interframe_delay, tid,
CDP_DELAY_STATS_RX_INTERFRAME, ring_id);
vdev->prev_rx_deliver_tstamp = current_ts;
}