Browse Source

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

Change-Id: I28577d9498234dfb8ab2b3266f82fba1732e142b
WMI: PDEV_SET_HALPHY_CAL_BMAP_CMD,_EVENT msg defs
CRs-Fixed: 2262693
spuligil 3 years ago
parent
commit
bb8f115387
4 changed files with 55 additions and 1 deletions
  1. 1 0
      fw/wmi_services.h
  2. 14 0
      fw/wmi_tlv_defs.h
  3. 39 0
      fw/wmi_unified.h
  4. 1 1
      fw/wmi_version.h

+ 1 - 0
fw/wmi_services.h

@@ -536,6 +536,7 @@ typedef  enum  {
     WMI_SERVICE_EAPOL_OVER_NWIFI = 291, /* Indicates FW supports sending eapol frames in native wifi mode even when the vdev is brought up in raw ethernet mode */
     WMI_SERVICE_AMPDU_TX_BUF_SIZE_256_SUPPORT = 292, /* Indicates FW supports MAX 256 MPDUs in A-MPDU instead of 64 */
     WMI_SERVICE_HALPHY_CAL_STATUS = 293, /* Indicates FW supports sending online HALPHY Calibration status to host */
+    WMI_SERVICE_HALPHY_CAL_ENABLE_DISABLE_SUPPORT = 294, /* Indicates Calibraton enable/disable support by FW */
 
 
     WMI_MAX_EXT2_SERVICE

+ 14 - 0
fw/wmi_tlv_defs.h

@@ -1163,6 +1163,8 @@ typedef enum {
     WMITLV_TAG_STRUC_wmi_pdev_set_bios_geo_table_cmd_fixed_param,
     WMITLV_TAG_STRUC_wmi_pdev_get_halphy_cal_status_cmd_fixed_param,
     WMITLV_TAG_STRUC_wmi_pdev_get_halphy_cal_status_evt_fixed_param,
+    WMITLV_TAG_STRUC_wmi_pdev_set_halphy_cal_bmap_cmd_fixed_param,
+    WMITLV_TAG_STRUC_wmi_pdev_set_halphy_cal_bmap_evt_fixed_param,
 } WMITLV_TAG_ID;
 
 /*
@@ -1629,6 +1631,7 @@ typedef enum {
     OP(WMI_PDEV_SET_BIOS_SAR_TABLE_CMDID) \
     OP(WMI_PDEV_SET_BIOS_GEO_TABLE_CMDID) \
     OP(WMI_PDEV_GET_HALPHY_CAL_STATUS_CMDID) \
+    OP(WMI_PDEV_SET_HALPHY_CAL_BMAP_CMDID) \
     /* add new CMD_LIST elements above this line */
 
 
@@ -1897,6 +1900,7 @@ typedef enum {
     OP(WMI_VDEV_SMART_MONITOR_EVENTID) \
     OP(WMI_MGMT_RX_FW_CONSUMED_EVENTID) \
     OP(WMI_PDEV_GET_HALPHY_CAL_STATUS_EVENTID) \
+    OP(WMI_PDEV_SET_HALPHY_CAL_BMAP_EVENTID) \
     /* add new EVT_LIST elements above this line */
 
 
@@ -4670,6 +4674,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_GET_DPD_STATUS_CMDID);
     WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_get_halphy_cal_status_cmd_fixed_param, wmi_pdev_get_halphy_cal_status_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
 WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_GET_HALPHY_CAL_STATUS_CMDID);
 
+/* Set HALPHY CAL BITMAP status */
+#define WMITLV_TABLE_WMI_PDEV_SET_HALPHY_CAL_BMAP_CMDID(id,op,buf,len) \
+    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_set_halphy_cal_bmap_cmd_fixed_param, wmi_pdev_set_halphy_cal_bmap_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
+WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_SET_HALPHY_CAL_BMAP_CMDID);
+
 /** WMI cmd used to indicate hw_links part of MLO */
 #define WMITLV_TABLE_WMI_MLO_SETUP_CMDID(id,op,buf,len) \
     WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_mlo_setup_cmd_fixed_param, wmi_mlo_setup_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
