iommu/arm-smmu-qcom: Add debug support for TLB sync timeouts
authorSai Prakash Ranjan <quic_saipraka@quicinc.com>
Fri, 8 Jul 2022 09:42:30 +0000 (15:12 +0530)
committerWill Deacon <will@kernel.org>
Fri, 8 Jul 2022 13:15:52 +0000 (14:15 +0100)
commitb9b721d117e9d360ba693e75ba6b9262dfcdf9e2
tree0af7948c915c31a93dc2486a1714e2efa96e30aa
parent3482c0b7307365fa9d00cfc1040ff8c39bb8604e
iommu/arm-smmu-qcom: Add debug support for TLB sync timeouts

TLB sync timeouts can be due to various reasons such as TBU power down
or pending TCU/TBU invalidation/sync and so on. Debugging these often
require dumping of some implementation defined registers to know the
status of TBU/TCU operations and some of these registers are not
accessible in non-secure world such as from kernel and requires SMC
calls to read them in the secure world. So, add this debug support
to dump implementation defined registers for TLB sync timeout issues.

Signed-off-by: Sai Prakash Ranjan <quic_saipraka@quicinc.com>
Acked-by: Robin Murphy <robin.murphy@arm.com>
Link: https://lore.kernel.org/r/20220708094230.4349-1-quic_saipraka@quicinc.com
Signed-off-by: Will Deacon <will@kernel.org>
drivers/iommu/Kconfig
drivers/iommu/arm/arm-smmu/Makefile
drivers/iommu/arm/arm-smmu/arm-smmu-qcom-debug.c [new file with mode: 0644]
drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c
drivers/iommu/arm/arm-smmu/arm-smmu-qcom.h [new file with mode: 0644]
drivers/iommu/arm/arm-smmu/arm-smmu.c
drivers/iommu/arm/arm-smmu/arm-smmu.h