Ver código fonte

qcacld-3.0: Register legacy callbacks with Policy Manager

Register legacy callbacks with Policy Manager.

Change-Id: I8cb60890ba41f8735f342cf20916dc53d268d609
CRs-Fixed: 2009818
Tushnim Bhattacharyya 8 anos atrás
pai
commit
9104963b0d
2 arquivos alterados com 23 adições e 0 exclusões
  1. 15 0
      core/sme/src/common/sme_api.c
  2. 8 0
      core/wma/src/wma_main.c

+ 15 - 0
core/sme/src/common/sme_api.c

@@ -1319,6 +1319,7 @@ QDF_STATUS sme_start(tHalHandle hHal)
 {
 	QDF_STATUS status = QDF_STATUS_E_FAILURE;
 	tpAniSirGlobal pMac = PMAC_STRUCT(hHal);
+	struct policy_mgr_sme_cbacks sme_cbacks;
 
 	do {
 		status = csr_start(pMac);
@@ -1328,6 +1329,20 @@ QDF_STATUS sme_start(tHalHandle hHal)
 				status);
 			break;
 		}
+		sme_cbacks.sme_get_nss_for_vdev = sme_get_vdev_type_nss;
+		sme_cbacks.sme_get_valid_channels = sme_get_cfg_valid_channels;
+		sme_cbacks.sme_nss_update_request = sme_nss_update_request;
+		sme_cbacks.sme_pdev_set_hw_mode = sme_pdev_set_hw_mode;
+		sme_cbacks.sme_pdev_set_pcl = sme_pdev_set_pcl;
+		sme_cbacks.sme_soc_set_dual_mac_config =
+			sme_soc_set_dual_mac_config;
+		status = policy_mgr_register_sme_cb(pMac->psoc, &sme_cbacks);
+		if (!QDF_IS_STATUS_SUCCESS(status)) {
+			sms_log(pMac, LOGE,
+				"Failed to register sme cb with Policy Manager: %d",
+				status);
+			break;
+		}
 		pMac->sme.state = SME_STATE_START;
 	} while (0);
 

+ 8 - 0
core/wma/src/wma_main.c

@@ -2072,6 +2072,7 @@ QDF_STATUS wma_open(struct wlan_objmgr_psoc *psoc, void *cds_context,
 	void *wmi_handle;
 	QDF_STATUS qdf_status;
 	struct wmi_rx_ops ops;
+	struct policy_mgr_wma_cbacks wma_cbacks;
 
 	bool use_cookie = false;
 
@@ -2541,6 +2542,12 @@ QDF_STATUS wma_open(struct wlan_objmgr_psoc *psoc, void *cds_context,
 		wma_vdev_update_pause_bitmap);
 	pmo_register_get_pause_bitmap(wma_handle->psoc,
 		wma_vdev_get_pause_bitmap);
+	wma_cbacks.wma_get_connection_info = wma_get_connection_info;
+	wma_cbacks.wma_is_service_enabled = wma_is_service_enabled;
+	qdf_status = policy_mgr_register_wma_cb(wma_handle->psoc, &wma_cbacks);
+	if (!QDF_IS_STATUS_SUCCESS(qdf_status)) {
+		WMA_LOGE("Failed to register wma cb with Policy Manager");
+	}
 
 	return QDF_STATUS_SUCCESS;
 
@@ -3021,6 +3028,7 @@ QDF_STATUS wma_start(void *cds_ctx)
 	QDF_STATUS qdf_status = QDF_STATUS_SUCCESS;
 	tp_wma_handle wma_handle;
 	int status;
+
 	WMA_LOGD("%s: Enter", __func__);
 
 	wma_handle = cds_get_context(QDF_MODULE_ID_WMA);