From: Krzysztof Kozlowski Date: Tue, 19 May 2026 07:41:00 +0000 (+0200) Subject: dt-bindings: arm-smmu: Constrain clocks for newer Qualcomm variants X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=75949eb0265387ba004744320e9bfbc0b918be5e;p=thirdparty%2Fkernel%2Flinux.git dt-bindings: arm-smmu: Constrain clocks for newer Qualcomm variants Many of SMMU on Qualcomm SoCs come in two flavors using the same front compatible but a bit different fallback: 1. For application processor, usually without any controllable clocks, 2. For the Adreno GPU, with some controllable clock(s) and using additionally qcom,adreno-smmu fallback compatible. Add missing constraints for Glymur SMMU on Adreno GPU and several other Qualcomm SMMUs for application processors, to restrict the clocks property to a specific length. Acked-by: Rob Herring (Arm) Reviewed-by: Shawn Guo Signed-off-by: Krzysztof Kozlowski Signed-off-by: Will Deacon --- diff --git a/Documentation/devicetree/bindings/iommu/arm,smmu.yaml b/Documentation/devicetree/bindings/iommu/arm,smmu.yaml index 67c7a9207c98f..25fd3efa24200 100644 --- a/Documentation/devicetree/bindings/iommu/arm,smmu.yaml +++ b/Documentation/devicetree/bindings/iommu/arm,smmu.yaml @@ -599,6 +599,7 @@ allOf: - qcom,sdm845-smmu-500 - qcom,sdx55-smmu-500 - qcom,sdx65-smmu-500 + - qcom,sdx75-smmu-500 - qcom,sm6350-smmu-500 - qcom,sm6375-smmu-500 then: @@ -606,6 +607,39 @@ allOf: clock-names: false clocks: false + # Disallow clocks for all other platforms where specific compatible is used + # with different fallbacks and only one combination has no clocks + - if: + properties: + compatible: + items: + - enum: + - qcom,eliza-smmu-500 + - qcom,glymur-smmu-500 + - qcom,kaanapali-smmu-500 + - qcom,milos-smmu-500 + - qcom,qcs615-smmu-500 + - qcom,qcs8300-smmu-500 + - qcom,sa8775p-smmu-500 + - qcom,sm6115-smmu-500 + - qcom,sm6125-smmu-500 + - qcom,sm6350-smmu-500 + - qcom,sm6375-smmu-500 + - qcom,sm8150-smmu-500 + - qcom,sm8250-smmu-500 + - qcom,sm8350-smmu-500 + - qcom,sm8450-smmu-500 + - qcom,sm8550-smmu-500 + - qcom,sm8650-smmu-500 + - qcom,sm8750-smmu-500 + - qcom,x1e80100-smmu-500 + - const: qcom,smmu-500 + - const: arm,mmu-500 + then: + properties: + clock-names: false + clocks: false + - if: properties: compatible: