ソースを参照

qcacld-3.0: LFR2 DBS roam support

During LFR2 roaming, after the preauth with new AP
and disassociation with current AP are successful,
proper HW mode should be set based on the
existing concurrency scenario.

Change-Id: I312ed10bc844712b3dba36680457198a19f1e85c
CRs-Fixed: 2367224
Rajasekaran Kalidoss 6 年 前
コミット
6844254c80

+ 3 - 1
cmn_services/policy_mgr/inc/wlan_policy_mgr_api.h

@@ -361,6 +361,7 @@ bool policy_mgr_check_for_session_conc(
  * policy_mgr_handle_conc_multiport() - to handle multiport concurrency
  * @session_id: Session ID
  * @channel: Channel number
+ * @reason: reason for connection update
  *
  * This routine will handle STA side concurrency when policy manager
  * is enabled.
@@ -368,7 +369,8 @@ bool policy_mgr_check_for_session_conc(
  * Return: QDF_STATUS
  */
 QDF_STATUS policy_mgr_handle_conc_multiport(
-	struct wlan_objmgr_psoc *psoc, uint8_t session_id, uint8_t channel);
+	struct wlan_objmgr_psoc *psoc, uint8_t session_id, uint8_t channel,
+	enum policy_mgr_conn_update_reason reason);
 
 #ifdef FEATURE_WLAN_MCC_TO_SCC_SWITCH
 /**

+ 1 - 0
cmn_services/policy_mgr/inc/wlan_policy_mgr_public_struct.h

@@ -811,6 +811,7 @@ enum policy_mgr_conn_update_reason {
 	POLICY_MGR_UPDATE_REASON_PRI_VDEV_CHANGE,
 	POLICY_MGR_UPDATE_REASON_NAN_DISCOVERY,
 	POLICY_MGR_UPDATE_REASON_NDP_UPDATE,
+	POLICY_MGR_UPDATE_REASON_LFR2_ROAM,
 };
 
 /**

+ 3 - 3
cmn_services/policy_mgr/src/wlan_policy_mgr_action.c

@@ -1186,7 +1186,8 @@ QDF_STATUS policy_mgr_next_actions(
 }
 
 QDF_STATUS policy_mgr_handle_conc_multiport(struct wlan_objmgr_psoc *psoc,
-		uint8_t session_id, uint8_t channel)
+		uint8_t session_id, uint8_t channel,
+		enum policy_mgr_conn_update_reason reason)
 {
 	QDF_STATUS status;
 
@@ -1201,8 +1202,7 @@ QDF_STATUS policy_mgr_handle_conc_multiport(struct wlan_objmgr_psoc *psoc,
 		policy_mgr_err("clearing event failed");
 
 	status = policy_mgr_current_connections_update(psoc, session_id,
-			channel,
-			POLICY_MGR_UPDATE_REASON_NORMAL_STA);
+			channel, reason);
 	if (QDF_STATUS_E_FAILURE == status) {
 		policy_mgr_err("connections update failed");
 		return status;