wifi: ath12k: Add Support to Calculate and Display TPC Values
Transmit Power Control(TPC) stats should display per chain TPC value per
radio. Add debugfs support to read and display TPC stats type and TPC
stats. Take power values for each preamble type, rate and NSS combination
from a particular index from each power arrays based on number of chains,
NSS, modes, MCS and tx beamforming enabled/disabled parameters. Minimum
of the values taken from reg power table, rates and Conformance Test
Limit(CTL) array table should give the TPC which is in 0.25 dBm steps.
Sample Output:
-------------
echo 1 > /sys/kernel/debug/ath12k/pci-0000\:06\:00.0/mac0/tpc_stats_type
cat /sys/kernel/debug/ath12k/pci-0000\:06\:00.0/mac0/tpc_stats
*************** TPC config **************
* powers are in 0.25 dBm steps
reg domain-22 chan freq-5955
power limit-126 max reg-domain Power-252
No.of tx chain-4 No.of rates-1164
**************** SU WITH TXBF ****************
TPC values for Active chains
Rate idx Preamble Rate code 1-Chain 2-Chain 3-Chain 4-Chain
4 OFDM 0x000 39 15 1 -9
5 OFDM 0x001 39 15 1 -9
.....
12 HT20 0x200 40 16 2 -8
13 HT20 0x201 40 16 2 -8
.....
44 HT40 0x200 88 88 88 88
45 HT40 0x201 88 88 88 88
.....
76 VHT20 0x300 40 16 2 -8
77 VHT20 0x301 40 16 2 -8
.....
172 VHT40 0x300 88 88 88 88
173 VHT40 0x301 88 88 88 88
.....
412 HE20 0x400 88 88 88 88
413 HE20 0x401 88 88 88 88
.....
508 HE40 0x400 76 76 76 76
509 HE40 0x401 76 76 76 76
.....
748 EHT20 0x50e 88 88 88 88
749 EHT20 0x50f 88 88 88 88
.....
812 EHT40 0x50e 88 88 88 88
813 EHT40 0x50f 88 88 88 88
.....
Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.1.1-00214-QCAHKSWPL_SILICONZ-1
Signed-off-by: Sowmiya Sree Elavalagan <quic_ssreeela@quicinc.com>
Co-developed-by: Ramya Gnanasekar <quic_rgnanase@quicinc.com>
Signed-off-by: Ramya Gnanasekar <quic_rgnanase@quicinc.com>
Co-developed-by: Roopni Devanathan <quic_rdevanat@quicinc.com>
Signed-off-by: Roopni Devanathan <quic_rdevanat@quicinc.com>
Reviewed-by: Aditya Kumar Singh <aditya.kumar.singh@oss.qualcomm.com>
Link: https://patch.msgid.link/20250130061104.962124-3-quic_rdevanat@quicinc.com
Signed-off-by: Jeff Johnson <jeff.johnson@oss.qualcomm.com>