1# SPDX-License-Identifier: GPL-2.0
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/display/allwinner,sun8i-a83t-de2-mixer.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Allwinner Display Engine 2.0 Mixer Device Tree Bindings
8
9maintainers:
10  - Chen-Yu Tsai <wens@csie.org>
11  - Maxime Ripard <mripard@kernel.org>
12
13properties:
14  compatible:
15    enum:
16      - allwinner,sun8i-a83t-de2-mixer-0
17      - allwinner,sun8i-a83t-de2-mixer-1
18      - allwinner,sun8i-h3-de2-mixer-0
19      - allwinner,sun8i-r40-de2-mixer-0
20      - allwinner,sun8i-r40-de2-mixer-1
21      - allwinner,sun8i-v3s-de2-mixer
22      - allwinner,sun50i-a64-de2-mixer-0
23      - allwinner,sun50i-a64-de2-mixer-1
24      - allwinner,sun50i-h6-de3-mixer-0
25
26  reg:
27    maxItems: 1
28
29  clocks:
30    items:
31      - description: The mixer interface clock
32      - description: The mixer module clock
33
34  clock-names:
35    items:
36      - const: bus
37      - const: mod
38
39  iommus:
40    maxItems: 1
41
42  resets:
43    maxItems: 1
44
45  ports:
46    $ref: /schemas/graph.yaml#/properties/ports
47
48    properties:
49      port@0:
50        $ref: /schemas/graph.yaml#/properties/port
51        description: |
52          Input endpoints of the controller.
53
54      port@1:
55        $ref: /schemas/graph.yaml#/properties/port
56        description: |
57          Output endpoints of the controller.
58
59    required:
60      - port@1
61
62required:
63  - compatible
64  - reg
65  - clocks
66  - clock-names
67  - resets
68  - ports
69
70additionalProperties: false
71
72examples:
73  - |
74    #include <dt-bindings/clock/sun8i-de2.h>
75    #include <dt-bindings/reset/sun8i-de2.h>
76
77    mixer0: mixer@1100000 {
78        compatible = "allwinner,sun8i-a83t-de2-mixer-0";
79        reg = <0x01100000 0x100000>;
80        clocks = <&display_clocks CLK_BUS_MIXER0>,
81                 <&display_clocks CLK_MIXER0>;
82        clock-names = "bus",
83                      "mod";
84        resets = <&display_clocks RST_MIXER0>;
85
86        ports {
87            #address-cells = <1>;
88            #size-cells = <0>;
89
90            mixer0_out: port@1 {
91                #address-cells = <1>;
92                #size-cells = <0>;
93                reg = <1>;
94
95                mixer0_out_tcon0: endpoint@0 {
96                    reg = <0>;
97                    remote-endpoint = <&tcon0_in_mixer0>;
98                };
99
100                mixer0_out_tcon1: endpoint@1 {
101                    reg = <1>;
102                    remote-endpoint = <&tcon1_in_mixer0>;
103                };
104            };
105        };
106    };
107
108...
109