1 # SPDX-License-Identifier: GPL-2.0
4 $id: http://devicetree.org/schemas/display/allwinner,sun8i-a83t-dw-hdmi.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Allwinner A83t DWC HDMI TX Encoder Device Tree Bindings
10 The HDMI transmitter is a Synopsys DesignWare HDMI 1.4 TX controller
11 IP with Allwinner\'s own PHY IP. It supports audio and video outputs
14 These DT bindings follow the Synopsys DWC HDMI TX bindings defined
15 in Documentation/devicetree/bindings/display/bridge/dw_hdmi.txt with
16 the following device-specific properties.
19 - Chen-Yu Tsai <wens@csie.org>
20 - Maxime Ripard <mripard@kernel.org>
28 - const: allwinner,sun8i-a83t-dw-hdmi
29 - const: allwinner,sun50i-h6-dw-hdmi
33 - allwinner,sun8i-h3-dw-hdmi
34 - allwinner,sun8i-r40-dw-hdmi
35 - allwinner,sun50i-a64-dw-hdmi
36 - const: allwinner,sun8i-a83t-dw-hdmi
51 - description: Bus Clock
52 - description: Register Clock
53 - description: TMDS Clock
54 - description: HDMI CEC Clock
55 - description: HDCP Clock
56 - description: HDCP Bus Clock
73 - description: HDMI Controller Reset
74 - description: HDCP Reset
86 Phandle to the DWC HDMI PHY.
93 The VCC power supply of the controller
98 A ports node with endpoint definitions as defined in
99 Documentation/devicetree/bindings/media/video-interfaces.txt.
111 Input endpoints of the controller. Usually the associated
117 Output endpoints of the controller. Usually an HDMI
126 additionalProperties: false
146 - allwinner,sun50i-h6-dw-hdmi
163 additionalProperties: false
167 #include <dt-bindings/interrupt-controller/arm-gic.h>
170 * This comes from the clock/sun8i-a83t-ccu.h and
171 * reset/sun8i-a83t-ccu.h headers, but we can't include them since
172 * it would trigger a bunch of warnings for redefinitions of
173 * symbols with the other example.
175 #define CLK_BUS_HDMI 39
177 #define CLK_HDMI_SLOW 94
178 #define RST_BUS_HDMI1 26
181 compatible = "allwinner,sun8i-a83t-dw-hdmi";
182 reg = <0x01ee0000 0x10000>;
184 interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>;
185 clocks = <&ccu CLK_BUS_HDMI>, <&ccu CLK_HDMI_SLOW>,
187 clock-names = "iahb", "isfr", "tmds";
188 resets = <&ccu RST_BUS_HDMI1>;
189 reset-names = "ctrl";
192 pinctrl-names = "default";
193 pinctrl-0 = <&hdmi_pins>;
197 #address-cells = <1>;
204 remote-endpoint = <&tcon1_out_hdmi>;
214 /* Cleanup after ourselves */
220 #include <dt-bindings/interrupt-controller/arm-gic.h>
223 * This comes from the clock/sun50i-h6-ccu.h and
224 * reset/sun50i-h6-ccu.h headers, but we can't include them since
225 * it would trigger a bunch of warnings for redefinitions of
226 * symbols with the other example.
228 #define CLK_BUS_HDMI 126
229 #define CLK_BUS_HDCP 137
231 #define CLK_HDMI_SLOW 124
232 #define CLK_HDMI_CEC 125
234 #define RST_BUS_HDMI_SUB 57
235 #define RST_BUS_HDCP 62
238 compatible = "allwinner,sun50i-h6-dw-hdmi";
239 reg = <0x06000000 0x10000>;
241 interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
242 clocks = <&ccu CLK_BUS_HDMI>, <&ccu CLK_HDMI_SLOW>,
243 <&ccu CLK_HDMI>, <&ccu CLK_HDMI_CEC>,
244 <&ccu CLK_HDCP>, <&ccu CLK_BUS_HDCP>;
245 clock-names = "iahb", "isfr", "tmds", "cec", "hdcp",
247 resets = <&ccu RST_BUS_HDMI_SUB>, <&ccu RST_BUS_HDCP>;
248 reset-names = "ctrl", "hdcp";
251 pinctrl-names = "default";
252 pinctrl-0 = <&hdmi_pins>;
256 #address-cells = <1>;
263 remote-endpoint = <&tcon_top_hdmi_out_hdmi>;