summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSarada Prasanna Garnayak <sgarna@codeaurora.org>2016-12-29 18:35:31 +0530
committerGerrit - the friendly Code Review server <code-review@localhost>2017-01-01 23:07:41 -0800
commit72f739bbe7328fdacb68196273a93d8846bbd702 (patch)
tree3112eb0afba1d8774aaf7f80c55cf70da25d70c3
parent613765204325713b6419765d5d27e7b8f633ef59 (diff)
icnss: Provide API to check the firmware ready status
API check the wlan firmware ready status in icnss platform data and return the status(true/false) to caller. CRs-Fixed: 1106520 Change-Id: I1246e6c213011d73ade5078c07bb2190135e54ec Signed-off-by: Sarada Prasanna Garnayak <sgarna@codeaurora.org>
-rw-r--r--drivers/soc/qcom/icnss.c11
-rw-r--r--include/soc/qcom/icnss.h3
2 files changed, 12 insertions, 2 deletions
diff --git a/drivers/soc/qcom/icnss.c b/drivers/soc/qcom/icnss.c
index c3792d5a72ac..561a0d38e502 100644
--- a/drivers/soc/qcom/icnss.c
+++ b/drivers/soc/qcom/icnss.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 2015-2016, The Linux Foundation. All rights reserved.
+/* Copyright (c) 2015-2017, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@@ -720,6 +720,15 @@ int icnss_power_on(struct device *dev)
}
EXPORT_SYMBOL(icnss_power_on);
+bool icnss_is_fw_ready(void)
+{
+ if (!penv)
+ return false;
+ else
+ return test_bit(ICNSS_FW_READY, &penv->state);
+}
+EXPORT_SYMBOL(icnss_is_fw_ready);
+
int icnss_power_off(struct device *dev)
{
struct icnss_priv *priv = dev_get_drvdata(dev);
diff --git a/include/soc/qcom/icnss.h b/include/soc/qcom/icnss.h
index 9c38b9aa5627..14892a05bd19 100644
--- a/include/soc/qcom/icnss.h
+++ b/include/soc/qcom/icnss.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2015-2016, The Linux Foundation. All rights reserved.
+/* Copyright (c) 2015-2017, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@@ -124,6 +124,7 @@ extern int icnss_get_wlan_unsafe_channel(u16 *unsafe_ch_list, u16 *ch_count,
extern int icnss_wlan_set_dfs_nol(const void *info, u16 info_len);
extern int icnss_wlan_get_dfs_nol(void *info, u16 info_len);
extern bool icnss_is_qmi_disable(void);
+extern bool icnss_is_fw_ready(void);
extern int icnss_set_wlan_mac_address(const u8 *in, const uint32_t len);
extern u8 *icnss_get_wlan_mac_address(struct device *dev, uint32_t *num);