summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSandeep Puligilla <spuligil@qca.qualcomm.com>2016-03-09 12:39:04 -0800
committerAnjaneedevi Kapparapu <akappa@codeaurora.org>2016-03-21 13:05:47 +0530
commit303c5093d4decc646ee306fcd0bd24caaeb30fb5 (patch)
tree0d87c45b8e9630b81b317c0a4ce3388166e4e863
parentccafb44cdd2044b6514896b16994d77d45b9e2f8 (diff)
qcacld-2.0: CL 1472279 - update fw common interface files
Add 11s mesh subtype and service, add TSF in beacon. Change-Id: I1f03072d6ad5c493f2ef2d2f7dc47f47be98a042 CRs-Fixed: 865207
-rw-r--r--CORE/SERVICES/COMMON/wmi_services.h2
-rw-r--r--CORE/SERVICES/COMMON/wmi_unified.h26
-rw-r--r--CORE/SERVICES/COMMON/wmi_version.h2
3 files changed, 27 insertions, 3 deletions
diff --git a/CORE/SERVICES/COMMON/wmi_services.h b/CORE/SERVICES/COMMON/wmi_services.h
index cdc9840bc354..31b377ff8656 100644
--- a/CORE/SERVICES/COMMON/wmi_services.h
+++ b/CORE/SERVICES/COMMON/wmi_services.h
@@ -157,7 +157,7 @@ typedef enum {
WMI_SERVICE_TDLS_CONN_TRACKER_IN_HOST_MODE, /* FW supports a new mode that allows to run connection tracker in host */
WMI_SERVICE_ENHANCED_MCAST_FILTER,/* FW supports enhanced multicast filtering (of mcast IP inside ucast WLAN) */
WMI_SERVICE_PERIODIC_CHAN_STAT_SUPPORT, /* periodic channel stats service */
-
+ WMI_SERVICE_MESH_11S,
WMI_MAX_SERVICE=128 /* max service */
} WMI_SERVICE;
diff --git a/CORE/SERVICES/COMMON/wmi_unified.h b/CORE/SERVICES/COMMON/wmi_unified.h
index e874179de3bb..2cc72d928eac 100644
--- a/CORE/SERVICES/COMMON/wmi_unified.h
+++ b/CORE/SERVICES/COMMON/wmi_unified.h
@@ -2710,6 +2710,16 @@ typedef struct {
*/
A_UINT32 tsf_delta;
+ /* The lower 32 bits of the TSF (rx_tsf_l32) is copied by FW from
+ * TSF timestamp in the RX MAC descriptor provided by HW.
+ */
+ A_UINT32 rx_tsf_l32;
+
+ /* The Upper 32 bits (rx_tsf_u32) is filled by reading the TSF register
+ * after the packet is received.
+ */
+ A_UINT32 rx_tsf_u32;
+
/* This TLV is followed by array of bytes:
* // management frame buffer
* A_UINT8 bufp[];
@@ -4556,7 +4566,14 @@ typedef struct {
#define WMI_UNIFIED_VDEV_SUBTYPE_P2P_GO 0x3
#define WMI_UNIFIED_VDEV_SUBTYPE_PROXY_STA 0x4
#define WMI_UNIFIED_VDEV_SUBTYPE_MESH 0x5
-
+/* new subtype for 11S mesh is required as 11S functionality differs
+ * in many ways from proprietary mesh
+ * 11S uses 6-addr frame format and supports peering between mesh
+ * stations and dynamic best path selection between mesh stations.
+ * While in proprietary mesh, neighboring mesh station MAC is manually
+ * added to AST table for traffic flow between mesh stations
+ */
+#define WMI_UNIFIED_VDEV_SUBTYPE_MESH_11S 0x6
/** values for vdev_start_request flags */
/** Indicates that AP VDEV uses hidden ssid. only valid for
* AP/GO */
@@ -5047,6 +5064,13 @@ typedef enum {
/* VDEV capabilities */
WMI_VDEV_PARAM_CAPABILITIES, /* see capabilities defs below */
+ /*
+ * Increment TSF in micro seconds to avoid beacon collision on mesh VAP.
+ * The host must ensure that either no other vdevs share the TSF with
+ * this vdev, or else that it is acceptable to apply this TSF adjustment
+ * to all vdevs sharing the TSF.
+ */
+ WMI_VDEV_PARAM_TSF_INCREMENT,
} WMI_VDEV_PARAM;
/* vdev capabilities bit mask */
diff --git a/CORE/SERVICES/COMMON/wmi_version.h b/CORE/SERVICES/COMMON/wmi_version.h
index 9b669bc39e9d..9e7d271315cc 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_ 219
+#define __WMI_REVISION_ 220
/** The Version Namespace should not be normally changed. Only
* host and firmware of the same WMI namespace will work