From 158307d4f125191062c6140bef410748e0d154a3 Mon Sep 17 00:00:00 2001 From: Manjeet Singh Date: Wed, 24 Aug 2016 15:23:58 +0530 Subject: [PATCH] qcacld-3.0: CL 1613065 - update fw common interface files qcacld-2.0 to qcacld-3.0 propagation. Add WMI types and macros definitions for antenna isolation detect. Change-Id: I69b715c224d30b40e37d4a6a6e780b1980b490e0 CRs-fixed: 865207 --- target/inc/wmi_tlv_defs.h | 14 ++++++++++++++ target/inc/wmi_unified.h | 27 +++++++++++++++++++++++++++ target/inc/wmi_version.h | 2 +- 3 files changed, 42 insertions(+), 1 deletion(-) diff --git a/target/inc/wmi_tlv_defs.h b/target/inc/wmi_tlv_defs.h index 161ef82008..3fb6261edb 100644 --- a/target/inc/wmi_tlv_defs.h +++ b/target/inc/wmi_tlv_defs.h @@ -733,6 +733,8 @@ typedef enum { WMITLV_TAG_STRUC_wmi_mnt_filter_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_get_chip_power_stats_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_pdev_chip_power_stats_event_fixed_param, + WMITLV_TAG_STRUC_wmi_coex_get_antenna_isolation_cmd_fixed_param, + WMITLV_TAG_STRUC_wmi_coex_report_isolation_event_fixed_param, } WMITLV_TAG_ID; /* @@ -1033,6 +1035,7 @@ typedef enum { OP(WMI_PDEV_GET_ANTDIV_STATUS_CMDID) \ OP(WMI_MNT_FILTER_CMDID) \ OP(WMI_PDEV_GET_CHIP_POWER_STATS_CMDID) \ + OP(WMI_COEX_GET_ANTENNA_ISOLATION_CMDID) \ /* add new CMD_LIST elements above this line */ /* @@ -1190,6 +1193,7 @@ typedef enum { OP(WMI_PEER_ANTDIV_INFO_EVENTID) \ OP(WMI_PDEV_ANTDIV_STATUS_EVENTID) \ OP(WMI_PDEV_CHIP_POWER_STATS_EVENTID) \ + OP(WMI_COEX_REPORT_ANTENNA_ISOLATION_EVENTID) \ /* add new EVT_LIST elements above this line */ /* TLV definitions of WMI commands */ @@ -2611,6 +2615,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_EXTSCAN_CONFIGURE_MAWC_CMDID); WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_WMI_COEX_CONFIG_CMD_fixed_param, WMI_COEX_CONFIG_CMD_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_COEX_CONFIG_CMDID); +/* Coex get antenna isolation cmd */ +#define WMITLV_TABLE_WMI_COEX_GET_ANTENNA_ISOLATION_CMDID(id, op, buf, len) \ + WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_coex_get_antenna_isolation_cmd_fixed_param, wmi_coex_get_antenna_isolation_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) +WMITLV_CREATE_PARAM_STRUC(WMI_COEX_GET_ANTENNA_ISOLATION_CMDID); + /* bpf offload capability get cmd */ #define WMITLV_TABLE_WMI_BPF_GET_CAPABILITY_CMDID(id, op, buf, len) \ WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_bpf_get_capability_cmd_fixed_param, wmi_bpf_get_capability_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) @@ -3523,6 +3532,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_NAN_STARTED_CLUSTER_EVENTID); WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_nan_joined_cluster_event_fixed_param, wmi_nan_joined_cluster_event_fixed_param_PROTOTYPE, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_NAN_JOINED_CLUSTER_EVENTID); +/* Coex report antenna isolation event */ +#define WMITLV_TABLE_WMI_COEX_REPORT_ANTENNA_ISOLATION_EVENTID(id, op, buf, len) \ + WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_coex_report_isolation_event_fixed_param, wmi_coex_report_isolation_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) +WMITLV_CREATE_PARAM_STRUC(WMI_COEX_REPORT_ANTENNA_ISOLATION_EVENTID); + /* NDP capabilities response event */ #define WMITLV_TABLE_WMI_NDI_CAP_RSP_EVENTID(id, op, buf, len) \ WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_ndi_cap_rsp_event_fixed_param, wmi_ndi_cap_rsp_event_fixed_param_PROTOTYPE, fixed_param, WMITLV_SIZE_FIX) diff --git a/target/inc/wmi_unified.h b/target/inc/wmi_unified.h index 3d9a880a49..7c714d7a38 100644 --- a/target/inc/wmi_unified.h +++ b/target/inc/wmi_unified.h @@ -911,6 +911,7 @@ typedef enum { WMI_CHAN_AVOID_UPDATE_CMDID, WMI_COEX_CONFIG_CMDID, WMI_CHAN_AVOID_RPT_ALLOW_CMDID, + WMI_COEX_GET_ANTENNA_ISOLATION_CMDID, /** * OBSS scan offload enable/disable commands @@ -1369,6 +1370,10 @@ typedef enum { WMI_NAN_STARTED_CLUSTER_EVENTID, WMI_NAN_JOINED_CLUSTER_EVENTID, + /* Coex Event */ + WMI_COEX_REPORT_ANTENNA_ISOLATION_EVENTID = + WMI_EVT_GRP_START_ID(WMI_GRP_COEX), + /* LPI Event */ WMI_LPI_RESULT_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_LPI), WMI_LPI_STATUS_EVENTID, @@ -16491,6 +16496,28 @@ typedef struct { */ } wmi_scan_adaptive_dwell_config_fixed_param; +typedef struct { + /** TLV tag and len; tag equals + * WMITLV_TAG_STRUC_wmi_coex_get_antenna_isolation_cmd_fixed_param */ + A_UINT32 tlv_header; + /* Currently there are no parameters for this message. */ +} wmi_coex_get_antenna_isolation_cmd_fixed_param; + +typedef struct { + /** TLV tag and len; tag equals + * WMITLV_TAG_STRUC_wmi_coex_report_isolation_event_fixed_param */ + A_UINT32 tlv_header; + /** Antenna isolation value in dB units, none zero value is valid while 0 means failed to do isolation measurement or corresponding chain is not active. + * Currently the HW descriptor only supports 4 chains at most. + * Further isolation_chainX elements can be added in the future + * for additional chains, if needed. + */ + A_UINT32 isolation_chain0:8, /* [7:0], isolation value for chain 0 */ + isolation_chain1:8, /* [15:8], isolation value for chain 1 */ + isolation_chain2:8, /* [23:16], isolation value for chain 2 */ + isolation_chain3:8; /* [31:24], isolation value for chain 3 */ +} wmi_coex_report_isolation_event_fixed_param; + /* ADD NEW DEFS HERE */ /***************************************************************************** diff --git a/target/inc/wmi_version.h b/target/inc/wmi_version.h index 9294a40a98..48673d8808 100644 --- a/target/inc/wmi_version.h +++ b/target/inc/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_ 286 +#define __WMI_REVISION_ 287 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work