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

Change-Id: I59bf44a0eaaa2d7f00032775e6fc126c13ae7480
CRs-Fixed: 3830439
This commit is contained in:
spuligil 2024-12-21 06:04:20 -08:00 • committed by Ravindra Konda
commit 0c0272b8bd
3 changed files with 131 additions and 2 deletions

View file

@ -1471,6 +1471,10 @@ typedef enum {
WMITLV_TAG_STRUC_wmi_ctrl_path_pdev_conn_stats_struct,
WMITLV_TAG_STRUC_wmi_pdev_sscan_spur_chan_impacted_bin_info,
WMITLV_TAG_STRUC_wmi_ctrl_path_ml_rcfg_stats_struct,
WMITLV_TAG_STRUC_wmi_vdev_vbss_config_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_vdev_vbss_peer_pn_info,
WMITLV_TAG_STRUC_wmi_vdev_vbss_peer_sn_info,
WMITLV_TAG_STRUC_wmi_vdev_vbss_config_event_fixed_param,
} WMITLV_TAG_ID;
/*
* IMPORTANT: Please add _ALL_ WMI Commands Here.
@ -2031,6 +2035,7 @@ typedef enum {
OP(WMI_MLO_LINK_RECONFIG_CMDID) \
OP(WMI_MLO_LINK_RECONFIG_COMPLETE_CMDID) \
OP(WMI_SAWF_EZMESH_HOP_COUNT_CMDID) \
OP(WMI_VDEV_VBSS_CONFIG_CMDID) \
/* add new CMD_LIST elements above this line */
@ -2364,6 +2369,7 @@ typedef enum {
OP(WMI_SCAN_CACHE_RESULT_EVENTID) \
OP(WMI_MLO_LINK_RECONFIG_START_INDICATION_EVENTID) \
OP(WMI_PDEV_WIFI_RADAR_CAPABILITIES_EVENTID) \
OP(WMI_VDEV_VBSS_CONFIG_EVENTID) \
/* add new EVT_LIST elements above this line */
@ -3631,6 +3637,13 @@ WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_SET_PARAM_CMDID);
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_update_mac_addr_cmd_fixed_param, wmi_vdev_update_mac_addr_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_UPDATE_MAC_ADDR_CMDID);
/* VDEV VBSS CONFIG COMMAND */
#define WMITLV_TABLE_WMI_VDEV_VBSS_CONFIG_CMDID(id,op,buf,len) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_vbss_config_cmd_fixed_param, wmi_vdev_vbss_config_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)\
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_vdev_vbss_peer_pn_info, vbss_peer_pn_info, WMITLV_SIZE_VAR) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_vdev_vbss_peer_sn_info, vbss_peer_sn_info, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_VBSS_CONFIG_CMDID);
/* Pdev suspend Cmd */
#define WMITLV_TABLE_WMI_PDEV_SUSPEND_CMDID(id,op,buf,len) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_suspend_cmd_fixed_param, wmi_pdev_suspend_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
@ -7749,6 +7762,13 @@ WMITLV_CREATE_PARAM_STRUC(WMI_VENDOR_VDEV_EVENTID);
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, opaque_vendor_var_len_data, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_VENDOR_PEER_EVENTID);
/* VDEV VBSS CONFIG EVENT */
#define WMITLV_TABLE_WMI_VDEV_VBSS_CONFIG_EVENTID(id,op,buf,len) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_vbss_config_event_fixed_param, wmi_vdev_vbss_config_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)\
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_vdev_vbss_peer_pn_info, vbss_peer_pn_info, WMITLV_SIZE_VAR) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_vdev_vbss_peer_sn_info, vbss_peer_sn_info, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_VBSS_CONFIG_EVENTID);
/* link switch event */
#define WMITLV_TABLE_WMI_MLO_LINK_SWITCH_REQUEST_EVENTID(id,op,buf,len) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_mlo_link_switch_req_evt_fixed_param, wmi_mlo_link_switch_req_evt_fixed_param, fixed_param, WMITLV_SIZE_FIX)

View file

