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

Commit 37d0f3b3 authored by spuligil's avatar spuligil
Browse files

fw-api: CL 15711001 - update fw common interface files

HTT stats: add 802.11be OFDMA stats

Change-Id: Id864ed044ca32ec2b87323718a2929551187ebc4
CRs-Fixed: 2262693
parent 106757ca
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -660,6 +660,10 @@ typedef enum {
    HTT_STATS_TX_PDEV_MUMIMO_GRP_STATS_TAG         = 130, /* htt_tx_pdev_mumimo_grp_stats_tlv */
    HTT_STATS_TX_PDEV_BE_RATE_STATS_TAG            = 131, /* htt_tx_pdev_rate_stats_be_tlv */
    HTT_STATS_AST_ENTRY_TAG                        = 132, /* htt_ast_entry_tlv */
    HTT_STATS_TX_PDEV_BE_DL_MU_OFDMA_STATS_TAG     = 133, /* htt_tx_pdev_dl_be_mu_ofdma_sch_stats_tlv */
    HTT_STATS_TX_PDEV_BE_UL_MU_OFDMA_STATS_TAG     = 134, /* htt_tx_pdev_ul_be_mu_ofdma_sch_stats_tlv */
    HTT_STATS_TX_PDEV_RATE_STATS_BE_OFDMA_TAG      = 135, /* htt_tx_pdev_rate_stats_be_ofdma_tlv */
    HTT_STATS_MAX_TAG,
} htt_tlv_tag_t;
+86 −1
Original line number Diff line number Diff line
@@ -444,21 +444,68 @@ enum htt_dbg_ext_stats_type {
typedef enum {
    /* HTT_UPLOAD_MU_STATS: upload all MU stats:
     * UL MU-MIMO + DL MU-MIMO + UL MU-OFDMA + DL MU-OFDMA
     * (note: included OFDMA stats are limited to 11ax)
     */
    HTT_UPLOAD_MU_STATS,

    /* HTT_UPLOAD_MU_MIMO_STATS: upload UL MU-MIMO + DL MU-MIMO stats */
    HTT_UPLOAD_MU_MIMO_STATS,

    /* HTT_UPLOAD_MU_OFDMA_STATS: upload UL MU-OFDMA + DL MU-OFDMA stats */
    /* HTT_UPLOAD_MU_OFDMA_STATS:
     * upload UL MU-OFDMA + DL MU-OFDMA stats (note: 11ax only stats)
     */
    HTT_UPLOAD_MU_OFDMA_STATS,

    HTT_UPLOAD_DL_MU_MIMO_STATS,
    HTT_UPLOAD_UL_MU_MIMO_STATS,
    /* HTT_UPLOAD_DL_MU_OFDMA_STATS:
     * upload DL MU-OFDMA stats (note: 11ax only stats)
     */
    HTT_UPLOAD_DL_MU_OFDMA_STATS,
    /* HTT_UPLOAD_UL_MU_OFDMA_STATS:
     * upload UL MU-OFDMA stats (note: 11ax only stats)
     */
    HTT_UPLOAD_UL_MU_OFDMA_STATS,

    /*
     * Upload BE UL MU-OFDMA + BE DL MU-OFDMA stats,
     * TLV: htt_tx_pdev_dl_be_mu_ofdma_sch_stats_tlv and
     * htt_tx_pdev_ul_be_mu_ofdma_sch_stats_tlv
     */
    HTT_UPLOAD_BE_MU_OFDMA_STATS,

    /*
     * Upload BE DL MU-OFDMA
     * TLV: htt_tx_pdev_dl_be_mu_ofdma_sch_stats_tlv
     */
    HTT_UPLOAD_BE_DL_MU_OFDMA_STATS,

    /*
     * Upload BE UL MU-OFDMA
     * TLV: htt_tx_pdev_ul_be_mu_ofdma_sch_stats_tlv
     */
    HTT_UPLOAD_BE_UL_MU_OFDMA_STATS,
} htt_mu_stats_upload_t;

/* htt_tx_rate_stats_upload_t
 * Enumerations for specifying which stats to upload in response to
 * HTT_DBG_EXT_STATS_PDEV_TX_RATE.
 */
typedef enum {
    /* 11abgn, 11ac, and 11ax TX stats, and a few 11be SU stats
     *
     * TLV: htt_tx_pdev_rate_stats_tlv
     */
    HTT_TX_RATE_STATS_DEFAULT,

    /*
     * Upload 11be OFDMA TX stats
     *
     * TLV: htt_tx_pdev_rate_stats_be_ofdma_tlv
     */
    HTT_TX_RATE_STATS_UPLOAD_11BE_OFDMA,
} htt_tx_rate_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
@@ -2281,6 +2328,12 @@ typedef struct {
    A_UINT32 ax_mu_ofdma_sch_nusers[HTT_TX_PDEV_STATS_NUM_OFDMA_USER_STATS];
} htt_tx_pdev_dl_mu_ofdma_sch_stats_tlv;

typedef struct {
    htt_tlv_hdr_t tlv_hdr;
    /* Represents the count for 11BE DL MU OFDMA sequences */
    A_UINT32 be_mu_ofdma_sch_nusers[HTT_TX_PDEV_STATS_NUM_OFDMA_USER_STATS];
} htt_tx_pdev_be_dl_mu_ofdma_sch_stats_tlv;

typedef struct {
    htt_tlv_hdr_t tlv_hdr;
    /* Represents the count for 11AX UL MU OFDMA sequences with Basic Triggers */
@@ -2293,6 +2346,18 @@ typedef struct {
    A_UINT32 ax_ul_mu_ofdma_brp_sch_nusers[HTT_TX_PDEV_STATS_NUM_OFDMA_USER_STATS];
} htt_tx_pdev_ul_mu_ofdma_sch_stats_tlv;

typedef struct {
    htt_tlv_hdr_t tlv_hdr;
    /* Represents the count for 11BE UL MU OFDMA sequences with Basic Triggers */
    A_UINT32 be_ul_mu_ofdma_basic_sch_nusers[HTT_TX_PDEV_STATS_NUM_OFDMA_USER_STATS];
    /* Represents the count for 11BE UL MU OFDMA sequences with BSRP Triggers */
    A_UINT32 be_ul_mu_ofdma_bsr_sch_nusers[HTT_TX_PDEV_STATS_NUM_OFDMA_USER_STATS];
    /* Represents the count for 11BE UL MU OFDMA sequences with BAR Triggers */
    A_UINT32 be_ul_mu_ofdma_bar_sch_nusers[HTT_TX_PDEV_STATS_NUM_OFDMA_USER_STATS];
    /* Represents the count for 11BE UL MU OFDMA sequences with BRP Triggers */
    A_UINT32 be_ul_mu_ofdma_brp_sch_nusers[HTT_TX_PDEV_STATS_NUM_OFDMA_USER_STATS];
} htt_tx_pdev_be_ul_mu_ofdma_sch_stats_tlv;

typedef struct {
    htt_tlv_hdr_t tlv_hdr;
    /* Represents the count for 11AX UL MU MIMO sequences with Basic Triggers */
@@ -3551,6 +3616,7 @@ typedef struct {
#define HTT_TX_PDEV_STATS_NUM_LEGACY_OFDM_STATS 8
#define HTT_TX_PDEV_STATS_NUM_LTF 4
#define HTT_TX_PDEV_STATS_NUM_11AX_TRIGGER_TYPES 6
#define HTT_TX_PDEV_STATS_NUM_11BE_TRIGGER_TYPES 6
#define HTT_TX_NUM_OF_SOUNDING_STATS_WORDS \
    (HTT_TX_PDEV_STATS_NUM_BW_COUNTERS * \
     HTT_TX_PDEV_STATS_NUM_AX_MUMIMO_USER_STATS)
@@ -3715,6 +3781,25 @@ typedef struct {
    A_UINT32 be_mu_mimo_tx_ldpc;
} htt_tx_pdev_rate_stats_be_tlv;

typedef struct {
    htt_tlv_hdr_t tlv_hdr;

    /* BIT [ 7 :  0]   :- mac_id
     * BIT [31 :  8]   :- reserved
     */
    A_UINT32 mac_id__word;

    A_UINT32 be_ofdma_tx_ldpc;      /* 11BE EHT DL MU OFDMA LDPC count */
    /* 11BE EHT DL MU OFDMA TX MCS stats */
    A_UINT32 be_ofdma_tx_mcs[HTT_TX_PDEV_STATS_NUM_BE_MCS_COUNTERS];
    /* 11BE EHT DL MU OFDMA TX NSS stats (Indicates NSS for individual users) */
    A_UINT32 be_ofdma_tx_nss[HTT_TX_PDEV_STATS_NUM_SPATIAL_STREAMS];
    /* 11BE EHT DL MU OFDMA TX BW stats */
    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];
} htt_tx_pdev_rate_stats_be_ofdma_tlv;

/* STATS_TYPE : HTT_DBG_EXT_STATS_PDEV_TX_RATE
 * TLV_TAGS:
 *      - HTT_STATS_TX_PDEV_RATE_STATS_TAG