Prechádzať zdrojové kódy

qcacld-3.0: Change roam state after connect complete

With commit I84c77644c6023322ac77e307b06be70ec0f58ed5, Host
allows dual sta roaming only if two STA's sessions for are
active (STA + STA) and concurrency is in DBS.

Currently, before the increment of the number of active
sessions in the policy manager, the host tries to enable
dual-band roaming. This results in dual sta roaming failure
with the reason number of active sessions equal to one.

The fix is to make sure the host should try to enable dual-band
roaming after incrementing the number of active sessions in the
policy manager.

Change-Id: I150926897cb773db979279edc54e5fb731d98e43
CRs-Fixed: 2971831
abhinav kumar 3 rokov pred
rodič
commit
29bb6774c1

+ 4 - 3
components/umac/mlme/connection_mgr/core/src/wlan_cm_vdev_connect.c

@@ -1331,9 +1331,6 @@ cm_connect_complete_ind(struct wlan_objmgr_vdev *vdev,
 		return QDF_STATUS_E_INVAL;
 	}
 
-	if (op_mode == QDF_STA_MODE)
-		wlan_cm_roam_state_change(pdev, vdev_id, WLAN_ROAM_INIT,
-					  REASON_CONNECT);
 	cm_csr_connect_done_ind(vdev, rsp);
 
 	cm_connect_info(vdev, QDF_IS_STATUS_SUCCESS(rsp->connect_status) ?
@@ -1350,6 +1347,10 @@ cm_connect_complete_ind(struct wlan_objmgr_vdev *vdev,
 		wlan_p2p_status_connect(vdev);
 	}
 
+	if (op_mode == QDF_STA_MODE)
+		wlan_cm_roam_state_change(pdev, vdev_id, WLAN_ROAM_INIT,
+					  REASON_CONNECT);
+
 	return QDF_STATUS_SUCCESS;
 }