diff --git a/fw/wmi_tlv_defs.h b/fw/wmi_tlv_defs.h index 8e27c48ff46e..5fa49073d7cc 100644 --- a/fw/wmi_tlv_defs.h +++ b/fw/wmi_tlv_defs.h @@ -1445,6 +1445,7 @@ typedef enum { WMITLV_TAG_STRUC_wmi_mlo_tlt_selection_for_tid_spray_event_fixed_param, WMITLV_TAG_STRUC_wmi_reg_chan_list_cc_ext_additional_params, WMITLV_TAG_STRUC_wmi_regulatory_rule_meta_data, + WMITLV_TAG_STRUC_wmi_vdev_report_ap_oper_bw_cmd_fixed_param, } WMITLV_TAG_ID; /* * IMPORTANT: Please add _ALL_ WMI Commands Here. @@ -1997,6 +1998,7 @@ typedef enum { OP(WMI_SOC_TX_PACKET_CUSTOM_CLASSIFY_CMDID) \ OP(WMI_SET_AP_SUSPEND_RESUME_CMDID) \ OP(WMI_P2P_GO_DFS_AP_CONFIG_CMDID) \ + OP(WMI_VDEV_REPORT_AP_OPER_BW_CMDID) \ /* add new CMD_LIST elements above this line */ @@ -5643,6 +5645,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_REQUEST_OPM_STATS_CMDID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_set_ap_suspend_resume_cmd_fixed_param, wmi_set_ap_suspend_resume_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_SET_AP_SUSPEND_RESUME_CMDID); +/* cmd to get AP operating BW */ +#define WMITLV_TABLE_WMI_VDEV_REPORT_AP_OPER_BW_CMDID(id,op,buf,len) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_report_ap_oper_bw_cmd_fixed_param, wmi_vdev_report_ap_oper_bw_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) +WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_REPORT_AP_OPER_BW_CMDID); + /************************** TLV definitions of WMI events *******************************/ diff --git a/fw/wmi_unified.h b/fw/wmi_unified.h index 50c7b148b1d9..41ad233cb050 100644 --- a/fw/wmi_unified.h +++ b/fw/wmi_unified.h @@ -687,6 +687,12 @@ typedef enum { /** Connect request on the vdev */ WMI_VDEV_OOB_CONNECTION_REQ_CMDID, + /** + * WMI command to inform the target of the AP's operating bandwidth + * (only applicable for STA vdev) + */ + WMI_VDEV_REPORT_AP_OPER_BW_CMDID, + /* peer specific commands */ @@ -21514,6 +21520,12 @@ typedef struct { */ } wmi_peer_assoc_complete_cmd_fixed_param; +typedef struct { + A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_get_ap_oper_bw_cmd_fixed_param */ + A_UINT32 vdev_id; + A_UINT32 ap_phymode; /* contains a WLAN_PHY_MODE value */ +} wmi_vdev_report_ap_oper_bw_cmd_fixed_param; + /* WDS Entry Flags */ #define WMI_WDS_FLAG_STATIC 0x1 /* Disable aging & learning */ @@ -37202,6 +37214,7 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command) WMI_RETURN_STRING(WMI_VDEV_PLMREQ_STOP_CMDID); WMI_RETURN_STRING(WMI_VDEV_TSF_TSTAMP_ACTION_CMDID); WMI_RETURN_STRING(WMI_VDEV_SET_IE_CMDID); + WMI_RETURN_STRING(WMI_VDEV_REPORT_AP_OPER_BW_CMDID); /* peer specific commands */ diff --git a/fw/wmi_version.h b/fw/wmi_version.h index 400e4351e4e2..7e7180a398dc 100644 --- a/fw/wmi_version.h +++ b/fw/wmi_version.h @@ -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_ 1500 +#define __WMI_REVISION_ 1501 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work