Thiraviyam Mariyappan <quic_tmariyap@xxxxxxxxxxx> wrote: > Currently, ath11k HTT debugfs uses the HTT interface to send stats request > to target and response from target. Here HTT interface already overloaded > with the data path stats. To reduce the load from HTT, using WMI interface > to print the control path stats. This patch come up with framework for > control path stats using wmi interface. > For now, this framework supports PDEV_STAT and further stats will be > added. > > WMI control path stats command and results are below: > echo <stats_id> <action> > > sys/kernel/debug/ieee80211/phy3/netdev\:wlan3/wmi_ctrl_stats > cat sys/kernel/debug/ieee80211/phy3/netdev\:wlan3/wmi_ctrl_stats > stats_id: > 1 -> WMI_REQ_CTRL_PATH_PDEV_STATS > action: > 1 -> stats get > 2 -> stats reset > > WMI_CTRL_PATH_PDEV_STATS: > req_id = 26 > fw_tx_mgmt_subtype = 0:0, 1:0, 2:0, 3:0, 4:0, 5:109, 6:0, 7:0, 8:344, ... > fw_rx_mgmt_subtype = 0:0, 1:0, 2:0, 3:0, 4:0, 5:0, 6:0, 7:0, 8:0, 9:0, ... > scan_fail_dfs_violation_time_ms = 0 > nol_chk_fail_last_chan_freq = 0 > nol_chk_fail_time_stamp_ms = 0 > tot_peer_create_cnt = 2 > tot_peer_del_cnt = 1 > tot_peer_del_resp_cnt = 1 > vdev_pause_fail_rt_to_sched_algo_fifo_full_cnt = 0 > > Tested-on: WLAN.HK.2.5.0.1-00517-QCAHKSWPL_SILICONZ-1 > > Signed-off-by: Thiraviyam Mariyappan <quic_tmariyap@xxxxxxxxxxx> > Signed-off-by: Kalle Valo <quic_kvalo@xxxxxxxxxxx> This added new warnings: drivers/net/wireless/ath/ath11k/debugfs.c:1600: line length of 92 exceeds 90 columns drivers/net/wireless/ath/ath11k/debugfs.c:1666: line length of 93 exceeds 90 columns drivers/net/wireless/ath/ath11k/wmi.c:2702: line length of 94 exceeds 90 columns drivers/net/wireless/ath/ath11k/wmi.c:2703: line length of 97 exceeds 90 columns drivers/net/wireless/ath/ath11k/wmi.c:7037: line length of 97 exceeds 90 columns drivers/net/wireless/ath/ath11k/wmi.c:7085: line length of 97 exceeds 90 columns I fixed them in the pending branch. But in the future please use ath11k-check. There was one way too long field: u32 vdev_pause_fail_rt_to_sched_algo_fifo_full_cnt; I renamed that to: u32 vdev_pause_fail_rt; In ath11k_wmi_send_wmi_ctrl_stats_cmd() the error handling was unnecessarily using else branch which caused long lines, I fixed that by avoiding else branches. Also I saw some other things, like calling kzalloc() in variable declarations, but I will look at them in detail later. Here's what I did now: https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git/commit/?h=pending&id=28bc80a6a9c675fdc7003934a9493d9e95570f5f -- https://patchwork.kernel.org/project/linux-wireless/patch/1654176800-29003-1-git-send-email-quic_tmariyap@xxxxxxxxxxx/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches