[v2,1/6] dt-bindings: arm-smmu: Use qcom,smmu compatible for MMU500 adreno SMMUs

Message ID 20230217111613.306978-1-konrad.dybcio@linaro.org
State New
Headers
Series [v2,1/6] dt-bindings: arm-smmu: Use qcom,smmu compatible for MMU500 adreno SMMUs |

Commit Message

Konrad Dybcio Feb. 17, 2023, 11:16 a.m. UTC
  qcom,smmu-500 was introduced to prevent people from adding new
compatibles for what seems to roughly be the same hardware. Use it for
qcom,adreno-smmu-compatible targets as well.

Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
---
v1 -> v2:
- Add this patch, omitted previously (big oops)

 .../devicetree/bindings/iommu/arm,smmu.yaml        | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)
  

Comments

Rob Herring Feb. 26, 2023, 5:37 p.m. UTC | #1
On Fri, Feb 17, 2023 at 12:16:08PM +0100, Konrad Dybcio wrote:
> qcom,smmu-500 was introduced to prevent people from adding new
> compatibles for what seems to roughly be the same hardware. Use it for
> qcom,adreno-smmu-compatible targets as well.
> 
> Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
> ---
> v1 -> v2:
> - Add this patch, omitted previously (big oops)
> 
>  .../devicetree/bindings/iommu/arm,smmu.yaml        | 14 ++++++++++++--
>  1 file changed, 12 insertions(+), 2 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/iommu/arm,smmu.yaml b/Documentation/devicetree/bindings/iommu/arm,smmu.yaml
> index 807cb511fe18..4d7f61700cae 100644
> --- a/Documentation/devicetree/bindings/iommu/arm,smmu.yaml
> +++ b/Documentation/devicetree/bindings/iommu/arm,smmu.yaml
> @@ -75,9 +75,19 @@ properties:
>                - qcom,sm8350-smmu-500
>                - qcom,sm8450-smmu-500
>            - const: arm,mmu-500
> -
> -      - description: Qcom Adreno GPUs implementing "arm,smmu-500"
> +      - description: Qcom Adreno GPUs implementing "qcom,smmu-500" and "arm,smmu-500"
> +        items:
> +          - enum:
> +              - qcom,sc7280-smmu-500
> +              - qcom,sm8150-smmu-500
> +              - qcom,sm8250-smmu-500
> +          - const: qcom,adreno-smmu
> +          - const: qcom,smmu-500
> +          - const: arm,mmu-500

4 compatibles seems excessive. Is adding one that helpful? Is 
'arm,mmu-500' useful on its own?

> +      - description: Qcom Adreno GPUs implementing "arm,smmu-500" (legacy binding)

Perhaps fix the existing typo: arm,mmu-500

> +        deprecated: true
>          items:
> +          # Do not add additional SoC to this list. Instead use previous list.
>            - enum:
>                - qcom,sc7280-smmu-500
>                - qcom,sm8150-smmu-500
> -- 
> 2.39.1
>
  
Krzysztof Kozlowski Feb. 27, 2023, 8:13 a.m. UTC | #2
On 17/02/2023 12:16, Konrad Dybcio wrote:
> qcom,smmu-500 was introduced to prevent people from adding new
> compatibles for what seems to roughly be the same hardware. Use it for
> qcom,adreno-smmu-compatible targets as well.
> 
> Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
> ---
> v1 -> v2:
> - Add this patch, omitted previously (big oops)
> 

Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof
  
Konrad Dybcio Feb. 27, 2023, 8:43 a.m. UTC | #3
On 26.02.2023 18:37, Rob Herring wrote:
> On Fri, Feb 17, 2023 at 12:16:08PM +0100, Konrad Dybcio wrote:
>> qcom,smmu-500 was introduced to prevent people from adding new
>> compatibles for what seems to roughly be the same hardware. Use it for
>> qcom,adreno-smmu-compatible targets as well.
>>
>> Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
>> ---
>> v1 -> v2:
>> - Add this patch, omitted previously (big oops)
>>
>>  .../devicetree/bindings/iommu/arm,smmu.yaml        | 14 ++++++++++++--
>>  1 file changed, 12 insertions(+), 2 deletions(-)
>>
>> diff --git a/Documentation/devicetree/bindings/iommu/arm,smmu.yaml b/Documentation/devicetree/bindings/iommu/arm,smmu.yaml
>> index 807cb511fe18..4d7f61700cae 100644
>> --- a/Documentation/devicetree/bindings/iommu/arm,smmu.yaml
>> +++ b/Documentation/devicetree/bindings/iommu/arm,smmu.yaml
>> @@ -75,9 +75,19 @@ properties:
>>                - qcom,sm8350-smmu-500
>>                - qcom,sm8450-smmu-500
>>            - const: arm,mmu-500
>> -
>> -      - description: Qcom Adreno GPUs implementing "arm,smmu-500"
>> +      - description: Qcom Adreno GPUs implementing "qcom,smmu-500" and "arm,smmu-500"
>> +        items:
>> +          - enum:
>> +              - qcom,sc7280-smmu-500
>> +              - qcom,sm8150-smmu-500
>> +              - qcom,sm8250-smmu-500
>> +          - const: qcom,adreno-smmu
>> +          - const: qcom,smmu-500
>> +          - const: arm,mmu-500
> 
> 4 compatibles seems excessive. Is adding one that helpful? Is 
> 'arm,mmu-500' useful on its own?
Yes.

per-soc compatible is there for per-soc quirks should there be any
qcom,adreno-smmu enabled per-process pagetables
qcom,smmu-500 matches the qcom smmu implementation
arm,mmu-500 matches the smmu driver as a whole

> 
>> +      - description: Qcom Adreno GPUs implementing "arm,smmu-500" (legacy binding)
> 
> Perhaps fix the existing typo: arm,mmu-500
Ack

Konrad
> 
>> +        deprecated: true
>>          items:
>> +          # Do not add additional SoC to this list. Instead use previous list.
>>            - enum:
>>                - qcom,sc7280-smmu-500
>>                - qcom,sm8150-smmu-500
>> -- 
>> 2.39.1
>>
  

Patch

diff --git a/Documentation/devicetree/bindings/iommu/arm,smmu.yaml b/Documentation/devicetree/bindings/iommu/arm,smmu.yaml
index 807cb511fe18..4d7f61700cae 100644
--- a/Documentation/devicetree/bindings/iommu/arm,smmu.yaml
+++ b/Documentation/devicetree/bindings/iommu/arm,smmu.yaml
@@ -75,9 +75,19 @@  properties:
               - qcom,sm8350-smmu-500
               - qcom,sm8450-smmu-500
           - const: arm,mmu-500
-
-      - description: Qcom Adreno GPUs implementing "arm,smmu-500"
+      - description: Qcom Adreno GPUs implementing "qcom,smmu-500" and "arm,smmu-500"
+        items:
+          - enum:
+              - qcom,sc7280-smmu-500
+              - qcom,sm8150-smmu-500
+              - qcom,sm8250-smmu-500
+          - const: qcom,adreno-smmu
+          - const: qcom,smmu-500
+          - const: arm,mmu-500
+      - description: Qcom Adreno GPUs implementing "arm,smmu-500" (legacy binding)
+        deprecated: true
         items:
+          # Do not add additional SoC to this list. Instead use previous list.
           - enum:
               - qcom,sc7280-smmu-500
               - qcom,sm8150-smmu-500