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/rockchip/rockchip,dw-hdmi.yaml# 52eb4d8dcSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 62eb4d8dcSEmmanuel Vadot 72eb4d8dcSEmmanuel Vadottitle: Rockchip DWC HDMI TX Encoder 82eb4d8dcSEmmanuel Vadot 92eb4d8dcSEmmanuel Vadotmaintainers: 102eb4d8dcSEmmanuel Vadot - Mark Yao <markyao0591@gmail.com> 112eb4d8dcSEmmanuel Vadot 122eb4d8dcSEmmanuel Vadotdescription: | 132eb4d8dcSEmmanuel Vadot The HDMI transmitter is a Synopsys DesignWare HDMI 1.4 TX controller IP 142eb4d8dcSEmmanuel Vadot with a companion PHY IP. 152eb4d8dcSEmmanuel Vadot 162eb4d8dcSEmmanuel VadotallOf: 172eb4d8dcSEmmanuel Vadot - $ref: ../bridge/synopsys,dw-hdmi.yaml# 182eb4d8dcSEmmanuel Vadot 192eb4d8dcSEmmanuel Vadotproperties: 202eb4d8dcSEmmanuel Vadot compatible: 212eb4d8dcSEmmanuel Vadot enum: 222eb4d8dcSEmmanuel Vadot - rockchip,rk3228-dw-hdmi 232eb4d8dcSEmmanuel Vadot - rockchip,rk3288-dw-hdmi 242eb4d8dcSEmmanuel Vadot - rockchip,rk3328-dw-hdmi 252eb4d8dcSEmmanuel Vadot - rockchip,rk3399-dw-hdmi 26*d5b0e70fSEmmanuel Vadot - rockchip,rk3568-dw-hdmi 272eb4d8dcSEmmanuel Vadot 282eb4d8dcSEmmanuel Vadot reg-io-width: 292eb4d8dcSEmmanuel Vadot const: 4 302eb4d8dcSEmmanuel Vadot 31*d5b0e70fSEmmanuel Vadot avdd-0v9-supply: 32*d5b0e70fSEmmanuel Vadot description: 33*d5b0e70fSEmmanuel Vadot A 0.9V supply that powers up the SoC internal circuitry. The actual pin name 34*d5b0e70fSEmmanuel Vadot varies between the different SoCs and is usually HDMI_TX_AVDD_0V9 or sometimes 35*d5b0e70fSEmmanuel Vadot HDMI_AVDD_1V0. 36*d5b0e70fSEmmanuel Vadot 37*d5b0e70fSEmmanuel Vadot avdd-1v8-supply: 38*d5b0e70fSEmmanuel Vadot description: 39*d5b0e70fSEmmanuel Vadot A 1.8V supply that powers up the SoC internal circuitry. The pin name on the 40*d5b0e70fSEmmanuel Vadot SoC usually is HDMI_TX_AVDD_1V8. 41*d5b0e70fSEmmanuel Vadot 422eb4d8dcSEmmanuel Vadot clocks: 432eb4d8dcSEmmanuel Vadot minItems: 2 442eb4d8dcSEmmanuel Vadot items: 452eb4d8dcSEmmanuel Vadot - {} 462eb4d8dcSEmmanuel Vadot - {} 472eb4d8dcSEmmanuel Vadot # The next three clocks are all optional, but shall be specified in this 482eb4d8dcSEmmanuel Vadot # order when present. 492eb4d8dcSEmmanuel Vadot - description: The HDMI CEC controller main clock 502eb4d8dcSEmmanuel Vadot - description: Power for GRF IO 51*d5b0e70fSEmmanuel Vadot - description: External clock for some HDMI PHY (old clock name, deprecated) 52*d5b0e70fSEmmanuel Vadot - description: External clock for some HDMI PHY (new name) 532eb4d8dcSEmmanuel Vadot 542eb4d8dcSEmmanuel Vadot clock-names: 552eb4d8dcSEmmanuel Vadot minItems: 2 562eb4d8dcSEmmanuel Vadot items: 572eb4d8dcSEmmanuel Vadot - {} 582eb4d8dcSEmmanuel Vadot - {} 592eb4d8dcSEmmanuel Vadot - enum: 602eb4d8dcSEmmanuel Vadot - cec 612eb4d8dcSEmmanuel Vadot - grf 622eb4d8dcSEmmanuel Vadot - vpll 63*d5b0e70fSEmmanuel Vadot - ref 642eb4d8dcSEmmanuel Vadot - enum: 652eb4d8dcSEmmanuel Vadot - grf 662eb4d8dcSEmmanuel Vadot - vpll 67*d5b0e70fSEmmanuel Vadot - ref 68*d5b0e70fSEmmanuel Vadot - enum: 69*d5b0e70fSEmmanuel Vadot - vpll 70*d5b0e70fSEmmanuel Vadot - ref 712eb4d8dcSEmmanuel Vadot 722eb4d8dcSEmmanuel Vadot ddc-i2c-bus: 732eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 742eb4d8dcSEmmanuel Vadot description: 752eb4d8dcSEmmanuel Vadot The HDMI DDC bus can be connected to either a system I2C master or the 762eb4d8dcSEmmanuel Vadot functionally-reduced I2C master contained in the DWC HDMI. When connected 772eb4d8dcSEmmanuel Vadot to a system I2C master this property contains a phandle to that I2C 782eb4d8dcSEmmanuel Vadot master controller. 792eb4d8dcSEmmanuel Vadot 802eb4d8dcSEmmanuel Vadot phys: 812eb4d8dcSEmmanuel Vadot maxItems: 1 822eb4d8dcSEmmanuel Vadot description: The HDMI PHY 832eb4d8dcSEmmanuel Vadot 842eb4d8dcSEmmanuel Vadot phy-names: 852eb4d8dcSEmmanuel Vadot const: hdmi 862eb4d8dcSEmmanuel Vadot 872eb4d8dcSEmmanuel Vadot pinctrl-names: 882eb4d8dcSEmmanuel Vadot description: 892eb4d8dcSEmmanuel Vadot The unwedge pinctrl entry shall drive the DDC SDA line low. This is 902eb4d8dcSEmmanuel Vadot intended to work around a hardware errata that can cause the DDC I2C 912eb4d8dcSEmmanuel Vadot bus to be wedged. 92*d5b0e70fSEmmanuel Vadot minItems: 1 932eb4d8dcSEmmanuel Vadot items: 942eb4d8dcSEmmanuel Vadot - const: default 952eb4d8dcSEmmanuel Vadot - const: unwedge 962eb4d8dcSEmmanuel Vadot 972eb4d8dcSEmmanuel Vadot ports: 982eb4d8dcSEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/ports 992eb4d8dcSEmmanuel Vadot 100*d5b0e70fSEmmanuel Vadot patternProperties: 101*d5b0e70fSEmmanuel Vadot "^port(@0)?$": 102*d5b0e70fSEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 1032eb4d8dcSEmmanuel Vadot description: Input of the DWC HDMI TX 1042eb4d8dcSEmmanuel Vadot properties: 105*d5b0e70fSEmmanuel Vadot endpoint: 106*d5b0e70fSEmmanuel Vadot description: Connection to the VOP 1072eb4d8dcSEmmanuel Vadot endpoint@0: 1082eb4d8dcSEmmanuel Vadot description: Connection to the VOPB 1092eb4d8dcSEmmanuel Vadot endpoint@1: 1102eb4d8dcSEmmanuel Vadot description: Connection to the VOPL 111*d5b0e70fSEmmanuel Vadot properties: 112*d5b0e70fSEmmanuel Vadot port@1: 113*d5b0e70fSEmmanuel Vadot $ref: /schemas/graph.yaml#/properties/port 114*d5b0e70fSEmmanuel Vadot description: Output of the DWC HDMI TX 1152eb4d8dcSEmmanuel Vadot 1162eb4d8dcSEmmanuel Vadot rockchip,grf: 1172eb4d8dcSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 1182eb4d8dcSEmmanuel Vadot description: 1192eb4d8dcSEmmanuel Vadot phandle to the GRF to mux vopl/vopb. 1202eb4d8dcSEmmanuel Vadot 1212eb4d8dcSEmmanuel Vadotrequired: 1222eb4d8dcSEmmanuel Vadot - compatible 1232eb4d8dcSEmmanuel Vadot - reg 1242eb4d8dcSEmmanuel Vadot - reg-io-width 1252eb4d8dcSEmmanuel Vadot - clocks 1262eb4d8dcSEmmanuel Vadot - clock-names 1272eb4d8dcSEmmanuel Vadot - interrupts 1282eb4d8dcSEmmanuel Vadot - ports 1292eb4d8dcSEmmanuel Vadot - rockchip,grf 1302eb4d8dcSEmmanuel Vadot 1312eb4d8dcSEmmanuel VadotunevaluatedProperties: false 1322eb4d8dcSEmmanuel Vadot 1332eb4d8dcSEmmanuel Vadotexamples: 1342eb4d8dcSEmmanuel Vadot - | 1352eb4d8dcSEmmanuel Vadot #include <dt-bindings/clock/rk3288-cru.h> 1362eb4d8dcSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 1372eb4d8dcSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 1382eb4d8dcSEmmanuel Vadot 1392eb4d8dcSEmmanuel Vadot hdmi: hdmi@ff980000 { 1402eb4d8dcSEmmanuel Vadot compatible = "rockchip,rk3288-dw-hdmi"; 1412eb4d8dcSEmmanuel Vadot reg = <0xff980000 0x20000>; 1422eb4d8dcSEmmanuel Vadot reg-io-width = <4>; 1432eb4d8dcSEmmanuel Vadot ddc-i2c-bus = <&i2c5>; 1442eb4d8dcSEmmanuel Vadot rockchip,grf = <&grf>; 1452eb4d8dcSEmmanuel Vadot interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>; 1462eb4d8dcSEmmanuel Vadot clocks = <&cru PCLK_HDMI_CTRL>, <&cru SCLK_HDMI_HDCP>; 1472eb4d8dcSEmmanuel Vadot clock-names = "iahb", "isfr"; 1482eb4d8dcSEmmanuel Vadot 1492eb4d8dcSEmmanuel Vadot ports { 1502eb4d8dcSEmmanuel Vadot port { 1512eb4d8dcSEmmanuel Vadot #address-cells = <1>; 1522eb4d8dcSEmmanuel Vadot #size-cells = <0>; 1532eb4d8dcSEmmanuel Vadot 1542eb4d8dcSEmmanuel Vadot hdmi_in_vopb: endpoint@0 { 1552eb4d8dcSEmmanuel Vadot reg = <0>; 1562eb4d8dcSEmmanuel Vadot remote-endpoint = <&vopb_out_hdmi>; 1572eb4d8dcSEmmanuel Vadot }; 1582eb4d8dcSEmmanuel Vadot hdmi_in_vopl: endpoint@1 { 1592eb4d8dcSEmmanuel Vadot reg = <1>; 1602eb4d8dcSEmmanuel Vadot remote-endpoint = <&vopl_out_hdmi>; 1612eb4d8dcSEmmanuel Vadot }; 1622eb4d8dcSEmmanuel Vadot }; 1632eb4d8dcSEmmanuel Vadot }; 1642eb4d8dcSEmmanuel Vadot }; 1652eb4d8dcSEmmanuel Vadot 1662eb4d8dcSEmmanuel Vadot... 167