Loading fw/wmi_tlv_defs.h +9 −0 Original line number Diff line number Diff line Loading @@ -1401,6 +1401,8 @@ typedef enum { WMITLV_TAG_STRUC_WMI_RADAR_FLAGS, WMITLV_TAG_STRUC_wmi_dma_buf_release_cqi_upload_meta_data, WMITLV_TAG_STRUC_wmi_csa_event_status_ind_fixed_param, WMITLV_TAG_STRUC_wmi_mlo_link_state_switch_req_evt_fixed_param, WMITLV_TAG_STRUC_wmi_mlo_link_state_switch_trigger_reason_tlv_param, } WMITLV_TAG_ID; /* * IMPORTANT: Please add _ALL_ WMI Commands Here. Loading Loading @@ -2253,6 +2255,7 @@ typedef enum { OP(WMI_MLO_LINK_SWITCH_REQUEST_EVENTID) \ OP(WMI_NAN_OEM_DATA_EVENTID) \ OP(WMI_PDEV_ENHANCED_AOA_PHASEDELTA_EVENTID) \ OP(WMI_MLO_LINK_STATE_SWITCH_EVENTID) \ /* add new EVT_LIST elements above this line */ Loading Loading @@ -7471,6 +7474,12 @@ WMITLV_CREATE_PARAM_STRUC(WMI_MLO_PRIMARY_LINK_PEER_MIGRATION_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, aoa_data_buf, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_ENHANCED_AOA_PHASEDELTA_EVENTID); /* MLO Link State Switch Event */ #define WMITLV_TABLE_WMI_MLO_LINK_STATE_SWITCH_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_mlo_link_state_switch_req_evt_fixed_param, wmi_mlo_link_state_switch_req_evt_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_mlo_link_state_switch_trigger_reason, switch_trigger_reason, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_MLO_LINK_STATE_SWITCH_EVENTID); #ifdef __cplusplus } Loading fw/wmi_unified.h +36 −2 Original line number Diff line number Diff line Loading @@ -2418,6 +2418,8 @@ typedef enum { WMI_MLO_LINK_SWITCH_REQUEST_EVENTID, /** Response event for WMI_MLO_PRIMARY_LINK_PEER_MIGRATION_CMDID */ WMI_MLO_PRIMARY_LINK_PEER_MIGRATION_EVENTID, /** WMI Event to spcify reason for link state switch */ WMI_MLO_LINK_STATE_SWITCH_EVENTID, /* WMI event specific to Quiet handling */ WMI_QUIET_HANDLING_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_QUIET_OFL), Loading Loading @@ -46516,6 +46518,38 @@ typedef struct { A_UINT32 reason; /* see definition of WMI_LINK_SWITCH_CNF_REASON */ } wmi_mlo_link_switch_cnf_fixed_param; typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_mlo_link_state_switch_req_evt_fixed_param */ A_UINT32 link_state_switch_count; /* Number of link state switch event pending, MAX 5 iteration */ } wmi_mlo_link_state_switch_req_evt_fixed_param; typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_mlo_link_state_switch_trigger_reason_tlv_param */ A_UINT32 cur_active_ieee_bitmap; /* current active ieee linkbitmap */ A_UINT32 prev_active_ieee_bitmap; /* previous active iee linkbitmap */ A_UINT32 host_ref_fw_timestamp_ms; /* fw time stamp on refrence of TIME_STAMP_SYNC_CMD */ A_UINT32 reason_code; /* reason for link state switch trigger - * refer to WMI_LINK_STATE_SWITCH_REASON */ wmi_mac_addr ml_bssid; /* mac address of mld device */ } wmi_mlo_link_state_switch_trigger_reason; typedef enum _WMI_LINK_STATE_SWITCH_REASON { WMI_MLO_PS_LINK_STATE_SWITCH_REASON_VDEV_READY = 0, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_ULL_MODE = 1, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_T2LM_ENABLED = 2, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_T2LM_DISABLED = 3, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_FORCE_ENABLED = 4, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_FORCE_DISABLED = 5, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_LINK_QUALITY = 6, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_LINK_CAPACITY = 7, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_RSSI = 8, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_BMISS = 9, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_BT_STATUS = 10, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_MAX, } WMI_LINK_STATE_SWITCH_REASON; #define WMI_MLO_PRIMARY_LINK_PEER_MIGRATION_ML_PEER_ID_GET(new_link_info) WMI_GET_BITS(new_link_info, 0, 16) #define WMI_MLO_PRIMARY_LINK_PEER_MIGRATION_ML_PEER_ID_SET(new_link_info, value) WMI_SET_BITS(new_link_info, 0, 16, value) fw/wmi_version.h +1 −1 Original line number Diff line number Diff line Loading @@ -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_ 1385 #define __WMI_REVISION_ 1386 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work Loading Loading
fw/wmi_tlv_defs.h +9 −0 Original line number Diff line number Diff line Loading @@ -1401,6 +1401,8 @@ typedef enum { WMITLV_TAG_STRUC_WMI_RADAR_FLAGS, WMITLV_TAG_STRUC_wmi_dma_buf_release_cqi_upload_meta_data, WMITLV_TAG_STRUC_wmi_csa_event_status_ind_fixed_param, WMITLV_TAG_STRUC_wmi_mlo_link_state_switch_req_evt_fixed_param, WMITLV_TAG_STRUC_wmi_mlo_link_state_switch_trigger_reason_tlv_param, } WMITLV_TAG_ID; /* * IMPORTANT: Please add _ALL_ WMI Commands Here. Loading Loading @@ -2253,6 +2255,7 @@ typedef enum { OP(WMI_MLO_LINK_SWITCH_REQUEST_EVENTID) \ OP(WMI_NAN_OEM_DATA_EVENTID) \ OP(WMI_PDEV_ENHANCED_AOA_PHASEDELTA_EVENTID) \ OP(WMI_MLO_LINK_STATE_SWITCH_EVENTID) \ /* add new EVT_LIST elements above this line */ Loading Loading @@ -7471,6 +7474,12 @@ WMITLV_CREATE_PARAM_STRUC(WMI_MLO_PRIMARY_LINK_PEER_MIGRATION_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_UINT32, A_UINT32, aoa_data_buf, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_ENHANCED_AOA_PHASEDELTA_EVENTID); /* MLO Link State Switch Event */ #define WMITLV_TABLE_WMI_MLO_LINK_STATE_SWITCH_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_mlo_link_state_switch_req_evt_fixed_param, wmi_mlo_link_state_switch_req_evt_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_mlo_link_state_switch_trigger_reason, switch_trigger_reason, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_MLO_LINK_STATE_SWITCH_EVENTID); #ifdef __cplusplus } Loading
fw/wmi_unified.h +36 −2 Original line number Diff line number Diff line Loading @@ -2418,6 +2418,8 @@ typedef enum { WMI_MLO_LINK_SWITCH_REQUEST_EVENTID, /** Response event for WMI_MLO_PRIMARY_LINK_PEER_MIGRATION_CMDID */ WMI_MLO_PRIMARY_LINK_PEER_MIGRATION_EVENTID, /** WMI Event to spcify reason for link state switch */ WMI_MLO_LINK_STATE_SWITCH_EVENTID, /* WMI event specific to Quiet handling */ WMI_QUIET_HANDLING_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_QUIET_OFL), Loading Loading @@ -46516,6 +46518,38 @@ typedef struct { A_UINT32 reason; /* see definition of WMI_LINK_SWITCH_CNF_REASON */ } wmi_mlo_link_switch_cnf_fixed_param; typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_mlo_link_state_switch_req_evt_fixed_param */ A_UINT32 link_state_switch_count; /* Number of link state switch event pending, MAX 5 iteration */ } wmi_mlo_link_state_switch_req_evt_fixed_param; typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_mlo_link_state_switch_trigger_reason_tlv_param */ A_UINT32 cur_active_ieee_bitmap; /* current active ieee linkbitmap */ A_UINT32 prev_active_ieee_bitmap; /* previous active iee linkbitmap */ A_UINT32 host_ref_fw_timestamp_ms; /* fw time stamp on refrence of TIME_STAMP_SYNC_CMD */ A_UINT32 reason_code; /* reason for link state switch trigger - * refer to WMI_LINK_STATE_SWITCH_REASON */ wmi_mac_addr ml_bssid; /* mac address of mld device */ } wmi_mlo_link_state_switch_trigger_reason; typedef enum _WMI_LINK_STATE_SWITCH_REASON { WMI_MLO_PS_LINK_STATE_SWITCH_REASON_VDEV_READY = 0, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_ULL_MODE = 1, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_T2LM_ENABLED = 2, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_T2LM_DISABLED = 3, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_FORCE_ENABLED = 4, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_FORCE_DISABLED = 5, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_LINK_QUALITY = 6, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_LINK_CAPACITY = 7, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_RSSI = 8, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_BMISS = 9, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_BT_STATUS = 10, WMI_MLO_PS_LINK_STATE_SWITCH_REASON_MAX, } WMI_LINK_STATE_SWITCH_REASON; #define WMI_MLO_PRIMARY_LINK_PEER_MIGRATION_ML_PEER_ID_GET(new_link_info) WMI_GET_BITS(new_link_info, 0, 16) #define WMI_MLO_PRIMARY_LINK_PEER_MIGRATION_ML_PEER_ID_SET(new_link_info, value) WMI_SET_BITS(new_link_info, 0, 16, value)
fw/wmi_version.h +1 −1 Original line number Diff line number Diff line Loading @@ -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_ 1385 #define __WMI_REVISION_ 1386 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work Loading