summaryrefslogtreecommitdiff
path: root/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.h
diff options
context:
space:
mode:
authorAndrew Morton <akpm@linux-foundation.org>2022-12-21 02:02:46 +0300
committerAndrew Morton <akpm@linux-foundation.org>2022-12-21 02:02:46 +0300
commita9763aa0bda186d8d86101e8ee90a37f606d9f64 (patch)
tree58f4fb795fed3f4b2c1cb6bbac9ed25b3134d390 /drivers/iommu/arm/arm-smmu/arm-smmu-qcom.h
parentbcd5b5912c6ce4f7c9491407a38b5d0acd11459b (diff)
parent1644d755d0b06d0f1ee93e1c44336c29386546b4 (diff)
downloadlinux-a9763aa0bda186d8d86101e8ee90a37f606d9f64.tar.xz
Merge branch 'master' into mm-nonmm-stable
Diffstat (limited to 'drivers/iommu/arm/arm-smmu/arm-smmu-qcom.h')
-rw-r--r--drivers/iommu/arm/arm-smmu/arm-smmu-qcom.h21
1 files changed, 16 insertions, 5 deletions
diff --git a/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.h b/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.h
index 99ec8f8629a0..593910567b88 100644
--- a/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.h
+++ b/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.h
@@ -14,15 +14,26 @@ struct qcom_smmu {
u32 stall_enabled;
};
+enum qcom_smmu_impl_reg_offset {
+ QCOM_SMMU_TBU_PWR_STATUS,
+ QCOM_SMMU_STATS_SYNC_INV_TBU_ACK,
+ QCOM_SMMU_MMU2QSS_AND_SAFE_WAIT_CNTR,
+};
+
+struct qcom_smmu_config {
+ const u32 *reg_offset;
+};
+
+struct qcom_smmu_match_data {
+ const struct qcom_smmu_config *cfg;
+ const struct arm_smmu_impl *impl;
+ const struct arm_smmu_impl *adreno_impl;
+};
+
#ifdef CONFIG_ARM_SMMU_QCOM_DEBUG
void qcom_smmu_tlb_sync_debug(struct arm_smmu_device *smmu);
-const void *qcom_smmu_impl_data(struct arm_smmu_device *smmu);
#else
static inline void qcom_smmu_tlb_sync_debug(struct arm_smmu_device *smmu) { }
-static inline const void *qcom_smmu_impl_data(struct arm_smmu_device *smmu)
-{
- return NULL;
-}
#endif
#endif /* _ARM_SMMU_QCOM_H */