Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b4d12c7e authored by Linux Build Service Account's avatar Linux Build Service Account
Browse files

Merge 50c4615a on remote branch

Change-Id: I5e6dfdc2487225920b2b6f58d034eb3d1456d932
parents 5d60dac5 50c4615a
Loading
Loading
Loading
Loading
+94 −52
Original line number Diff line number Diff line
@@ -338,6 +338,8 @@ enum HTT_OPTION_TLV_TAGS {
    HTT_OPTION_TLV_TAG_TCL_METADATA_VER         = 0x5,
};
#define HTT_TCL_METADATA_VER_SZ 4
PREPACK struct htt_option_tlv_header_t {
    A_UINT8 tag;
    A_UINT8 length;
@@ -5682,10 +5684,11 @@ enum htt_srng_ring_id {
 *                    phyrx_abort_request_reason enum definition.
 * dword14- b'0:15  - rx_mpdu_start_word_mask: word mask for rx mpdu start,
 *                    applicable if word mask enabled
 *        - b'16:31 - rx_mpdu_end_word_mask: word mask value for rx mpdu end,
 *        - b'16:18 - rx_mpdu_end_word_mask: word mask value for rx mpdu end,
 *                    applicable if word mask enabled
 *        - b'19:31 - rsvd7
 * dword15- b'0:16  - rx_msdu_end_word_mask
            b'17:31 - rsvd5
 *        - b'17:31 - rsvd5
 * dword17- b'0     - en_rx_tlv_pkt_offset:
 *                    0:  RX_PKT TLV logging at offset 0 for the subsequent
 *                        buffer
@@ -5738,7 +5741,8 @@ PREPACK struct htt_rx_ring_selection_cfg_t {
    A_UINT32 phy_err_mask;
    A_UINT32 phy_err_mask_cont;
    A_UINT32 rx_mpdu_start_word_mask:16,
             rx_mpdu_end_word_mask:  16;
             rx_mpdu_end_word_mask:  3,
             rsvd7:                  13;
    A_UINT32 rx_msdu_end_word_mask:  17,
             rsvd5:                  15;
    A_UINT32 en_rx_tlv_pkt_offset:   1,
@@ -6182,15 +6186,15 @@ PREPACK struct htt_rx_ring_selection_cfg_t {
         ((_var) |= ((_val) <<  HTT_RX_RING_SELECTION_CFG_RX_MPDU_START_WORD_MASK_S)); \
       } while (0)
#define HTT_RX_RING_SELECTION_CFG_RX_MPDU_END_WORD_MASK_M 0xFFFF0000
#define HTT_RX_RING_SELECTION_CFG_RX_MPDU_END_WORD_MASK_M 0x00070000
#define HTT_RX_RING_SELECTION_CFG_RX_MPDU_END_WORD_MASK_S 16
#define HTT_RX_RING_SELECTION_CFG_RX_MPDU_END_WORD_MASK_GET(_var) \
       (((_var) & HTT_RX_RING_SELECTION_CFG_RX_MPDU_END_WORD_MASK_M)>> \
        HTT_RX_RING_SELECTION_CFG_RX_MPDU_START_WORD_MASK_S)
#define HTT_RX_RING_SELECTION_CFG_RX_MPDU_START_WORD_MASK_SET(_var, _val) \
        HTT_RX_RING_SELECTION_CFG_RX_MPDU_END_WORD_MASK_S)
#define HTT_RX_RING_SELECTION_CFG_RX_MPDU_END_WORD_MASK_SET(_var, _val) \
       do { \
                HTT_CHECK_SET_VAL(HTT_RX_RING_SELECTION_CFG_RX_MPDU_START_WORD_MASK, _val);\
         ((_var) |= ((_val) <<  HTT_RX_RING_SELECTION_CFG_RX_MPDU_START_WORD_MASK_S)); \
                HTT_CHECK_SET_VAL(HTT_RX_RING_SELECTION_CFG_RX_MPDU_END_WORD_MASK, _val);\
         ((_var) |= ((_val) <<  HTT_RX_RING_SELECTION_CFG_RX_MPDU_END_WORD_MASK_S)); \
       } while (0)
#define HTT_RX_RING_SELECTION_CFG_RX_MSDU_END_WORD_MASK_M 0x0001FFFF
@@ -9355,7 +9359,7 @@ PREPACK struct htt_h2t_sawf_def_queues_map_req {
 * dword0 - b'7:0       - msg_type: This will be set to
 *                        0x1d (HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ)
 *          b'15:8      - service class ID
 * dword1 - b'31:16     - peer ID
 *          b'31:16     - peer ID
 *                        A HTT_H2T_SAWF_DEF_QUEUES_UNMAP_PEER_ID_WILDCARD
 *                        value for peer ID indicates that the target should
 *                        apply the UNMAP_REQ to all peers.
@@ -9371,27 +9375,26 @@ PREPACK struct htt_h2t_sawf_def_queues_unmap_req {
#define HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_SVC_CLASS_ID_M             0x0000FF00
#define HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_SVC_CLASS_ID_S             8
#define HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_SVC_CLASS_ID_GET(_var) \
    (((_var) & HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_SVC_CLASS_ID_M) >> \
#define HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_SVC_CLASS_ID_GET(word0) \
    (((word0) & HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_SVC_CLASS_ID_M) >> \
     HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_SVC_CLASS_ID_S)
#define HTT_RX_SAWF_DEF_QUEUES_UNMAP_REQ_SVC_CLASS_ID_SET(_var, _val) \
#define HTT_RX_SAWF_DEF_QUEUES_UNMAP_REQ_SVC_CLASS_ID_SET(word0, _val) \
    do { \
        HTT_CHECK_SET_VAL(HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_SVC_CLASS_ID, _val); \
        ((_var) |= ((_val) << HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_SVC_CLASS_ID_S)); \
        ((word0) |= ((_val) << HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_SVC_CLASS_ID_S)); \
    } while (0)
#define HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_PEER_ID_M                  0xFFFF0000
#define HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_PEER_ID_S                  16
#define HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_PEER_ID_GET(_var) \
    (((_var) & HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_PEER_ID_M) >> \
#define HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_PEER_ID_GET(word0) \
    (((word0) & HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_PEER_ID_M) >> \
     HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_PEER_ID_S)
#define HTT_RX_SAWF_DEF_QUEUES_UNMAP_REQ_PEER_ID_SET(_var, _val) \
#define HTT_RX_SAWF_DEF_QUEUES_UNMAP_REQ_PEER_ID_SET(word0, _val) \
    do { \
        HTT_CHECK_SET_VAL(HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_PEER_ID, _val); \
        ((_var) |= ((_val) << HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_PEER_ID_S)); \
        ((word0) |= ((_val) << HTT_H2T_SAWF_DEF_QUEUES_UNMAP_REQ_PEER_ID_S)); \
    } while (0)
/*
 * MSG_TYPE => HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ
 *
@@ -9403,45 +9406,74 @@ PREPACK struct htt_h2t_sawf_def_queues_unmap_req {
 * to report what service class (if any) the default MSDU queues for
 * each of the specified TIDs are linked to.
 *
 * |31                          16|15           8|7            0|
 * |31                          16|15           8|7        1|  0|
 * |------------------------------+--------------+--------------|
 * |             peer ID          |   TID mask   |   msg type   |
 * |------------------------------------------------------------|
 * |                           reserved                     |ETO|
 * |------------------------------------------------------------|
 * Header fields:
 * dword0 - b'7:0       - msg_type: This will be set to
 *                        0x1e (HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ)
 *          b'15:8      - TID mask
 * dword1 - b'31:16     - peer ID
 *          b'31:16     - peer ID
 * dword1 - b'0         - "Existing Tids Only" flag
 *                        If this flag is set, the DEF_QUEUES_MAP_REPORT_CONF
 *                        message generated by this REQ will only show the
 *                        mapping for TIDs that actually exist in the target's
 *                        peer object.
 *                        Any TIDs that are covered by a MAP_REQ but which
 *                        do not actually exist will be shown as being
 *                        unmapped (i.e. svc class ID 0xff).
 *                        If this flag is cleared, the MAP_REPORT_CONF message
 *                        will consider not only the mapping of TIDs currently
 *                        existing in the peer, but also the mapping that will
 *                        be applied for any TID objects created within this
 *                        peer in the future.
 *          b'31:1      - reserved for future use
 */
PREPACK struct htt_h2t_sawf_def_queues_map_report_req {
    A_UINT32 msg_type          :8,
             tid_mask          :8,
             peer_id           :16;
    A_UINT32 existing_tids_only:1,
             reserved          :31;
} POSTPACK;
#define HTT_SAWF_DEF_QUEUES_MAP_REPORT_REQ_BYTES 4
#define HTT_SAWF_DEF_QUEUES_MAP_REPORT_REQ_BYTES 8
#define HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_TID_MASK_M            0x0000FF00
#define HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_TID_MASK_S            8
#define HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_TID_MASK_GET(_var) \
    (((_var) & HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_TID_MASK_M) >> \
#define HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_TID_MASK_GET(word0) \
    (((word0) & HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_TID_MASK_M) >> \
     HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_TID_MASK_S)
#define HTT_RX_SAWF_DEF_QUEUES_MAP_REPORT_REQ_TID_MASK_SET(_var, _val) \
#define HTT_RX_SAWF_DEF_QUEUES_MAP_REPORT_REQ_TID_MASK_SET(word0, _val) \
    do { \
        HTT_CHECK_SET_VAL(HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_TID_MASK, _val); \
        ((_var) |= ((_val) << HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_TID_MASK_S));\
        ((word0) |= ((_val) << HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_TID_MASK_S));\
    } while (0)
#define HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_PEER_ID_M             0xFFFF0000
#define HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_PEER_ID_S             16
#define HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_PEER_ID_GET(_var) \
    (((_var) & HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_PEER_ID_M) >> \
#define HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_PEER_ID_GET(word0) \
    (((word0) & HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_PEER_ID_M) >> \
     HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_PEER_ID_S)
#define HTT_RX_SAWF_DEF_QUEUES_MAP_REPORT_REQ_PEER_ID_SET(_var, _val) \
#define HTT_RX_SAWF_DEF_QUEUES_MAP_REPORT_REQ_PEER_ID_SET(word0, _val) \
    do { \
        HTT_CHECK_SET_VAL(HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_PEER_ID, _val); \
        ((_var) |= ((_val) << HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_PEER_ID_S)); \
        ((word0) |= ((_val) << HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_PEER_ID_S)); \
    } while (0)
#define HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_EXISTING_TIDS_ONLY_M  0x00000001
#define HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_EXISTING_TIDS_ONLY_S  0
#define HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_EXISTING_TIDS_ONLY_GET(word1) \
    (((word1) & HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_EXISTING_TIDS_ONLY_M) >> \
     HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_EXISTING_TIDS_ONLY_S)
#define HTT_RX_SAWF_DEF_QUEUES_MAP_REPORT_REQ_EXISTING_TIDS_ONLY_SET(word1, _val) \
    do { \
        HTT_CHECK_SET_VAL(HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_EXISTING_TIDS_ONLY, _val); \
        ((word1) |= ((_val) << HTT_H2T_SAWF_DEF_QUEUES_MAP_REPORT_REQ_EXISTING_TIDS_ONLY_S)); \
    } while (0)
@@ -18060,15 +18092,15 @@ PREPACK struct htt_t2h_sawf_def_queues_map_report_conf {
 * of the newly created MSDUQ and some other identifiers to uniquely identity
 * the newly created MSDUQ
 *
 * |31    27|          24|23    16|15           11|10|9 8|7     4|3    0|
 * |------------------------------+----------------------+--------------|
 * |31    27|          24|23    16|15|14          11|10|9 8|7     4|3    0|
 * |------------------------------+------------------------+--------------|
 * |             peer ID          |         HTT qtype      |   msg type   |
 * |--------+---------------------+---------------+--+---+-------+------|
 * |reserved|               Ast Index             |FO|WC | HLOS  | remap|
 * |---------------------------------+--------------+--+---+-------+------|
 * |            reserved             |AST list index|FO|WC | HLOS  | remap|
 * |                                 |              |  |   | TID   | TID  |
 * |---------------------+----------------------------------------------|
 * |---------------------+------------------------------------------------|
 * |    reserved1        |               tgt_opaque_id                    |
 * |---------------------+----------------------------------------------|
 * |---------------------+------------------------------------------------|
 *
 * Header fields:
 *
@@ -18084,10 +18116,20 @@ PREPACK struct htt_t2h_sawf_def_queues_map_report_conf {
 *                        TCL Data Command : Beryllium
 *          b10         - flow_override (FO), as sent by host in
 *                        TCL Data Command: Beryllium
 *          b11:26      - ast_index
 *                        Dummy AST Index in case of Lithium,
 *                        Default AST Index in case of Beryllium
 *          b27:32      - reserved
 *          b11:14      - ast_list_idx
 *                        Array index into the list of extension AST entries
 *                        (not the actual AST 16-bit index).
 *                        The ast_list_idx is one-based, with the following
 *                        range of values:
 *                          - legacy targets supporting 16 user-defined
 *                            MSDU queues: 1-2
 *                          - legacy targets supporting 48 user-defined
 *                            MSDU queues: 1-6
 *                          - new targets: 0 (peer_id is used instead)
 *                        Note that since ast_list_idx is one-based,
 *                        the host will need to subtract 1 to use it as an
 *                        index into a list of extension AST entries.
 *          b15:31      - reserved
 *
 * dword2 - b'23:0      - tgt_opaque_id Opaque Tx flow number which is a
 *                        unique MSDUQ id in firmware
@@ -18102,8 +18144,8 @@ PREPACK struct htt_t2h_sawf_msduq_event {
             hlos_tid                : 4,
             who_classify_info_sel   : 2,
             flow_override           : 1,
             ast_index               :16,
             reserved                : 5;
             ast_list_idx            : 4,
             reserved                :17;
    A_UINT32 tgt_opaque_id           :24,
             reserved1               : 8;
@@ -18178,15 +18220,15 @@ PREPACK struct htt_t2h_sawf_msduq_event {
        ((_var) |= ((_val) << HTT_T2H_SAWF_MSDUQ_INFO_HTT_FLOW_OVERRIDE_S)); \
    } while (0)
#define HTT_T2H_SAWF_MSDUQ_INFO_HTT_AST_INDEX_M              0x07FFF800
#define HTT_T2H_SAWF_MSDUQ_INFO_HTT_AST_INDEX_S                      11
#define HTT_T2H_SAWF_MSDUQ_INFO_HTT_AST_INDEX_GET(_var) \
    (((_var) & HTT_T2H_SAWF_MSDUQ_INFO_HTT_AST_INDEX_M) >> \
     HTT_T2H_SAWF_MSDUQ_INFO_HTT_AST_INDEX_S)
#define HTT_T2H_SAWF_MSDUQ_INFO_HTT_AST_INDEX_SET(_var, _val) \
#define HTT_T2H_SAWF_MSDUQ_INFO_HTT_AST_LIST_IDX_M              0x00007800
#define HTT_T2H_SAWF_MSDUQ_INFO_HTT_AST_LIST_IDX_S                      11
#define HTT_T2H_SAWF_MSDUQ_INFO_HTT_AST_LIST_IDX_GET(_var) \
    (((_var) & HTT_T2H_SAWF_MSDUQ_INFO_HTT_AST_LIST_IDX_M) >> \
     HTT_T2H_SAWF_MSDUQ_INFO_HTT_AST_LIST_IDX_S)
#define HTT_T2H_SAWF_MSDUQ_INFO_HTT_AST_LIST_IDX_SET(_var, _val) \
    do { \
        HTT_CHECK_SET_VAL(HTT_T2H_SAWF_MSDUQ_INFO_HTT_AST_INDEX, _val); \
        ((_var) |= ((_val) << HTT_T2H_SAWF_MSDUQ_INFO_HTT_AST_INDEX_S)); \
        HTT_CHECK_SET_VAL(HTT_T2H_SAWF_MSDUQ_INFO_HTT_AST_LIST_IDX, _val); \
        ((_var) |= ((_val) << HTT_T2H_SAWF_MSDUQ_INFO_HTT_AST_LIST_IDX_S)); \
    } while (0)
+88 −0
Original line number Diff line number Diff line
@@ -534,6 +534,26 @@ typedef enum {
    HTT_RX_UL_TRIGGER_STATS_UPLOAD_11BE_OFDMA,
} htt_rx_ul_trigger_stats_upload_t;

/*
 * The htt_rx_ul_mumimo_trigger_stats_upload_t enum values are
 * provided by the host as one of the config param elements in
 * the HTT_H2T EXT_STATS_REQ message, for stats type ==
 * HTT_DBG_EXT_STATS_PDEV_UL_MUMIMO_TRIG_STATS.
 */
typedef enum {
    /*
     * Upload 11ax UL MUMIMO RX Trigger stats
     * TLV: htt_rx_pdev_ul_mumimo_trig_stats_tlv
     */
    HTT_RX_UL_MUMIMO_TRIGGER_STATS_UPLOAD_11AX,

    /*
     * Upload 11be UL MUMIMO RX Trigger stats
     * TLV: htt_rx_pdev_ul_mumimo_trig_be_stats_tlv
     */
    HTT_RX_UL_MUMIMO_TRIGGER_STATS_UPLOAD_11BE,
} htt_rx_ul_mumimo_trigger_stats_upload_t;

#define HTT_STATS_MAX_STRING_SZ32 4
#define HTT_STATS_MACID_INVALID 0xff
#define HTT_TX_HWQ_MAX_DIFS_LATENCY_BINS 10
@@ -4129,6 +4149,40 @@ typedef enum {
#define HTT_TX_PDEV_STATS_NUM_BE_MCS_COUNTERS 16 /* 0...13,-2,-1 */
#define HTT_TX_PDEV_STATS_NUM_BE_BW_COUNTERS  5  /* 20,40,80,160,320 MHz */

#define HTT_TX_PDEV_STATS_NUM_HE_SIG_B_MCS_COUNTERS 6
#define HTT_TX_PDEV_STATS_NUM_EHT_SIG_MCS_COUNTERS 4

typedef enum {
    HTT_TX_PDEV_STATS_AX_RU_SIZE_26,
    HTT_TX_PDEV_STATS_AX_RU_SIZE_52,
    HTT_TX_PDEV_STATS_AX_RU_SIZE_106,
    HTT_TX_PDEV_STATS_AX_RU_SIZE_242,
    HTT_TX_PDEV_STATS_AX_RU_SIZE_484,
    HTT_TX_PDEV_STATS_AX_RU_SIZE_996,
    HTT_TX_PDEV_STATS_AX_RU_SIZE_996x2,
    HTT_TX_PDEV_STATS_NUM_AX_RU_SIZE_COUNTERS,
} HTT_TX_PDEV_STATS_AX_RU_SIZE;

typedef enum {
    HTT_TX_PDEV_STATS_BE_RU_SIZE_26,
    HTT_TX_PDEV_STATS_BE_RU_SIZE_52,
    HTT_TX_PDEV_STATS_BE_RU_SIZE_52_26,
    HTT_TX_PDEV_STATS_BE_RU_SIZE_106,
    HTT_TX_PDEV_STATS_BE_RU_SIZE_106_26,
    HTT_TX_PDEV_STATS_BE_RU_SIZE_242,
    HTT_TX_PDEV_STATS_BE_RU_SIZE_484,
    HTT_TX_PDEV_STATS_BE_RU_SIZE_484_242,
    HTT_TX_PDEV_STATS_BE_RU_SIZE_996,
    HTT_TX_PDEV_STATS_BE_RU_SIZE_996_484,
    HTT_TX_PDEV_STATS_BE_RU_SIZE_996_484_242,
    HTT_TX_PDEV_STATS_BE_RU_SIZE_996x2,
    HTT_TX_PDEV_STATS_BE_RU_SIZE_996x2_484,
    HTT_TX_PDEV_STATS_BE_RU_SIZE_996x3,
    HTT_TX_PDEV_STATS_BE_RU_SIZE_996x3_484,
    HTT_TX_PDEV_STATS_BE_RU_SIZE_996x4,
    HTT_TX_PDEV_STATS_NUM_BE_RU_SIZE_COUNTERS,
} HTT_TX_PDEV_STATS_BE_RU_SIZE;

typedef struct {
    htt_tlv_hdr_t tlv_hdr;

@@ -4251,6 +4305,10 @@ typedef struct {
    A_UINT32 reduced_ax_mu_mimo_tx_bw[HTT_TX_PDEV_STATS_NUM_REDUCED_CHAN_TYPES][HTT_TX_PDEV_STATS_NUM_BW_COUNTERS];
    /** 11AX HE DL MU OFDMA TX BW stats at reduced channel config */
    A_UINT32 reduced_ax_mu_ofdma_tx_bw[HTT_TX_PDEV_STATS_NUM_REDUCED_CHAN_TYPES][HTT_TX_PDEV_STATS_NUM_BW_COUNTERS];
    /** 11AX HE DL MU OFDMA TX RU Size stats */
    A_UINT32 ofdma_tx_ru_size[HTT_TX_PDEV_STATS_NUM_AX_RU_SIZE_COUNTERS];
    /** 11AX HE DL MU OFDMA HE-SIG-B MCS stats */
    A_UINT32 ofdma_he_sig_b_mcs[HTT_TX_PDEV_STATS_NUM_HE_SIG_B_MCS_COUNTERS];
} htt_tx_pdev_rate_stats_tlv;

typedef struct {
@@ -4329,6 +4387,10 @@ typedef struct {
    A_UINT32 be_ofdma_tx_bw[HTT_TX_PDEV_STATS_NUM_BE_BW_COUNTERS];
    /** 11BE EHT DL MU OFDMA TX guard interval stats */
    A_UINT32 be_ofdma_tx_gi[HTT_TX_PDEV_STATS_NUM_GI_COUNTERS][HTT_TX_PDEV_STATS_NUM_BE_MCS_COUNTERS];
    /** 11BE EHT DL MU OFDMA TX RU Size stats */
    A_UINT32 be_ofdma_tx_ru_size[HTT_TX_PDEV_STATS_NUM_BE_RU_SIZE_COUNTERS];
    /** 11BE EHT DL MU OFDMA EHT-SIG MCS stats */
    A_UINT32 be_ofdma_eht_sig_mcs[HTT_TX_PDEV_STATS_NUM_EHT_SIG_MCS_COUNTERS];
} htt_tx_pdev_rate_stats_be_ofdma_tlv;

/* STATS_TYPE : HTT_DBG_EXT_STATS_PDEV_TX_RATE
@@ -5640,26 +5702,49 @@ typedef struct {
    A_UINT32 cv_dma_not_done_err;
    A_UINT32 cv_update_failed;
    /* cv query stats */
    /** total times CV query happened */
    A_UINT32 cv_total_query;
    /** total pattern based CV query */
    A_UINT32 cv_total_pattern_query;
    /** total BW based CV query */
    A_UINT32 cv_total_bw_query;
    /** incorrect encoding in CV flags */
    A_UINT32 cv_invalid_bw_coding;
    /** forced sounding enabled for the peer */
    A_UINT32 cv_forced_sounding;
    /** standalone sounding sequence on-going */
    A_UINT32 cv_standalone_sounding;
    /** NC of available CV lower than expected */
    A_UINT32 cv_nc_mismatch;
    /** feedback type different from expected */
    A_UINT32 cv_fb_type_mismatch;
    /** CV BW not equal to expected BW for OFDMA */
    A_UINT32 cv_ofdma_bw_mismatch;
    /** CV BW not greater than or equal to expected BW */
    A_UINT32 cv_bw_mismatch;
    /** CV pattern not matching with the expected pattern */
    A_UINT32 cv_pattern_mismatch;
    /** CV available is of different preamble type than expected. */
    A_UINT32 cv_preamble_mismatch;
    /** NR of available CV is lower than expected. */
    A_UINT32 cv_nr_mismatch;
    /** CV in use count has exceeded threshold and cannot be used further. */
    A_UINT32 cv_in_use_cnt_exceeded;
    /** A valid CV has been found. */
    A_UINT32 cv_found;
    /** No valid CV was found. */
    A_UINT32 cv_not_found;
    /** Sounding per user in 320MHz bandwidth */
    A_UINT32 sounding_320[HTT_TX_PDEV_STATS_NUM_BE_MUMIMO_USER_STATS];
    /** Counts number of soundings for all steering modes in 320MHz bandwidth */
    A_UINT32 cbf_320[HTT_TXBF_MAX_NUM_OF_MODES];
    /* This part can be used for new counters added for CV query/upload. */
    /** non-trigger based ranging sequence on-going */
    A_UINT32 cv_ntbr_sounding;
    /** CV found, but upload is in progress. */
    A_UINT32 cv_found_upload_in_progress;
    /** Expired CV found during query. */
    A_UINT32 cv_expired_during_query;
} htt_tx_sounding_stats_tlv;

/* STATS_TYPE : HTT_DBG_EXT_STATS_TX_SOUNDING_INFO
@@ -6094,6 +6179,9 @@ typedef struct {

    htt_tx_rate_stats_t per_mcs[HTT_TX_TXBF_RATE_STATS_NUM_MCS_COUNTERS];

    /** 320MHz extension for PER */
    htt_tx_rate_stats_t per_bw320;

} htt_tx_rate_stats_per_tlv;

/* NOTE:
+1 −1
Original line number Diff line number Diff line
@@ -145,7 +145,7 @@ typedef enum {
    GROUP_USAGE         = 0x01,
    TX_USAGE            = 0x02,     /* default Tx Key - Static WEP only */
    PMK_USAGE           = 0x04,     /* PMK cache */
    PASN_USAGE          = 0x08,     /* is PASN based key */
    LTF_USAGE           = 0x08,     /* LTF key seed */
} KEY_USAGE;
/*
 * List of Events (target to host)
+3 −0
Original line number Diff line number Diff line
@@ -576,6 +576,9 @@ typedef enum {
    WMI_SERVICE_AFC_RESET_SUPPORT = 323, /* Indicates FW supports AFC reset */
    WMI_SERVICE_FP_PHY_ERR_FILTER_SUPPORT = 324, /* FW supports monitor ring configurations for filtering in PHY error packets */
    WMI_IS_RADAR_FOUND_CHAN_FREQ_IS_CENTER_FREQ = 325, /* FW Supporting radar event on the actual center frequency radar was detected */
    WMI_SERVICE_BIOS_SAR_SUPPORT = 326, /* FW support for SAR parameter stored in BIOS */
    WMI_SERVICE_REO_QREF_SUPPORT = 327, /* FW supports REO QREF */
    WMI_SERVICE_DELETE_ALL_PEER_BITMAP_SUPPORT = 328, /* target supports cmd to delete all specific peer type within a vdev */

    WMI_MAX_EXT2_SERVICE

+26 −7

File changed.

Preview size limit exceeded, changes collapsed.

Loading