1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 3 * Copyright (c) 2022, Qualcomm Innovation Center, Inc. All rights reserved. 4 */ 5 6 #ifndef _ARM_SMMU_QCOM_H 7 #define _ARM_SMMU_QCOM_H 8 9 struct qcom_smmu { 10 struct arm_smmu_device smmu; 11 const struct qcom_smmu_config *cfg; 12 bool bypass_quirk; 13 u8 bypass_cbndx; 14 u32 stall_enabled; 15 }; 16 17 #ifdef CONFIG_ARM_SMMU_QCOM_DEBUG 18 void qcom_smmu_tlb_sync_debug(struct arm_smmu_device *smmu); 19 const void *qcom_smmu_impl_data(struct arm_smmu_device *smmu); 20 #else 21 static inline void qcom_smmu_tlb_sync_debug(struct arm_smmu_device *smmu) { } 22 static inline const void *qcom_smmu_impl_data(struct arm_smmu_device *smmu) 23 { 24 return NULL; 25 } 26 #endif 27 28 #endif /* _ARM_SMMU_QCOM_H */ 29