diff options
Diffstat (limited to 'fw/htt_stats.h')
-rw-r--r-- | fw/htt_stats.h | 91 |
1 files changed, 88 insertions, 3 deletions
diff --git a/fw/htt_stats.h b/fw/htt_stats.h index 35ed610..674176f 100644 --- a/fw/htt_stats.h +++ b/fw/htt_stats.h @@ -357,6 +357,17 @@ enum htt_dbg_ext_stats_type { */ HTT_DBG_EXT_STA_11AX_UL_STATS = 33, + /* HTT_DBG_EXT_VDEV_RTT_RESP_STATS + * PARAMS: + * - config_param0: + * [Bit7 : Bit0] vdev_id:8 + * [Bit31 : Bit8] rsvd:24 + * RESP MSG: + * - + */ + HTT_DBG_EXT_VDEV_RTT_RESP_STATS = 34, + + /* keep this last */ HTT_DBG_NUM_EXT_STATS = 256, }; @@ -499,6 +510,7 @@ typedef enum { HTT_STATS_TXBF_OFDMA_BRP_STATS_TAG = 115, /* htt_txbf_ofdma_brp_stats_tlv */ HTT_STATS_TXBF_OFDMA_STEER_STATS_TAG = 116, /* htt_txbf_ofdma_steer_stats_tlv */ HTT_STATS_STA_UL_OFDMA_STATS_TAG = 117, /* htt_sta_ul_ofdma_stats_tlv */ + HTT_STATS_VDEV_RTT_RESP_STATS_TAG = 118, /* htt_vdev_rtt_resp_stats_tlv */ HTT_STATS_MAX_TAG, } htt_tlv_tag_t; @@ -759,6 +771,10 @@ typedef struct { A_UINT32 num_mu_peer_blacklisted; /* Num of times mu_ofdma seq posted */ A_UINT32 mu_ofdma_seq_posted; + /* Num of times UL MU MIMO seq posted */ + A_UINT32 ul_mumimo_seq_posted; + /* Num of times UL OFDMA seq posted */ + A_UINT32 ul_ofdma_seq_posted; } htt_tx_pdev_stats_cmn_tlv; #define HTT_TX_PDEV_STATS_URRN_TLV_SZ(_num_elems) (sizeof(A_UINT32) * (_num_elems)) @@ -1850,10 +1866,10 @@ typedef enum { HTT_TX_SELFGEN_SCH_TSFLAG_RESP_CBF_BW_MISMATCH_ERR, HTT_TX_SELFGEN_SCH_TSFLAG_RETRY_COUNT_FAIL_ERR, HTT_TX_SELFGEN_SCH_TSFLAG_RESP_TOO_LATE_RECEIVED_ERR, - HTT_TX_SELFGEN_SCH_TSFLAG_ERR_RESERVED, + HTT_TX_SELFGEN_SCH_TSFLAG_SIFS_STALL_NO_NEXT_CMD_ERR, - HTT_TX_SELFGEN_NUM_SCH_TSFLAG_ERROR_STATS = 8, /* includes RESERVED */ - HTT_TX_SELFGEN_SCH_TSFLAG_ERROR_STATS_VALID = 7 /* not incl. RESERVED */ + HTT_TX_SELFGEN_NUM_SCH_TSFLAG_ERROR_STATS = 8, + HTT_TX_SELFGEN_SCH_TSFLAG_ERROR_STATS_VALID = 8 } htt_tx_selfgen_sch_tsflag_error_stats; #define HTT_TX_PDEV_STATS_NUM_AC_MUMIMO_USER_STATS 4 @@ -1941,6 +1957,7 @@ typedef struct { A_UINT32 ax_mu_mimo_ndpa_queued; A_UINT32 ax_mu_mimo_ndp_queued; A_UINT32 ax_mu_mimo_brpoll_queued[HTT_TX_PDEV_STATS_NUM_AX_MUMIMO_USER_STATS - 1]; + A_UINT32 ax_ul_mumimo_trigger[HTT_TX_PDEV_STATS_NUM_AX_MUMIMO_USER_STATS]; } htt_tx_selfgen_ax_stats_tlv; typedef struct { @@ -2059,6 +2076,7 @@ typedef struct { A_UINT32 ax_mu_mimo_ndpa_flushed; A_UINT32 ax_mu_mimo_ndp_flushed; A_UINT32 ax_mu_mimo_brpoll_flushed[HTT_TX_PDEV_STATS_NUM_AX_MUMIMO_USER_STATS - 1]; + A_UINT32 ax_ul_mumimo_trigger_err[HTT_TX_PDEV_STATS_NUM_AX_MUMIMO_USER_STATS]; } htt_tx_selfgen_ax_err_stats_tlv; typedef struct { @@ -2655,6 +2673,9 @@ typedef struct { A_UINT32 desc_threshold; A_UINT32 hwsch_tqm_invalid_status; A_UINT32 missed_tqm_gen_mpdus; + A_UINT32 tqm_active_tids; + A_UINT32 tqm_inactive_tids; + A_UINT32 tqm_active_msduq_flows; } htt_tx_tqm_cmn_stats_tlv; typedef struct { @@ -4617,6 +4638,48 @@ typedef struct { */ A_UINT32 num_sr_rx_ge_pd_rssi_thr; }; + + /* + * Count of number of times OBSS frames were aborted and non-SRG + * opportunities were created. Non-SRG opportunities are created when + * incoming OBSS RSSI is lesser than the global configured non-SRG RSSI + * threshold and non-SRG OBSS color / non-SRG OBSS BSSID registers + * allow non-SRG TX. + */ + A_UINT32 num_non_srg_opportunities; + /* + * Count of number of times TX PPDU were transmitted using non-SRG + * opportunities created. Incoming OBSS frame RSSI is compared with per + * PPDU non-SRG RSSI threshold configured in each PPDU. If incoming OBSS + * RSSI < non-SRG RSSI threshold configured in each PPDU, then non-SRG + * tranmission happens. + */ + A_UINT32 num_non_srg_ppdu_tried; + /* + * Count of number of times non-SRG based TX transmissions were successful + */ + A_UINT32 num_non_srg_ppdu_success; + /* + * Count of number of times OBSS frames were aborted and SRG opportunities + * were created. Srg opportunities are created when incoming OBSS RSSI + * is less than the global configured SRG RSSI threshold and SRC OBSS + * color / SRG OBSS BSSID / SRG partial bssid / SRG BSS color bitmap + * registers allow SRG TX. + */ + A_UINT32 num_srg_opportunities; + /* + * Count of number of times TX PPDU were transmitted using SRG + * opportunities created. + * Incoming OBSS frame RSSI is compared with per PPDU SRG RSSI + * threshold configured in each PPDU. + * If incoming OBSS RSSI < SRG RSSI threshold configured in each PPDU, + * then SRG tranmission happens. + */ + A_UINT32 num_srg_ppdu_tried; + /* + * Count of number of times SRG based TX transmissions were successful + */ + A_UINT32 num_srg_ppdu_success; } htt_pdev_obss_pd_stats_tlv; /* NOTE: @@ -4986,5 +5049,27 @@ typedef struct { htt_sta_ul_ofdma_stats_tlv ul_ofdma_sta_stats; } htt_sta_11ax_ul_stats_t; +typedef struct { + htt_tlv_hdr_t tlv_hdr; + /* No of Fine Timing Measurement frames transmitted successfully */ + A_UINT32 tx_ftm_suc; + /* No of Fine Timing Measurement frames transmitted successfully after retry */ + A_UINT32 tx_ftm_suc_retry; + /* No of Fine Timing Measurement frames not transmitted successfully */ + A_UINT32 tx_ftm_fail; + /* No of Fine Timing Measurement Request frames received, including initial, non-initial, and duplicates */ + A_UINT32 rx_ftmr_cnt; + /* No of duplicate Fine Timing Measurement Request frames received, including both initial and non-initial */ + A_UINT32 rx_ftmr_dup_cnt; + /* No of initial Fine Timing Measurement Request frames received */ + A_UINT32 rx_iftmr_cnt; + /* No of duplicate initial Fine Timing Measurement Request frames received */ + A_UINT32 rx_iftmr_dup_cnt; +} htt_vdev_rtt_resp_stats_tlv; + +typedef struct { + htt_vdev_rtt_resp_stats_tlv vdev_rtt_resp_stats; +} htt_vdev_rtt_resp_stats_t; + #endif /* __HTT_STATS_H__ */ |