Ramya Gnanasekar <quic_rgnanase@xxxxxxxxxxx> writes: >>> +static inline void >>> +ath12k_htt_print_tx_pdev_mu_ppdu_dist_stats_tlv(const void *tag_buf, >>> + struct debug_htt_stats_req *stats_req) >>> +{ >>> + const struct ath12k_htt_tx_pdev_mu_ppdu_dist_stats_tlv >>> *htt_stats_buf = tag_buf; >>> + char *mode; >>> + u8 j, hw_mode, i, str_buf_len; >>> + u8 *buf = stats_req->buf; >>> + u32 len = stats_req->buf_len; >>> + u32 buf_len = ATH12K_HTT_STATS_BUF_SIZE; >>> + u32 stats_value; >>> + u8 max_ppdu = ATH12K_HTT_STATS_MAX_NUM_MU_PPDU_PER_BURST; >>> + u8 max_sched = ATH12K_HTT_STATS_MAX_NUM_SCHED_STATUS; >>> + char str_buf[ATH12K_HTT_MAX_STRING_LEN]; >>> + >>> + hw_mode = le32_to_cpu(htt_stats_buf->hw_mode); >>> + >>> + switch (hw_mode) { >>> + case ATH12K_HTT_STATS_HWMODE_AC: >>> + len += scnprintf(buf + len, buf_len - len, >>> + "HTT_TX_PDEV_MU_PPDU_DISTRIBUTION_STATS:\n"); >>> + mode = "ac"; >>> + break; >>> + case ATH12K_HTT_STATS_HWMODE_AX: >>> + mode = "ax"; >>> + break; >>> + case ATH12K_HTT_STATS_HWMODE_BE: >>> + mode = "be"; >>> + break; >>> + default: >>> + return; >>> + } >> >> Why are we not adding "HTT_TX_PDEV_MU_PPDU_DISTRIBUTION_STATS:\n" with >> ax and be modes? >> > Sorry for the delayed response. I was on OoO for a week. No worries. > We will receive this TLV for each hw modes. Since > "HTT_TX_PDEV_MU_PPDU_DISTRIBUTION_STATS:\n" is header and it would be > suffice to print it once, hence added it inside hw mode ac which will be > the first hw mode integrated inside the TLV. I would have expected that we print that outside of ath12k_htt_print_tx_pdev_mu_ppdu_dist_stats_tlv(), before the function is called at all. -- https://patchwork.kernel.org/project/linux-wireless/list/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches