wifi: ath12k: Add support to RTT stats
authorMaharaja Kennadyrajan <quic_mkenna@quicinc.com>
Tue, 17 Jun 2025 05:11:36 +0000 (10:41 +0530)
committerJeff Johnson <jeff.johnson@oss.qualcomm.com>
Thu, 26 Jun 2025 23:10:49 +0000 (16:10 -0700)
commit81a0286cefe6f81744160d3524d70e67479b314b
tree572e4340e1ce398b5061a185271de3934692f373
parenta7f74e782e274e8255808c165cb2cf63ee0876cc
wifi: ath12k: Add support to RTT stats

Add support to request RTT stats from firmware through HTT stats type 65
and 66. HTT stats type 65 support RTT response stats, RTT hardware stats,
RTT to-be-read self-generated stats and RTT command-result stats and HTT
stats type 66 support RTT initiator stats and RTT hardware stats. These
stats give information about number of scheduled commands, responder
allocation and termination count, initiator termination count, PASN
authentication drop and receive counts, etc.

Note: WCN firmware version -
WLAN.HMT.1.1.c5-00284.1-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3 does not support
tags HTT_STATS_PDEV_RTT_RESP_STATS_TAG(194),
HTT_STATS_PDEV_RTT_INIT_STATS_TAG(195),
HTT_STATS_PDEV_RTT_HW_STATS_TAG(196),
HTT_STATS_PDEV_RTT_TBR_SELFGEN_QUEUED_STATS_TAG(197) and
HTT_STATS_PDEV_RTT_TBR_CMD_RESULT_STATS_TAG(198), currently.

Sample output:
echo 65 > /sys/kernel/debug/ath12k/pci-0000\:58\:00.0/mac0/htt_stats_type
cat /sys/kernel/debug/ath12k/pci-0000\:58\:00.0/mac0/htt_stats
HTT_PDEV_RTT_RESP_STATS_TLV:
pdev_id = 0
tx_11mc_ftm_suc = 0
tx_11mc_ftm_suc_retry = 0
tx_11mc_ftm_fail = 0
.....

HTT_STATS_PDEV_RTT_HW_STATS_TAG:
ista_ranging_ndpa_cnt = 0
ista_ranging_ndp_cnt = 0
ista_ranging_i2r_lmr_cnt = 0
rtsa_ranging_resp_cnt = 0
.....

HTT_STATS_PDEV_RTT_TBR_SELFGEN_QUEUED_STATS_TAG:
SU poll = 0
SU sound = 0
.....
MU poll = 0
MU sound = 0
.....

HTT_STATS_PDEV_RTT_TBR_CMD_RESULT_STATS_TAG:
num_sch_cmd_status_0:
SU frame_SGEN_TF_POLL = 0
SU frame_SGEN_TF_SOUND = 0
SU frame_SGEN_TBR_NDPA = 0
SU frame_SGEN_TBR_NDP = 0
SU frame_SGEN_TBR_LMR = 0
SU frame_SGEN_TF_REPORT = 0
MU frame_SGEN_TF_POLL = 0
.....

echo 66 > /sys/kernel/debug/ath12k/pci-0000\:58\:00.0/mac0/htt_stats_type
cat /sys/kernel/debug/ath12k/pci-0000\:58\:00.0/mac0/htt_stats
HTT_PDEV_RTT_INIT_STATS_TLV:
pdev_id = 0
tx_11mc_ftmr_cnt = 0
tx_11mc_ftmr_fail = 0
tx_11mc_ftmr_suc_retry = 0
rx_11mc_ftm_cnt = 0
rx_11az_ftm_cnt = 0
.....

HTT_STATS_PDEV_RTT_HW_STATS_TAG:
ista_ranging_ndpa_cnt = 0
ista_ranging_ndp_cnt = 0
ista_ranging_i2r_lmr_cnt = 0
rtsa_ranging_resp_cnt = 0
rtsa_ranging_ndp_cnt = 0
rsta_ranging_lmr_cnt = 0
.....

Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.4.1-00199-QCAHKSWPL_SILICONZ-1

Signed-off-by: Maharaja Kennadyrajan <quic_mkenna@quicinc.com>
Signed-off-by: Roopni Devanathan <quic_rdevanat@quicinc.com>
Reviewed-by: Vasanthakumar Thiagarajan <vasanthakumar.thiagarajan@oss.qualcomm.com>
Link: https://patch.msgid.link/20250617051136.264193-3-quic_rdevanat@quicinc.com
[rename enum ath12k_htt_stats_txsend_ftype_t]
Signed-off-by: Jeff Johnson <jeff.johnson@oss.qualcomm.com>
drivers/net/wireless/ath/ath12k/debugfs_htt_stats.c
drivers/net/wireless/ath/ath12k/debugfs_htt_stats.h