@@ -6338,6 +6347,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_SMART_MONITOR_EVENTID);
     WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_get_halphy_cal_status_evt_fixed_param, wmi_pdev_get_halphy_cal_status_evt_fixed_param, fixed_param, WMITLV_SIZE_FIX)
 WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_GET_HALPHY_CAL_STATUS_EVENTID);
 
+/* Set halphy cal bmap Event */
+#define WMITLV_TABLE_WMI_PDEV_SET_HALPHY_CAL_BMAP_EVENTID(id,op,buf,len)  \
+    WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_set_halphy_cal_bmap_evt_fixed_param, wmi_pdev_set_halphy_cal_bmap_evt_fixed_param, fixed_param, WMITLV_SIZE_FIX)
+WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_SET_HALPHY_CAL_BMAP_EVENTID);
+
 
 #ifdef __cplusplus
 }

+ 39 - 0
fw/wmi_unified.h

@@ -454,6 +454,8 @@ typedef enum {
     WMI_PDEV_SET_BIOS_GEO_TABLE_CMDID,
     /* Get Calibration status from HALPHY */
     WMI_PDEV_GET_HALPHY_CAL_STATUS_CMDID,
+    /* Set HALPHY CAL bitmap */
+    WMI_PDEV_SET_HALPHY_CAL_BMAP_CMDID,
 
     /* VDEV (virtual device) specific commands */
     /** vdev create */
@@ -1517,6 +1519,9 @@ typedef enum {
     /* Event to get Calibration status from HALPHY */
     WMI_PDEV_GET_HALPHY_CAL_STATUS_EVENTID,
 
+    /* Event to set halphy cal bitmap */
+    WMI_PDEV_SET_HALPHY_CAL_BMAP_EVENTID,
+
 
     /* VDEV specific events */
     /** VDEV started event in response to VDEV_START request */
@@ -28817,6 +28822,7 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command)
         WMI_RETURN_STRING(WMI_PDEV_SET_BIOS_SAR_TABLE_CMDID);
         WMI_RETURN_STRING(WMI_PDEV_SET_BIOS_GEO_TABLE_CMDID);
         WMI_RETURN_STRING(WMI_PDEV_GET_HALPHY_CAL_STATUS_CMDID);
+        WMI_RETURN_STRING(WMI_PDEV_SET_HALPHY_CAL_BMAP_CMDID);
     }
 
     return "Invalid WMI cmd";
@@ -31314,6 +31320,39 @@ typedef struct {
     A_UINT32 halphy_cal_status;
 } wmi_pdev_get_halphy_cal_status_evt_fixed_param;
 
+typedef struct {
+    A_UINT32 tlv_header;    /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pdev_set_halphy_cal_bmap_cmd_fixed_param */
+    A_UINT32 pdev_id;       /* PDEV ID set by the command */
+
+    /*
+     * Calibration valid bitmap from HOST, refer to
+     * WMI_HALPHY_CAL_VALID_BITMAP_STATUS.
+     * Based on the bitmap value, HALPHY will set corresponding mask values
+     * to each of the online calibrations
+     */
+    A_UINT32 online_halphy_cals_bmap;
+
+    /* Calibration enable/disable support for home/scan channel
+     *     0 - home channel
+     *     1 - scan channel
+     *     2 - both home and scan channel
+     */
+    A_UINT32 home_scan_channel;
+} wmi_pdev_set_halphy_cal_bmap_cmd_fixed_param;
+
+typedef struct {
+    A_UINT32 tlv_header;    /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pdev_set_halphy_cal_bmap_evt_fixed_param */
+    A_UINT32 pdev_id;       /* PDEV Id set by the command */
+
+    /* Status indication for calibration
+     *     0 - SUCCESS
+     *     1 - FAIL
+     * This WMI command will by sent from HOST dynamically but only one
+     * at a time. So no need of cookie/request handshake.
+     */
+    A_UINT32 status;
+} wmi_pdev_set_halphy_cal_bmap_evt_fixed_param;
+
 /* below structures are related to Motion Detection. */
 typedef struct {
     /** TLV tag and len; tag equals

+ 1 - 1
fw/wmi_version.h

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