qcacld-3.0: Move IPA SMMU functions to IPA component

IPA module has been moved to CLD component under the converged
driver model. Move the legacy HDD IPA SMMU functions to the
IPA component.

Change-Id: I3ac5ebe87cc48913f3e8e075e60737e78664f861
CRs-Fixed: 2177925
diff --git a/components/ipa/core/src/wlan_ipa_core.c b/components/ipa/core/src/wlan_ipa_core.c
index 363950f..b3c642f 100644
--- a/components/ipa/core/src/wlan_ipa_core.c
+++ b/components/ipa/core/src/wlan_ipa_core.c
@@ -216,9 +216,7 @@
 static inline bool wlan_ipa_wdi_is_smmu_enabled(struct wlan_ipa_priv *ipa_ctx,
 					       qdf_device_t osdev)
 {
-	/* TODO: Need to check if SMMU is supported on cld_3.2 */
-	/* return hdd_ipa->is_smmu_enabled && qdf_mem_smmu_s1_enabled(osdev); */
-	return 0;
+	return ipa_ctx->is_smmu_enabled && qdf_mem_smmu_s1_enabled(osdev);
 }
 
 static inline QDF_STATUS wlan_ipa_wdi_setup(struct wlan_ipa_priv *ipa_ctx,
@@ -331,6 +329,12 @@
 {
 }
 
+static inline int wlan_ipa_wdi_is_smmu_enabled(struct wlan_ipa_priv *ipa_ctx,
+					       qdf_device_t osdev)
+{
+	return qdf_mem_smmu_s1_enabled(osdev);
+}
+
 static inline QDF_STATUS wlan_ipa_wdi_setup(struct wlan_ipa_priv *ipa_ctx,
 					    qdf_device_t osdev)
 {
@@ -2587,3 +2591,18 @@
 	ipa_debug("exit: ret=%d", status);
 	return status;
 }
+
+int wlan_ipa_uc_smmu_map(bool map, uint32_t num_buf, qdf_mem_info_t *buf_arr)
+{
+	ipa_debug("Map: %d Num_buf: %d", map, num_buf);
+
+	if (!num_buf) {
+		ipa_info("No buffers to map/unmap");
+		return 0;
+	}
+
+	if (map)
+		return qdf_ipa_create_wdi_mapping(num_buf, buf_arr);
+	else
+		return qdf_ipa_release_wdi_mapping(num_buf, buf_arr);
+}