xref: /freebsd/sys/contrib/device-tree/Bindings/display/renesas,du.yaml (revision fac71e4e09885bb2afa3d984a0c239a52e1a7418)
12eb4d8dcSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
22eb4d8dcSEmmanuel Vadot%YAML 1.2
32eb4d8dcSEmmanuel Vadot---
42eb4d8dcSEmmanuel Vadot$id: http://devicetree.org/schemas/display/renesas,du.yaml#
52eb4d8dcSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
62eb4d8dcSEmmanuel Vadot
72eb4d8dcSEmmanuel Vadottitle: Renesas R-Car Display Unit (DU)
82eb4d8dcSEmmanuel Vadot
92eb4d8dcSEmmanuel Vadotmaintainers:
102eb4d8dcSEmmanuel Vadot  - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
112eb4d8dcSEmmanuel Vadot
122eb4d8dcSEmmanuel Vadotdescription: |
132eb4d8dcSEmmanuel Vadot  These DT bindings describe the Display Unit embedded in the Renesas R-Car
142eb4d8dcSEmmanuel Vadot  Gen1, R-Car Gen2, R-Car Gen3, RZ/G1 and RZ/G2 SoCs.
152eb4d8dcSEmmanuel Vadot
162eb4d8dcSEmmanuel Vadotproperties:
172eb4d8dcSEmmanuel Vadot  compatible:
182eb4d8dcSEmmanuel Vadot    enum:
192eb4d8dcSEmmanuel Vadot      - renesas,du-r8a7742 # for RZ/G1H compatible DU
202eb4d8dcSEmmanuel Vadot      - renesas,du-r8a7743 # for RZ/G1M compatible DU
212eb4d8dcSEmmanuel Vadot      - renesas,du-r8a7744 # for RZ/G1N compatible DU
222eb4d8dcSEmmanuel Vadot      - renesas,du-r8a7745 # for RZ/G1E compatible DU
232eb4d8dcSEmmanuel Vadot      - renesas,du-r8a77470 # for RZ/G1C compatible DU
242eb4d8dcSEmmanuel Vadot      - renesas,du-r8a774a1 # for RZ/G2M compatible DU
252eb4d8dcSEmmanuel Vadot      - renesas,du-r8a774b1 # for RZ/G2N compatible DU
262eb4d8dcSEmmanuel Vadot      - renesas,du-r8a774c0 # for RZ/G2E compatible DU
272eb4d8dcSEmmanuel Vadot      - renesas,du-r8a774e1 # for RZ/G2H compatible DU
282eb4d8dcSEmmanuel Vadot      - renesas,du-r8a7779 # for R-Car H1 compatible DU
292eb4d8dcSEmmanuel Vadot      - renesas,du-r8a7790 # for R-Car H2 compatible DU
302eb4d8dcSEmmanuel Vadot      - renesas,du-r8a7791 # for R-Car M2-W compatible DU
312eb4d8dcSEmmanuel Vadot      - renesas,du-r8a7792 # for R-Car V2H compatible DU
322eb4d8dcSEmmanuel Vadot      - renesas,du-r8a7793 # for R-Car M2-N compatible DU
332eb4d8dcSEmmanuel Vadot      - renesas,du-r8a7794 # for R-Car E2 compatible DU
342eb4d8dcSEmmanuel Vadot      - renesas,du-r8a7795 # for R-Car H3 compatible DU
352eb4d8dcSEmmanuel Vadot      - renesas,du-r8a7796 # for R-Car M3-W compatible DU
362eb4d8dcSEmmanuel Vadot      - renesas,du-r8a77961 # for R-Car M3-W+ compatible DU
372eb4d8dcSEmmanuel Vadot      - renesas,du-r8a77965 # for R-Car M3-N compatible DU
382eb4d8dcSEmmanuel Vadot      - renesas,du-r8a77970 # for R-Car V3M compatible DU
392eb4d8dcSEmmanuel Vadot      - renesas,du-r8a77980 # for R-Car V3H compatible DU
402eb4d8dcSEmmanuel Vadot      - renesas,du-r8a77990 # for R-Car E3 compatible DU
412eb4d8dcSEmmanuel Vadot      - renesas,du-r8a77995 # for R-Car D3 compatible DU
428cc087a1SEmmanuel Vadot      - renesas,du-r8a779a0 # for R-Car V3U compatible DU
43cb7aa33aSEmmanuel Vadot      - renesas,du-r8a779g0 # for R-Car V4H compatible DU
442eb4d8dcSEmmanuel Vadot
452eb4d8dcSEmmanuel Vadot  reg:
462eb4d8dcSEmmanuel Vadot    maxItems: 1
472eb4d8dcSEmmanuel Vadot
482eb4d8dcSEmmanuel Vadot  # See compatible-specific constraints below.
492eb4d8dcSEmmanuel Vadot  clocks: true
502eb4d8dcSEmmanuel Vadot  clock-names: true
512eb4d8dcSEmmanuel Vadot  interrupts:
522eb4d8dcSEmmanuel Vadot    description: Interrupt specifiers, one per DU channel
532eb4d8dcSEmmanuel Vadot  resets: true
542eb4d8dcSEmmanuel Vadot  reset-names: true
552eb4d8dcSEmmanuel Vadot
562eb4d8dcSEmmanuel Vadot  power-domains:
572eb4d8dcSEmmanuel Vadot    maxItems: 1
582eb4d8dcSEmmanuel Vadot
592eb4d8dcSEmmanuel Vadot  ports:
605956d97fSEmmanuel Vadot    $ref: /schemas/graph.yaml#/properties/ports
612eb4d8dcSEmmanuel Vadot    description: |
622eb4d8dcSEmmanuel Vadot      The connections to the DU output video ports are modeled using the OF
632eb4d8dcSEmmanuel Vadot      graph bindings specified in Documentation/devicetree/bindings/graph.txt.
642eb4d8dcSEmmanuel Vadot      The number of ports and their assignment are model-dependent. Each port
652eb4d8dcSEmmanuel Vadot      shall have a single endpoint.
662eb4d8dcSEmmanuel Vadot
672eb4d8dcSEmmanuel Vadot    patternProperties:
682eb4d8dcSEmmanuel Vadot      "^port@[0-3]$":
692eb4d8dcSEmmanuel Vadot        $ref: /schemas/graph.yaml#/properties/port
702eb4d8dcSEmmanuel Vadot        unevaluatedProperties: false
712eb4d8dcSEmmanuel Vadot
722eb4d8dcSEmmanuel Vadot    required:
732eb4d8dcSEmmanuel Vadot      - port@0
742eb4d8dcSEmmanuel Vadot      - port@1
752eb4d8dcSEmmanuel Vadot
762eb4d8dcSEmmanuel Vadot    unevaluatedProperties: false
772eb4d8dcSEmmanuel Vadot
782eb4d8dcSEmmanuel Vadot  renesas,cmms:
79*fac71e4eSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/phandle-array
80c9ccf3a3SEmmanuel Vadot    items:
81c9ccf3a3SEmmanuel Vadot      maxItems: 1
822eb4d8dcSEmmanuel Vadot    description:
832eb4d8dcSEmmanuel Vadot      A list of phandles to the CMM instances present in the SoC, one for each
842eb4d8dcSEmmanuel Vadot      available DU channel.
852eb4d8dcSEmmanuel Vadot
862eb4d8dcSEmmanuel Vadot  renesas,vsps:
87*fac71e4eSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/phandle-array
88c9ccf3a3SEmmanuel Vadot    items:
89c9ccf3a3SEmmanuel Vadot      items:
90c9ccf3a3SEmmanuel Vadot        - description: phandle to VSP instance that serves the DU channel
91c9ccf3a3SEmmanuel Vadot        - description: Channel index identifying the LIF instance in that VSP
922eb4d8dcSEmmanuel Vadot    description:
932eb4d8dcSEmmanuel Vadot      A list of phandle and channel index tuples to the VSPs that handle the
94c9ccf3a3SEmmanuel Vadot      memory interfaces for the DU channels.
952eb4d8dcSEmmanuel Vadot
962eb4d8dcSEmmanuel Vadotrequired:
972eb4d8dcSEmmanuel Vadot  - compatible
982eb4d8dcSEmmanuel Vadot  - reg
992eb4d8dcSEmmanuel Vadot  - clocks
1002eb4d8dcSEmmanuel Vadot  - interrupts
1012eb4d8dcSEmmanuel Vadot  - ports
1022eb4d8dcSEmmanuel Vadot
1032eb4d8dcSEmmanuel VadotallOf:
1042eb4d8dcSEmmanuel Vadot  - if:
1052eb4d8dcSEmmanuel Vadot      properties:
1062eb4d8dcSEmmanuel Vadot        compatible:
1072eb4d8dcSEmmanuel Vadot          contains:
1082eb4d8dcSEmmanuel Vadot            const: renesas,du-r8a7779
1092eb4d8dcSEmmanuel Vadot    then:
1102eb4d8dcSEmmanuel Vadot      properties:
1112eb4d8dcSEmmanuel Vadot        clocks:
1122eb4d8dcSEmmanuel Vadot          minItems: 1
1132eb4d8dcSEmmanuel Vadot          items:
1142eb4d8dcSEmmanuel Vadot            - description: Functional clock
1152eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN0 input clock
1162eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN1 input clock
1172eb4d8dcSEmmanuel Vadot
1182eb4d8dcSEmmanuel Vadot        clock-names:
1192eb4d8dcSEmmanuel Vadot          minItems: 1
1202eb4d8dcSEmmanuel Vadot          items:
1212eb4d8dcSEmmanuel Vadot            - const: du.0
1222eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[01]$'
1232eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[01]$'
1242eb4d8dcSEmmanuel Vadot
1252eb4d8dcSEmmanuel Vadot        interrupts:
1262eb4d8dcSEmmanuel Vadot          maxItems: 1
1272eb4d8dcSEmmanuel Vadot
1282eb4d8dcSEmmanuel Vadot        resets:
1292eb4d8dcSEmmanuel Vadot          maxItems: 1
1302eb4d8dcSEmmanuel Vadot
1312eb4d8dcSEmmanuel Vadot        ports:
1322eb4d8dcSEmmanuel Vadot          properties:
1332eb4d8dcSEmmanuel Vadot            port@0:
1342eb4d8dcSEmmanuel Vadot              description: DPAD 0
1352eb4d8dcSEmmanuel Vadot            port@1:
1362eb4d8dcSEmmanuel Vadot              description: DPAD 1
1372eb4d8dcSEmmanuel Vadot            # port@2 is TCON, not supported yet
1382eb4d8dcSEmmanuel Vadot            port@2: false
1392eb4d8dcSEmmanuel Vadot            port@3: false
1402eb4d8dcSEmmanuel Vadot
1412eb4d8dcSEmmanuel Vadot          required:
1422eb4d8dcSEmmanuel Vadot            - port@0
1432eb4d8dcSEmmanuel Vadot            - port@1
1442eb4d8dcSEmmanuel Vadot
1452eb4d8dcSEmmanuel Vadot      required:
1462eb4d8dcSEmmanuel Vadot        - interrupts
1472eb4d8dcSEmmanuel Vadot
1482eb4d8dcSEmmanuel Vadot  - if:
1492eb4d8dcSEmmanuel Vadot      properties:
1502eb4d8dcSEmmanuel Vadot        compatible:
1512eb4d8dcSEmmanuel Vadot          contains:
1522eb4d8dcSEmmanuel Vadot            enum:
1532eb4d8dcSEmmanuel Vadot              - renesas,du-r8a7743
1542eb4d8dcSEmmanuel Vadot              - renesas,du-r8a7744
1552eb4d8dcSEmmanuel Vadot              - renesas,du-r8a7791
1562eb4d8dcSEmmanuel Vadot              - renesas,du-r8a7793
1572eb4d8dcSEmmanuel Vadot    then:
1582eb4d8dcSEmmanuel Vadot      properties:
1592eb4d8dcSEmmanuel Vadot        clocks:
1602eb4d8dcSEmmanuel Vadot          minItems: 2
1612eb4d8dcSEmmanuel Vadot          items:
1622eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU0
1632eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU1
1642eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN0 input clock
1652eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN1 input clock
1662eb4d8dcSEmmanuel Vadot
1672eb4d8dcSEmmanuel Vadot        clock-names:
1682eb4d8dcSEmmanuel Vadot          minItems: 2
1692eb4d8dcSEmmanuel Vadot          items:
1702eb4d8dcSEmmanuel Vadot            - const: du.0
1712eb4d8dcSEmmanuel Vadot            - const: du.1
1722eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[01]$'
1732eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[01]$'
1742eb4d8dcSEmmanuel Vadot
1752eb4d8dcSEmmanuel Vadot        interrupts:
1762eb4d8dcSEmmanuel Vadot          maxItems: 2
1772eb4d8dcSEmmanuel Vadot
1782eb4d8dcSEmmanuel Vadot        resets:
1792eb4d8dcSEmmanuel Vadot          maxItems: 1
1802eb4d8dcSEmmanuel Vadot
1812eb4d8dcSEmmanuel Vadot        reset-names:
1822eb4d8dcSEmmanuel Vadot          items:
1832eb4d8dcSEmmanuel Vadot            - const: du.0
1842eb4d8dcSEmmanuel Vadot
1852eb4d8dcSEmmanuel Vadot        ports:
1862eb4d8dcSEmmanuel Vadot          properties:
1872eb4d8dcSEmmanuel Vadot            port@0:
1882eb4d8dcSEmmanuel Vadot              description: DPAD 0
1892eb4d8dcSEmmanuel Vadot            port@1:
1902eb4d8dcSEmmanuel Vadot              description: LVDS 0
1912eb4d8dcSEmmanuel Vadot            # port@2 is TCON, not supported yet
1922eb4d8dcSEmmanuel Vadot            port@2: false
1932eb4d8dcSEmmanuel Vadot            port@3: false
1942eb4d8dcSEmmanuel Vadot
1952eb4d8dcSEmmanuel Vadot          required:
1962eb4d8dcSEmmanuel Vadot            - port@0
1972eb4d8dcSEmmanuel Vadot            - port@1
1982eb4d8dcSEmmanuel Vadot
1992eb4d8dcSEmmanuel Vadot      required:
2002eb4d8dcSEmmanuel Vadot        - clock-names
2012eb4d8dcSEmmanuel Vadot        - interrupts
2022eb4d8dcSEmmanuel Vadot        - resets
2032eb4d8dcSEmmanuel Vadot        - reset-names
2042eb4d8dcSEmmanuel Vadot
2052eb4d8dcSEmmanuel Vadot  - if:
2062eb4d8dcSEmmanuel Vadot      properties:
2072eb4d8dcSEmmanuel Vadot        compatible:
2082eb4d8dcSEmmanuel Vadot          contains:
2092eb4d8dcSEmmanuel Vadot            enum:
2102eb4d8dcSEmmanuel Vadot              - renesas,du-r8a7745
2112eb4d8dcSEmmanuel Vadot              - renesas,du-r8a7792
2122eb4d8dcSEmmanuel Vadot    then:
2132eb4d8dcSEmmanuel Vadot      properties:
2142eb4d8dcSEmmanuel Vadot        clocks:
2152eb4d8dcSEmmanuel Vadot          minItems: 2
2162eb4d8dcSEmmanuel Vadot          items:
2172eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU0
2182eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU1
2192eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN0 input clock
2202eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN1 input clock
2212eb4d8dcSEmmanuel Vadot
2222eb4d8dcSEmmanuel Vadot        clock-names:
2232eb4d8dcSEmmanuel Vadot          minItems: 2
2242eb4d8dcSEmmanuel Vadot          items:
2252eb4d8dcSEmmanuel Vadot            - const: du.0
2262eb4d8dcSEmmanuel Vadot            - const: du.1
2272eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[01]$'
2282eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[01]$'
2292eb4d8dcSEmmanuel Vadot
2302eb4d8dcSEmmanuel Vadot        interrupts:
2312eb4d8dcSEmmanuel Vadot          maxItems: 2
2322eb4d8dcSEmmanuel Vadot
2332eb4d8dcSEmmanuel Vadot        resets:
2342eb4d8dcSEmmanuel Vadot          maxItems: 1
2352eb4d8dcSEmmanuel Vadot
2362eb4d8dcSEmmanuel Vadot        reset-names:
2372eb4d8dcSEmmanuel Vadot          items:
2382eb4d8dcSEmmanuel Vadot            - const: du.0
2392eb4d8dcSEmmanuel Vadot
2402eb4d8dcSEmmanuel Vadot        ports:
2412eb4d8dcSEmmanuel Vadot          properties:
2422eb4d8dcSEmmanuel Vadot            port@0:
2432eb4d8dcSEmmanuel Vadot              description: DPAD 0
2442eb4d8dcSEmmanuel Vadot            port@1:
2452eb4d8dcSEmmanuel Vadot              description: DPAD 1
2462eb4d8dcSEmmanuel Vadot            port@2: false
2472eb4d8dcSEmmanuel Vadot            port@3: false
2482eb4d8dcSEmmanuel Vadot
2492eb4d8dcSEmmanuel Vadot          required:
2502eb4d8dcSEmmanuel Vadot            - port@0
2512eb4d8dcSEmmanuel Vadot            - port@1
2522eb4d8dcSEmmanuel Vadot
2532eb4d8dcSEmmanuel Vadot      required:
2542eb4d8dcSEmmanuel Vadot        - clock-names
2552eb4d8dcSEmmanuel Vadot        - interrupts
2562eb4d8dcSEmmanuel Vadot        - resets
2572eb4d8dcSEmmanuel Vadot        - reset-names
2582eb4d8dcSEmmanuel Vadot
2592eb4d8dcSEmmanuel Vadot  - if:
2602eb4d8dcSEmmanuel Vadot      properties:
2612eb4d8dcSEmmanuel Vadot        compatible:
2622eb4d8dcSEmmanuel Vadot          contains:
2632eb4d8dcSEmmanuel Vadot            enum:
2642eb4d8dcSEmmanuel Vadot              - renesas,du-r8a7794
2652eb4d8dcSEmmanuel Vadot    then:
2662eb4d8dcSEmmanuel Vadot      properties:
2672eb4d8dcSEmmanuel Vadot        clocks:
2682eb4d8dcSEmmanuel Vadot          minItems: 2
2692eb4d8dcSEmmanuel Vadot          items:
2702eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU0
2712eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU1
2722eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN0 input clock
2732eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN1 input clock
2742eb4d8dcSEmmanuel Vadot
2752eb4d8dcSEmmanuel Vadot        clock-names:
2762eb4d8dcSEmmanuel Vadot          minItems: 2
2772eb4d8dcSEmmanuel Vadot          items:
2782eb4d8dcSEmmanuel Vadot            - const: du.0
2792eb4d8dcSEmmanuel Vadot            - const: du.1
2802eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[01]$'
2812eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[01]$'
2822eb4d8dcSEmmanuel Vadot
2832eb4d8dcSEmmanuel Vadot        interrupts:
2842eb4d8dcSEmmanuel Vadot          maxItems: 2
2852eb4d8dcSEmmanuel Vadot
2862eb4d8dcSEmmanuel Vadot        resets:
2872eb4d8dcSEmmanuel Vadot          maxItems: 1
2882eb4d8dcSEmmanuel Vadot
2892eb4d8dcSEmmanuel Vadot        reset-names:
2902eb4d8dcSEmmanuel Vadot          items:
2912eb4d8dcSEmmanuel Vadot            - const: du.0
2922eb4d8dcSEmmanuel Vadot
2932eb4d8dcSEmmanuel Vadot        ports:
2942eb4d8dcSEmmanuel Vadot          properties:
2952eb4d8dcSEmmanuel Vadot            port@0:
2962eb4d8dcSEmmanuel Vadot              description: DPAD 0
2972eb4d8dcSEmmanuel Vadot            port@1:
2982eb4d8dcSEmmanuel Vadot              description: DPAD 1
2992eb4d8dcSEmmanuel Vadot            # port@2 is TCON, not supported yet
3002eb4d8dcSEmmanuel Vadot            port@2: false
3012eb4d8dcSEmmanuel Vadot            port@3: false
3022eb4d8dcSEmmanuel Vadot
3032eb4d8dcSEmmanuel Vadot          required:
3042eb4d8dcSEmmanuel Vadot            - port@0
3052eb4d8dcSEmmanuel Vadot            - port@1
3062eb4d8dcSEmmanuel Vadot
3072eb4d8dcSEmmanuel Vadot      required:
3082eb4d8dcSEmmanuel Vadot        - clock-names
3092eb4d8dcSEmmanuel Vadot        - interrupts
3102eb4d8dcSEmmanuel Vadot        - resets
3112eb4d8dcSEmmanuel Vadot        - reset-names
3122eb4d8dcSEmmanuel Vadot
3132eb4d8dcSEmmanuel Vadot  - if:
3142eb4d8dcSEmmanuel Vadot      properties:
3152eb4d8dcSEmmanuel Vadot        compatible:
3162eb4d8dcSEmmanuel Vadot          contains:
3172eb4d8dcSEmmanuel Vadot            enum:
3182eb4d8dcSEmmanuel Vadot              - renesas,du-r8a77470
3192eb4d8dcSEmmanuel Vadot    then:
3202eb4d8dcSEmmanuel Vadot      properties:
3212eb4d8dcSEmmanuel Vadot        clocks:
3222eb4d8dcSEmmanuel Vadot          minItems: 2
3232eb4d8dcSEmmanuel Vadot          items:
3242eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU0
3252eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU1
3262eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN0 input clock
3272eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN1 input clock
3282eb4d8dcSEmmanuel Vadot
3292eb4d8dcSEmmanuel Vadot        clock-names:
3302eb4d8dcSEmmanuel Vadot          minItems: 2
3312eb4d8dcSEmmanuel Vadot          items:
3322eb4d8dcSEmmanuel Vadot            - const: du.0
3332eb4d8dcSEmmanuel Vadot            - const: du.1
3342eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[01]$'
3352eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[01]$'
3362eb4d8dcSEmmanuel Vadot
3372eb4d8dcSEmmanuel Vadot        interrupts:
3382eb4d8dcSEmmanuel Vadot          maxItems: 2
3392eb4d8dcSEmmanuel Vadot
3402eb4d8dcSEmmanuel Vadot        resets:
3412eb4d8dcSEmmanuel Vadot          maxItems: 1
3422eb4d8dcSEmmanuel Vadot
3432eb4d8dcSEmmanuel Vadot        reset-names:
3442eb4d8dcSEmmanuel Vadot          items:
3452eb4d8dcSEmmanuel Vadot            - const: du.0
3462eb4d8dcSEmmanuel Vadot
3472eb4d8dcSEmmanuel Vadot        ports:
3482eb4d8dcSEmmanuel Vadot          properties:
3492eb4d8dcSEmmanuel Vadot            port@0:
3502eb4d8dcSEmmanuel Vadot              description: DPAD 0
3512eb4d8dcSEmmanuel Vadot            port@1:
3522eb4d8dcSEmmanuel Vadot              description: DPAD 1
3532eb4d8dcSEmmanuel Vadot            port@2:
3542eb4d8dcSEmmanuel Vadot              description: LVDS 0
3552eb4d8dcSEmmanuel Vadot            # port@3 is DVENC, not supported yet
3562eb4d8dcSEmmanuel Vadot            port@3: false
3572eb4d8dcSEmmanuel Vadot
3582eb4d8dcSEmmanuel Vadot          required:
3592eb4d8dcSEmmanuel Vadot            - port@0
3602eb4d8dcSEmmanuel Vadot            - port@1
3612eb4d8dcSEmmanuel Vadot            - port@2
3622eb4d8dcSEmmanuel Vadot
3632eb4d8dcSEmmanuel Vadot      required:
3642eb4d8dcSEmmanuel Vadot        - clock-names
3652eb4d8dcSEmmanuel Vadot        - interrupts
3662eb4d8dcSEmmanuel Vadot        - resets
3672eb4d8dcSEmmanuel Vadot        - reset-names
3682eb4d8dcSEmmanuel Vadot
3692eb4d8dcSEmmanuel Vadot  - if:
3702eb4d8dcSEmmanuel Vadot      properties:
3712eb4d8dcSEmmanuel Vadot        compatible:
3722eb4d8dcSEmmanuel Vadot          contains:
3732eb4d8dcSEmmanuel Vadot            enum:
3742eb4d8dcSEmmanuel Vadot              - renesas,du-r8a7742
3752eb4d8dcSEmmanuel Vadot              - renesas,du-r8a7790
3762eb4d8dcSEmmanuel Vadot    then:
3772eb4d8dcSEmmanuel Vadot      properties:
3782eb4d8dcSEmmanuel Vadot        clocks:
3792eb4d8dcSEmmanuel Vadot          minItems: 3
3802eb4d8dcSEmmanuel Vadot          items:
3812eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU0
3822eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU1
3832eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU2
3842eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN0 input clock
3852eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN1 input clock
3862eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN2 input clock
3872eb4d8dcSEmmanuel Vadot
3882eb4d8dcSEmmanuel Vadot        clock-names:
3892eb4d8dcSEmmanuel Vadot          minItems: 3
3902eb4d8dcSEmmanuel Vadot          items:
3912eb4d8dcSEmmanuel Vadot            - const: du.0
3922eb4d8dcSEmmanuel Vadot            - const: du.1
3932eb4d8dcSEmmanuel Vadot            - const: du.2
3942eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[012]$'
3952eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[012]$'
3962eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[012]$'
3972eb4d8dcSEmmanuel Vadot
3982eb4d8dcSEmmanuel Vadot        interrupts:
3992eb4d8dcSEmmanuel Vadot          maxItems: 3
4002eb4d8dcSEmmanuel Vadot
4012eb4d8dcSEmmanuel Vadot        resets:
4022eb4d8dcSEmmanuel Vadot          maxItems: 1
4032eb4d8dcSEmmanuel Vadot
4042eb4d8dcSEmmanuel Vadot        reset-names:
4052eb4d8dcSEmmanuel Vadot          items:
4062eb4d8dcSEmmanuel Vadot            - const: du.0
4072eb4d8dcSEmmanuel Vadot
4082eb4d8dcSEmmanuel Vadot        ports:
4092eb4d8dcSEmmanuel Vadot          properties:
4102eb4d8dcSEmmanuel Vadot            port@0:
4112eb4d8dcSEmmanuel Vadot              description: DPAD 0
4122eb4d8dcSEmmanuel Vadot            port@1:
4132eb4d8dcSEmmanuel Vadot              description: LVDS 0
4142eb4d8dcSEmmanuel Vadot            port@2:
4152eb4d8dcSEmmanuel Vadot              description: LVDS 1
4162eb4d8dcSEmmanuel Vadot            # port@3 is TCON, not supported yet
4172eb4d8dcSEmmanuel Vadot            port@3: false
4182eb4d8dcSEmmanuel Vadot
4192eb4d8dcSEmmanuel Vadot          required:
4202eb4d8dcSEmmanuel Vadot            - port@0
4212eb4d8dcSEmmanuel Vadot            - port@1
4222eb4d8dcSEmmanuel Vadot            - port@2
4232eb4d8dcSEmmanuel Vadot
4242eb4d8dcSEmmanuel Vadot      required:
4252eb4d8dcSEmmanuel Vadot        - clock-names
4262eb4d8dcSEmmanuel Vadot        - interrupts
4272eb4d8dcSEmmanuel Vadot        - resets
4282eb4d8dcSEmmanuel Vadot        - reset-names
4292eb4d8dcSEmmanuel Vadot
4302eb4d8dcSEmmanuel Vadot  - if:
4312eb4d8dcSEmmanuel Vadot      properties:
4322eb4d8dcSEmmanuel Vadot        compatible:
4332eb4d8dcSEmmanuel Vadot          contains:
4342eb4d8dcSEmmanuel Vadot            enum:
4352eb4d8dcSEmmanuel Vadot              - renesas,du-r8a7795
4362eb4d8dcSEmmanuel Vadot    then:
4372eb4d8dcSEmmanuel Vadot      properties:
4382eb4d8dcSEmmanuel Vadot        clocks:
4392eb4d8dcSEmmanuel Vadot          minItems: 4
4402eb4d8dcSEmmanuel Vadot          items:
4412eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU0
4422eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU1
4432eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU2
4442eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU4
4452eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN0 input clock
4462eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN1 input clock
4472eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN2 input clock
4482eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN3 input clock
4492eb4d8dcSEmmanuel Vadot
4502eb4d8dcSEmmanuel Vadot        clock-names:
4512eb4d8dcSEmmanuel Vadot          minItems: 4
4522eb4d8dcSEmmanuel Vadot          items:
4532eb4d8dcSEmmanuel Vadot            - const: du.0
4542eb4d8dcSEmmanuel Vadot            - const: du.1
4552eb4d8dcSEmmanuel Vadot            - const: du.2
4562eb4d8dcSEmmanuel Vadot            - const: du.3
4572eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[0123]$'
4582eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[0123]$'
4592eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[0123]$'
4602eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[0123]$'
4612eb4d8dcSEmmanuel Vadot
4622eb4d8dcSEmmanuel Vadot        interrupts:
4632eb4d8dcSEmmanuel Vadot          maxItems: 4
4642eb4d8dcSEmmanuel Vadot
4652eb4d8dcSEmmanuel Vadot        resets:
4662eb4d8dcSEmmanuel Vadot          maxItems: 2
4672eb4d8dcSEmmanuel Vadot
4682eb4d8dcSEmmanuel Vadot        reset-names:
4692eb4d8dcSEmmanuel Vadot          items:
4702eb4d8dcSEmmanuel Vadot            - const: du.0
4712eb4d8dcSEmmanuel Vadot            - const: du.2
4722eb4d8dcSEmmanuel Vadot
4732eb4d8dcSEmmanuel Vadot        ports:
4742eb4d8dcSEmmanuel Vadot          properties:
4752eb4d8dcSEmmanuel Vadot            port@0:
4762eb4d8dcSEmmanuel Vadot              description: DPAD 0
4772eb4d8dcSEmmanuel Vadot            port@1:
4782eb4d8dcSEmmanuel Vadot              description: HDMI 0
4792eb4d8dcSEmmanuel Vadot            port@2:
4802eb4d8dcSEmmanuel Vadot              description: HDMI 1
4812eb4d8dcSEmmanuel Vadot            port@3:
4822eb4d8dcSEmmanuel Vadot              description: LVDS 0
4832eb4d8dcSEmmanuel Vadot
4842eb4d8dcSEmmanuel Vadot          required:
4852eb4d8dcSEmmanuel Vadot            - port@0
4862eb4d8dcSEmmanuel Vadot            - port@1
4872eb4d8dcSEmmanuel Vadot            - port@2
4882eb4d8dcSEmmanuel Vadot            - port@3
4892eb4d8dcSEmmanuel Vadot
4902eb4d8dcSEmmanuel Vadot        renesas,cmms:
4912eb4d8dcSEmmanuel Vadot          minItems: 4
4922eb4d8dcSEmmanuel Vadot
4932eb4d8dcSEmmanuel Vadot        renesas,vsps:
4942eb4d8dcSEmmanuel Vadot          minItems: 4
4952eb4d8dcSEmmanuel Vadot
4962eb4d8dcSEmmanuel Vadot      required:
4972eb4d8dcSEmmanuel Vadot        - clock-names
4982eb4d8dcSEmmanuel Vadot        - interrupts
4992eb4d8dcSEmmanuel Vadot        - resets
5002eb4d8dcSEmmanuel Vadot        - reset-names
5012eb4d8dcSEmmanuel Vadot        - renesas,vsps
5022eb4d8dcSEmmanuel Vadot
5032eb4d8dcSEmmanuel Vadot  - if:
5042eb4d8dcSEmmanuel Vadot      properties:
5052eb4d8dcSEmmanuel Vadot        compatible:
5062eb4d8dcSEmmanuel Vadot          contains:
5072eb4d8dcSEmmanuel Vadot            enum:
5082eb4d8dcSEmmanuel Vadot              - renesas,du-r8a774a1
5092eb4d8dcSEmmanuel Vadot              - renesas,du-r8a7796
5102eb4d8dcSEmmanuel Vadot              - renesas,du-r8a77961
5112eb4d8dcSEmmanuel Vadot    then:
5122eb4d8dcSEmmanuel Vadot      properties:
5132eb4d8dcSEmmanuel Vadot        clocks:
5142eb4d8dcSEmmanuel Vadot          minItems: 3
5152eb4d8dcSEmmanuel Vadot          items:
5162eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU0
5172eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU1
5182eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU2
5192eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN0 input clock
5202eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN1 input clock
5212eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN2 input clock
5222eb4d8dcSEmmanuel Vadot
5232eb4d8dcSEmmanuel Vadot        clock-names:
5242eb4d8dcSEmmanuel Vadot          minItems: 3
5252eb4d8dcSEmmanuel Vadot          items:
5262eb4d8dcSEmmanuel Vadot            - const: du.0
5272eb4d8dcSEmmanuel Vadot            - const: du.1
5282eb4d8dcSEmmanuel Vadot            - const: du.2
5292eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[012]$'
5302eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[012]$'
5312eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[012]$'
5322eb4d8dcSEmmanuel Vadot
5332eb4d8dcSEmmanuel Vadot        interrupts:
5342eb4d8dcSEmmanuel Vadot          maxItems: 3
5352eb4d8dcSEmmanuel Vadot
5362eb4d8dcSEmmanuel Vadot        resets:
5372eb4d8dcSEmmanuel Vadot          maxItems: 2
5382eb4d8dcSEmmanuel Vadot
5392eb4d8dcSEmmanuel Vadot        reset-names:
5402eb4d8dcSEmmanuel Vadot          items:
5412eb4d8dcSEmmanuel Vadot            - const: du.0
5422eb4d8dcSEmmanuel Vadot            - const: du.2
5432eb4d8dcSEmmanuel Vadot
5442eb4d8dcSEmmanuel Vadot        ports:
5452eb4d8dcSEmmanuel Vadot          properties:
5462eb4d8dcSEmmanuel Vadot            port@0:
5472eb4d8dcSEmmanuel Vadot              description: DPAD 0
5482eb4d8dcSEmmanuel Vadot            port@1:
5492eb4d8dcSEmmanuel Vadot              description: HDMI 0
5502eb4d8dcSEmmanuel Vadot            port@2:
5512eb4d8dcSEmmanuel Vadot              description: LVDS 0
5522eb4d8dcSEmmanuel Vadot            port@3: false
5532eb4d8dcSEmmanuel Vadot
5542eb4d8dcSEmmanuel Vadot          required:
5552eb4d8dcSEmmanuel Vadot            - port@0
5562eb4d8dcSEmmanuel Vadot            - port@1
5572eb4d8dcSEmmanuel Vadot            - port@2
5582eb4d8dcSEmmanuel Vadot
5592eb4d8dcSEmmanuel Vadot        renesas,cmms:
5602eb4d8dcSEmmanuel Vadot          minItems: 3
5612eb4d8dcSEmmanuel Vadot
5622eb4d8dcSEmmanuel Vadot        renesas,vsps:
5632eb4d8dcSEmmanuel Vadot          minItems: 3
5642eb4d8dcSEmmanuel Vadot
5652eb4d8dcSEmmanuel Vadot      required:
5662eb4d8dcSEmmanuel Vadot        - clock-names
5672eb4d8dcSEmmanuel Vadot        - interrupts
5682eb4d8dcSEmmanuel Vadot        - resets
5692eb4d8dcSEmmanuel Vadot        - reset-names
5702eb4d8dcSEmmanuel Vadot        - renesas,vsps
5712eb4d8dcSEmmanuel Vadot
5722eb4d8dcSEmmanuel Vadot  - if:
5732eb4d8dcSEmmanuel Vadot      properties:
5742eb4d8dcSEmmanuel Vadot        compatible:
5752eb4d8dcSEmmanuel Vadot          contains:
5762eb4d8dcSEmmanuel Vadot            enum:
5772eb4d8dcSEmmanuel Vadot              - renesas,du-r8a774b1
5782eb4d8dcSEmmanuel Vadot              - renesas,du-r8a774e1
5792eb4d8dcSEmmanuel Vadot              - renesas,du-r8a77965
5802eb4d8dcSEmmanuel Vadot    then:
5812eb4d8dcSEmmanuel Vadot      properties:
5822eb4d8dcSEmmanuel Vadot        clocks:
5832eb4d8dcSEmmanuel Vadot          minItems: 3
5842eb4d8dcSEmmanuel Vadot          items:
5852eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU0
5862eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU1
5872eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU3
5882eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN0 input clock
5892eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN1 input clock
5902eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN3 input clock
5912eb4d8dcSEmmanuel Vadot
5922eb4d8dcSEmmanuel Vadot        clock-names:
5932eb4d8dcSEmmanuel Vadot          minItems: 3
5942eb4d8dcSEmmanuel Vadot          items:
5952eb4d8dcSEmmanuel Vadot            - const: du.0
5962eb4d8dcSEmmanuel Vadot            - const: du.1
5972eb4d8dcSEmmanuel Vadot            - const: du.3
5982eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[013]$'
5992eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[013]$'
6002eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[013]$'
6012eb4d8dcSEmmanuel Vadot
6022eb4d8dcSEmmanuel Vadot        interrupts:
6032eb4d8dcSEmmanuel Vadot          maxItems: 3
6042eb4d8dcSEmmanuel Vadot
6052eb4d8dcSEmmanuel Vadot        resets:
6062eb4d8dcSEmmanuel Vadot          maxItems: 2
6072eb4d8dcSEmmanuel Vadot
6082eb4d8dcSEmmanuel Vadot        reset-names:
6092eb4d8dcSEmmanuel Vadot          items:
6102eb4d8dcSEmmanuel Vadot            - const: du.0
6112eb4d8dcSEmmanuel Vadot            - const: du.3
6122eb4d8dcSEmmanuel Vadot
6132eb4d8dcSEmmanuel Vadot        ports:
6142eb4d8dcSEmmanuel Vadot          properties:
6152eb4d8dcSEmmanuel Vadot            port@0:
6162eb4d8dcSEmmanuel Vadot              description: DPAD 0
6172eb4d8dcSEmmanuel Vadot            port@1:
6182eb4d8dcSEmmanuel Vadot              description: HDMI 0
6192eb4d8dcSEmmanuel Vadot            port@2:
6202eb4d8dcSEmmanuel Vadot              description: LVDS 0
6212eb4d8dcSEmmanuel Vadot            port@3: false
6222eb4d8dcSEmmanuel Vadot
6232eb4d8dcSEmmanuel Vadot          required:
6242eb4d8dcSEmmanuel Vadot            - port@0
6252eb4d8dcSEmmanuel Vadot            - port@1
6262eb4d8dcSEmmanuel Vadot            - port@2
6272eb4d8dcSEmmanuel Vadot
6282eb4d8dcSEmmanuel Vadot        renesas,cmms:
6292eb4d8dcSEmmanuel Vadot          minItems: 3
6302eb4d8dcSEmmanuel Vadot
6312eb4d8dcSEmmanuel Vadot        renesas,vsps:
6322eb4d8dcSEmmanuel Vadot          minItems: 3
6332eb4d8dcSEmmanuel Vadot
6342eb4d8dcSEmmanuel Vadot      required:
6352eb4d8dcSEmmanuel Vadot        - clock-names
6362eb4d8dcSEmmanuel Vadot        - interrupts
6372eb4d8dcSEmmanuel Vadot        - resets
6382eb4d8dcSEmmanuel Vadot        - reset-names
6392eb4d8dcSEmmanuel Vadot        - renesas,vsps
6402eb4d8dcSEmmanuel Vadot
6412eb4d8dcSEmmanuel Vadot  - if:
6422eb4d8dcSEmmanuel Vadot      properties:
6432eb4d8dcSEmmanuel Vadot        compatible:
6442eb4d8dcSEmmanuel Vadot          contains:
6452eb4d8dcSEmmanuel Vadot            enum:
6462eb4d8dcSEmmanuel Vadot              - renesas,du-r8a77970
6472eb4d8dcSEmmanuel Vadot              - renesas,du-r8a77980
6482eb4d8dcSEmmanuel Vadot    then:
6492eb4d8dcSEmmanuel Vadot      properties:
6502eb4d8dcSEmmanuel Vadot        clocks:
6512eb4d8dcSEmmanuel Vadot          minItems: 1
6522eb4d8dcSEmmanuel Vadot          items:
6532eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU0
6542eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN0 input clock
6552eb4d8dcSEmmanuel Vadot
6562eb4d8dcSEmmanuel Vadot        clock-names:
6572eb4d8dcSEmmanuel Vadot          minItems: 1
6582eb4d8dcSEmmanuel Vadot          items:
6592eb4d8dcSEmmanuel Vadot            - const: du.0
6602eb4d8dcSEmmanuel Vadot            - const: dclkin.0
6612eb4d8dcSEmmanuel Vadot
6622eb4d8dcSEmmanuel Vadot        interrupts:
6632eb4d8dcSEmmanuel Vadot          maxItems: 1
6642eb4d8dcSEmmanuel Vadot
6652eb4d8dcSEmmanuel Vadot        resets:
6662eb4d8dcSEmmanuel Vadot          maxItems: 1
6672eb4d8dcSEmmanuel Vadot
6682eb4d8dcSEmmanuel Vadot        reset-names:
6692eb4d8dcSEmmanuel Vadot          items:
6702eb4d8dcSEmmanuel Vadot            - const: du.0
6712eb4d8dcSEmmanuel Vadot
6722eb4d8dcSEmmanuel Vadot        ports:
6732eb4d8dcSEmmanuel Vadot          properties:
6742eb4d8dcSEmmanuel Vadot            port@0:
6752eb4d8dcSEmmanuel Vadot              description: DPAD 0
6762eb4d8dcSEmmanuel Vadot            port@1:
6772eb4d8dcSEmmanuel Vadot              description: LVDS 0
6782eb4d8dcSEmmanuel Vadot            port@2: false
6792eb4d8dcSEmmanuel Vadot            port@3: false
6802eb4d8dcSEmmanuel Vadot
6812eb4d8dcSEmmanuel Vadot          required:
6822eb4d8dcSEmmanuel Vadot            - port@0
6832eb4d8dcSEmmanuel Vadot            - port@1
6842eb4d8dcSEmmanuel Vadot
6852eb4d8dcSEmmanuel Vadot        renesas,vsps:
6862eb4d8dcSEmmanuel Vadot          minItems: 1
6872eb4d8dcSEmmanuel Vadot
6882eb4d8dcSEmmanuel Vadot      required:
6892eb4d8dcSEmmanuel Vadot        - clock-names
6902eb4d8dcSEmmanuel Vadot        - interrupts
6912eb4d8dcSEmmanuel Vadot        - resets
6922eb4d8dcSEmmanuel Vadot        - reset-names
6932eb4d8dcSEmmanuel Vadot        - renesas,vsps
6942eb4d8dcSEmmanuel Vadot
6952eb4d8dcSEmmanuel Vadot  - if:
6962eb4d8dcSEmmanuel Vadot      properties:
6972eb4d8dcSEmmanuel Vadot        compatible:
6982eb4d8dcSEmmanuel Vadot          contains:
6992eb4d8dcSEmmanuel Vadot            enum:
7002eb4d8dcSEmmanuel Vadot              - renesas,du-r8a774c0
7012eb4d8dcSEmmanuel Vadot              - renesas,du-r8a77990
7022eb4d8dcSEmmanuel Vadot              - renesas,du-r8a77995
7032eb4d8dcSEmmanuel Vadot    then:
7042eb4d8dcSEmmanuel Vadot      properties:
7052eb4d8dcSEmmanuel Vadot        clocks:
7062eb4d8dcSEmmanuel Vadot          minItems: 2
7072eb4d8dcSEmmanuel Vadot          items:
7082eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU0
7092eb4d8dcSEmmanuel Vadot            - description: Functional clock for DU1
7102eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN0 input clock
7112eb4d8dcSEmmanuel Vadot            - description: DU_DOTCLKIN1 input clock
7122eb4d8dcSEmmanuel Vadot
7132eb4d8dcSEmmanuel Vadot        clock-names:
7142eb4d8dcSEmmanuel Vadot          minItems: 2
7152eb4d8dcSEmmanuel Vadot          items:
7162eb4d8dcSEmmanuel Vadot            - const: du.0
7172eb4d8dcSEmmanuel Vadot            - const: du.1
7182eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[01]$'
7192eb4d8dcSEmmanuel Vadot            - pattern: '^dclkin\.[01]$'
7202eb4d8dcSEmmanuel Vadot
7212eb4d8dcSEmmanuel Vadot        interrupts:
7222eb4d8dcSEmmanuel Vadot          maxItems: 2
7232eb4d8dcSEmmanuel Vadot
7242eb4d8dcSEmmanuel Vadot        resets:
7252eb4d8dcSEmmanuel Vadot          maxItems: 1
7262eb4d8dcSEmmanuel Vadot
7272eb4d8dcSEmmanuel Vadot        reset-names:
7282eb4d8dcSEmmanuel Vadot          items:
7292eb4d8dcSEmmanuel Vadot            - const: du.0
7302eb4d8dcSEmmanuel Vadot
7312eb4d8dcSEmmanuel Vadot        ports:
7322eb4d8dcSEmmanuel Vadot          properties:
7332eb4d8dcSEmmanuel Vadot            port@0:
7342eb4d8dcSEmmanuel Vadot              description: DPAD 0
7352eb4d8dcSEmmanuel Vadot            port@1:
7362eb4d8dcSEmmanuel Vadot              description: LVDS 0
7372eb4d8dcSEmmanuel Vadot            port@2:
7382eb4d8dcSEmmanuel Vadot              description: LVDS 1
7392eb4d8dcSEmmanuel Vadot            # port@3 is TCON, not supported yet
7402eb4d8dcSEmmanuel Vadot            port@3: false
7412eb4d8dcSEmmanuel Vadot
7422eb4d8dcSEmmanuel Vadot          required:
7432eb4d8dcSEmmanuel Vadot            - port@0
7442eb4d8dcSEmmanuel Vadot            - port@1
7452eb4d8dcSEmmanuel Vadot            - port@2
7462eb4d8dcSEmmanuel Vadot
7472eb4d8dcSEmmanuel Vadot        renesas,cmms:
7482eb4d8dcSEmmanuel Vadot          minItems: 2
7492eb4d8dcSEmmanuel Vadot
7502eb4d8dcSEmmanuel Vadot        renesas,vsps:
7512eb4d8dcSEmmanuel Vadot          minItems: 2
7522eb4d8dcSEmmanuel Vadot
7532eb4d8dcSEmmanuel Vadot      required:
7542eb4d8dcSEmmanuel Vadot        - clock-names
7552eb4d8dcSEmmanuel Vadot        - interrupts
7562eb4d8dcSEmmanuel Vadot        - resets
7572eb4d8dcSEmmanuel Vadot        - reset-names
7582eb4d8dcSEmmanuel Vadot        - renesas,vsps
7592eb4d8dcSEmmanuel Vadot
7608cc087a1SEmmanuel Vadot  - if:
7618cc087a1SEmmanuel Vadot      properties:
7628cc087a1SEmmanuel Vadot        compatible:
7638cc087a1SEmmanuel Vadot          contains:
7648cc087a1SEmmanuel Vadot            enum:
7658cc087a1SEmmanuel Vadot              - renesas,du-r8a779a0
766cb7aa33aSEmmanuel Vadot              - renesas,du-r8a779g0
7678cc087a1SEmmanuel Vadot    then:
7688cc087a1SEmmanuel Vadot      properties:
7698cc087a1SEmmanuel Vadot        clocks:
7708cc087a1SEmmanuel Vadot          items:
7718cc087a1SEmmanuel Vadot            - description: Functional clock
7728cc087a1SEmmanuel Vadot
7738cc087a1SEmmanuel Vadot        clock-names:
7748cc087a1SEmmanuel Vadot          items:
7758cc087a1SEmmanuel Vadot            - const: du.0
7768cc087a1SEmmanuel Vadot
7778cc087a1SEmmanuel Vadot        interrupts:
7788cc087a1SEmmanuel Vadot          maxItems: 2
7798cc087a1SEmmanuel Vadot
7808cc087a1SEmmanuel Vadot        resets:
7818cc087a1SEmmanuel Vadot          maxItems: 1
7828cc087a1SEmmanuel Vadot
7838cc087a1SEmmanuel Vadot        reset-names:
7848cc087a1SEmmanuel Vadot          items:
7858cc087a1SEmmanuel Vadot            - const: du.0
7868cc087a1SEmmanuel Vadot
7878cc087a1SEmmanuel Vadot        ports:
7888cc087a1SEmmanuel Vadot          properties:
7898cc087a1SEmmanuel Vadot            port@0:
7908cc087a1SEmmanuel Vadot              description: DSI 0
7918cc087a1SEmmanuel Vadot            port@1:
7928cc087a1SEmmanuel Vadot              description: DSI 1
7938cc087a1SEmmanuel Vadot            port@2: false
7948cc087a1SEmmanuel Vadot            port@3: false
7958cc087a1SEmmanuel Vadot
7968cc087a1SEmmanuel Vadot          required:
7978cc087a1SEmmanuel Vadot            - port@0
7988cc087a1SEmmanuel Vadot            - port@1
7998cc087a1SEmmanuel Vadot
8008cc087a1SEmmanuel Vadot        renesas,vsps:
8018cc087a1SEmmanuel Vadot          minItems: 2
8028cc087a1SEmmanuel Vadot
8038cc087a1SEmmanuel Vadot      required:
8048cc087a1SEmmanuel Vadot        - clock-names
8058cc087a1SEmmanuel Vadot        - interrupts
8068cc087a1SEmmanuel Vadot        - resets
8078cc087a1SEmmanuel Vadot        - reset-names
8088cc087a1SEmmanuel Vadot        - renesas,vsps
8098cc087a1SEmmanuel Vadot
8102eb4d8dcSEmmanuel VadotadditionalProperties: false
8112eb4d8dcSEmmanuel Vadot
8122eb4d8dcSEmmanuel Vadotexamples:
8132eb4d8dcSEmmanuel Vadot  # R-Car H3 ES2.0 DU
8142eb4d8dcSEmmanuel Vadot  - |
8152eb4d8dcSEmmanuel Vadot    #include <dt-bindings/clock/renesas-cpg-mssr.h>
8162eb4d8dcSEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
8172eb4d8dcSEmmanuel Vadot
8182eb4d8dcSEmmanuel Vadot    display@feb00000 {
8192eb4d8dcSEmmanuel Vadot        compatible = "renesas,du-r8a7795";
8202eb4d8dcSEmmanuel Vadot        reg = <0xfeb00000 0x80000>;
8212eb4d8dcSEmmanuel Vadot        interrupts = <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>,
8222eb4d8dcSEmmanuel Vadot                     <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>,
8232eb4d8dcSEmmanuel Vadot                     <GIC_SPI 269 IRQ_TYPE_LEVEL_HIGH>,
8242eb4d8dcSEmmanuel Vadot                     <GIC_SPI 270 IRQ_TYPE_LEVEL_HIGH>;
8252eb4d8dcSEmmanuel Vadot        clocks = <&cpg CPG_MOD 724>,
8262eb4d8dcSEmmanuel Vadot                 <&cpg CPG_MOD 723>,
8272eb4d8dcSEmmanuel Vadot                 <&cpg CPG_MOD 722>,
8282eb4d8dcSEmmanuel Vadot                 <&cpg CPG_MOD 721>;
8292eb4d8dcSEmmanuel Vadot        clock-names = "du.0", "du.1", "du.2", "du.3";
8302eb4d8dcSEmmanuel Vadot        resets = <&cpg 724>, <&cpg 722>;
8312eb4d8dcSEmmanuel Vadot        reset-names = "du.0", "du.2";
8322eb4d8dcSEmmanuel Vadot
8332eb4d8dcSEmmanuel Vadot        renesas,cmms = <&cmm0>, <&cmm1>, <&cmm2>, <&cmm3>;
8342eb4d8dcSEmmanuel Vadot        renesas,vsps = <&vspd0 0>, <&vspd1 0>, <&vspd2 0>, <&vspd0 1>;
8352eb4d8dcSEmmanuel Vadot
8362eb4d8dcSEmmanuel Vadot        ports {
8372eb4d8dcSEmmanuel Vadot            #address-cells = <1>;
8382eb4d8dcSEmmanuel Vadot            #size-cells = <0>;
8392eb4d8dcSEmmanuel Vadot
8402eb4d8dcSEmmanuel Vadot            port@0 {
8412eb4d8dcSEmmanuel Vadot                reg = <0>;
8422eb4d8dcSEmmanuel Vadot                endpoint {
8432eb4d8dcSEmmanuel Vadot                    remote-endpoint = <&adv7123_in>;
8442eb4d8dcSEmmanuel Vadot                };
8452eb4d8dcSEmmanuel Vadot            };
8462eb4d8dcSEmmanuel Vadot            port@1 {
8472eb4d8dcSEmmanuel Vadot                reg = <1>;
8482eb4d8dcSEmmanuel Vadot                endpoint {
8492eb4d8dcSEmmanuel Vadot                    remote-endpoint = <&dw_hdmi0_in>;
8502eb4d8dcSEmmanuel Vadot                };
8512eb4d8dcSEmmanuel Vadot            };
8522eb4d8dcSEmmanuel Vadot            port@2 {
8532eb4d8dcSEmmanuel Vadot                reg = <2>;
8542eb4d8dcSEmmanuel Vadot                endpoint {
8552eb4d8dcSEmmanuel Vadot                    remote-endpoint = <&dw_hdmi1_in>;
8562eb4d8dcSEmmanuel Vadot                };
8572eb4d8dcSEmmanuel Vadot            };
8582eb4d8dcSEmmanuel Vadot            port@3 {
8592eb4d8dcSEmmanuel Vadot                reg = <3>;
8602eb4d8dcSEmmanuel Vadot                endpoint {
8612eb4d8dcSEmmanuel Vadot                    remote-endpoint = <&lvds0_in>;
8622eb4d8dcSEmmanuel Vadot                };
8632eb4d8dcSEmmanuel Vadot            };
8642eb4d8dcSEmmanuel Vadot        };
8652eb4d8dcSEmmanuel Vadot    };
8662eb4d8dcSEmmanuel Vadot
8672eb4d8dcSEmmanuel Vadot...
868