diff --git a/qdf/inc/qdf_ipa.h b/qdf/inc/qdf_ipa.h index 015ced8d51de..05eea85c3fe6 100644 --- a/qdf/inc/qdf_ipa.h +++ b/qdf/inc/qdf_ipa.h @@ -646,5 +646,18 @@ static inline int qdf_ipa_broadcast_wdi_quota_reach_ind(uint32_t index, return __qdf_ipa_broadcast_wdi_quota_reach_ind(index, quota_bytes); } #endif + +#ifdef ENABLE_SMMU_S1_TRANSLATION +/** + * qdf_get_ipa_smmu_enabled() - to get IPA SMMU enable status + * + * Return: true when IPA SMMU enabled, otherwise false + */ +static inline bool qdf_get_ipa_smmu_enabled(void) +{ + return __qdf_get_ipa_smmu_enabled(); +} +#endif + #endif /* IPA_OFFLOAD */ #endif /* _QDF_IPA_H */ diff --git a/qdf/linux/src/i_qdf_ipa.h b/qdf/linux/src/i_qdf_ipa.h index d96c6b6ad525..9cd223cc06c9 100644 --- a/qdf/linux/src/i_qdf_ipa.h +++ b/qdf/linux/src/i_qdf_ipa.h @@ -914,5 +914,24 @@ static inline int __qdf_ipa_broadcast_wdi_quota_reach_ind(uint32_t index, #endif void __qdf_ipa_set_meta_msg_type(__qdf_ipa_msg_meta_t *meta, int type); + +#ifdef ENABLE_SMMU_S1_TRANSLATION +/** + * __qdf_get_ipa_smmu_enabled() - to get IPA SMMU enable status + * + * Return: true when IPA SMMU enabled, otherwise false + */ +static bool __qdf_get_ipa_smmu_enabled(void) +{ + struct ipa_smmu_in_params params_in; + struct ipa_smmu_out_params params_out; + + params_in.smmu_client = IPA_SMMU_WLAN_CLIENT; + ipa_get_smmu_params(¶ms_in, ¶ms_out); + + return params_out.smmu_enable; +} +#endif + #endif /* IPA_OFFLOAD */ #endif /* _I_QDF_IPA_H */