From 177b9dd51b326a69a752e773784e4eb8e791c30f Mon Sep 17 00:00:00 2001 From: Ravi Gummadidala <rgummadi@codeaurora.org> Date: Tue, 18 Mar 2014 19:06:18 -0700 Subject: [PATCH] msm: ipa: add an API to check if IPA driver is ready Clients can use this API to ensure IPA driver was initialized successfully before invoking any other IPA APIs. Change-Id: Ib4a8b62a2c9a2746db1090f540cccd01bae74272 Signed-off-by: Ravi Gummadidala <rgummadi@codeaurora.org> --- drivers/platform/msm/ipa/ipa_utils.c | 12 ++++++++++++ include/linux/ipa.h | 7 +++++++ 2 files changed, 19 insertions(+) diff --git a/drivers/platform/msm/ipa/ipa_utils.c b/drivers/platform/msm/ipa/ipa_utils.c index dca797ceff00..9d082700ff32 100644 --- a/drivers/platform/msm/ipa/ipa_utils.c +++ b/drivers/platform/msm/ipa/ipa_utils.c @@ -3606,3 +3606,15 @@ fail_alloc_pkt_init: fail_alloc_desc: return res; } + +/** + * ipa_is_ready() - check if IPA module was initialized + * successfully + * + * Return value: true for yes; false for no + */ +bool ipa_is_ready(void) +{ + return (ipa_ctx != NULL) ? true : false; +} +EXPORT_SYMBOL(ipa_is_ready); diff --git a/include/linux/ipa.h b/include/linux/ipa.h index 96278509076c..fb95905a71bd 100644 --- a/include/linux/ipa.h +++ b/include/linux/ipa.h @@ -953,6 +953,8 @@ int ipa_remove_interrupt_handler(enum ipa_irq_type interrupt); int ipa_get_ep_mapping(enum ipa_client_type client); +bool ipa_is_ready(void); + #else /* CONFIG_IPA */ /* @@ -1421,6 +1423,11 @@ static inline int ipa_get_ep_mapping(enum ipa_client_type client) { return -EPERM; } + +static inline bool ipa_is_ready(void) +{ + return false; +} #endif /* CONFIG_IPA*/ #endif /* _IPA_H_ */ -- GitLab