ソースを参照

qcacld-3.0: Add RSO logic to send roam trigger from target if

Add RSO logic to send roam trigger from target if along with
some optimization to move old logic in ROAM_OFFLOAD_V1.

Change-Id: I38e7fb4f8873328097df7e3a25d6c709f8d69b33
CRs-Fixed: 2765155
gaurank kathpalia 4 年 前
コミット
0ea2611649
28 ファイル変更199 行追加175 行削除
  1. 13 6
      components/target_if/connection_mgr/src/target_if_cm_roam_offload.c
  2. 27 0
      components/umac/mlme/connection_mgr/core/src/wlan_cm_roam_offload.c
  3. 13 0
      components/umac/mlme/connection_mgr/core/src/wlan_cm_roam_offload.h
  4. 6 5
      components/umac/mlme/connection_mgr/dispatcher/inc/wlan_cm_roam_api.h
  5. 2 0
      components/umac/mlme/connection_mgr/dispatcher/inc/wlan_cm_roam_public_struct.h
  6. 6 6
      components/umac/mlme/connection_mgr/dispatcher/inc/wlan_cm_roam_ucfg_api.h
  7. 11 0
      components/umac/mlme/connection_mgr/dispatcher/inc/wlan_cm_tgt_if_tx_api.h
  8. 3 9
      components/umac/mlme/connection_mgr/dispatcher/src/wlan_cm_roam_api.c
  9. 36 6
      components/umac/mlme/connection_mgr/dispatcher/src/wlan_cm_tgt_if_tx_api.c
  10. 6 0
      core/hdd/src/wlan_hdd_cfg80211.c
  11. 4 0
      core/mac/inc/wni_api.h
  12. 3 1
      core/mac/src/include/sir_params.h
  13. 1 1
      core/mac/src/pe/lim/lim_process_message_queue.c
  14. 4 4
      core/mac/src/pe/lim/lim_process_sme_req_messages.c
  15. 3 1
      core/mac/src/sys/legacy/src/utils/src/mac_trace.c
  16. 2 0
      core/sme/inc/csr_api.h
  17. 4 1
      core/sme/inc/csr_neighbor_roam.h
  18. 2 0
      core/sme/inc/sme_api.h
  19. 2 19
      core/sme/src/common/sme_api.c
  20. 3 3
      core/sme/src/csr/csr_api_roam.c
  21. 5 0
      core/sme/src/csr/csr_neighbor_roam.c
  22. 2 1
      core/wma/inc/wma.h
  23. 1 1
      core/wma/inc/wma_api.h
  24. 0 79
      core/wma/inc/wma_internal.h
  25. 4 2
      core/wma/inc/wma_types.h
  26. 6 3
      core/wma/src/wma_main.c
  27. 29 26
      core/wma/src/wma_scan_roam.c
  28. 1 1
      core/wma/src/wma_utils.c

+ 13 - 6
components/target_if/connection_mgr/src/target_if_cm_roam_offload.c

@@ -199,15 +199,21 @@ target_if_cm_roam_reason_vsie(wmi_unified_t wmi_handle,
 }
 
 /* target_if_cm_roam_triggers(): send roam triggers to WMI
- * @wmi_handle: handle to WMI
+ * @vdev: vdev
  * @req: roam triggers parameters
  *
  * Return: QDF status
  */
 static QDF_STATUS
