summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorc_rrajiv <rrajiv@codeaurora.org>2016-10-12 13:19:58 +0530
committerAnjaneedevi Kapparapu <akappa@codeaurora.org>2016-10-13 12:15:08 +0530
commita766afd570cc2e9ecddba1ce1bcf19e6bc12688a (patch)
tree4bdfccd15ef49047a3d1464549c4fc7dd1727ce5
parent0d7cced3f5fd8aa94fd620dcddbe3c59920508be (diff)
qcacld-2.0: CL 1660720 - update fw common interface files
Add wmi_pdev_band_to_mac TLVs to wmi_pdev_set_hw_mode and support > 32 vdevs in swba_event. Change-Id: I29e6513fae5a2aa6318ee8d65f77c289228efb6e CRs-Fixed: 865207
-rw-r--r--CORE/SERVICES/COMMON/wmi_tlv_defs.h3
-rw-r--r--CORE/SERVICES/COMMON/wmi_unified.h62
-rw-r--r--CORE/SERVICES/COMMON/wmi_version.h2
3 files changed, 64 insertions, 3 deletions
diff --git a/CORE/SERVICES/COMMON/wmi_tlv_defs.h b/CORE/SERVICES/COMMON/wmi_tlv_defs.h
index 8d1ce019b3ef..bfc6f21c6f9e 100644
--- a/CORE/SERVICES/COMMON/wmi_tlv_defs.h
+++ b/CORE/SERVICES/COMMON/wmi_tlv_defs.h
@@ -752,6 +752,9 @@ typedef enum {
WMITLV_TAG_STRUC_wmi_rx_aggr_failure_info,
WMITLV_TAG_STRUC_wmi_vdev_encrypt_decrypt_data_req_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_vdev_encrypt_decrypt_data_resp_event_fixed_param,
+ WMITLV_TAG_STRUC_wmi_pdev_band_to_mac,
+ WMITLV_TAG_STRUC_wmi_tbtt_offset_info,
+ WMITLV_TAG_STRUC_wmi_tbtt_offset_ext_event_fixed_param,
} WMITLV_TAG_ID;
/*
diff --git a/CORE/SERVICES/COMMON/wmi_unified.h b/CORE/SERVICES/COMMON/wmi_unified.h
index 465d1ee247f0..20d4ed139ffb 100644
--- a/CORE/SERVICES/COMMON/wmi_unified.h
+++ b/CORE/SERVICES/COMMON/wmi_unified.h
@@ -1141,7 +1141,10 @@ typedef enum {
WMI_MGMT_TX_COMPLETION_EVENTID,
/** Event for Mgmt TX bundle completion event */
WMI_MGMT_TX_BUNDLE_COMPLETION_EVENTID,
-
+ /** vdev_map used in WMI_TBTTOFFSET_UPDATE_EVENTID supports max 32 vdevs
+ * Use this event if number of vdevs > 32.
+ */
+ WMI_TBTTOFFSET_EXT_UPDATE_EVENTID,
/*ADDBA Related WMI Events*/
/** Indication the completion of the prior
@@ -6858,13 +6861,17 @@ typedef struct {
typedef struct {
A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_tim_info */
- /** TIM bitmap len (in bytes)*/
+ /** TIM bitmap len (in bytes) */
A_UINT32 tim_len;
/** TIM Partial Virtual Bitmap */
A_UINT32 tim_mcast;
A_UINT32 tim_bitmap[WMI_TIM_BITMAP_ARRAY_SIZE];
A_UINT32 tim_changed;
A_UINT32 tim_num_ps_pending;
+ /** Use the vdev_id only if vdev_id_valid is set */
+ A_UINT32 vdev_id_valid;
+ /** unique id identifying the VDEV */
+ A_UINT32 vdev_id;
} wmi_tim_info;
typedef struct {
@@ -6894,6 +6901,10 @@ typedef struct {
*/
A_UINT32 noa_attributes;
wmi_p2p_noa_descriptor noa_descriptors[WMI_P2P_MAX_NOA_DESCRIPTORS];
+ /** Use the vdev_id only if vdev_id_valid is set */
+ A_UINT32 vdev_id_valid;
+ /** unique id identifying the VDEV */
+ A_UINT32 vdev_id;
}wmi_p2p_noa_info;
#define WMI_UNIFIED_NOA_ATTR_MODIFIED 0x1
@@ -6958,6 +6969,11 @@ typedef struct {
A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_host_swba_event_fixed_param */
/** bitmap identifying the VDEVs, generated by the caller */
A_UINT32 vdev_map;
+ /** how many vdev's info is included in this message
+ * If this field is zero, then the number of vdevs is specified by
+ * the number of bits set in the vdev_map bitmap.
+ */
+ A_UINT32 num_vdevs;
/* This TLV is followed by tim_info and p2p_noa_info for each vdev in vdevmap :
* wmi_tim_info tim_info[];
* wmi_p2p_noa_info p2p_noa_info[];
@@ -6978,6 +6994,28 @@ typedef struct {
*/
} wmi_tbtt_offset_event_fixed_param;
+ typedef struct {
+ /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_tbtt_offset_info */
+ A_UINT32 tlv_header;
+ /** unique id identifying the VDEV */
+ A_UINT32 vdev_id;
+ /** tbttoffset in TUs */
+ A_UINT32 tbttoffset;
+ } wmi_tbtt_offset_info;
+
+ /** Use this event if number of vdevs > 32 */
+ typedef struct {
+ /*
+ * TLV tag and len;
+ * tag equals WMITLV_TAG_STRUC_wmi_tbtt_offset_ext_event_fixed_param
+ */
+ A_UINT32 tlv_header;
+ A_UINT32 num_vdevs;
+ /*
+ * The TLVs for tbttoffset will follow this TLV.
+ * Of size num_vdevs * wmi_tbtt_offset_info
+ */
+ } wmi_tbtt_offset_ext_event_fixed_param;
/* Peer Specific commands and events */
@@ -14680,6 +14718,19 @@ typedef struct {
} wmi_soc_set_hw_mode_cmd_fixed_param;
typedef struct {
+ /* TLV tag and len tag equals WMITLV_TAG_STRUC_wmi_pdev_band_to_mac */
+ A_UINT32 tlv_header;
+ /** pdev_id for identifying the MACC
+ * See macros starting with WMI_PDEV_ID_ for values..
+ */
+ A_UINT32 pdev_id;
+ /* start frequency in MHz */
+ A_UINT32 start_freq;
+ /* end frequency in MHz */
+ A_UINT32 end_freq;
+} wmi_pdev_band_to_mac;
+
+typedef struct {
A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pdev_set_hw_mode_cmd_fixed_param */
/** Set Hardware Mode **/
@@ -14690,6 +14741,13 @@ typedef struct {
/* Hardware Mode Index */
A_UINT32 hw_mode_index;
+ /* Number of band to mac TLVs */
+
+ A_UINT32 num_band_to_mac;
+
+ /* Followed by TLVs of typee
+ * num_band_to_mac * wmi_pdev_band_to_mac.
+ */
} wmi_pdev_set_hw_mode_cmd_fixed_param;
/* DEPRECATED - use wmi_pdev_set_dual_mac_config_cmd_fixed_param instead */
diff --git a/CORE/SERVICES/COMMON/wmi_version.h b/CORE/SERVICES/COMMON/wmi_version.h
index 46a9ad0ddeee..89476edf2502 100644
--- a/CORE/SERVICES/COMMON/wmi_version.h
+++ b/CORE/SERVICES/COMMON/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_ 300
+#define __WMI_REVISION_ 301
/** The Version Namespace should not be normally changed. Only
* host and firmware of the same WMI namespace will work