From c60180a52b84a06883994b1d5d758707fe62c5e4 Mon Sep 17 00:00:00 2001 From: spuligil Date: Tue, 15 Jul 2025 06:03:38 -0700 Subject: [PATCH] fw-api: CL 29754585 - update fw common interface files Change-Id: Icbc386dc553f774e13981ee2aa645403df411777 CRs-Fixed: 3830439 --- fw/htt_ppdu_stats.h | 78 +++++++++++++++++++++++++++++++++++++-------- fw/htt_stats.h | 32 +++++++++++++++++++ 2 files changed, 97 insertions(+), 13 deletions(-) diff --git a/fw/htt_ppdu_stats.h b/fw/htt_ppdu_stats.h index d1575d7c91ba..5f7bad98cb84 100644 --- a/fw/htt_ppdu_stats.h +++ b/fw/htt_ppdu_stats.h @@ -707,6 +707,58 @@ typedef enum HTT_PPDU_STATS_SPATIAL_REUSE HTT_PPDU_STATS_SPATIAL_REUSE; (((_val) & HTT_PPDU_STATS_COMMON_TRIG_COOKIE_M) >> \ HTT_PPDU_STATS_COMMON_TRIG_COOKIE_S) +#define HTT_PPDU_STATS_COMMON_TLV_HTT_SEQ_TYPE_M 0x00000001 +#define HTT_PPDU_STATS_COMMON_TLV_HTT_SEQ_TYPE_S 0 + +#define HTT_PPDU_STATS_COMMON_TLV_HTT_SEQ_TYPE_GET(_var) \ + (((_var) & HTT_PPDU_STATS_COMMON_TLV_HTT_SEQ_TYPE_M) >> \ + HTT_PPDU_STATS_COMMON_TLV_HTT_SEQ_TYPE_S) + +#define HTT_PPDU_STATS_COMMON_TLV_HTT_SEQ_TYPE_SET(_var, _val) \ + do { \ + HTT_CHECK_SET_VAL(HTT_PPDU_STATS_COMMON_TLV_HTT_SEQ_TYPE, _val); \ + ((_var) |= ((_val) << HTT_PPDU_STATS_COMMON_TLV_HTT_SEQ_TYPE_S)); \ + } while (0) + +#define HTT_PPDU_STATS_COMMON_TLV_IS_COMBINED_UL_BASIC_TRIGGER_M 0x00000002 +#define HTT_PPDU_STATS_COMMON_TLV_IS_COMBINED_UL_BASIC_TRIGGER_S 1 + +#define HTT_PPDU_STATS_COMMON_TLV_IS_COMBINED_UL_BASIC_TRIGGER_GET(_var) \ + (((_var) & HTT_PPDU_STATS_COMMON_TLV_IS_COMBINED_UL_BASIC_TRIGGER_M) >> \ + HTT_PPDU_STATS_COMMON_TLV_IS_COMBINED_UL_BASIC_TRIGGER_S) + +#define HTT_PPDU_STATS_COMMON_TLV_IS_COMBINED_UL_BASIC_TRIGGER_SET(_var, _val) \ + do { \ + HTT_CHECK_SET_VAL(HTT_PPDU_STATS_COMMON_TLV_IS_COMBINED_UL_BASIC_TRIGGER, _val); \ + ((_var) |= ((_val) << HTT_PPDU_STATS_COMMON_TLV_IS_COMBINED_UL_BASIC_TRIGGER_S)); \ + } while (0) + +#define HTT_PPDU_STATS_COMMON_TLV_IS_MANUAL_ULOFDMA_TRIGGER_M 0x00000004 +#define HTT_PPDU_STATS_COMMON_TLV_IS_MANUAL_ULOFDMA_TRIGGER_S 2 + +#define HTT_PPDU_STATS_COMMON_TLV_IS_MANUAL_ULOFDMA_TRIGGER_GET(_var) \ + (((_var) & HTT_PPDU_STATS_COMMON_TLV_IS_MANUAL_ULOFDMA_TRIGGER_M) >> \ + HTT_PPDU_STATS_COMMON_TLV_IS_MANUAL_ULOFDMA_TRIGGER_S) + +#define HTT_PPDU_STATS_COMMON_TLV_IS_MANUAL_ULOFDMA_TRIGGER_SET(_var, _val) \ + do { \ + HTT_CHECK_SET_VAL(HTT_PPDU_STATS_COMMON_TLV_IS_MANUAL_ULOFDMA_TRIGGER, _val); \ + ((_var) |= ((_val) << HTT_PPDU_STATS_COMMON_TLV_IS_MANUAL_ULOFDMA_TRIGGER_S)); \ + } while (0) + +#define HTT_PPDU_STATS_COMMON_TLV_IS_COMBINED_UL_BSRP_TRIGGER_M 0x00000008 +#define HTT_PPDU_STATS_COMMON_TLV_IS_COMBINED_UL_BSRP_TRIGGER_S 3 + +#define HTT_PPDU_STATS_COMMON_TLV_IS_COMBINED_UL_BSRP_TRIGGER_GET(_var) \ + (((_var) & HTT_PPDU_STATS_COMMON_TLV_IS_COMBINED_UL_BSRP_TRIGGER_M) >> \ + HTT_PPDU_STATS_COMMON_TLV_IS_COMBINED_UL_BSRP_TRIGGER_S) + +#define HTT_PPDU_STATS_COMMON_TLV_IS_COMBINED_UL_BSRP_TRIGGER_SET(_var, _val) \ + do { \ + HTT_CHECK_SET_VAL(HTT_PPDU_STATS_COMMON_TLV_IS_COMBINED_UL_BSRP_TRIGGER, _val); \ + ((_var) |= ((_val) << HTT_PPDU_STATS_COMMON_TLV_IS_COMBINED_UL_BSRP_TRIGGER_S)); \ + } while (0) + enum HTT_SEQ_TYPE { WAL_PPDU_SEQ_TYPE = 0, HTT_PPDU_SEQ_TYPE = 1, @@ -902,26 +954,26 @@ typedef struct { * HTT_PPDU_SEQ_TYPE then decoder should interpret the * seq type as HTT_PPDU_STATS_SEQ_TYPE. * htt_seq_type field will be set to HTT_PPDU_SEQ_TYPE in - * firmware versions where this field is defined. - * BIT [31: 1] - reserved + * BIT [1 : 1] - is_combined_ul_basic_trigger - Flag to indicate if a + * given UL OFDMA/MU-MIMO Basic trigger is sent combined + * as part of existing DL data sequence. + * BIT [2 : 2] - is_manual_ulofdma_trigger - Flag to indicate if a + * given UL OFDMA trigger is manually triggered from the Host. + * BIT [3 : 3] - is_combined_ul_bsrp_trigger - Flag to indicate if a + * given UL BSRP trigger is sent combined as part of + * an existing DL/UL data sequence + * BIT [31: 4] - reserved */ union { A_UINT32 reserved__htt_seq_type; struct { A_UINT32 htt_seq_type: 1, - reserved3: 31; + is_combined_ul_basic_trigger: 1, + is_manual_ulofdma_trigger: 1, + is_combined_ul_bsrp_trigger: 1, + reserved3: 28; }; }; - /* is_manual_ulofdma_trigger: - * Flag to indicate if a given UL OFDMA trigger is manually triggered - * from the Host - */ - A_UINT32 is_manual_ulofdma_trigger; - /* is_combined_ul_bsrp_trigger: - * Flag to indicate if a given UL BSRP trigger is sent combined as - * part of existing DL/UL data sequence - */ - A_UINT32 is_combined_ul_bsrp_trigger; /* Flag to indicate if the channel chosen is 320_1 / 320_2 */ A_UINT32 chan_type_320mhz; } htt_ppdu_stats_common_tlv; diff --git a/fw/htt_stats.h b/fw/htt_stats.h index 395dc8ca87e1..c0730881c023 100644 --- a/fw/htt_stats.h +++ b/fw/htt_stats.h @@ -3348,6 +3348,22 @@ typedef struct { A_UINT32 ax_mu_bar_trigger_per_ac[HTT_NUM_AC_WMM]; /** 11AX HE MU-BAR Trigger frames per AC completed with error(s) */ A_UINT32 ax_mu_bar_trigger_errors_per_ac[HTT_NUM_AC_WMM]; + /** 11AX HE MU Combined UL OFDMA Basic Trigger frame sent over the air */ + A_UINT32 combined_ax_ulofdma_trigger_tried[HTT_NUM_AC_WMM]; + /** 11AX HE MU Combined UL OFDMA Basic Trigger completed with error(s) */ + A_UINT32 combined_ax_ulofdma_trigger_err[HTT_NUM_AC_WMM]; + /** 11AX HE MU Standalone UL OFDMA Basic Trigger frame sent over the air */ + A_UINT32 standalone_ax_ulofdma_trigger_tried[HTT_NUM_AC_WMM]; + /** 11AX HE MU Standalone UL OFDMA Basic Trigger completed with error(s) */ + A_UINT32 standalone_ax_ulofdma_trigger_err[HTT_NUM_AC_WMM]; + /** 11AX HE MU Combined UL MU-MIMO Basic Trigger frame sent over the air */ + A_UINT32 combined_ax_ulmumimo_trigger_tried[HTT_NUM_AC_WMM]; + /** 11AX HE MU Combined UL MU-MIMO Basic Trigger completed with error(s) */ + A_UINT32 combined_ax_ulmumimo_trigger_err[HTT_NUM_AC_WMM]; + /** 11AX HE MU Standalone UL MU-MIMO Basic Trigger frame sent over the air*/ + A_UINT32 standalone_ax_ulmumimo_trigger_tried[HTT_NUM_AC_WMM]; + /** 11AX HE MU Standalone UL MU-MIMO Basic Trigger completed with error(s)*/ + A_UINT32 standalone_ax_ulmumimo_trigger_err[HTT_NUM_AC_WMM]; } htt_stats_tx_selfgen_ax_stats_tlv; /* preserve old name alias for new name consistent with the tag name */ typedef htt_stats_tx_selfgen_ax_stats_tlv htt_tx_selfgen_ax_stats_tlv; @@ -3413,6 +3429,22 @@ typedef struct { A_UINT32 be_mu_bar_trigger_per_ac[HTT_NUM_AC_WMM]; /** 11BE EHT MU-BAR Trigger frames per AC completed with error(s) */ A_UINT32 be_mu_bar_trigger_errors_per_ac[HTT_NUM_AC_WMM]; + /** 11BE EHT MU Combined UL OFDMA Basic Trigger frame sent over the air */ + A_UINT32 combined_be_ulofdma_trigger_tried[HTT_NUM_AC_WMM]; + /** 11BE EHT MU Combined UL OFDMA Basic Trigger completed with error(s) */ + A_UINT32 combined_be_ulofdma_trigger_err[HTT_NUM_AC_WMM]; + /** 11BE EHT MU Standalone UL OFDMA Basic Trigger frame sent over the air */ + A_UINT32 standalone_be_ulofdma_trigger_tried[HTT_NUM_AC_WMM]; + /** 11BE EHT MU Standalone UL OFDMA Basic Trigger completed with error(s) */ + A_UINT32 standalone_be_ulofdma_trigger_err[HTT_NUM_AC_WMM]; + /** 11BE EHT MU Combined UL MU-MIMO Basic Trigger frame sent over the air */ + A_UINT32 combined_be_ulmumimo_trigger_tried[HTT_NUM_AC_WMM]; + /** 11BE EHT MU Combined UL MU-MIMO Basic Trigger completed with error(s) */ + A_UINT32 combined_be_ulmumimo_trigger_err[HTT_NUM_AC_WMM]; + /** 11BE EHT MU Standalone UL MU-MIMO Basic Trigger frame sent over the air */ + A_UINT32 standalone_be_ulmumimo_trigger_tried[HTT_NUM_AC_WMM]; + /** 11BE EHT MU Standalone UL MU-MIMO Basic Trigger completed with error(s) */ + A_UINT32 standalone_be_ulmumimo_trigger_err[HTT_NUM_AC_WMM]; } htt_stats_tx_selfgen_be_stats_tlv; /* preserve old name alias for new name consistent with the tag name */ typedef htt_stats_tx_selfgen_be_stats_tlv htt_tx_selfgen_be_stats_tlv;