mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-10 06:09:23 -04:00
qcacld-3.0: CL 1446198 update fw common interface files
Added One tuple control flag bit WMI_FLAGS_IS_IPV6_ANYCAST and added one parameter 'num_ns_ext_tuples_cfg' in wmi_resource_config RTT definitions updated Add wmi interface for MBO(MultiBand Operation) feature. Change-Id: If698fc104e9ac39d6b58c88a542a30c2ba59d52b CRs-fixed: 865207
This commit is contained in:
parent
32cced3b75
commit
8618029254
4 changed files with 91 additions and 4 deletions
|
|
@ -769,6 +769,7 @@ static uint8_t *get_wmi_cmd_string(WMI_CMD_ID wmi_command)
|
|||
CASE_RETURN_STRING(WMI_FWTEST_CMDID);
|
||||
CASE_RETURN_STRING(WMI_QBOOST_CFG_CMDID);
|
||||
CASE_RETURN_STRING(WMI_PDEV_GET_NFCAL_POWER_CMDID);
|
||||
CASE_RETURN_STRING(WMI_ROAM_SET_MBO_PARAM_CMDID);
|
||||
}
|
||||
return "Invalid WMI cmd";
|
||||
}
|
||||
|
|
|
|||
|
|
@ -657,6 +657,7 @@ typedef enum {
|
|||
WMITLV_TAG_STRUC_wmi_pdev_nfcal_power_all_channels_freqNum,
|
||||
WMITLV_TAG_STRUC_wmi_mu_report_total_mu,
|
||||
WMITLV_TAG_STRUC_wmi_vdev_set_dscp_tid_map_cmd_fixed_param,
|
||||
WMITLV_TAG_STRUC_wmi_roam_set_mbo_fixed_param,
|
||||
|
||||
} WMITLV_TAG_ID;
|
||||
|
||||
|
|
@ -922,7 +923,8 @@ typedef enum {
|
|||
OP(WMI_PEER_SMART_ANT_SET_NODE_CONFIG_OPS_CMDID) \
|
||||
OP(WMI_PEER_ATF_REQUEST_CMDID) \
|
||||
OP(WMI_FWTEST_CMDID) \
|
||||
OP(WMI_QBOOST_CFG_CMDID)
|
||||
OP(WMI_QBOOST_CFG_CMDID) \
|
||||
OP(WMI_ROAM_SET_MBO_PARAM_CMDID)
|
||||
|
||||
/*
|
||||
* IMPORTANT: Please add _ALL_ WMI Events Here.
|
||||
|
|
@ -1211,6 +1213,17 @@ WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_CHAN_LIST);
|
|||
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_SCAN_CMD);
|
||||
|
||||
/* Roam mbo configuration */
|
||||
#define WMITLV_TABLE_WMI_ROAM_SET_MBO_PARAM_CMDID(id, op, buf, len) \
|
||||
WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_roam_set_mbo_fixed_param, wmi_roam_set_mbo_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
|
||||
WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, cellular_cap, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_ARRAY_STRUC, wmi_supported_operating_class_param, supp_op_class_param, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, supp_op_class_list, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_ARRAY_STRUC, wmi_mbo_non_preferred_channel_report_param, non_prefer_ch_param, WMITLV_SIZE_VAR) \
|
||||
WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, non_prefer_ch_attr, WMITLV_SIZE_VAR)
|
||||
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_SET_MBO_PARAM_CMDID);
|
||||
|
||||
#define WMITLV_TABLE_WMI_VDEV_PLMREQ_START_CMDID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_plmreq_start_cmd_fixed_param, wmi_vdev_plmreq_start_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, channel_list, WMITLV_SIZE_VAR)
|
||||
|
|
|
|||
|
|
@ -357,8 +357,8 @@ typedef enum {
|
|||
/* TSF timestamp action for specified vdev */
|
||||
WMI_VDEV_TSF_TSTAMP_ACTION_CMDID,
|
||||
/*
|
||||
* set the capabilties IE, e.g. for extended caps in probe
|
||||
* requests, assoc req etc for frames FW locally generates
|
||||
* set the additional IEs in probe requests for scan or
|
||||
* assoc req etc for frames FW locally generates
|
||||
*/
|
||||
WMI_VDEV_SET_IE_CMDID,
|
||||
|
||||
|
|
@ -498,6 +498,8 @@ typedef enum {
|
|||
WMI_ROAM_SUBNET_CHANGE_CONFIG_CMDID,
|
||||
/** configure thresholds for MAWC */
|
||||
WMI_ROAM_CONFIGURE_MAWC_CMDID,
|
||||
/** configure MultiBand Operation(refer WFA MBO spec) parameter */
|
||||
WMI_ROAM_SET_MBO_PARAM_CMDID,
|
||||
|
||||
/** offload scan specific commands */
|
||||
/** set offload scan AP profile */
|
||||
|
|
@ -2134,6 +2136,12 @@ typedef struct {
|
|||
* 0 - Don't allocate fragment descriptor for data packet.
|
||||
*/
|
||||
A_UINT32 alloc_frag_desc_for_data_pkt;
|
||||
|
||||
/*
|
||||
* how much space to allocate for NDP NS (neighbor solicitation)
|
||||
* specs
|
||||
*/
|
||||
A_UINT32 num_ns_ext_tuples_cfg;
|
||||
} wmi_resource_config;
|
||||
|
||||
#define WMI_RSRC_CFG_FLAG_SET(word32, flag, value) \
|
||||
|
|
@ -7931,6 +7939,8 @@ typedef struct {
|
|||
#define WMI_NSOFF_FLAGS_VALID (1 << 0) /* the tuple entry is valid */
|
||||
#define WMI_NSOFF_FLAGS_MAC_VALID (1 << 1) /* the target mac address is valid */
|
||||
#define WMI_NSOFF_FLAGS_REMOTE_IP_VALID (1 << 2) /* remote IP field is valid */
|
||||
/* whether the configured IPv6 address is anycast */
|
||||
#define WMI_NSOFF_FLAGS_IS_IPV6_ANYCAST (1 << 3)
|
||||
|
||||
#define WMI_NSOFF_MAX_TARGET_IPS 2
|
||||
|
||||
|
|
@ -12664,6 +12674,69 @@ typedef struct {
|
|||
A_UINT32 sensor_status;
|
||||
} wmi_mawc_sensor_report_ind_cmd_fixed_param;
|
||||
|
||||
/* MBO flag field definition */
|
||||
/*
|
||||
* Bit 0: 0 - Allow to connect to both MBO and non-MBO AP
|
||||
* 1 - Allow to connect to MBO AP only
|
||||
* Bit 1-31 : reserved.
|
||||
*/
|
||||
#define WMI_ROAM_MBO_FLAG_MBO_ONLY_MODE (1<<0)
|
||||
|
||||
typedef struct {
|
||||
/*
|
||||
* TLV tag and len; tag equals
|
||||
* WMITLV_TAG_STRUC_wmi_roam_set_mbo_fixed_param
|
||||
*/
|
||||
A_UINT32 tlv_header;
|
||||
/** vdev id */
|
||||
A_UINT32 vdev_id;
|
||||
/** enable or disable MBO */
|
||||
A_UINT32 enable;
|
||||
/** MBO flags, refer to definition of MBO flags*/
|
||||
A_UINT32 flags;
|
||||
} wmi_roam_set_mbo_fixed_param;
|
||||
|
||||
typedef struct {
|
||||
/*
|
||||
* TLV tag and len; tag equals
|
||||
* WMITLV_TAG_ARRAY_STRUC
|
||||
*/
|
||||
A_UINT32 tlv_header;
|
||||
/** Current operating class number */
|
||||
A_UINT32 cur_op_class;
|
||||
/*
|
||||
* Country string of current reg domain,
|
||||
* the expected value should be same as country str defined
|
||||
* in country IE.
|
||||
* 3 octets (COUNTRY_STR) + 1 octet (always 0)
|
||||
* The ordering of this array must be maintained,
|
||||
* even when a big-endian host's WMI messages undergo
|
||||
* automatic byte reordering for conversion to the
|
||||
* little-endian ordering required by the target.
|
||||
* On big-endian hosts, this array may need to be byte-swapped
|
||||
* by the host, so the subsequent automatic byte-swap
|
||||
* will result in the correct final byte order.
|
||||
* global operating class: set country_str[0]=0
|
||||
*/
|
||||
A_UINT8 country_str[4];
|
||||
/** Supported operating class number in current regdomain */
|
||||
A_UINT32 supp_op_class_num;
|
||||
/* The TLVs will follow. */
|
||||
/* A_UINT32 supp_op_class_list[] */
|
||||
} wmi_supported_operating_class_param;
|
||||
|
||||
typedef struct {
|
||||
/*
|
||||
* TLV tag and len; tag equals
|
||||
* WMITLV_TAG_ARRAY_STRUC
|
||||
*/
|
||||
A_UINT32 tlv_header;
|
||||
/** non preferred channel attribute length */
|
||||
A_UINT32 non_prefer_ch_attr_len;
|
||||
/* The TLVs will follow. */
|
||||
/** A_UINT8 non_prefer_ch_attr[];*/
|
||||
} wmi_mbo_non_preferred_channel_report_param;
|
||||
|
||||
typedef struct {
|
||||
/* TLV tag and len; tag equals
|
||||
* WMITLV_TAG_STRUC_wmi_mawc_enable_sensor_event_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_ 198
|
||||
#define __WMI_REVISION_ 200
|
||||
|
||||
/** 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