Procházet zdrojové kódy

qcacmn: add qdf wrapper API for is_driver_state_module_stop

Add qdf wrapper API support for is_driver_state_module_stop.

Change-Id: I6965b4049aebcbe9ec612cf3d70398eb269450e4
CRs-Fixed: 2912016
Vevek Venkatesan před 4 roky
rodič
revize
da069e5990
2 změnil soubory, kde provedl 43 přidání a 0 odebrání
  1. 25 0
      qdf/inc/qdf_platform.h
  2. 18 0
      qdf/src/qdf_platform.c

+ 25 - 0
qdf/inc/qdf_platform.h

@@ -125,6 +125,24 @@ typedef bool (*qdf_is_driver_unloading_callback)(void);
 void qdf_register_is_driver_unloading_callback(
 				qdf_is_driver_unloading_callback callback);
 
+/**
+ * qdf_is_driver_state_module_stop_callback() - callback to get driver state is
+ * module stop or not
+ *
+ * Return: true if driver state is module stop else false
+ */
+typedef bool (*qdf_is_driver_state_module_stop_callback)(void);
+
+/**
+ * qdf_register_is_driver_state_module_stop_callback() - driver state is
+ * module stop or not
+ * @callback:  driver state module stop callback
+ *
+ * Return: None
+ */
+void qdf_register_is_driver_state_module_stop_callback(
+			qdf_is_driver_state_module_stop_callback callback);
+
 /**
  * qdf_register_self_recovery_callback() - register self recovery callback
  * @callback:  self recovery callback
@@ -174,6 +192,13 @@ void qdf_register_recovering_state_query_callback(
  */
 bool qdf_is_driver_unloading(void);
 
+/**
+ * qdf_is_driver_state_module_stop() - get driver state is module stop or not
+ *
+ * Return: true if driver state is module stop else false
+ */
+bool qdf_is_driver_state_module_stop(void);
+
 /**
  * qdf_is_recovering() - get driver recovering in progress status
  * or not

+ 18 - 0
qdf/src/qdf_platform.c

@@ -27,6 +27,7 @@
 static qdf_self_recovery_callback	self_recovery_cb;
 static qdf_is_fw_down_callback		is_fw_down_cb;
 static qdf_is_driver_unloading_callback is_driver_unloading_cb;
+static qdf_is_driver_state_module_stop_callback is_driver_state_module_stop_cb;
 static qdf_is_recovering_callback	is_recovering_cb;
 static qdf_is_drv_connected_callback    is_drv_connected_cb;
 static qdf_wmi_send_over_qmi_callback _wmi_send_recv_qmi_cb;
@@ -85,6 +86,14 @@ void qdf_register_is_driver_unloading_callback(
 
 qdf_export_symbol(qdf_register_is_driver_unloading_callback);
 
+void qdf_register_is_driver_state_module_stop_callback(
+			qdf_is_driver_state_module_stop_callback callback)
+{
+	is_driver_state_module_stop_cb = callback;
+}
+
+qdf_export_symbol(qdf_register_is_driver_state_module_stop_callback);
+
 void qdf_register_self_recovery_callback(qdf_self_recovery_callback callback)
 {
 	self_recovery_cb = callback;
@@ -118,6 +127,15 @@ bool qdf_is_driver_unloading(void)
 
 qdf_export_symbol(qdf_is_driver_unloading);
 
+bool qdf_is_driver_state_module_stop(void)
+{
+	if (is_driver_state_module_stop_cb)
+		return is_driver_state_module_stop_cb();
+	return false;
+}
+
+qdf_export_symbol(qdf_is_driver_state_module_stop);
+
 bool qdf_is_recovering(void)
 {
 	if (is_recovering_cb)