mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-10 14:19:09 -04:00
fw-api: CL 15458003 - update fw common interface files
Change-Id: I68cc2f2a76cf770335d221e4862b9132838e27bc WMI: add HTT MSDU queue idx to qtype specs in WMI bootup msgs CRs-Fixed: 2262693
This commit is contained in:
parent
0fc34e9337
commit
5d9b86bbeb
4 changed files with 95 additions and 9 deletions
3
fw/htt.h
3
fw/htt.h
|
|
@ -16390,6 +16390,9 @@ enum HTT_MSDU_QTYPE {
|
|||
HTT_MSDU_QTYPE_UDP, /* Specifies MSDUQ index used for UDP flow */
|
||||
HTT_MSDU_QTYPE_NON_UDP, /* Specifies MSDUQ index used for non-udp flow */
|
||||
HTT_MSDU_QTYPE_HOL, /* Specified MSDUQ index used for Head of Line */
|
||||
HTT_MSDU_QTYPE_USER_SPECIFIED, /* Specifies MSDUQ index used for advertising changeable flow type */
|
||||
HTT_MSDU_QTYPE_HI_PRIO, /* Specifies MSDUQ index used for high priority flow type */
|
||||
HTT_MSDU_QTYPE_LO_PRIO, /* Specifies MSDUQ index used for low priority flow type */
|
||||
|
||||
|
||||
/* New MSDU_QTYPE should be added above this line */
|
||||
|
|
|
|||
|
|
@ -1198,6 +1198,7 @@ typedef enum {
|
|||
WMITLV_TAG_STRUC_wmi_thermal_stats_cmd_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_thermal_throt_temp_range_stats,
|
||||
WMITLV_TAG_STRUC_wmi_ctrl_path_awgn_stats_struct,
|
||||
WMITLV_TAG_STRUC_wmi_htt_msdu_idx_to_htt_msdu_qtype,
|
||||
} WMITLV_TAG_ID;
|
||||
|
||||
/*
|
||||
|
|
@ -1955,7 +1956,8 @@ typedef enum {
|
|||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_resource_config, wmi_resource_config, resource_config, WMITLV_SIZE_FIX)\
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wlan_host_memory_chunk, host_mem_chunks, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_set_hw_mode_cmd_fixed_param, wmi_pdev_set_hw_mode_cmd_fixed_param, hw_mode, WMITLV_SIZE_FIX) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_pdev_band_to_mac, band_to_mac, WMITLV_SIZE_VAR)
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_pdev_band_to_mac, band_to_mac, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_htt_msdu_idx_to_htt_msdu_qtype, htt_msdu_idx_to_qtype_map, WMITLV_SIZE_VAR)
|
||||
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_INIT_CMDID);
|
||||
|
||||
|
|
@ -4844,7 +4846,8 @@ WMITLV_CREATE_PARAM_STRUC(WMI_SERVICE_READY_EXT_EVENTID);
|
|||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_HAL_REG_CAPABILITIES_EXT2, hal_reg_caps, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_nan_capabilities, wmi_nan_capabilities, nan_cap, WMITLV_SIZE_FIX) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_SCAN_RADIO_CAPABILITIES_EXT2, wmi_scan_radio_caps, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_twt_caps_params, twt_caps, WMITLV_SIZE_VAR)
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_twt_caps_params, twt_caps, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_htt_msdu_idx_to_htt_msdu_qtype, htt_msdu_idx_to_qtype_map, WMITLV_SIZE_VAR)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_SERVICE_READY_EXT2_EVENTID);
|
||||
|
||||
#define WMITLV_TABLE_WMI_CHAN_RF_CHARACTERIZATION_INFO_EVENTID(id,op,buf,len) \
|
||||
|
|
|
|||
|
|
@ -2771,11 +2771,11 @@ typedef struct {
|
|||
*/
|
||||
A_UINT32 num_msdu_desc;
|
||||
|
||||
/* The TLVs for hal_reg_capabilities, wmi_service_bitmap and mem_reqs[] will follow this TLV.
|
||||
/* This ready_event_fixed_param TLV is followed by the below TLVs:
|
||||
* HAL_REG_CAPABILITIES hal_reg_capabilities;
|
||||
* A_UINT32 wmi_service_bitmap[WMI_SERVICE_BM_SIZE];
|
||||
* wlan_host_mem_req mem_reqs[];
|
||||
* wlan_dbs_hw_mode_list[];
|
||||
* A_UINT32 wlan_dbs_hw_mode_list[];
|
||||
*/
|
||||
} wmi_service_ready_event_fixed_param;
|
||||
|
||||
|
|
@ -2957,6 +2957,31 @@ typedef struct {
|
|||
#define WMI_TARGET_CAP_FLAGS_RX_PEER_METADATA_VERSION_SET(target_cap_flags, value) \
|
||||
WMI_SET_BITS(target_cap_flags, 0, 2, value)
|
||||
|
||||
/*
|
||||
* wmi_htt_msdu_idx_to_htt_msdu_qtype GET/SET APIs
|
||||
*/
|
||||
#define WMI_HTT_MSDUQ_IDX_TO_MSDUQ_QTYPE_INDEX_GET(index_and_type) \
|
||||
WMI_GET_BITS(index_and_type, 0, 8)
|
||||
#define WMI_HTT_MSDUQ_IDX_TO_MSDUQ_QTYPE_INDEX_SET(index_and_type, value) \
|
||||
WMI_SET_BITS(index_and_type, 0, 8, value)
|
||||
|
||||
#define WMI_HTT_MSDUQ_IDX_TO_MSDUQ_QTYPE_TYPE_GET(index_and_type) \
|
||||
WMI_GET_BITS(index_and_type, 8, 8)
|
||||
#define WMI_HTT_MSDUQ_IDX_TO_MSDUQ_QTYPE_TYPE_SET(index_and_type, value) \
|
||||
WMI_SET_BITS(index_and_type, 8, 8, value)
|
||||
|
||||
typedef struct {
|
||||
A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_htt_msdu_idx_to_htt_msdu_qtype.*/
|
||||
/**
|
||||
* index_and_type
|
||||
*
|
||||
* [7:0] : htt_msduq_index
|
||||
* [15:8] : htt_msduq_type
|
||||
* [31:16] : reserved
|
||||
*/
|
||||
A_UINT32 index_and_type;
|
||||
} wmi_htt_msdu_idx_to_htt_msdu_qtype;
|
||||
|
||||
typedef struct {
|
||||
A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_service_ready_ext2_event_fixed_param.*/
|
||||
|
||||
|
|
@ -3047,6 +3072,32 @@ typedef struct {
|
|||
* wmi_nan_capabilities;
|
||||
* WMI_SCAN_RADIO_CAPABILITIES_EXT2;
|
||||
*/
|
||||
|
||||
/*
|
||||
* Max number of LinkView peers supported by target
|
||||
*/
|
||||
A_UINT32 max_num_linkview_peers;
|
||||
|
||||
/*
|
||||
* Max number of msduq's per TID per peer supported by target,
|
||||
* defines LinkView peers number
|
||||
*/
|
||||
A_UINT32 max_num_msduq_supported_per_tid;
|
||||
|
||||
/*
|
||||
* Number of peers support default flowqs
|
||||
*/
|
||||
A_UINT32 default_num_msduq_supported_per_tid;
|
||||
|
||||
/* Followed by next TLVs:
|
||||
* WMI_DMA_RING_CAPABILITIES dma_ring_caps[];
|
||||
* wmi_spectral_bin_scaling_params wmi_bin_scaling_params[];
|
||||
* WMI_MAC_PHY_CAPABILITIES_EXT mac_phy_caps[];
|
||||
* WMI_HAL_REG_CAPABILITIES_EXT2 hal_reg_caps[];
|
||||
* wmi_nan_capabilities nan_cap;
|
||||
* WMI_SCAN_RADIO_CAPABILITIES_EXT2 wmi_scan_radio_caps[];
|
||||
* wmi_htt_msdu_idx_to_htt_msdu_qtype htt_msdu_idx_to_qtype_map[];
|
||||
*/
|
||||
} wmi_service_ready_ext2_event_fixed_param;
|
||||
|
||||
typedef struct {
|
||||
|
|
@ -3180,7 +3231,7 @@ typedef struct {
|
|||
/*
|
||||
* max_ast_index - max AST index that Firmware can generate
|
||||
* max_ast_index = (ast_table_size-1), ast_table_size is dynamically chosen
|
||||
* based on num_peers configutation from Host. Hence Host needs to know the
|
||||
* based on num_peers configuration from Host. Hence Host needs to know the
|
||||
* max_ast_index that Firmware can generate.
|
||||
* A 0x0 value for max_ast_index means the target has not specified a limit.
|
||||
*/
|
||||
|
|
@ -3206,7 +3257,7 @@ typedef struct {
|
|||
/*
|
||||
* max_onchip_ast_index - max AST index that Firmware can generate
|
||||
* max_onchip_ast_index = (ast_table_size-1), where ast_table_size is
|
||||
* dynamically chosen based on num_peers configutation from Host.
|
||||
* dynamically chosen based on num_peers configuration from Host.
|
||||
* Hence Host needs to know the max_onchip_ast_index that Firmware can
|
||||
* generate.
|
||||
* A 0x0 value for max_onchip_ast_index means the target has not specified
|
||||
|
|
@ -3214,6 +3265,16 @@ typedef struct {
|
|||
*/
|
||||
A_UINT32 max_onchip_ast_index;
|
||||
|
||||
/*
|
||||
* The maximum number of LinkView peers can be supported onsite of target,
|
||||
* based on proposed by the host configuration,
|
||||
* total number of available resources, configured peers number,
|
||||
* number of MSDUQs per LinkView peer's TID.
|
||||
* Target can reduce proposed by WMI_INIT_CMDID number, depending on
|
||||
* the target's resources availability.
|
||||
*/
|
||||
A_UINT32 num_of_linkview_peers;
|
||||
|
||||
/*
|
||||
* This fixed_param TLV is followed by these additional TLVs:
|
||||
* mac_addr_list[num_extra_mac_addr];
|
||||
|
|
@ -4039,6 +4100,24 @@ typedef struct {
|
|||
* BIT 1 : 31 Reserved
|
||||
*/
|
||||
A_UINT32 carrier_config;
|
||||
|
||||
/** @brief num_of_linkview_peers - proposed by the host value of
|
||||
* the peers with the num_of_linkview_msduqs_per_tid allocation
|
||||
* @details
|
||||
* Host can request what the number of 'num_peers' should use
|
||||
* num_of_linkview_msduqs_per_tid. All other peers will use
|
||||
* default number of MSDUQs allocated.
|
||||
*/
|
||||
A_UINT32 num_of_linkview_peers;
|
||||
|
||||
/** @brief num_of_linkview_msduqs_per_tid - proposed by the host value of
|
||||
* MSDUQs per each LinkView peer's TID
|
||||
* @details
|
||||
* Host sends the number of MSDUQs per each LinkView peer's TID.
|
||||
* This number will be used during resources allocation for
|
||||
* LinkView peer in the target.
|
||||
*/
|
||||
A_UINT32 num_of_linkview_msduqs_per_tid;
|
||||
} wmi_resource_config;
|
||||
|
||||
#define WMI_MSDU_FLOW_AST_ENABLE_GET(msdu_flow_config0, ast_x) \
|
||||
|
|
@ -4333,7 +4412,7 @@ typedef struct {
|
|||
wmi_abi_version host_abi_vers;
|
||||
|
||||
A_UINT32 num_host_mem_chunks; /** size of array host_mem_chunks[] */
|
||||
/* The TLVs for resource_config, host_mem_chunks[], and hw_mode_config will follow.
|
||||
/* This init_cmd_fixed_param TLV is followed by the below TLVs:
|
||||
* wmi_resource_config resource_config;
|
||||
* wlan_host_memory_chunk host_mem_chunks[];
|
||||
* wmi_pdev_set_hw_mode_cmd_fixed_param hw_mode_config;
|
||||
|
|
@ -4342,8 +4421,9 @@ typedef struct {
|
|||
* within the target.
|
||||
* To avoid specifying a HW mode for the target, the host should
|
||||
* fill hw_mode_config's fields with 0x0.
|
||||
* wmi_pdev_band_to_mac band_to_mac[];
|
||||
* wmi_htt_msdu_idx_to_htt_msdu_qtype htt_msdu_idx_to_qtype_map[];
|
||||
*/
|
||||
|
||||
} wmi_init_cmd_fixed_param;
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@
|
|||
#define __WMI_VER_MINOR_ 0
|
||||
/** WMI revision number has to be incremented when there is a
|
||||
* change that may or may not break compatibility. */
|
||||
#define __WMI_REVISION_ 1050
|
||||
#define __WMI_REVISION_ 1051
|
||||
|
||||
/** The Version Namespace should not be normally changed. Only
|
||||
* host and firmware of the same WMI namespace will work
|
||||
|
|
|
|||
Loading…
Reference in a new issue