Răsfoiți Sursa

Merge "qcacld-3.0: Call new dispatcher enable/disable APIs" into wlan-cld3.driver.lnx.2.0

CNSS_WLAN Service 7 ani în urmă
părinte
comite
f9dfd24882
1 a modificat fișierele cu 16 adăugiri și 2 ștergeri
  1. 16 2
      core/cds/src/cds_api.c

+ 16 - 2
core/cds/src/cds_api.c

@@ -492,16 +492,21 @@ QDF_STATUS cds_open(struct wlan_objmgr_psoc *psoc)
 		goto err_wma_complete_event;
 	}
 
+	status = dispatcher_enable();
+	if (QDF_IS_STATUS_ERROR(status)) {
+		cds_err("Failed to enable dispatcher; status:%d", status);
+		goto err_wma_complete_event;
+	}
+
 	/* Now Open the CDS Scheduler */
 	status = cds_sched_open(gp_cds_context,
 				&gp_cds_context->qdf_sched,
 				sizeof(cds_sched_context));
-
 	if (QDF_IS_STATUS_ERROR(status)) {
 		/* Critical Error ...  Cannot proceed further */
 		cds_alert("Failed to open CDS Scheduler");
 		QDF_ASSERT(0);
-		goto err_wma_complete_event;
+		goto err_dispatcher_disable;
 	}
 
 	scn = cds_get_context(QDF_MODULE_ID_HIF);
@@ -687,6 +692,10 @@ err_sched_close:
 		QDF_ASSERT(false);
 	}
 
+err_dispatcher_disable:
+	if (QDF_IS_STATUS_ERROR(dispatcher_disable()))
+		cds_err("Failed to disable dispatcher");
+
 err_wma_complete_event:
 	qdf_event_destroy(&gp_cds_context->wmaCompleteEvent);
 
@@ -1128,6 +1137,11 @@ QDF_STATUS cds_close(struct wlan_objmgr_psoc *psoc)
 	if (QDF_IS_STATUS_ERROR(qdf_status))
 		cds_err("Failed to close CDS Scheduler");
 
+	qdf_status = dispatcher_disable();
+	QDF_ASSERT(QDF_IS_STATUS_SUCCESS(qdf_status));
+	if (QDF_IS_STATUS_ERROR(qdf_status))
+		cds_err("Failed to disable dispatcher; status:%d", qdf_status);
+
 	dispatcher_psoc_close(psoc);
 
 	qdf_status = wma_wmi_work_close();