Browse Source

qcacld-3.0: CL 1476830 - update fw common interface files

qcacld-2.0 to qcacld-3.0 propagation.

Add 11ax/HE fragmentation support flags and add flags to allow
automatic and forced enabling of pktlog.

Change-Id: Ic4bbaf71279ee6fef190530dd70a798be7267797
CRs-Fixed: 865207
Krishna Kumaar Natarajan 9 years ago
parent
commit
489bf8df6c
3 changed files with 40 additions and 3 deletions
  1. 10 0
      target/inc/wlan_defs.h
  2. 29 2
      target/inc/wmi_unified.h
  3. 1 1
      target/inc/wmi_version.h

+ 10 - 0
target/inc/wlan_defs.h

@@ -152,6 +152,16 @@ typedef enum {
 			   ((mode) == MODE_11AC_VHT80))
 #endif
 
+#define IS_MODE_HE(mode) (((mode) == MODE_11AX_HE20)     || \
+			  ((mode) == MODE_11AX_HE40)     || \
+			  ((mode) == MODE_11AX_HE80)     || \
+			  ((mode) == MODE_11AX_HE80_80)  || \
+			  ((mode) == MODE_11AX_HE160)    || \
+			  ((mode) == MODE_11AX_HE20_2G)  || \
+			  ((mode) == MODE_11AX_HE40_2G)  || \
+			  ((mode) == MODE_11AX_HE80_2G))
+
+
 #define IS_MODE_VHT_2G(mode) (((mode) == MODE_11AC_VHT20_2G) ||	\
 			      ((mode) == MODE_11AC_VHT40_2G) ||	\
 			      ((mode) == MODE_11AC_VHT80_2G))

+ 29 - 2
target/inc/wmi_unified.h

@@ -1562,6 +1562,23 @@ typedef enum {
 #define WMI_HE_CAP_TWT_REQUESTER_SUPPORT  0x00000004
 #define WMI_HE_FRAG_SUPPORT_MASK          0x00000018
 #define WMI_HE_FRAG_SUPPORT_SHIFT         3
+
+
+/* fragmentation support field value */
+enum {
+	WMI_HE_FRAG_SUPPORT_LEVEL0, /* No Fragmentation support */
+	/*
+	 * support for fragments within a VHT single MPDU,
+	 * no support for fragments within AMPDU
+	 */
+	WMI_HE_FRAG_SUPPORT_LEVEL1,
+	/* support for up to 1 fragment per MSDU within a single A-MPDU */
+	WMI_HE_FRAG_SUPPORT_LEVEL2,
+	/* support for multiple fragments per MSDU within an A-MPDU */
+	WMI_HE_FRAG_SUPPORT_LEVEL3,
+};
+
+
 /** NOTE: This defs cannot be changed in the future without
  * breaking WMI compatibility
  */
@@ -1845,7 +1862,10 @@ typedef struct {
 	/* which WMI_DBS_FW_MODE_CFG setting the FW is initialized with */
 	A_UINT32 default_fw_config_bits;
 	wmi_ppe_threshold ppet;
-	/* see section 8.4.2.213 from draft r8 of 802.11ax */
+	/*
+	 * see section 8.4.2.213 from draft r8 of 802.11ax;
+	 * see WMI_HE_FRAG_SUPPORT enum
+	 */
 	A_UINT32 he_cap_info;
 	/*
 	 * An HT STA shall not allow transmission of more than one MPDU start
@@ -3901,6 +3921,12 @@ typedef enum {
 	WMI_PKTLOG_EVENT_SMART_ANTENNA = 0x20, /* To support Smart Antenna */
 } WMI_PKTLOG_EVENT;
 
+typedef enum {
+	/* (default) FW will decide under what conditions to enable pktlog */
+	WMI_PKTLOG_ENABLE_AUTO  = 0,
+	WMI_PKTLOG_ENABLE_FORCE = 1, /* pktlog unconditionally enabled */
+} WMI_PKTLOG_ENABLE;
+
 typedef struct {
 	/** TLV tag and len; tag equals
 	 * WMITLV_TAG_STRUC_wmi_pdev_pktlog_enable_cmd_fixed_param
@@ -3910,7 +3936,8 @@ typedef struct {
 	 * See macros starting with WMI_PDEV_ID_ for values.
 	 */
 	A_UINT32 pdev_id;
-	WMI_PKTLOG_EVENT evlist;
+	A_UINT32 evlist; /* WMI_PKTLOG_EVENT */
+	A_UINT32 enable; /* WMI_PKTLOG_ENABLE */
 } wmi_pdev_pktlog_enable_cmd_fixed_param;
 
 typedef struct {

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