1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/display/bridge/ite,it66121.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: ITE it66121 HDMI bridge Device Tree Bindings
8
9maintainers:
10  - Phong LE <ple@baylibre.com>
11  - Neil Armstrong <neil.armstrong@linaro.org>
12
13description: |
14  The IT66121 is a high-performance and low-power single channel HDMI
15  transmitter, fully compliant with HDMI 1.3a, HDCP 1.2 and backward compatible
16  to DVI 1.0 specifications.
17
18properties:
19  compatible:
20    const: ite,it66121
21
22  reg:
23    maxItems: 1
24
25  reset-gpios:
26    maxItems: 1
27    description: GPIO connected to active low reset
28
29  vrf12-supply:
30    description: Regulator for 1.2V analog core power.
31
32  vcn33-supply:
33    description: Regulator for 3.3V digital core power.
34
35  vcn18-supply:
36    description: Regulator for 1.8V IO core power.
37
38  interrupts:
39    maxItems: 1
40
41  "#sound-dai-cells":
42    const: 0
43
44  ports:
45    $ref: /schemas/graph.yaml#/properties/ports
46
47    properties:
48      port@0:
49        $ref: /schemas/graph.yaml#/$defs/port-base
50        unevaluatedProperties: false
51        description: DPI input port.
52
53        properties:
54          endpoint:
55            $ref: /schemas/graph.yaml#/$defs/endpoint-base
56            unevaluatedProperties: false
57
58            properties:
59              bus-width:
60                description:
61                  Endpoint bus width.
62                enum:
63                  - 12  # 12 data lines connected and dual-edge mode
64                  - 24  # 24 data lines connected and single-edge mode
65                default: 24
66
67      port@1:
68        $ref: /schemas/graph.yaml#/properties/port
69        description: HDMI Connector port.
70
71    required:
72      - port@0
73      - port@1
74
75required:
76  - compatible
77  - reg
78  - reset-gpios
79  - vrf12-supply
80  - vcn33-supply
81  - vcn18-supply
82  - interrupts
83  - ports
84
85additionalProperties: false
86
87examples:
88  - |
89    #include <dt-bindings/interrupt-controller/irq.h>
90    #include <dt-bindings/gpio/gpio.h>
91    i2c {
92        #address-cells = <1>;
93        #size-cells = <0>;
94
95        it66121hdmitx: hdmitx@4c {
96            compatible = "ite,it66121";
97            pinctrl-names = "default";
98            pinctrl-0 = <&ite_pins_default>;
99            vcn33-supply = <&mt6358_vcn33_wifi_reg>;
100            vcn18-supply = <&mt6358_vcn18_reg>;
101            vrf12-supply = <&mt6358_vrf12_reg>;
102            reset-gpios = <&pio 160 GPIO_ACTIVE_LOW>;
103            interrupt-parent = <&pio>;
104            interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
105            reg = <0x4c>;
106
107            ports {
108                #address-cells = <1>;
109                #size-cells = <0>;
110
111                port@0 {
112                    reg = <0>;
113                    it66121_in: endpoint {
114                        bus-width = <12>;
115                        remote-endpoint = <&display_out>;
116                    };
117                };
118
119                port@1 {
120                    reg = <1>;
121                    hdmi_conn_out: endpoint {
122                        remote-endpoint = <&hdmi_conn_in>;
123                    };
124                };
125            };
126        };
127    };
128