Browse Source

qcacmn: Define QDF API to register fw down callback

Define QDF API such that legacy module can register fw down
callback and new components can use QDF API to check if fw
is down or not.

Change-Id: I2f5423943f351ee3a0fd84616c904a27702c10e3
CRs-Fixed: 2194451
Rajeev Kumar 7 years ago
parent
commit
28dba98f8b
2 changed files with 15 additions and 0 deletions
  1. 8 0
      qdf/inc/qdf_util.h
  2. 7 0
      qdf/src/qdf_types.c

+ 8 - 0
qdf/inc/qdf_util.h

@@ -42,6 +42,7 @@
 #endif
 
 typedef __qdf_wait_queue_head_t qdf_wait_queue_head_t;
+typedef void (*qdf_fw_down_callback)(void);
 
 /**
  * qdf_unlikely - Compiler-dependent macro denoting code likely to execute
@@ -655,4 +656,11 @@ void qdf_get_random_bytes(void *buf, int nbytes)
 {
 	return __qdf_get_random_bytes(buf, nbytes);
 }
+
+/**
+ * qdf_register_fw_down_callback() - API to register fw down callback
+ *
+ * Return: none
+ */
+void qdf_register_fw_down_callback(qdf_fw_down_callback *fw_down_callback);
 #endif /*_QDF_UTIL_H*/

+ 7 - 0
qdf/src/qdf_types.c

@@ -23,6 +23,8 @@
 #include "qdf_trace.h"
 #include "qdf_types.h"
 
+static qdf_fw_down_callback *is_fw_down_cb;
+
 static QDF_STATUS qdf_consume_char(char **str, char c)
 {
 	if ((*str)[0] != c)
@@ -524,3 +526,8 @@ QDF_STATUS qdf_ipv6_parse(char *ipv6_str, struct qdf_ipv6_addr *out_addr)
 }
 qdf_export_symbol(qdf_ipv6_parse);
 
+void qdf_register_fw_down_callback(qdf_fw_down_callback *fw_down_callback)
+{
+	is_fw_down_cb = fw_down_callback;
+}
+qdf_export_symbol(qdf_register_fw_down_callback);