From 28dba98f8ba56e9044aa6ae20ebc27e18804e6ca Mon Sep 17 00:00:00 2001 From: Rajeev Kumar Date: Thu, 22 Feb 2018 13:17:30 -0800 Subject: [PATCH] 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 --- qdf/inc/qdf_util.h | 8 ++++++++ qdf/src/qdf_types.c | 7 +++++++ 2 files changed, 15 insertions(+) diff --git a/qdf/inc/qdf_util.h b/qdf/inc/qdf_util.h index 1ac3a2a4bb..3955dfce68 100644 --- a/qdf/inc/qdf_util.h +++ b/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*/ diff --git a/qdf/src/qdf_types.c b/qdf/src/qdf_types.c index 9617934ee0..d1c4fc11db 100644 --- a/qdf/src/qdf_types.c +++ b/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);