@ -721,6 +721,8 @@ typedef enum {
*/
WMI_VDEV_REPORT_AP_OPER_BW_CMDID,
WMI_VDEV_VBSS_CONFIG_CMDID,
/* peer specific commands */
@ -1982,6 +1984,7 @@ typedef enum {
WMI_VDEV_SCHED_MODE_PROBE_RESP_EVENTID,
/** Connect response */
WMI_VDEV_OOB_CONNECTION_RESP_EVENTID,
WMI_VDEV_VBSS_CONFIG_EVENTID,
/* peer specific events */
/** FW reauet to kick out the station for reasons like inactivity,lack of response ..etc */
@ -17237,7 +17240,15 @@ typedef enum {
* Bridge VDEV/PEER will be required to seamlessly transmit
* to diagonal links in 4 chip MLO.
*/
#define WMI_UNIFIED_VDEV_SUBTYPE_BRIDGE 0x8
#define WMI_UNIFIED_VDEV_SUBTYPE_BRIDGE 0x8
/* Subtype to indicate that the VDEV is in VBSS mode.
* VBSS Vdev could be active or passive state.
* VBSS ACTIVE : Peer directly connected to the vdev.
* VBSS PASSIVE : Peer connected to another VBSS node in the network
*/
#define WMI_UNIFIED_VDEV_SUBTYPE_VBSS 0x9
/** values for vdev_start_request flags */
/** Indicates that AP VDEV uses hidden ssid. only valid for
@ -17995,6 +18006,14 @@ enum WMI_VDEV_UP_FLAGS {
* EMA - Enhanced Multiple BSS Advertisemet.
*/
WMI_VDEV_UP_FLAG_EMA_MBSSID_AP = 0x00000001,
/** VBSS_ACTIVE
* Valid only for VBSS subtype vaps.
*/
WMI_VDEV_UP_FLAG_VBSS_ACTIVE = 0x00000002,
/** VBSS_PASSIVE
* Valid only for VBSS subtype vaps.
*/
WMI_VDEV_UP_FLAG_VBSS_PASSIVE = 0x00000004,
};
typedef struct {
@ -38636,6 +38655,7 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command)
WMI_RETURN_STRING(WMI_MLO_LINK_RECONFIG_CMDID);
WMI_RETURN_STRING(WMI_MLO_LINK_RECONFIG_COMPLETE_CMDID);
WMI_RETURN_STRING(WMI_SAWF_EZMESH_HOP_COUNT_CMDID);
WMI_RETURN_STRING(WMI_VDEV_VBSS_CONFIG_CMDID);
}
return (A_UINT8 *) "Invalid WMI cmd";
@ -49930,6 +49950,95 @@ typedef struct {
};
} WMI_RSSI_ACCURACY_IMPROVEMENT_CAPABILITIES;
typedef struct {
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_vbss_config_cmd_fixed_param */
/** unique id identifying the VDEV, generated by the caller */
A_UINT32 vdev_id;
/** VBSS PEER MAC address */
wmi_mac_addr peer_mac_addr;
union {
A_UINT32 action__word32;
struct {
/** 3:0 -> Action (4 bits)
* 31:4 -> reserved (28 bits)
*/
A_UINT32
action: 4, /* refer to wmi_vbss_action */
reserved: 28;
};
};
/*
* The below TLVs follow this TLV in the WMI_VDEV_VBSS_CONFIG_CMDID msg:
* - wmi_vdev_vbss_peer_sn_info[];
* - wmi_vdev_vbss_peer_pn_info[];
*/
} wmi_vdev_vbss_config_cmd_fixed_param;
typedef struct {
A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_vbss_peer_pn_info */
union {
A_UINT32 pn_ctxt_id__word32;
struct {
/** 3:0 unicast/mcast/beacon
* 31:4 reserved
*/
A_UINT32
pn_ctxt_id: 4,
reserved: 28;
};
};
A_UINT8 pn[16];
} wmi_vdev_vbss_peer_pn_info;
typedef struct {
A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_vbss_peer_sn_info */
union {
A_UINT32 tid_num__ssn__word32;
struct {
/** 15:0 tid number
* 31:16 start sequence number
*/
A_UINT32
tid_num: 16,
ssn: 16;
};
};
/* The below TLVs follow this TLV in the WMI_VDEV_VBSS_CONFIG_EVENTID msg:
* - A_UINT32 scan_freq_list[];
* - wmi_vdev_vbss_config_event_fixed_param[];
*/
} wmi_vdev_vbss_peer_sn_info;
typedef enum {
WMI_VBSS_GET_PEER_CONTEXT = 0x1,
WMI_VBSS_SET_PEER_CONTEXT = 0x2,
} wmi_vbss_action;
#define WMI_VDEV_VBSS_GET_ACTION(action) WMI_GET_BITS(action, 0, 4)
#define WMI_VDEV_VBSS_SET_ACTION(action, value) WMI_SET_BITS(action, 0, 4, value)
#define WMI_VDEV_VBSS_PN_INFO_GET_PN_CTXT_ID(pn_ctxt_id) WMI_GET_BITS(pn_ctxt_id, 0, 4)
#define WMI_VDEV_VBSS_PN_INFO_SET_PN_CTXT_ID(pn_ctxt_id, value) WMI_SET_BITS(pn_ctxt_id, 0, 4, value)
#define WMI_VDEV_VBSS_SN_INFO_GET_tid_num(tid_num_ssn) WMI_GET_BITS(tid_num_ssn, 0, 16)
#define WMI_VDEV_VBSS_SN_INFO_SET_tid_num(action, value) WMI_SET_BITS(tid_num_ssn, 0, 16, value)
#define WMI_VDEV_VBSS_SN_INFO_GET_SSN(tid_num_ssn) WMI_GET_BITS(tid_num_ssn, 16, 16)
#define WMI_VDEV_VBSS_SN_INFO_SET_SSN(action, value) WMI_SET_BITS(tid_num_ssn, 16, 16, value)
typedef struct {
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_vbss_config_event_fixed_param */
/** unique id identifying the VDEV, generated by the caller */
A_UINT32 vdev_id;
/** PEER MAC address */
wmi_mac_addr peer_mac_addr;
/* The below TLVs follow this TLV in the WMI_VDEV_VBSS_CONFIG_EVENTID msg:
* - wmi_vdev_vbss_peer_sn_info[];
* - wmi_vdev_vbss_peer_pn_info[];
*/
} wmi_vdev_vbss_config_event_fixed_param;
/* ADD NEW DEFS HERE */

View file

@ -37,7 +37,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_ 1562
#define __WMI_REVISION_ 1563
/** The Version Namespace should not be normally changed. Only
* host and firmware of the same WMI namespace will work