[PATCH] dt-bindings: arm-smmu: disallow clocks when not used

Krzysztof Kozlowski krzysztof.kozlowski at linaro.org
Thu Dec 22 02:36:16 PST 2022


On 22/12/2022 11:16, Marijn Suijten wrote:
> Is this missing a cc to linux-arm-msm?

No, it is not (or maybe but then fix MAINTAINERS). The policy is to use
get_maintainers.pl to CC people.

> 
> On 2022-12-22 10:23:55, Krzysztof Kozlowski wrote:
>> Disallow clocks for variants other than:
>> 1. SMMUs with platform-specific compatibles which list explicit clocks
>>    and clock-names,
>> 2. SMMUs using only generic compatibles, e.g. arm,mmu-500, which have a
>>    variable clocks on different implementations.
>>
>> This requires such variants with platform-specific compatible, to
>> explicitly list the clocks or omit them, making the binding more
>> constraint.
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski at linaro.org>
> 
> Reviewed-by: Marijn Suijten <marijn.suijten at somainline.org>
> 
> But...
> 
>> ---
>>
>> Cc: Marijn Suijten <marijn.suijten at somainline.org>
>> Cc: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
>> Cc: Konrad Dybcio <konrad.dybcio at linaro.org>
>> ---
>>  .../devicetree/bindings/iommu/arm,smmu.yaml   | 28 +++++++++++++++++++
>>  1 file changed, 28 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/iommu/arm,smmu.yaml b/Documentation/devicetree/bindings/iommu/arm,smmu.yaml
>> index 895ec8418465..0d88395e43ad 100644
>> --- a/Documentation/devicetree/bindings/iommu/arm,smmu.yaml
>> +++ b/Documentation/devicetree/bindings/iommu/arm,smmu.yaml
>> @@ -367,6 +367,34 @@ allOf:
>>              - description: interface clock required to access smmu's registers
>>                  through the TCU's programming interface.
>>  
>> +  # Disallow clocks for all other platforms with specific compatibles
>> +  - if:
>> +      properties:
>> +        compatible:
>> +          contains:
>> +            enum:
>> +              - cavium,smmu-v2
>> +              - marvell,ap806-smmu-500
>> +              - nvidia,smmu-500
>> +              - qcom,qcm2290-smmu-500
>> +              - qcom,qdu1000-smmu-500
>> +              - qcom,sc7180-smmu-500
> 
> Hmm, sc7280 has two SMMUs.  The one for Adreno has clocks and a PD, the

sc7280 is not here, so what is the mistake you see?

> one for APPS has neither.  Same story on sm8[12]50.  Aren't those going
> to trip up the other `if` that requires clocks in both scenarios?

They are not here either, so what is the error?

> 
> Note that the Adreno SMMUs have (or will get when we/Konrad submit
> support for it) the "qcom,adreno-smmu" compatible to distinguish them.
> 
> - Marijn
> 


Best regards,
Krzysztof




More information about the linux-arm-kernel mailing list