diff mbox series

[02/11] dt-bindings: display: meson-vpu: Add compatible for S4 display controller

Message ID 20250110-drm-s4-v1-2-cbc2d5edaae8@amlogic.com (mailing list archive)
State New
Headers show
Series Subject: [PATCH 00/11] Add DRM support for Amlogic S4 | expand

Commit Message

Ao Xu via B4 Relay Jan. 10, 2025, 5:39 a.m. UTC
From: Ao Xu <ao.xu@amlogic.com>

Add devicetree document for S4 VPU

Signed-off-by: Ao Xu <ao.xu@amlogic.com>
---
 .../bindings/display/amlogic,meson-vpu.yaml        | 48 ++++++++++++++++++++--
 1 file changed, 44 insertions(+), 4 deletions(-)

Comments

Krzysztof Kozlowski Jan. 10, 2025, 2:07 p.m. UTC | #1
On 10/01/2025 06:39, Ao Xu via B4 Relay wrote:
> From: Ao Xu <ao.xu@amlogic.com>
> 
> Add devicetree document for S4 VPU
> 
> Signed-off-by: Ao Xu <ao.xu@amlogic.com>
> ---
>  .../bindings/display/amlogic,meson-vpu.yaml        | 48 ++++++++++++++++++++--
>  1 file changed, 44 insertions(+), 4 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/display/amlogic,meson-vpu.yaml b/Documentation/devicetree/bindings/display/amlogic,meson-vpu.yaml
> index cb0a90f0232190031430c08f936b8f0d3b217601..3d7eceb3724e81d9c911039507df072d332a028f 100644
> --- a/Documentation/devicetree/bindings/display/amlogic,meson-vpu.yaml
> +++ b/Documentation/devicetree/bindings/display/amlogic,meson-vpu.yaml
> @@ -66,14 +66,13 @@ properties:
>            - const: amlogic,meson-gx-vpu
>        - enum:
>            - amlogic,meson-g12a-vpu # G12A (S905X2, S905Y2, S905D2)
> +          - amlogic,meson-s4-vpu # S4 (S905Y4)
>  
>    reg:
> -    maxItems: 2
> +    minItems: 2

Missing maxItems

>  
>    reg-names:
> -    items:
> -      - const: vpu
> -      - const: hhi
> +    minItems: 2

Just grow the list here with minItems

>  
>    interrupts:
>      maxItems: 1
> @@ -117,6 +116,47 @@ required:
>    - "#size-cells"
>    - amlogic,canvas
>  
> +allOf:
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            const: amlogic,meson-s4-vpu
> +    then:
> +      properties:
> +        reg:
> +          items:
> +            - description: vcbus registers
> +            - description: hhi registers
> +            - description: clkctrl registers
> +            - description: power control registers
> +            - description: sysctrl registers
> +        reg-names:
> +          items:
> +            - const: vpu
> +            - const: hhi
> +            - const: clkctrl
> +            - const: pwctrl
> +            - const: sysctrl

and here min/maxItems

> +        clocks:
> +          items:
> +            - description: vpu clock
> +            - description: vapb clock
> +        clock-names:
> +          items:
> +            - const: vpu
> +            - const: vapb

All properties must be defined in top-level. Just disallow it :false for
other variants.

> +    else:
> +      properties:
> +        reg:
> +          items:
> +            - description: vcbus registers
> +            - description: hhi registers
> +        reg-names:
> +          items:
> +            - const: vpu
> +            - const: hhi

maxItems: 2


Look how other bindings are doing it for lists with common parts.

Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/display/amlogic,meson-vpu.yaml b/Documentation/devicetree/bindings/display/amlogic,meson-vpu.yaml
index cb0a90f0232190031430c08f936b8f0d3b217601..3d7eceb3724e81d9c911039507df072d332a028f 100644
--- a/Documentation/devicetree/bindings/display/amlogic,meson-vpu.yaml
+++ b/Documentation/devicetree/bindings/display/amlogic,meson-vpu.yaml
@@ -66,14 +66,13 @@  properties:
           - const: amlogic,meson-gx-vpu
       - enum:
           - amlogic,meson-g12a-vpu # G12A (S905X2, S905Y2, S905D2)
+          - amlogic,meson-s4-vpu # S4 (S905Y4)
 
   reg:
-    maxItems: 2
+    minItems: 2
 
   reg-names:
-    items:
-      - const: vpu
-      - const: hhi
+    minItems: 2
 
   interrupts:
     maxItems: 1
@@ -117,6 +116,47 @@  required:
   - "#size-cells"
   - amlogic,canvas
 
+allOf:
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: amlogic,meson-s4-vpu
+    then:
+      properties:
+        reg:
+          items:
+            - description: vcbus registers
+            - description: hhi registers
+            - description: clkctrl registers
+            - description: power control registers
+            - description: sysctrl registers
+        reg-names:
+          items:
+            - const: vpu
+            - const: hhi
+            - const: clkctrl
+            - const: pwctrl
+            - const: sysctrl
+        clocks:
+          items:
+            - description: vpu clock
+            - description: vapb clock
+        clock-names:
+          items:
+            - const: vpu
+            - const: vapb
+    else:
+      properties:
+        reg:
+          items:
+            - description: vcbus registers
+            - description: hhi registers
+        reg-names:
+          items:
+            - const: vpu
+            - const: hhi
+
 additionalProperties: false
 
 examples: