Преглед на файлове

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

qcacld-2.0 to qcacld-3.0 propagation

WMI_ROAM_SYNCH_EVENT cleanup

CRs-Fixed: 932665
Change-Id: Iaf25497b2f511e03823894084b6920be79ca2dba
Nirav Shah преди 9 години
родител
ревизия
439e626abf
променени са 2 файла, в които са добавени 21 реда и са изтрити 9 реда
  1. 20 8
      target/inc/wmi_unified.h
  2. 1 1
      target/inc/wmi_version.h

+ 20 - 8
target/inc/wmi_unified.h

@@ -6223,6 +6223,7 @@ typedef struct {
 
 } wmi_roam_event_fixed_param;
 
+/* roam_reason: bits 0-3 */
 #define WMI_ROAM_REASON_BETTER_AP 0x1 /** found a better AP */
 #define WMI_ROAM_REASON_BMISS     0x2 /** beacon miss detected */
 #define WMI_ROAM_REASON_DEAUTH    0x2 /** deauth/disassoc received */
@@ -6232,19 +6233,29 @@ typedef struct {
 	                                   WMI_ROAM_AP_PROFILE, found during scan
 	                                   triggered upon FINAL_BMISS **/
 #define WMI_ROAM_REASON_HO_FAILED  0x5  /** LFR3.0 roaming failed, indicate the disconnection to host */
+/* reserved up through 0xF */
 
-/*
- * These will be used in WMI_ROAM_SYNCH_EVENTID for passing the subnet change
- * info. Once roaming happens, firmware checks if subnet has changed and
- * populates roam_reason field in WMI_ROAM_SYNCH_EVENTID using the definitions
- * below.
- */
+/* subnet status: bits 4-5 */
 typedef enum {
 	WMI_ROAM_SUBNET_CHANGE_STATUS_UNKNOWN = 0,
 	WMI_ROAM_SUBNET_CHANGE_STATUS_UNCHANGED,
 	WMI_ROAM_SUBNET_CHANGE_STATUS_CHANGED,
 } wmi_roam_subnet_change_status;
 
+#define WMI_ROAM_SUBNET_CHANGE_STATUS_MASK      0x30
+#define WMI_ROAM_SUBNET_CHANGE_STATUS_SHIFT     4
+
+#define WMI_SET_ROAM_SUBNET_CHANGE_STATUS(roam_reason, status) \
+	do { \
+		(roam_reason) |= \
+			(((status) << WMI_ROAM_SUBNET_CHANGE_STATUS_SHIFT) & \
+			WMI_ROAM_SUBNET_CHANGE_STATUS_MASK); \
+	} while (0)
+
+#define WMI_GET_ROAM_SUBNET_CHANGE_STATUS(roam_reason) \
+	(((roam_reason) & WMI_ROAM_SUBNET_CHANGE_STATUS_MASK) >> \
+	WMI_ROAM_SUBNET_CHANGE_STATUS_SHIFT)
+
 /**whenever RIC request information change, host driver should pass all ric related information to firmware (now only support tsepc)
  * Once, 11r roaming happens, firmware can generate RIC request in reassoc request based on these informations
  */
@@ -9591,8 +9602,9 @@ typedef struct {
 	/** auth_status: connected or authorized */
 	A_UINT32 auth_status;
 	/*
-	 *  roam_reason: whether roaming went to a new subnet;
-	 *  see WMI_ROAM_SUBNET_CHANGE_STATUS_XXX
+	 * roam_reason:
+	 * bits 0-3 for roam reason   see WMI_ROAM_REASON_XXX
+	 * bits 4-5 for subnet status see WMI_ROAM_SUBNET_CHANGE_STATUS_XXX.
 	 */
 	A_UINT32 roam_reason;
 	/** associated AP's rssi calculated by FW when reason code is WMI_ROAM_REASON_LOW_RSSI. not valid if roam_reason is BMISS */

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