qcacmn: Add jitter stats to per tid Object

Add average jitter, average delay, and total success
packet count stats to per TID object.

Change-Id: Ic3ae6d4c090a5fe82e09c085e92cd5eaea4d2056
This commit is contained in:
Aniruddha Paul
2019-12-24 22:59:36 +05:30
committed by nshrivas
parent 546df98c1c
commit b869cb0dde
2 changed files with 49 additions and 0 deletions

View File

@@ -5131,6 +5131,45 @@ static void dp_print_nss(char *nss, uint32_t *pnss, uint32_t ss_count)
}
}
/**
* dp_print_jitter_stats(): Print per-tid jitter stats
* @peer: DP peer object
* @pdev: DP pdev object
*
* Return: void
*/
#ifdef WLAN_PEER_JITTER
static void dp_print_jitter_stats(struct dp_peer *peer, struct dp_pdev *pdev)
{
uint8_t tid = 0;
if (pdev && !wlan_cfg_get_dp_pdev_nss_enabled(pdev->wlan_cfg_ctx))
return;
DP_PRINT_STATS("Per TID Tx HW Enqueue-Comp Jitter Stats:\n");
for (tid = 0; tid < qdf_min(CDP_DATA_TID_MAX, DP_MAX_TIDS); tid++) {
struct dp_rx_tid *rx_tid = &peer->rx_tid[tid];
DP_PRINT_STATS("Node tid = %d\n"
"Average Jiiter : %u (us)\n"
"Average Delay : %u (us)\n"
"Total Average error count : %llu\n"
"Total Success Count : %llu\n"
"Total Drop : %llu\n",
rx_tid->tid,
rx_tid->tx_avg_jitter,
rx_tid->tx_avg_delay,
rx_tid->tx_avg_err,
rx_tid->tx_total_success,
rx_tid->tx_drop);
}
}
#else
static void dp_print_jitter_stats(struct dp_peer *peer, struct dp_pdev *pdev)
{
}
#endif /* WLAN_PEER_JITTER */
void dp_print_peer_stats(struct dp_peer *peer)
{
uint8_t i;
@@ -5280,6 +5319,8 @@ void dp_print_peer_stats(struct dp_peer *peer)
DP_PRINT_STATS(" Data transmitted in last sec: %d",
peer->stats.tx.tx_data_rate);
dp_print_jitter_stats(peer, pdev);
DP_PRINT_STATS("Node Rx Stats:");
DP_PRINT_STATS("Packets Sent To Stack = %d",
peer->stats.rx.to_stack.num);