qcacld-3.0: enable ipa hw dynamic detection capabiliry

MODEM included platform and non-MODEM platform should use
the same binary. Then WLAN cannot disable IPA data path
through INI nor compile time.
WLAN host driver should dynamically detect IPA HW status and
should enable or disable IPA data path based on IPA HW status.

Change-Id: I43a673fcfc7ecfbd2d3ca488034dc4a84e20b258
CRs-fixed: 1078825
diff --git a/core/hdd/src/wlan_hdd_ipa.c b/core/hdd/src/wlan_hdd_ipa.c
index a9f7bf2..66ee27f 100644
--- a/core/hdd/src/wlan_hdd_ipa.c
+++ b/core/hdd/src/wlan_hdd_ipa.c
@@ -2802,6 +2802,26 @@
 }
 
 /**
+ * hdd_ipa_is_present() - get IPA hw status
+ * @hdd_ctx: pointer to hdd context
+ *
+ * ipa_uc_reg_rdyCB is not directly designed to check
+ * ipa hw status. This is an undocumented function which
+ * has confirmed with IPA team.
+ *
+ * Return: true - ipa hw present
+ *         false - ipa hw not present
+ */
+bool hdd_ipa_is_present(hdd_context_t *hdd_ctx)
+{
+	/* Check if ipa hw is enabled */
+	if (ipa_uc_reg_rdyCB(NULL) != -EPERM)
+		return true;
+	else
+		return false;
+}
+
+/**
  * hdd_ipa_pm_flush() - flush queued packets
  * @work: pointer to the scheduled work
  *