-target_if_cm_roam_triggers(wmi_unified_t wmi_handle,
+target_if_cm_roam_triggers(struct wlan_objmgr_vdev *vdev,
 			   struct wlan_roam_triggers *req)
 {
+	wmi_unified_t wmi_handle;
+
+	wmi_handle = target_if_cm_roam_get_wmi_handle_from_vdev(vdev);
+	if (!wmi_handle)
+		return QDF_STATUS_E_FAILURE;
+
 	if (!target_if_is_vdev_valid(req->vdev_id))
 		return QDF_STATUS_E_INVAL;
 
@@ -322,7 +328,7 @@ target_if_cm_roam_reason_vsie(wmi_unified_t wmi_handle,
 }
 
 static QDF_STATUS
-target_if_cm_roam_triggers(wmi_unified_t wmi_handle,
+target_if_cm_roam_triggers(struct wlan_objmgr_vdev *vdev,
 			   struct wlan_roam_triggers *req)
 {
 	return QDF_STATUS_E_NOSUPPORT;
@@ -870,7 +876,7 @@ target_if_cm_roam_send_start(struct wlan_objmgr_vdev *vdev,
 
 	target_if_cm_roam_reason_vsie(wmi_handle, &req->reason_vsie_enable);
 
-	target_if_cm_roam_triggers(wmi_handle, &req->roam_triggers);
+	target_if_cm_roam_triggers(vdev, &req->roam_triggers);
 
 	/* Opportunistic scan runs on a timer, value set by
 	 * empty_scan_refresh_period. Age out the entries after 3 such
@@ -1055,7 +1061,7 @@ target_if_cm_roam_send_stop(struct wlan_objmgr_vdev *vdev,
 	if (mode == WMI_ROAM_SCAN_MODE_NONE) {
 		req->roam_triggers.vdev_id = vdev_id;
 		req->roam_triggers.trigger_bitmap = 0;
-		target_if_cm_roam_triggers(wmi_handle, &req->roam_triggers);
+		target_if_cm_roam_triggers(vdev, &req->roam_triggers);
 	}
 end:
 	return status;
@@ -1140,7 +1146,7 @@ target_if_cm_roam_send_update_config(struct wlan_objmgr_vdev *vdev,
 		target_if_cm_roam_idle_params(
 				wmi_handle, ROAM_SCAN_OFFLOAD_UPDATE_CFG,
 				&req->idle_params);
-		target_if_cm_roam_triggers(wmi_handle, &req->roam_triggers);
+		target_if_cm_roam_triggers(vdev, &req->roam_triggers);
 	}
 end:
 	return status;
@@ -1209,6 +1215,7 @@ target_if_cm_roam_register_rso_req_ops(struct wlan_cm_roam_tx_ops *tx_ops)
 	tx_ops->send_roam_update_config = target_if_cm_roam_send_update_config;
 	tx_ops->send_roam_abort = target_if_cm_roam_abort;
 	tx_ops->send_roam_per_config = target_if_cm_roam_per_config;
+	tx_ops->send_roam_triggers = target_if_cm_roam_triggers;
 }
 #else
 static void

+ 27 - 0
components/umac/mlme/connection_mgr/core/src/wlan_cm_roam_offload.c

@@ -259,6 +259,33 @@ cm_roam_init_req(struct wlan_objmgr_psoc *psoc, uint8_t vdev_id, bool enable)
 	return wlan_cm_tgt_send_roam_offload_init(psoc, vdev_id, enable);
 }
 
+QDF_STATUS cm_rso_set_roam_trigger(struct wlan_objmgr_pdev *pdev,
+				   uint8_t vdev_id,
+				   struct wlan_roam_triggers *trigger)
+{
+	QDF_STATUS status;
+	uint8_t reason = REASON_SUPPLICANT_DE_INIT_ROAMING;
+	struct wlan_objmgr_psoc *psoc = wlan_pdev_get_psoc(pdev);
+
+	if (!psoc)
+		return QDF_STATUS_E_INVAL;
+
+	mlme_set_roam_trigger_bitmap(psoc, trigger->vdev_id,
+				     trigger->trigger_bitmap);
+
+	if (trigger->trigger_bitmap)
+		reason = REASON_SUPPLICANT_INIT_ROAMING;
+
+	status = cm_roam_state_change(pdev, vdev_id,
+			trigger->trigger_bitmap ? WLAN_ROAM_RSO_ENABLED :
+			WLAN_ROAM_DEINIT,
+			reason);
+	if (QDF_IS_STATUS_ERROR(status))
+		return status;
+
+	return wlan_cm_tgt_send_roam_triggers(psoc, vdev_id, trigger);
+}
+
 static void cm_roam_set_roam_reason_better_ap(struct wlan_objmgr_psoc *psoc,
 					      uint8_t vdev_id, bool set)
 {

+ 13 - 0
components/umac/mlme/connection_mgr/core/src/wlan_cm_roam_offload.h

@@ -63,6 +63,19 @@ QDF_STATUS cm_roam_send_rso_cmd(struct wlan_objmgr_psoc *psoc,
 				uint8_t vdev_id, uint8_t rso_command,
 				uint8_t reason);
 
+/**
+ * cm_rso_set_roam_trigger() - Send roam trigger bitmap firmware
+ * @pdev: Pointer to pdev
+ * @vdev_id: vdev id
+ * @triggers: Carries pointer of the object containing vdev id and
+ *  roam_trigger_bitmap.
+ *
+ * Return: QDF_STATUS
+ */
+QDF_STATUS cm_rso_set_roam_trigger(struct wlan_objmgr_pdev *pdev,
+				   uint8_t vdev_id,
+				   struct wlan_roam_triggers *trigger);
+
 /**
  * cm_roam_stop_req() - roam stop request handling
  * @psoc: psoc pointer

+ 6 - 5
components/umac/mlme/connection_mgr/dispatcher/inc/wlan_cm_roam_api.h

@@ -162,16 +162,17 @@ char
 *cm_roam_get_requestor_string(enum wlan_cm_rso_control_requestor requestor);
 
 /**
- * ucfg_cm_rso_init_deinit() - Init or Deinit roaming module at firmware
+ * wlan_cm_rso_set_roam_trigger() - Send roam trigger bitmap firmware
  * @pdev: Pointer to pdev
  * @vdev_id: vdev id
- * @enable: true: Send RSO init and RSO enable
- *          false: Send RSO stop
+ * @triggers: Carries pointer of the object containing vdev id and
+ *  roam_trigger_bitmap.
  *
  * Return: QDF_STATUS
  */
-QDF_STATUS wlan_cm_rso_init_deinit(struct wlan_objmgr_pdev *pdev,
-				   uint8_t vdev_id, bool enable);
+QDF_STATUS
+wlan_cm_rso_set_roam_trigger(struct wlan_objmgr_pdev *pdev, uint8_t vdev_id,
+			     struct wlan_roam_triggers *trigger_data);
 
 /**
  * wlan_cm_disable_rso() - Disable roam scan offload to firmware

+ 2 - 0
components/umac/mlme/connection_mgr/dispatcher/inc/wlan_cm_roam_public_struct.h

@@ -1228,6 +1228,8 @@ struct wlan_cm_roam_tx_ops {
 	QDF_STATUS (*send_roam_per_config)(
 				struct wlan_objmgr_vdev *vdev,
 				struct wlan_per_roam_config_req *req);
+	QDF_STATUS (*send_roam_triggers)(struct wlan_objmgr_vdev *vdev,
+					 struct wlan_roam_triggers *req);
 #endif
 };
 

+ 6 - 6
components/umac/mlme/connection_mgr/dispatcher/inc/wlan_cm_roam_ucfg_api.h

@@ -55,19 +55,19 @@ QDF_STATUS ucfg_cm_abort_roam_scan(struct wlan_objmgr_pdev *pdev,
 				   uint8_t vdev_id);
 
 /**
- * ucfg_cm_rso_init_deinit() - Init or Deinit roaming module at firmware
+ * ucfg_cm_rso_set_roam_trigger() - Send roam trigger bitmap firmware
  * @pdev: Pointer to pdev
  * @vdev_id: vdev id
- * @enable: true: Send RSO init and RSO enable
- *          false: Send RSO stop
+ * @trigger: Carries pointer of the object containing vdev id and
+ *  roam_trigger_bitmap.
  *
  * Return: QDF_STATUS
  */
 static inline QDF_STATUS
-ucfg_cm_rso_init_deinit(struct wlan_objmgr_pdev *pdev, uint8_t vdev_id,
-			bool enable)
+ucfg_cm_rso_set_roam_trigger(struct wlan_objmgr_pdev *pdev, uint8_t vdev_id,
+			     struct wlan_roam_triggers *trigger)
 {
-	return wlan_cm_rso_init_deinit(pdev, vdev_id, enable);
+	return wlan_cm_rso_set_roam_trigger(pdev, vdev_id, trigger);
 }
 
 /**

+ 11 - 0
components/umac/mlme/connection_mgr/dispatcher/inc/wlan_cm_tgt_if_tx_api.h

@@ -119,6 +119,17 @@ QDF_STATUS wlan_cm_tgt_send_roam_per_config(struct wlan_objmgr_psoc *psoc,
 					  uint8_t vdev_id,
 					  struct wlan_per_roam_config_req *req);
 
+/**
+ * wlan_cm_tgt_send_roam_triggers()  - Send roam trigger command to FW
+ * @psoc: psoc pointer
+ * @vdev_id: vdev id
+ * @req: roam trigger parameter
+ *
+ * Return: QDF_STATUS
+ */
+QDF_STATUS wlan_cm_tgt_send_roam_triggers(struct wlan_objmgr_psoc *psoc,
+					  uint8_t vdev_id,
+					  struct wlan_roam_triggers *req);
 #endif
 #endif
 #endif /* CM_TGT_IF_TX_API_H__ */

+ 3 - 9
components/umac/mlme/connection_mgr/dispatcher/src/wlan_cm_roam_api.c

@@ -98,23 +98,17 @@ char *cm_roam_get_requestor_string(enum wlan_cm_rso_control_requestor requestor)
 }
 
 QDF_STATUS
-wlan_cm_rso_init_deinit(struct wlan_objmgr_pdev *pdev, uint8_t vdev_id,
-			bool enable)
+wlan_cm_rso_set_roam_trigger(struct wlan_objmgr_pdev *pdev, uint8_t vdev_id,
+			     struct wlan_roam_triggers *trigger)
 {
-	uint8_t reason = REASON_SUPPLICANT_DE_INIT_ROAMING;
 	QDF_STATUS status;
 
 	status = cm_roam_acquire_lock();
 	if (QDF_IS_STATUS_ERROR(status))
 		return QDF_STATUS_E_FAILURE;
 
-	if (enable)
-		reason = REASON_SUPPLICANT_INIT_ROAMING;
+	status = cm_rso_set_roam_trigger(pdev, vdev_id, trigger);
 
-	status = cm_roam_state_change(
-			pdev, vdev_id,
-			enable ? WLAN_ROAM_RSO_ENABLED : WLAN_ROAM_DEINIT,
-			reason);
 	cm_roam_release_lock();
 
 	return status;

+ 36 - 6
components/umac/mlme/connection_mgr/dispatcher/src/wlan_cm_tgt_if_tx_api.c

@@ -174,7 +174,7 @@ QDF_STATUS wlan_cm_tgt_send_roam_offload_init(struct wlan_objmgr_psoc *psoc,
 
 	status = roam_tx_ops.send_roam_offload_init_req(vdev, &init_msg);
 	if (QDF_IS_STATUS_ERROR(status))
-		mlme_debug("CM_RSO: vdev%d fail to send rso init", vdev_id);
+		mlme_err("CM_RSO: vdev%d fail to send rso init", vdev_id);
 
 	wlan_objmgr_vdev_release_ref(vdev, WLAN_MLME_NB_ID);
 
@@ -204,7 +204,7 @@ QDF_STATUS wlan_cm_tgt_send_roam_start_req(struct wlan_objmgr_psoc *psoc,
 
 	status = roam_tx_ops.send_roam_start_req(vdev, req);
 	if (QDF_IS_STATUS_ERROR(status))
-		mlme_debug("CM_RSO: vdev %d fail to send roam start", vdev_id);
+		mlme_err("CM_RSO: vdev %d fail to send roam start", vdev_id);
 
 	wlan_objmgr_vdev_release_ref(vdev, WLAN_MLME_NB_ID);
 
@@ -234,7 +234,7 @@ QDF_STATUS wlan_cm_tgt_send_roam_stop_req(struct wlan_objmgr_psoc *psoc,
 
 	status = roam_tx_ops.send_roam_stop_offload(vdev, req);
 	if (QDF_IS_STATUS_ERROR(status))
-		mlme_debug("CM_RSO: vdev %d fail to send roam stop", vdev_id);
+		mlme_err("CM_RSO: vdev %d fail to send roam stop", vdev_id);
 
 	wlan_objmgr_vdev_release_ref(vdev, WLAN_MLME_NB_ID);
 
@@ -264,7 +264,7 @@ QDF_STATUS wlan_cm_tgt_send_roam_update_req(struct wlan_objmgr_psoc *psoc,
 
 	status = roam_tx_ops.send_roam_update_config(vdev, req);
 	if (QDF_IS_STATUS_ERROR(status))
-		mlme_debug("CM_RSO: vdev %d fail to send roam update", vdev_id);
+		mlme_err("CM_RSO: vdev %d fail to send roam update", vdev_id);
 
 	wlan_objmgr_vdev_release_ref(vdev, WLAN_MLME_NB_ID);
 
@@ -292,7 +292,7 @@ QDF_STATUS wlan_cm_tgt_send_roam_abort_req(struct wlan_objmgr_psoc *psoc,
 
 	status = roam_tx_ops.send_roam_abort(vdev, vdev_id);
 	if (QDF_IS_STATUS_ERROR(status))
-		mlme_debug("CM_RSO: vdev %d fail to send roam abort", vdev_id);
+		mlme_err("CM_RSO: vdev %d fail to send roam abort", vdev_id);
 
 	wlan_objmgr_vdev_release_ref(vdev, WLAN_MLME_NB_ID);
 
@@ -322,7 +322,37 @@ QDF_STATUS wlan_cm_tgt_send_roam_per_config(struct wlan_objmgr_psoc *psoc,
 
 	status = roam_tx_ops.send_roam_per_config(vdev, req);
 	if (QDF_IS_STATUS_ERROR(status))
-		mlme_debug("CM_RSO: vdev %d fail to send per config", vdev_id);
+		mlme_err("CM_RSO: vdev %d fail to send per config", vdev_id);
+
+	wlan_objmgr_vdev_release_ref(vdev, WLAN_MLME_NB_ID);
+
+	return status;
+}
+
+QDF_STATUS wlan_cm_tgt_send_roam_triggers(struct wlan_objmgr_psoc *psoc,
+					  uint8_t vdev_id,
+					  struct wlan_roam_triggers *req)
+{
+	QDF_STATUS status;
+	struct wlan_cm_roam_tx_ops roam_tx_ops;
+	struct wlan_objmgr_vdev *vdev;
+
+	vdev = wlan_objmgr_get_vdev_by_id_from_psoc(psoc, vdev_id,
+						    WLAN_MLME_NB_ID);
+	if (!vdev)
+		return QDF_STATUS_E_INVAL;
+
+	roam_tx_ops = GET_CM_ROAM_TX_OPS_FROM_VDEV(vdev);
+	if (!roam_tx_ops.send_roam_triggers) {
+		mlme_err("CM_RSO: vdev %d send_roam_triggers is NULL",
+			 vdev_id);
+		wlan_objmgr_vdev_release_ref(vdev, WLAN_MLME_NB_ID);
+		return QDF_STATUS_E_INVAL;
+	}
+
+	status = roam_tx_ops.send_roam_triggers(vdev, req);
+	if (QDF_IS_STATUS_ERROR(status))
+		mlme_err("CM_RSO: vdev %d fail to send roamtrigger", vdev_id);
 
 	wlan_objmgr_vdev_release_ref(vdev, WLAN_MLME_NB_ID);
 

+ 6 - 0
core/hdd/src/wlan_hdd_cfg80211.c

@@ -4692,7 +4692,13 @@ hdd_send_roam_triggers_to_sme(struct hdd_context *hdd_ctx,
 	triggers.trigger_bitmap =
 	    wlan_hdd_convert_control_roam_trigger_bitmap(roam_trigger_bitmap);
 
+#ifdef ROAM_OFFLOAD_V1
+	status = ucfg_cm_rso_set_roam_trigger(hdd_ctx->pdev, vdev_id,
+					      &triggers);
+#else
+	/* temp change, This will be removed with ROAM_OFFLOAD_V1 enabled */
 	status = sme_set_roam_triggers(hdd_ctx->mac_handle, &triggers);
+#endif
 	if (QDF_IS_STATUS_ERROR(status))
 		hdd_err("Failed to set roam control trigger bitmap");
 

+ 4 - 0
core/mac/inc/wni_api.h

@@ -211,7 +211,9 @@ enum eWniMsgTypes {
 	eWNI_SME_UPDATE_ACCESS_POLICY_VENDOR_IE = SIR_SME_MSG_TYPES_BEGIN + 130,
 	eWNI_SME_DEFAULT_SCAN_IE = SIR_SME_MSG_TYPES_BEGIN + 131,
 	eWNI_SME_ROAM_INVOKE = SIR_SME_MSG_TYPES_BEGIN + 132,
+#ifndef ROAM_OFFLOAD_V1
 	eWNI_SME_ROAM_SCAN_OFFLOAD_REQ = SIR_SME_MSG_TYPES_BEGIN + 133,
+#endif
 	eWNI_SME_LOST_LINK_INFO_IND = SIR_SME_MSG_TYPES_BEGIN + 134,
 	eWNI_SME_DEL_ALL_TDLS_PEERS = SIR_SME_MSG_TYPES_BEGIN + 135,
 	eWNI_SME_RSO_CMD_STATUS_IND = SIR_SME_MSG_TYPES_BEGIN + 136,
@@ -246,7 +248,9 @@ enum eWniMsgTypes {
 	eWNI_SME_MONITOR_MODE_VDEV_UP = SIR_SME_MSG_TYPES_BEGIN + 161,
 	eWNI_SME_UPDATE_SESSION_EDCA_TXQ_PARAMS = SIR_SME_MSG_TYPES_BEGIN + 162,
 	eWNI_SME_ROAM_SEND_SET_PCL_REQ = SIR_SME_MSG_TYPES_BEGIN + 163,
+#ifndef ROAM_OFFLOAD_V1
 	eWNI_SME_ROAM_DISABLE_CFG = SIR_SME_MSG_TYPES_BEGIN + 164,
+#endif
 	eWNI_SME_MSG_TYPES_END = SIR_SME_MSG_TYPES_BEGIN + 165
 };
 

+ 3 - 1
core/mac/src/include/sir_params.h

@@ -348,7 +348,9 @@ struct sir_cfg_action_frm_tb_ppdu {
 /* (SIR_HAL_ITC_MSG_TYPES_BEGIN + 136) is unused */
 /* (SIR_HAL_ITC_MSG_TYPES_BEGIN + 137) is unused */
 
+#ifndef ROAM_OFFLOAD_V1
 #define SIR_HAL_ROAM_SCAN_OFFLOAD_REQ      (SIR_HAL_ITC_MSG_TYPES_BEGIN + 138)
+#endif
 #define SIR_HAL_ROAM_PRE_AUTH_STATUS_IND   (SIR_HAL_ITC_MSG_TYPES_BEGIN + 139)
 
 #define SIR_HAL_TRAFFIC_STATS_IND          (SIR_HAL_ITC_MSG_TYPES_BEGIN + 141)
@@ -593,8 +595,8 @@ struct sir_cfg_action_frm_tb_ppdu {
 
 #ifndef ROAM_OFFLOAD_V1
 #define SIR_HAL_INIT_ROAM_OFFLOAD_PARAM     (SIR_HAL_ITC_MSG_TYPES_BEGIN + 380)
-#endif
 #define SIR_HAL_INIT_ROAM_DISABLE_CFG       (SIR_HAL_ITC_MSG_TYPES_BEGIN + 381)
+#endif
 
 /*
  * Unused SIR_HAL_ITC_MSG_TYPES_BEGIN + 382 to

+ 1 - 1
core/mac/src/pe/lim/lim_process_message_queue.c

@@ -1760,12 +1760,12 @@ static void lim_process_messages(struct mac_context *mac_ctx,
 	case eWNI_SME_EXT_CHANGE_CHANNEL:
 	case eWNI_SME_ROAM_INVOKE:
 		/* fall through */
-	case eWNI_SME_ROAM_SCAN_OFFLOAD_REQ:
 	case eWNI_SME_ROAM_SEND_SET_PCL_REQ:
 #ifndef ROAM_OFFLOAD_V1
 	case eWNI_SME_ROAM_INIT_PARAM:
 	case eWNI_SME_ROAM_DISABLE_CFG:
 	case eWNI_SME_ROAM_SEND_PER_REQ:
+	case eWNI_SME_ROAM_SCAN_OFFLOAD_REQ:
 #endif
 	case eWNI_SME_SET_ADDBA_ACCEPT:
 	case eWNI_SME_UPDATE_EDCA_PROFILE:

+ 4 - 4
core/mac/src/pe/lim/lim_process_sme_req_messages.c

@@ -4672,15 +4672,15 @@ bool lim_process_sme_req_messages(struct mac_context *mac,
 	case eWNI_SME_SESSION_UPDATE_PARAM:
 		__lim_process_sme_session_update(mac, msg_buf);
 		break;
-	case eWNI_SME_ROAM_SCAN_OFFLOAD_REQ:
-		__lim_process_roam_scan_offload_req(mac, msg_buf);
-		bufConsumed = false;
-		break;
 	case eWNI_SME_ROAM_SEND_SET_PCL_REQ:
 		lim_send_roam_set_pcl(mac, (struct set_pcl_req *)msg_buf);
 		bufConsumed = false;
 		break;
 #ifndef ROAM_OFFLOAD_V1
+	case eWNI_SME_ROAM_SCAN_OFFLOAD_REQ:
+		__lim_process_roam_scan_offload_req(mac, msg_buf);
+		bufConsumed = false;
+		break;
 	case eWNI_SME_ROAM_INIT_PARAM:
 		lim_send_roam_offload_init(mac, msg_buf);
 		bufConsumed = false;

+ 3 - 1
core/mac/src/sys/legacy/src/utils/src/mac_trace.c

@@ -349,8 +349,8 @@ uint8_t *mac_trace_get_sme_msg_string(uint16_t sme_msg)
 		CASE_RETURN_STRING(eWNI_SME_SEND_DISASSOC_FRAME);
 		CASE_RETURN_STRING(eWNI_SME_UPDATE_ACCESS_POLICY_VENDOR_IE);
 		CASE_RETURN_STRING(eWNI_SME_DEFAULT_SCAN_IE);
-		CASE_RETURN_STRING(eWNI_SME_ROAM_SCAN_OFFLOAD_REQ);
 #ifndef ROAM_OFFLOAD_V1
+		CASE_RETURN_STRING(eWNI_SME_ROAM_SCAN_OFFLOAD_REQ);
 		CASE_RETURN_STRING(eWNI_SME_ROAM_INIT_PARAM);
 #endif
 		CASE_RETURN_STRING(eWNI_SME_LOST_LINK_INFO_IND);
@@ -451,7 +451,9 @@ uint8_t *mac_trace_get_wma_msg_string(uint16_t wma_msg)
 		CASE_RETURN_STRING(WMA_MSG_TYPES_END);
 		CASE_RETURN_STRING(WMA_AGGR_QOS_REQ);
 		CASE_RETURN_STRING(WMA_AGGR_QOS_RSP);
+#ifndef ROAM_OFFLOAD_V1
 		CASE_RETURN_STRING(WMA_ROAM_SCAN_OFFLOAD_REQ);
+#endif
 		CASE_RETURN_STRING(WMA_ROAM_PRE_AUTH_STATUS);
 #ifdef WLAN_FEATURE_PACKET_FILTERING
 		CASE_RETURN_STRING(WMA_8023_MULTICAST_LIST_REQ);

+ 2 - 0
core/sme/inc/csr_api.h

@@ -1415,6 +1415,7 @@ QDF_STATUS
 csr_send_roam_offload_init_msg(struct mac_context *mac, uint32_t vdev_id,
 			       bool enable);
 
+#ifndef ROAM_OFFLOAD_V1
 /**
  * csr_send_roam_disable_cfg_msg() - Send roam module enable/disable cfg to fw
  * @mac: mac context
@@ -1425,6 +1426,7 @@ csr_send_roam_offload_init_msg(struct mac_context *mac, uint32_t vdev_id,
  */
 QDF_STATUS csr_send_roam_disable_cfg_msg(struct mac_context *mac,
 					 uint32_t vdev_id, uint8_t cfg);
+#endif
 
 typedef void (*csr_ani_callback)(int8_t *ani, void *context);
 

+ 4 - 1
core/sme/inc/csr_neighbor_roam.h

@@ -228,6 +228,7 @@ QDF_STATUS csr_post_roam_state_change(struct mac_context *mac, uint8_t vdev_id,
 				      enum roam_offload_state state,
 				      uint8_t reason);
 
+#ifndef ROAM_OFFLOAD_V1
 /**
  * csr_post_rso_stop() - Post RSO stop message to WMA
  * @mac: mac context
@@ -238,7 +239,7 @@ QDF_STATUS csr_post_roam_state_change(struct mac_context *mac, uint8_t vdev_id,
  */
 QDF_STATUS
 csr_post_rso_stop(struct mac_context *mac, uint8_t vdev_id, uint16_t reason);
-
+#endif
 /**
  * csr_enable_roaming_on_connected_sta() - Enable roaming on other connected
  *  sta vdev
@@ -276,11 +277,13 @@ QDF_STATUS csr_post_roam_state_change(struct mac_context *mac, uint8_t vdev_id,
 	return QDF_STATUS_E_NOSUPPORT;
 }
 
+#ifndef ROAM_OFFLOAD_V1
 static inline
 csr_post_rso_stop(struct mac_context *mac, uint8_t vdev_id, uint16_t reason)
 {
 	return QDF_STATUS_E_NOSUPPORT;
 }
+#endif
 
 static inline QDF_STATUS
 csr_enable_roaming_on_connected_sta(struct mac_context *mac, uint8_t vdev_id)

+ 2 - 0
core/sme/inc/sme_api.h

@@ -4096,6 +4096,7 @@ void sme_chan_to_freq_list(
 			const uint8_t *chan_list,
 			uint32_t chan_list_len);
 
+#ifndef ROAM_OFFLOAD_V1
 /**
  * sme_set_roam_triggers() - Send roam trigger bitmap to WMA
  * @mac_handle: Opaque handle to the MAC context
@@ -4110,6 +4111,7 @@ void sme_chan_to_freq_list(
  */
 QDF_STATUS sme_set_roam_triggers(mac_handle_t mac_handle,
 				 struct wlan_roam_triggers *triggers);
+#endif
 
 /**
  * sme_set_roam_config_enable() - Cache roam config status in SME

+ 2 - 19
core/sme/src/common/sme_api.c

@@ -16119,24 +16119,7 @@ void sme_chan_to_freq_list(
 			wlan_reg_chan_to_freq(pdev, (uint32_t)chan_list[count]);
 }
 
-#ifdef ROAM_OFFLOAD_V1
-static inline
-QDF_STATUS sme_rso_init_deinit(struct mac_context *mac,
-			       struct wlan_roam_triggers *triggers)
-{
-	QDF_STATUS status;
-
-	if (!triggers->trigger_bitmap)
-		status = wlan_cm_rso_init_deinit(mac->pdev, triggers->vdev_id,
-						 false);
-	else
-		status = wlan_cm_rso_init_deinit(mac->pdev, triggers->vdev_id,
-						 true);
-
-	return status;
-}
-#else
-
+#ifndef ROAM_OFFLOAD_V1
 static QDF_STATUS sme_enable_roaming(struct mac_context *mac, uint32_t vdev_id,
 				     bool enable)
 {
@@ -16181,7 +16164,6 @@ QDF_STATUS sme_rso_init_deinit(struct mac_context *mac,
 
 	return status;
 }
-#endif
 
 QDF_STATUS sme_set_roam_triggers(mac_handle_t mac_handle,
 				 struct wlan_roam_triggers *triggers)
@@ -16225,6 +16207,7 @@ QDF_STATUS sme_set_roam_triggers(mac_handle_t mac_handle,
 
 	return status;
 }
+#endif
 
 QDF_STATUS
 sme_send_vendor_btm_params(mac_handle_t mac_handle, uint8_t vdev_id)

+ 3 - 3
core/sme/src/csr/csr_api_roam.c

@@ -18016,6 +18016,7 @@ QDF_STATUS csr_invoke_neighbor_report_request(
 	return QDF_STATUS_SUCCESS;
 }
 
+#ifndef ROAM_OFFLOAD_V1
 /*
  * csr_roam_send_rso_cmd() - API to send RSO command to PE
  * @mac_ctx: Pointer to global MAC structure
@@ -18046,7 +18047,6 @@ csr_roam_send_rso_cmd(struct mac_context *mac_ctx,
 	return status;
 }
 
-#ifndef ROAM_OFFLOAD_V1
 /**
  * csr_append_assoc_ies() - Append specific IE to assoc IE's buffer
  * @mac_ctx: Pointer to global mac context
@@ -18555,6 +18555,7 @@ csr_is_adaptive_11r_roam_supported(struct mac_context *mac_ctx,
 }
 #endif
 
+#ifndef ROAM_OFFLOAD_V1
 QDF_STATUS
 csr_post_rso_stop(struct mac_context *mac, uint8_t vdev_id, uint16_t reason)
 {
@@ -18609,7 +18610,6 @@ csr_post_rso_stop(struct mac_context *mac, uint8_t vdev_id, uint16_t reason)
 	return status;
 }
 
-#ifndef ROAM_OFFLOAD_V1
 static QDF_STATUS
 csr_roam_switch_to_init(struct mac_context *mac, uint8_t vdev_id,
 			uint8_t reason)
@@ -22537,7 +22537,6 @@ csr_send_roam_offload_init_msg(struct mac_context *mac, uint32_t vdev_id,
 
 	return status;
 }
-#endif
 
 QDF_STATUS csr_send_roam_disable_cfg_msg(struct mac_context *mac,
 					 uint32_t vdev_id, uint8_t cfg)
@@ -22564,6 +22563,7 @@ QDF_STATUS csr_send_roam_disable_cfg_msg(struct mac_context *mac,
 
 	return status;
 }
+#endif
 
 QDF_STATUS
 csr_roam_update_cfg(struct mac_context *mac, uint8_t vdev_id, uint8_t reason)

+ 5 - 0
core/sme/src/csr/csr_neighbor_roam.c

@@ -625,7 +625,12 @@ static void csr_roam_restore_default_config(struct mac_context *mac_ctx,
 	triggers.vdev_id = vdev_id;
 	triggers.trigger_bitmap = wlan_mlme_get_roaming_triggers(mac_ctx->psoc);
 	sme_debug("Reset roam trigger bitmap to 0x%x", triggers.trigger_bitmap);
+#ifdef ROAM_OFFLOAD_V1
+	wlan_cm_rso_set_roam_trigger(mac_ctx->pdev, vdev_id, &triggers);
+#else
+	/* temp change, This will be removed with ROAM_OFFLOAD_V1 enabled */
 	sme_set_roam_triggers(MAC_HANDLE(mac_ctx), &triggers);
+#endif
 	sme_roam_control_restore_default_config(MAC_HANDLE(mac_ctx),
 						vdev_id);
 }

+ 2 - 1
core/wma/inc/wma.h

@@ -2035,6 +2035,7 @@ void wma_vdev_clear_pause_bit(uint8_t vdev_id, wmi_tx_pause_type bit_pos)
 	iface->pause_bitmap &= ~(1 << bit_pos);
 }
 
+#ifndef ROAM_OFFLOAD_V1
 /**
  * wma_process_roaming_config() - process roam request
  * @wma_handle: wma handle
@@ -2046,7 +2047,7 @@ void wma_vdev_clear_pause_bit(uint8_t vdev_id, wmi_tx_pause_type bit_pos)
  */
 QDF_STATUS wma_process_roaming_config(tp_wma_handle wma_handle,
 				     struct roam_offload_scan_req *roam_req);
-
+#endif
 #ifdef WLAN_FEATURE_ROAM_OFFLOAD
 /**
  * wma_send_roam_preauth_status() - Send the preauth status to wmi

+ 1 - 1
core/wma/inc/wma_api.h

@@ -827,7 +827,6 @@ int wma_wlm_stats_rsp(void *wma_ctx, uint8_t *event, uint32_t len);
  */
 void wma_update_roam_offload_flag(void *handle,
 				  struct roam_init_params *params);
-#endif
 /**
  * wma_set_roam_disable_cfg() - Set roam module disable cfg to fw
  * @wma: wma handle
@@ -836,6 +835,7 @@ void wma_update_roam_offload_flag(void *handle,
  * Return: none
  */
 void wma_set_roam_disable_cfg(void *handle, struct roam_disable_cfg *params);
+#endif
 
 /**
  * wma_self_peer_create() - create self peer in objmgr

+ 0 - 79
core/wma/inc/wma_internal.h

@@ -364,94 +364,15 @@ QDF_STATUS wma_roam_scan_fill_self_caps(tp_wma_handle wma_handle,
 					struct roam_offload_scan_req *roam_req);
 #endif
 
-#ifndef ROAM_OFFLOAD_V1
-QDF_STATUS wma_roam_scan_offload_mode(tp_wma_handle wma_handle,
-				      wmi_start_scan_cmd_fixed_param *
-				      scan_cmd_fp,
-				      struct roam_offload_scan_req *roam_req,
-				      uint32_t mode, uint32_t vdev_id);
-#else
-static inline QDF_STATUS wma_roam_scan_offload_mode(tp_wma_handle wma_handle,
-				      wmi_start_scan_cmd_fixed_param *
-				      scan_cmd_fp,
-				      struct roam_offload_scan_req *roam_req,
-				      uint32_t mode, uint32_t vdev_id)
-{
-	return QDF_STATUS_SUCCESS;
-}
-#endif
-
-/**
- * wma_roam_scan_mawc_params() - send roam scan mode request to fw
- * @wma_handle: wma handle
- * @roam_req: roam request param
- *
- * Fill the MAWC roaming parameters and send
- * WMI_ROAM_CONFIGURE_MAWC_CMDID TLV to firmware.
- *
- * Return: QDF status
- */
-QDF_STATUS wma_roam_scan_mawc_params(tp_wma_handle wma_handle,
-		struct roam_offload_scan_req *roam_req);
-
-/**
- * wma_roam_scan_offload_rssi_threshold() - set scan offload rssi threashold
- * @wma_handle: wma handle
- * @roam_req:   Roaming request buffer
- *
- * Send WMI_ROAM_SCAN_RSSI_THRESHOLD TLV to firmware
- *
- * Return: QDF status
- */
-QDF_STATUS
-wma_roam_scan_offload_rssi_thresh(tp_wma_handle wma_handle,
-				  struct roam_offload_scan_req *roam_req);
-
-QDF_STATUS
-wma_roam_scan_offload_scan_period(tp_wma_handle wma_handle,
-				  struct roam_offload_scan_req *roam_req);
-
-#ifndef ROAM_OFFLOAD_V1
-QDF_STATUS wma_roam_scan_offload_rssi_change(tp_wma_handle wma_handle,
-					     uint32_t vdev_id,
-					     int32_t rssi_change_thresh,
-					     uint32_t bcn_rssi_weight,
-					     uint32_t hirssi_delay_btw_scans);
-#else
-static inline
-QDF_STATUS wma_roam_scan_offload_rssi_change(tp_wma_handle wma_handle,
-					     uint32_t vdev_id,
-					     int32_t rssi_change_thresh,
-					     uint32_t bcn_rssi_weight,
-					     uint32_t hirssi_delay_btw_scans)
-{
-	return QDF_STATUS_E_NOSUPPORT;
-}
-#endif
-
-QDF_STATUS wma_roam_scan_offload_chan_list(tp_wma_handle wma_handle,
-					   uint8_t chan_count,
-					   uint32_t *chan_freq_list,
-					   uint8_t list_type, uint32_t vdev_id);
-
 A_UINT32 e_csr_auth_type_to_rsn_authmode(enum csr_akm_type authtype,
 					 eCsrEncryptionType encr);
 
 A_UINT32 e_csr_encryption_type_to_rsn_cipherset(eCsrEncryptionType encr);
 
-void wma_roam_scan_fill_scan_params(tp_wma_handle wma_handle,
-				    struct mac_context *mac,
-				    struct roam_offload_scan_req *roam_req,
-				    wmi_start_scan_cmd_fixed_param *
-				    scan_params);
-
 QDF_STATUS wma_roam_scan_bmiss_cnt(tp_wma_handle wma_handle,
 				   A_INT32 first_bcnt,
 				   A_UINT32 final_bcnt, uint32_t vdev_id);
 
-QDF_STATUS wma_roam_scan_offload_command(tp_wma_handle wma_handle,
-					 uint32_t command, uint32_t vdev_id);
-
 #ifdef WLAN_FEATURE_ROAM_OFFLOAD
 void wma_set_ric_req(tp_wma_handle wma, void *msg, uint8_t is_add_ts);
 #endif

+ 4 - 2
core/wma/inc/wma_types.h

@@ -219,7 +219,9 @@
 #define WMA_SET_PLM_REQ             SIR_HAL_SET_PLM_REQ
 #endif
 
+#ifndef ROAM_OFFLOAD_V1
 #define WMA_ROAM_SCAN_OFFLOAD_REQ   SIR_HAL_ROAM_SCAN_OFFLOAD_REQ
+#endif
 #define WMA_ROAM_PRE_AUTH_STATUS    SIR_HAL_ROAM_PRE_AUTH_STATUS_IND
 
 #ifdef WLAN_FEATURE_ROAM_OFFLOAD
@@ -431,14 +433,14 @@
 #ifdef WLAN_MWS_INFO_DEBUGFS
 #define WMA_GET_MWS_COEX_INFO_REQ	     SIR_HAL_GET_MWS_COEX_INFO_REQ
 #endif
-#define WMA_SET_ROAM_TRIGGERS                SIR_HAL_SET_ROAM_TRIGGERS
 
 #ifndef ROAM_OFFLOAD_V1
+#define WMA_SET_ROAM_TRIGGERS                SIR_HAL_SET_ROAM_TRIGGERS
 #define WMA_ROAM_INIT_PARAM                  SIR_HAL_INIT_ROAM_OFFLOAD_PARAM
+#define WMA_ROAM_DISABLE_CFG                 SIR_HAL_INIT_ROAM_DISABLE_CFG
 #endif
 
 #define WMA_DATA_STALL_TRIGGER 6
-#define WMA_ROAM_DISABLE_CFG                 SIR_HAL_INIT_ROAM_DISABLE_CFG
 
 /* Bit 6 will be used to control BD rate for Management frames */
 #define HAL_USE_BD_RATE2_FOR_MANAGEMENT_FRAME 0x40

+ 6 - 3
core/wma/src/wma_main.c

@@ -8473,10 +8473,12 @@ static QDF_STATUS wma_mc_process_msg(struct scheduler_msg *msg)
 				(tpSirRcvFltMcAddrList) msg->bodyptr);
 		qdf_mem_free(msg->bodyptr);
 		break;
+#ifndef ROAM_OFFLOAD_V1
+	/* this is temp will be removed once ROAM_OFFLOAD_V1 is enabled */
 	case WMA_ROAM_SCAN_OFFLOAD_REQ:
 		wma_process_roaming_config(wma_handle, msg->bodyptr);
 		break;
-
+#endif
 	case WMA_ROAM_PRE_AUTH_STATUS:
 		wma_send_roam_preauth_status(wma_handle, msg->bodyptr);
 		qdf_mem_free(msg->bodyptr);
@@ -8954,20 +8956,21 @@ static QDF_STATUS wma_mc_process_msg(struct scheduler_msg *msg)
 		qdf_mem_free(msg->bodyptr);
 		break;
 #endif
+#ifndef ROAM_OFFLOAD_V1
+	/* This code will be removed once ROAM_OFFLOAD_V1 is enabled */
 	case WMA_SET_ROAM_TRIGGERS:
 		wma_set_roam_triggers(wma_handle, msg->bodyptr);
 		qdf_mem_free(msg->bodyptr);
 		break;
-#ifndef ROAM_OFFLOAD_V1
 	case WMA_ROAM_INIT_PARAM:
 		wma_update_roam_offload_flag(wma_handle, msg->bodyptr);
 		qdf_mem_free(msg->bodyptr);
 		break;
-#endif
 	case WMA_ROAM_DISABLE_CFG:
 		wma_set_roam_disable_cfg(wma_handle, msg->bodyptr);
 		qdf_mem_free(msg->bodyptr);
 		break;
+#endif
 	case WMA_ROAM_SCAN_CH_REQ:
 		wma_get_roam_scan_ch(wma_handle->wmi_handle, msg->bodyval);
 		break;

+ 29 - 26
core/wma/src/wma_scan_roam.c

@@ -224,7 +224,8 @@ QDF_STATUS wma_update_channel_list(WMA_HANDLE handle,
 	return qdf_status;
 }
 
-QDF_STATUS wma_roam_scan_mawc_params(tp_wma_handle wma_handle,
+#ifndef ROAM_OFFLOAD_V1
+static QDF_STATUS wma_roam_scan_mawc_params(tp_wma_handle wma_handle,
 		struct roam_offload_scan_req *roam_req)
 {
 	struct wlan_roam_mawc_params *params;
@@ -261,6 +262,7 @@ QDF_STATUS wma_roam_scan_mawc_params(tp_wma_handle wma_handle,
 
 	return status;
 }
+#endif
 
 #ifdef WLAN_FEATURE_FILS_SK
 #ifndef ROAM_OFFLOAD_V1
@@ -472,7 +474,7 @@ static void wma_roam_scan_offload_set_params(
  *
  * Return: QDF status
  */
-QDF_STATUS wma_roam_scan_offload_mode(tp_wma_handle wma_handle,
+static QDF_STATUS wma_roam_scan_offload_mode(tp_wma_handle wma_handle,
 				      wmi_start_scan_cmd_fixed_param *
 				      scan_cmd_fp,
 				      struct roam_offload_scan_req *roam_req,
@@ -535,7 +537,7 @@ QDF_STATUS wma_roam_scan_offload_mode(tp_wma_handle wma_handle,
 	return status;
 }
 
-QDF_STATUS
+static QDF_STATUS
 wma_roam_scan_offload_rssi_thresh(tp_wma_handle wma_handle,
 				  struct roam_offload_scan_req *roam_req)
 {
@@ -716,7 +718,7 @@ wma_roam_scan_offload_rssi_thresh(tp_wma_handle wma_handle,
  *
  * Return: QDF status
  */
-QDF_STATUS
+static QDF_STATUS
 wma_roam_scan_offload_scan_period(tp_wma_handle wma_handle,
 				  struct roam_offload_scan_req *roam_req)
 {
@@ -755,7 +757,7 @@ wma_roam_scan_offload_scan_period(tp_wma_handle wma_handle,
  *
  * Return: QDF status
  */
-QDF_STATUS wma_roam_scan_offload_rssi_change(tp_wma_handle wma_handle,
+static QDF_STATUS wma_roam_scan_offload_rssi_change(tp_wma_handle wma_handle,
 					     uint32_t vdev_id,
 					     int32_t rssi_change_thresh,
 					     uint32_t bcn_rssi_weight,
@@ -771,21 +773,6 @@ QDF_STATUS wma_roam_scan_offload_rssi_change(tp_wma_handle wma_handle,
 				vdev_id, rssi_change_thresh,
 				bcn_rssi_weight, hirssi_delay_btw_scans);
 }
-#else
-QDF_STATUS
-wma_roam_scan_offload_rssi_thresh(tp_wma_handle wma_handle,
-				  struct roam_offload_scan_req *roam_req)
-{
-	return QDF_STATUS_E_NOSUPPORT;
-}
-
-QDF_STATUS
-wma_roam_scan_offload_scan_period(tp_wma_handle wma_handle,
-				  struct roam_offload_scan_req *roam_req)
-{
-	return QDF_STATUS_E_NOSUPPORT;
-}
-#endif
 
 /**
  * wma_roam_scan_offload_chan_list() - set roam offload channel list
@@ -799,7 +786,7 @@ wma_roam_scan_offload_scan_period(tp_wma_handle wma_handle,
  *
  * Return: QDF status
  */
-QDF_STATUS wma_roam_scan_offload_chan_list(tp_wma_handle wma_handle,
+static QDF_STATUS wma_roam_scan_offload_chan_list(tp_wma_handle wma_handle,
 					   uint8_t chan_count,
 					   uint32_t *chan_freq_list,
 					   uint8_t list_type, uint32_t vdev_id)
@@ -849,6 +836,7 @@ QDF_STATUS wma_roam_scan_offload_chan_list(tp_wma_handle wma_handle,
 
 	return status;
 }
+#endif
 
 /**
  * e_csr_auth_type_to_rsn_authmode() - map csr auth type to rsn authmode
@@ -973,6 +961,7 @@ A_UINT32 e_csr_encryption_type_to_rsn_cipherset(eCsrEncryptionType encr)
 	}
 }
 
+#ifndef ROAM_OFFLOAD_V1
 /**
  * wma_convert_gp_mgmt_cipher_to_target_cipher_type() - map csr ani group mgmt
  * enc type to RSN cipher
@@ -1032,6 +1021,7 @@ uint32_t wma_roam_scan_get_cckm_mode(struct roam_offload_scan_req *roam_req,
 	return WMI_AUTH_CCKM;
 }
 #endif
+
 /**
  * wma_roam_scan_fill_ap_profile() - fill ap_profile
  * @roam_req: roam offload scan request
@@ -1098,7 +1088,7 @@ wma_roam_scan_fill_ap_profile(struct roam_offload_scan_req *roam_req,
 		profile->flags |= WMI_AP_PROFILE_FLAG_PMF;
 #endif
 }
-
+#endif
 /**
  * wma_process_set_pdev_ie_req() - process the pdev set IE req
  * @wma: Pointer to wma handle
@@ -1223,6 +1213,8 @@ void wma_process_set_pdev_vht_ie_req(tp_wma_handle wma,
 		wmi_buf_free(buf);
 }
 
+#ifndef ROAM_OFFLOAD_V1
+
 /**
  * wma_roam_scan_scan_params() - fill roam scan params
  * @wma_handle: wma handle
@@ -1235,7 +1227,7 @@ void wma_process_set_pdev_vht_ie_req(tp_wma_handle wma,
  *
  * Return: none
  */
-void wma_roam_scan_fill_scan_params(tp_wma_handle wma_handle,
+static void wma_roam_scan_fill_scan_params(tp_wma_handle wma_handle,
 				    struct mac_context *mac,
 				    struct roam_offload_scan_req *roam_req,
 				    wmi_start_scan_cmd_fixed_param *
@@ -1566,6 +1558,7 @@ static QDF_STATUS wma_roam_scan_filter(tp_wma_handle wma_handle,
 	qdf_mem_free(params);
 	return status;
 }
+#endif
 
 /**
  * wma_roam_scan_bmiss_cnt() - set bmiss count to fw
@@ -1607,6 +1600,8 @@ QDF_STATUS wma_roam_scan_bmiss_cnt(tp_wma_handle wma_handle,
 	return status;
 }
 
+#ifndef ROAM_OFFLOAD_V1
+
 /**
  * wma_roam_scan_offload_command() - set roam offload command
  * @wma_handle: wma handle
@@ -1617,7 +1612,7 @@ QDF_STATUS wma_roam_scan_bmiss_cnt(tp_wma_handle wma_handle,
  *
  * Return: QDF status
  */
-QDF_STATUS wma_roam_scan_offload_command(tp_wma_handle wma_handle,
+static QDF_STATUS wma_roam_scan_offload_command(tp_wma_handle wma_handle,
 					 uint32_t command, uint32_t vdev_id)
 {
 	if (!wma_is_vdev_valid(vdev_id)) {
@@ -1752,8 +1747,10 @@ QDF_STATUS wma_send_offload_11k_params(WMA_HANDLE handle,
 
 	return status;
 }
+#endif
 
 #ifdef WLAN_FEATURE_ROAM_OFFLOAD
+#ifndef ROAM_OFFLOAD_V1
 /**
  * wma_send_disconnect_roam_params() - Send the disconnect roam parameters
  * to wmi
@@ -1839,6 +1836,7 @@ wma_send_idle_roam_params(tp_wma_handle wma_handle,
 	if (QDF_IS_STATUS_ERROR(status))
 		wma_err("failed to send idle roam parameters");
 }
+#endif
 
 void
 wma_send_roam_preauth_status(tp_wma_handle wma_handle,
@@ -1858,6 +1856,7 @@ wma_send_roam_preauth_status(tp_wma_handle wma_handle,
 }
 
 #else
+#ifndef ROAM_OFFLOAD_V1
 static inline void
 wma_send_disconnect_roam_params(tp_wma_handle wma_handle,
 				struct roam_offload_scan_req *roam_req)
@@ -1868,7 +1867,9 @@ wma_send_idle_roam_params(tp_wma_handle wma_handle,
 			  struct roam_offload_scan_req *roam_req)
 {}
 #endif
+#endif
 
+#ifndef ROAM_OFFLOAD_V1
 /* wma_set_vdev_roam_reason_vsie: set vdev param
  *WMI_VDEV_PARAM_ENABLE_DISABLE_ROAM_REASON_VSIE
  *
@@ -2313,7 +2314,6 @@ QDF_STATUS wma_process_roaming_config(tp_wma_handle wma_handle,
 	return qdf_status;
 }
 
-#ifndef ROAM_OFFLOAD_V1
 void wma_update_per_roam_config(WMA_HANDLE handle,
 				struct wlan_per_roam_config_req *req_buf)
 {
@@ -6602,6 +6602,7 @@ int wma_handle_btm_blacklist_event(void *handle, uint8_t *cmd_param_info,
 }
 
 #ifdef WLAN_FEATURE_ROAM_OFFLOAD
+#ifndef ROAM_OFFLOAD_V1
 QDF_STATUS wma_set_roam_triggers(tp_wma_handle wma,
 				 struct wlan_roam_triggers *triggers)
 {
@@ -6610,7 +6611,7 @@ QDF_STATUS wma_set_roam_triggers(tp_wma_handle wma,
 
 	return wmi_unified_set_roam_triggers(wma->wmi_handle, triggers);
 }
-
+#endif
 #ifdef WLAN_FEATURE_FIPS
 void wma_register_pmkid_req_event_handler(tp_wma_handle wma_handle)
 {
@@ -6710,9 +6711,11 @@ int wma_roam_pmkid_request_event_handler(void *handle, uint8_t *event,
 }
 #endif /* WLAN_FEATURE_FIPS */
 #else
+#ifndef ROAM_OFFLOAD_V1
 inline QDF_STATUS
 wma_set_roam_triggers(tp_wma_handle wma, struct wlan_roam_triggers *triggers)
 {
 	return QDF_STATUS_E_NOSUPPORT;
 }
 #endif
+#endif

+ 1 - 1
core/wma/src/wma_utils.c

@@ -3887,7 +3887,6 @@ void wma_update_roam_offload_flag(void *handle,
 
 	wma_set_roam_offload_flag(wma, params->vdev_id, params->enable);
 }
-#endif
 
 void wma_set_roam_disable_cfg(void *handle, struct roam_disable_cfg *params)
 {
@@ -3913,6 +3912,7 @@ void wma_set_roam_disable_cfg(void *handle, struct roam_disable_cfg *params)
 	if (QDF_IS_STATUS_ERROR(status))
 		wma_err("Failed to set WMI_VDEV_PARAM_ROAM_11KV_CTRL");
 }
+#endif
 
 QDF_STATUS wma_send_vdev_down_to_fw(t_wma_handle *wma, uint8_t vdev_id)
 {