diff options
| author | spuligil <spuligil@codeaurora.org> | 2019-09-24 06:00:53 -0700 |
|---|---|---|
| committer | spuligil <spuligil@codeaurora.org> | 2019-09-24 06:00:54 -0700 |
| commit | d8e8fcb95c467b1b34327c2b44ed6b126a135cf4 (patch) | |
| tree | 112ed46c31a30410b0823639195eb096148f034d | |
| parent | e81f5513dfc893401cb2f8050dfd8c8629591521 (diff) | |
fw-api: CL 8214264 - update fw common interface files
HTT stats: define HTT_PEER_SCHED_STATS_TLV
Change-Id: I4a5caaaa13f0b17781fe5749d5c945e0f416bcd0
CRs-Fixed: 2262693
| -rw-r--r-- | fw/htt_stats.h | 30 |
1 files changed, 28 insertions, 2 deletions
diff --git a/fw/htt_stats.h b/fw/htt_stats.h index 388154d9ccfb..c2f4e8d648dc 100644 --- a/fw/htt_stats.h +++ b/fw/htt_stats.h @@ -143,6 +143,7 @@ enum htt_dbg_ext_stats_type { * 4 bit htt_tx_tid_stats_tlv/htt_tx_tid_stats_v1_tlv * 5 bit htt_rx_tid_stats_tlv * 6 bit htt_msdu_flow_stats_tlv + * 7 bit htt_peer_sched_stats_tlv * - config_param2: [Bit31 : Bit0] mac_addr31to0 * - config_param3: [Bit15 : Bit0] mac_addr47to32 * [Bit 16] If this bit is set, reset per peer stats @@ -439,6 +440,7 @@ typedef enum { HTT_STATS_RX_PDEV_UL_MIMO_USER_STATS_TAG = 96, /* htt_rx_pdev_ul_mimo_user_stats_tlv */ HTT_STATS_RX_PDEV_UL_MUMIMO_TRIG_STATS_TAG = 97, /* htt_rx_pdev_ul_mumimo_trig_stats_tlv */ HTT_STATS_RX_FSE_STATS_TAG = 98, /* htt_rx_fse_stats_tlv */ + HTT_STATS_PEER_SCHED_STATS_TAG = 99, /* htt_peer_sched_stats_tlv */ HTT_STATS_MAX_TAG, } htt_tlv_tag_t; @@ -1333,10 +1335,26 @@ typedef enum { HTT_TX_TID_STATS_TLV = 4, HTT_RX_TID_STATS_TLV = 5, HTT_MSDU_FLOW_STATS_TLV = 6, + HTT_PEER_SCHED_STATS_TLV = 7, HTT_PEER_STATS_MAX_TLV = 31, } htt_peer_stats_tlv_enum; +typedef struct { + htt_tlv_hdr_t tlv_hdr; + A_UINT32 peer_id; + /* Num of DL schedules for peer */ + A_UINT32 num_sched_dl; + /* Num od UL schedules for peer */ + A_UINT32 num_sched_ul; + /* Peer TX time */ + A_UINT32 peer_tx_active_dur_us_low; + A_UINT32 peer_tx_active_dur_us_high; + /* Peer RX time */ + A_UINT32 peer_rx_active_dur_us_low; + A_UINT32 peer_rx_active_dur_us_high; +} htt_peer_sched_stats_tlv; + /* config_param0 */ #define HTT_DBG_EXT_STATS_PEER_INFO_IS_MAC_ADDR_M 0x00000001 #define HTT_DBG_EXT_STATS_PEER_INFO_IS_MAC_ADDR_S 0 @@ -1385,6 +1403,7 @@ typedef enum { * - HTT_STATS_RX_TID_DETAILS_TAG (multiple) * - HTT_STATS_PEER_MSDU_FLOWQ_TAG (multiple) * - HTT_STATS_TX_TID_DETAILS_V1_TAG (multiple) + * - HTT_STATS_PEER_SCHED_STATS_TAG */ /* NOTE: * This structure is for documentation, and cannot be safely used directly. @@ -1401,6 +1420,7 @@ typedef struct _htt_peer_stats { htt_rx_tid_stats_tlv rx_tid_stats[1]; htt_msdu_flow_stats_tlv msdu_flowq[1]; htt_tx_tid_stats_v1_tlv tx_tid_stats_v1[1]; + htt_peer_sched_stats_tlv peer_sched_stats; } htt_peer_stats_t; /* =========== ACTIVE PEER LIST ========== */ @@ -1898,7 +1918,7 @@ typedef struct { /* NOTE: Variable length TLV, use length spec to infer array size */ typedef struct { htt_tlv_hdr_t tlv_hdr; - /* Scheduler command posted per tx_mode su / mu mimo 11ac / mu mimo 11ax / mu ofdma */ + /* Scheduler command posted per tx_mode */ A_UINT32 sched_cmd_posted[1]; /* HTT_TX_PDEV_SCHED_TX_MODE_MAX */ } htt_sched_txq_cmd_posted_tlv_v; @@ -1907,7 +1927,7 @@ typedef struct { /* NOTE: Variable length TLV, use length spec to infer array size */ typedef struct { htt_tlv_hdr_t tlv_hdr; - /* Scheduler command reaped per tx_mode su / mu mimo 11ac / mu mimo 11ax / mu ofdma */ + /* Scheduler command reaped per tx_mode */ A_UINT32 sched_cmd_reaped[1]; /* HTT_TX_PDEV_SCHED_TX_MODE_MAX */ } htt_sched_txq_cmd_reaped_tlv_v; @@ -2041,6 +2061,12 @@ typedef struct { A_UINT32 su_min_txtime_sched_delay; /* scheduled via no delay */ A_UINT32 su_no_delay; + /* Num of supercycles for this TxQ */ + A_UINT32 num_supercycles; + /* Num of subcycles with sort for this TxQ */ + A_UINT32 num_subcycles_with_sort; + /* Num of subcycles without sort for this Txq */ + A_UINT32 num_subcycles_no_sort; } htt_tx_pdev_stats_sched_per_txq_tlv; #define HTT_STATS_TX_SCHED_CMN_MAC_ID_M 0x000000ff |
