diff --git a/fw/wmi_tlv_defs.h b/fw/wmi_tlv_defs.h index 82b91eb719..a6eed5eacc 100644 --- a/fw/wmi_tlv_defs.h +++ b/fw/wmi_tlv_defs.h @@ -1428,6 +1428,8 @@ typedef enum { WMITLV_TAG_STRUC_wmi_dcs_obss_int_t, WMITLV_TAG_STRUC_wmi_pdev_wifi_radar_cal_completion_status_event_param, WMITLV_TAG_STRUC_wmi_sar_flags, + WMITLV_TAG_STRUC_wmi_pdev_enable_xlna_cmd_fixed_param, + WMITLV_TAG_STRUC_wmi_pdev_enable_xlna_event_fixed_param, } WMITLV_TAG_ID; /* * IMPORTANT: Please add _ALL_ WMI Commands Here. @@ -1972,6 +1974,7 @@ typedef enum { OP(WMI_PDEV_ENABLE_LED_BLINK_DOWNLOAD_TABLE_CMDID) \ OP(WMI_VDEV_GET_TWT_SESSION_STATS_INFO_CMDID) \ OP(WMI_PDEV_ENABLE_WIFI_RADAR_CMDID) \ + OP(WMI_PDEV_ENABLE_XLNA_CMDID) \ /* add new CMD_LIST elements above this line */ @@ -2294,6 +2297,7 @@ typedef enum { OP(WMI_AUDIO_TRANSPORT_SWITCH_TYPE_EVENTID) \ OP(WMI_PDEV_WIFI_RADAR_CAL_COMPLETION_STATUS_EVENTID) \ OP(WMI_MLO_LINK_INFO_SYNC_EVENTID) \ + OP(WMI_PDEV_ENABLE_XLNA_EVENTID) \ /* add new EVT_LIST elements above this line */ @@ -5572,6 +5576,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_COEX_MULTIPLE_CONFIG_CMDID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_enable_wifi_radar_cmd_fixed_param, wmi_pdev_enable_wifi_radar_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_ENABLE_WIFI_RADAR_CMDID); +/* xLNA Enable command */ +#define WMITLV_TABLE_WMI_PDEV_ENABLE_XLNA_CMDID(id,op,buf,len) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_enable_xlna_cmd_fixed_param, wmi_pdev_enable_xlna_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) +WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_ENABLE_XLNA_CMDID); + /************************** TLV definitions of WMI events *******************************/ @@ -7607,6 +7616,10 @@ WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_OOB_CONNECTION_RESP_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_wifi_radar_cal_completion_status_event_param, wmi_pdev_wifi_radar_cal_completion_status_event_param, cal_completion_status_event_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_WIFI_RADAR_CAL_COMPLETION_STATUS_EVENTID); +/* xLNA Enable status event */ +#define WMITLV_TABLE_WMI_PDEV_ENABLE_XLNA_EVENTID(id,op,buf,len) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_enable_xlna_event_fixed_param, wmi_pdev_enable_xlna_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) +WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_ENABLE_XLNA_EVENTID); #ifdef __cplusplus diff --git a/fw/wmi_unified.h b/fw/wmi_unified.h index 12fc6d3cba..91ff5dc59d 100644 --- a/fw/wmi_unified.h +++ b/fw/wmi_unified.h @@ -561,6 +561,8 @@ typedef enum { WMI_PDEV_ENABLE_LED_BLINK_DOWNLOAD_TABLE_CMDID, /** WMI Command to enable wifi radar */ WMI_PDEV_ENABLE_WIFI_RADAR_CMDID, + /* WMI Command to enable xLNA */ + WMI_PDEV_ENABLE_XLNA_CMDID, /* VDEV (virtual device) specific commands */ @@ -1821,6 +1823,9 @@ typedef enum { /* Event to indicate the status of WiFi Radar calibration */ WMI_PDEV_WIFI_RADAR_CAL_COMPLETION_STATUS_EVENTID, + /* Event to indicate xLNA is enabled */ + WMI_PDEV_ENABLE_XLNA_EVENTID, + /* VDEV specific events */ /** VDEV started event in response to VDEV_START request */ WMI_VDEV_START_RESP_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_VDEV), @@ -37425,6 +37430,7 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command) WMI_RETURN_STRING(WMI_PDEV_ENABLE_LED_BLINK_DOWNLOAD_TABLE_CMDID); WMI_RETURN_STRING(WMI_PDEV_ENABLE_WIFI_RADAR_CMDID); WMI_RETURN_STRING(WMI_VDEV_GET_TWT_SESSION_STATS_INFO_CMDID); + WMI_RETURN_STRING(WMI_PDEV_ENABLE_XLNA_CMDID); } return (A_UINT8 *) "Invalid WMI cmd"; @@ -47904,6 +47910,24 @@ typedef struct { A_UINT32 per_chain_cal_status[WMI_MAX_CHAINS]; } wmi_pdev_wifi_radar_cal_completion_status_event_param; +typedef struct { + /* WMITLV_TAG_STRUC_wmi_pdev_enable_xlna_cmd_fixed_param */ + A_UINT32 tlv_header; + /* ID of pdev for which the xLNA needs to be configured */ + A_UINT32 pdev_id; + /* 1 - Enable, 0 - Disable */ + A_UINT32 xLNA_enable; +} wmi_pdev_enable_xlna_cmd_fixed_param; + +typedef struct { + /* WMITLV_TAG_STRUC_wmi_pdev_enable_xlna_event_fixed_param */ + A_UINT32 tlv_header; + /* to identify for which pdev the response is received */ + A_UINT32 pdev_id; + /* Return status: 0 - Success, else - Failure */ + A_UINT32 status; +} wmi_pdev_enable_xlna_event_fixed_param; + /* ADD NEW DEFS HERE */ diff --git a/fw/wmi_version.h b/fw/wmi_version.h index d65655777d..1063890c58 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_ 1447 +#define __WMI_REVISION_ 1448 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work