xref: /wlan-dirver/qca-wifi-host-cmn/qdf/src/qdf_platform.c (revision 6ecd284e5a94a1c96e26d571dd47419ac305990d)
1 /*
2  * Copyright (c) 2018 The Linux Foundation. All rights reserved.
3  *
4  * Permission to use, copy, modify, and/or distribute this software for
5  * any purpose with or without fee is hereby granted, provided that the
6  * above copyright notice and this permission notice appear in all
7  * copies.
8  *
9  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
10  * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
11  * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
12  * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
13  * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
14  * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
15  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
16  * PERFORMANCE OF THIS SOFTWARE.
17  */
18 
19 #include "qdf_module.h"
20 #include "qdf_trace.h"
21 #include "qdf_platform.h"
22 
23 static qdf_is_fw_down_callback is_fw_down_cb;
24 
25 void qdf_register_fw_down_callback(qdf_is_fw_down_callback is_fw_down)
26 {
27 	is_fw_down_cb = is_fw_down;
28 }
29 qdf_export_symbol(qdf_register_fw_down_callback);
30 
31 bool qdf_is_fw_down(void)
32 {
33 	if (!is_fw_down_cb) {
34 		QDF_TRACE(QDF_MODULE_ID_QDF, QDF_TRACE_LEVEL_ERROR,
35 			"fw down callback is not registered");
36 			return false;
37 	}
38 
39 	return is_fw_down_cb();
40 }
41 qdf_export_symbol(qdf_is_fw_down);
42