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

HTT: add transmit count field in tx_wbm_completion structs
Change-Id: Id32dbf9ea0c17a2c04b490dfa5b1a2173c47d6d3
CRs-Fixed: 2262693
This commit is contained in:
spuligil 2023-08-22 07:07:01 -07:00 • committed by Rahul Choudhary
commit 222ac4615f

View file

@ -252,9 +252,10 @@
* 3.124 Add HTT_T2H_MSG_TYPE_PEER_EXTENDED_EVENT def.
* 3.125 Expand fisa_aggr_limit bits in fisa_control_bits_v2.
* 3.126 Add HTT_RXDATA_ERR_INVALID_PEER def.
* 3.127 Add transmit_count fields in htt_tx_wbm_completion_vX structs.
*/
#define HTT_CURRENT_VERSION_MAJOR 3
#define HTT_CURRENT_VERSION_MINOR 126
#define HTT_CURRENT_VERSION_MINOR 127
#define HTT_NUM_TX_FRAG_DESC 1024
@ -2878,7 +2879,8 @@ PREPACK struct htt_tx_wbm_completion_v2 {
tx_status: 4, /* Takes enum values of htt_tx_fw2wbm_tx_status_t */
reinject_reason: 4, /* Takes enum values of htt_tx_fw2wbm_reinject_reason_t */
exception_frame: 1,
rsvd0: 12, /* For future use */
transmit_count: 7, /* Refer to struct wbm_release_ring */
rsvd0: 5, /* For future use */
used_by_hw4: 1, /* wbm_internal_error bit being used by HW */
rsvd1: 1; /* For future use */
A_UINT32
@ -2904,6 +2906,8 @@ PREPACK struct htt_tx_wbm_completion_v2 {
#define HTT_TX_WBM_COMPLETION_V2_REINJECT_REASON_S 13
#define HTT_TX_WBM_COMPLETION_V2_EXP_FRAME_M 0x00020000
#define HTT_TX_WBM_COMPLETION_V2_EXP_FRAME_S 17
#define HTT_TX_WBM_COMPLETION_V2_TRANSMIT_COUNT_M 0x01FC0000
#define HTT_TX_WBM_COMPLETION_V2_TRANSMIT_COUNT_S 18
/* DWORD 3 */
#define HTT_TX_WBM_COMPLETION_V2_TX_STATUS_GET(_var) \
@ -2936,6 +2940,16 @@ PREPACK struct htt_tx_wbm_completion_v2 {
((_var) |= ((_val) << HTT_TX_WBM_COMPLETION_V2_EXP_FRAME_S)); \
} while (0)
#define HTT_TX_WBM_COMPLETION_V2_TRANSMIT_COUNT_GET(_var) \
(((_var) & HTT_TX_WBM_COMPLETION_V2_TRANSMIT_COUNT_M) >> \
HTT_TX_WBM_COMPLETION_V2_TRANSMIT_COUNT_S)
#define HTT_TX_WBM_COMPLETION_V2_TRANSMIT_COUNT_SET(_var, _val) \
do { \
HTT_CHECK_SET_VAL(HTT_TX_WBM_COMPLETION_V2_TRANSMIT_COUNT, _val); \
((_var) |= ((_val) << HTT_TX_WBM_COMPLETION_V2_TRANSMIT_COUNT_S)); \
} while (0)
/**
* @brief HTT TX WBM Completion from firmware to host (V3)
* @details
@ -2961,7 +2975,8 @@ PREPACK struct htt_tx_wbm_completion_v3 {
A_UINT32
reinject_reason: 4, /* Takes enum values of htt_tx_fw2wbm_reinject_reason_t */
exception_frame: 1,
rsvd0: 27; /* For future use */
transmit_count: 7, /* Refer to struct wbm_release_ring */
rsvd0: 20; /* For future use */
A_UINT32
data0: 32; /* data0,1 and 2 changes based on tx_status type
* if HTT_TX_FW2WBM_TX_STATUS_OK or HTT_TX_FW2WBM_TX_STATUS_DROP
@ -2978,13 +2993,17 @@ PREPACK struct htt_tx_wbm_completion_v3 {
used_by_hw4: 12; /* Refer to struct wbm_release_ring */
} POSTPACK;
/* DWORD 3 */
#define HTT_TX_WBM_COMPLETION_V3_TX_STATUS_M 0x0001E000
#define HTT_TX_WBM_COMPLETION_V3_TX_STATUS_S 13
/* DWORD 4 */
#define HTT_TX_WBM_COMPLETION_V3_REINJECT_REASON_M 0x0000000F
#define HTT_TX_WBM_COMPLETION_V3_REINJECT_REASON_S 0
#define HTT_TX_WBM_COMPLETION_V3_EXP_FRAME_M 0x00000010
#define HTT_TX_WBM_COMPLETION_V3_EXP_FRAME_S 4
#define HTT_TX_WBM_COMPLETION_V3_TRANSMIT_COUNT_M 0x00000FE0
#define HTT_TX_WBM_COMPLETION_V3_TRANSMIT_COUNT_S 5
#define HTT_TX_WBM_COMPLETION_V3_TX_STATUS_GET(_var) \
@ -3017,6 +3036,16 @@ PREPACK struct htt_tx_wbm_completion_v3 {
((_var) |= ((_val) << HTT_TX_WBM_COMPLETION_V3_EXP_FRAME_S)); \
} while (0)
#define HTT_TX_WBM_COMPLETION_V3_TRANSMIT_COUNT_GET(_var) \
(((_var) & HTT_TX_WBM_COMPLETION_V3_TRANSMIT_COUNT_M) >> \
HTT_TX_WBM_COMPLETION_V3_TRANSMIT_COUNT_S)
#define HTT_TX_WBM_COMPLETION_V3_TRANSMIT_COUNT_SET(_var, _val) \
do { \
HTT_CHECK_SET_VAL(HTT_TX_WBM_COMPLETION_V3_TRANSMIT_COUNT, _val); \
((_var) |= ((_val) << HTT_TX_WBM_COMPLETION_V3_TRANSMIT_COUNT_S)); \
} while (0)
typedef enum {
TX_FRAME_TYPE_UNDEFINED = 0,
@ -3057,7 +3086,11 @@ PREPACK struct htt_tx_wbm_transmit_status {
* contains valid data.
*/
frame_type: 4, /* holds htt_tx_wbm_status_frame_type value */
reserved: 4;
transmit_count_valid: 1, /* If this "transmit_count_valid" is set, the
* transmit_count field in struct
* htt_tx_wbm_completion_vx has valid data.
*/
reserved: 3;
A_UINT32
ppdu_start_tsf: 32; /* PPDU Start timestamp added for multicast
* packets in the wbm completion path
@ -3081,6 +3114,10 @@ PREPACK struct htt_tx_wbm_transmit_status {
#define HTT_TX_WBM_COMPLETION_V2_MCAST_S 22
#define HTT_TX_WBM_COMPLETION_V2_MCAST_VALID_M 0x00800000
#define HTT_TX_WBM_COMPLETION_V2_MCAST_VALID_S 23
#define HTT_TX_WBM_COMPLETION_V2_FRAME_TYPE_M 0x0F000000
#define HTT_TX_WBM_COMPLETION_V2_FRAME_TYPE_S 24
#define HTT_TX_WBM_COMPLETION_V2_TRANSMIT_CNT_VALID_M 0x10000000
#define HTT_TX_WBM_COMPLETION_V2_TRANSMIT_CNT_VALID_S 28
/* DWORD 4 */
#define HTT_TX_WBM_COMPLETION_V2_SCH_CMD_ID_GET(_var) \
@ -3154,6 +3191,26 @@ PREPACK struct htt_tx_wbm_transmit_status {
((_var) |= ((_val) << HTT_TX_WBM_COMPLETION_V2_MCAST_VALID_S)); \
} while (0)
#define HTT_TX_WBM_COMPLETION_V2_FRAME_TYPE_GET(_var) \
(((_var) & HTT_TX_WBM_COMPLETION_V2_FRAME_TYPE_M) >> \
HTT_TX_WBM_COMPLETION_V2_FRAME_TYPE_S)
#define HTT_TX_WBM_COMPLETION_V2_FRAME_TYPE_SET(_var, _val) \
do { \
HTT_CHECK_SET_VAL(HTT_TX_WBM_COMPLETION_V2_FRAME_TYPE, _val); \
((_var) |= ((_val) << HTT_TX_WBM_COMPLETION_V2_FRAME_TYPE_S)); \
#define HTT_TX_WBM_COMPLETION_V2_TRANSMIT_CNT_VALID_GET(_var) \
(((_var) & HTT_TX_WBM_COMPLETION_V2_TRANSMIT_CNT_VALID_M) >> \
HTT_TX_WBM_COMPLETION_V2_TRANSMIT_CNT_VALID_S)
#define HTT_TX_WBM_COMPLETION_V2_TRANSMIT_CNT_VALID_SET(_var, _val) \
do { \
HTT_CHECK_SET_VAL(HTT_TX_WBM_COMPLETION_V2_MCAST_VALID, _val); \
((_var) |= ((_val) << HTT_TX_WBM_COMPLETION_V2_TRANSMIT_CNT_VALID_S)); \
} while (0)
/**
* @brief HTT TX WBM reinject status from firmware to host
* @details