[PATCH 00/12] iommu: qcom_iommu: implement support for instances on MSM8974
Dmitry Baryshkov <[email protected]>
| Newsgroups | dev.linux.lists.iommu,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <20260809-msm8974-iommu-upstream-v1-0-87f5cd492560@oss.qualcomm.com> |
Qualcomm MSM8974 platform has five SMMU instances, used by display, GPU, Venus, VFE (camera) and JPEG encoder. Each of them follows ARM SMMU v1 spec, however they differ from other Qualcomm platforms in the implementation-specific registers and also in interaction with TZ. Venus, MDP and VFE SMMUs are secured and require programming only of CBs, while GPU and JPEG require full programming. This series skips IOMMUs which can't be tested right now (VFE and JPEG), and adds only MDP, GPU and Venus (although untested, it is required for display to work) SMMU instances. Note, to get display to work properly one fix is necessary, [1] [1] https://patch.msgid.link/[email protected] Signed-off-by: Dmitry Baryshkov <[email protected]> --- Dmitry Baryshkov (12): dt-bindings: iommu: qcom,iommu: document the MSM8974 IOMMUs iommu: arm-smmu: add global register definitions used by the QSMMU iommu: qcom_iommu: extract context bank programming into a helper iommu: qcom_iommu: support the short-descriptor pagetable format iommu: qcom_iommu: handle the SMMU global register space iommu: qcom_iommu: support non-TZ-managed instances iommu: qcom_iommu: restore context bank state after power collapse iommu: qcom_iommu: halt the micro-MMU while programming context banks iommu: qcom_iommu: allow faulting transactions to terminate iommu: qcom_iommu: program BFP (prefetch) settings iommu: qcom_iommu: add the MSM8974 instances ARM: dts: qcom: msm8974: add the IOMMUs .../devicetree/bindings/iommu/qcom,iommu.yaml | 16 +- arch/arm/boot/dts/qcom/qcom-msm8974.dtsi | 85 +++- drivers/iommu/arm/Kconfig | 1 + drivers/iommu/arm/arm-smmu/arm-smmu.h | 10 + drivers/iommu/arm/arm-smmu/qcom_iommu.c | 445 +++++++++++++++++++-- 5 files changed, 517 insertions(+), 40 deletions(-) --- base-commit: 6c5c106bff878247a9cc7255077aab9040df8bf8 change-id: 20260809-msm8974-iommu-upstream-144b1e2a15f0 Best regards, -- With best wishes Dmitry