18eea6e26SJohan Jonker# SPDX-License-Identifier: GPL-2.0 28eea6e26SJohan Jonker%YAML 1.2 38eea6e26SJohan Jonker--- 48eea6e26SJohan Jonker$id: http://devicetree.org/schemas/display/rockchip/rockchip,rk3066-hdmi.yaml# 58eea6e26SJohan Jonker$schema: http://devicetree.org/meta-schemas/core.yaml# 68eea6e26SJohan Jonker 78eea6e26SJohan Jonkertitle: Rockchip rk3066 HDMI controller 88eea6e26SJohan Jonker 98eea6e26SJohan Jonkermaintainers: 108eea6e26SJohan Jonker - Sandy Huang <hjc@rock-chips.com> 118eea6e26SJohan Jonker - Heiko Stuebner <heiko@sntech.de> 128eea6e26SJohan Jonker 138eea6e26SJohan Jonkerproperties: 148eea6e26SJohan Jonker compatible: 158eea6e26SJohan Jonker const: rockchip,rk3066-hdmi 168eea6e26SJohan Jonker 178eea6e26SJohan Jonker reg: 188eea6e26SJohan Jonker maxItems: 1 198eea6e26SJohan Jonker 208eea6e26SJohan Jonker interrupts: 218eea6e26SJohan Jonker maxItems: 1 228eea6e26SJohan Jonker 238eea6e26SJohan Jonker clocks: 248eea6e26SJohan Jonker maxItems: 1 258eea6e26SJohan Jonker 268eea6e26SJohan Jonker clock-names: 278eea6e26SJohan Jonker const: hclk 288eea6e26SJohan Jonker 298eea6e26SJohan Jonker power-domains: 308eea6e26SJohan Jonker maxItems: 1 318eea6e26SJohan Jonker 328eea6e26SJohan Jonker rockchip,grf: 338eea6e26SJohan Jonker $ref: /schemas/types.yaml#/definitions/phandle 348eea6e26SJohan Jonker description: 358eea6e26SJohan Jonker This soc uses GRF regs to switch the HDMI TX input between vop0 and vop1. 368eea6e26SJohan Jonker 378eea6e26SJohan Jonker ports: 38*b6755423SRob Herring $ref: /schemas/graph.yaml#/properties/ports 398eea6e26SJohan Jonker 408eea6e26SJohan Jonker properties: 418eea6e26SJohan Jonker port@0: 42*b6755423SRob Herring $ref: /schemas/graph.yaml#/properties/port 438eea6e26SJohan Jonker description: 448eea6e26SJohan Jonker Port node with two endpoints, numbered 0 and 1, 458eea6e26SJohan Jonker connected respectively to vop0 and vop1. 468eea6e26SJohan Jonker 478eea6e26SJohan Jonker port@1: 48*b6755423SRob Herring $ref: /schemas/graph.yaml#/properties/port 498eea6e26SJohan Jonker description: 508eea6e26SJohan Jonker Port node with one endpoint connected to a hdmi-connector node. 518eea6e26SJohan Jonker 528eea6e26SJohan Jonker required: 538eea6e26SJohan Jonker - port@0 548eea6e26SJohan Jonker - port@1 558eea6e26SJohan Jonker 568eea6e26SJohan Jonkerrequired: 578eea6e26SJohan Jonker - compatible 588eea6e26SJohan Jonker - reg 598eea6e26SJohan Jonker - interrupts 608eea6e26SJohan Jonker - clocks 618eea6e26SJohan Jonker - clock-names 628eea6e26SJohan Jonker - pinctrl-0 638eea6e26SJohan Jonker - pinctrl-names 648eea6e26SJohan Jonker - power-domains 658eea6e26SJohan Jonker - rockchip,grf 668eea6e26SJohan Jonker - ports 678eea6e26SJohan Jonker 688eea6e26SJohan JonkeradditionalProperties: false 698eea6e26SJohan Jonker 708eea6e26SJohan Jonkerexamples: 718eea6e26SJohan Jonker - | 728eea6e26SJohan Jonker #include <dt-bindings/clock/rk3066a-cru.h> 738eea6e26SJohan Jonker #include <dt-bindings/interrupt-controller/arm-gic.h> 748eea6e26SJohan Jonker #include <dt-bindings/pinctrl/rockchip.h> 758eea6e26SJohan Jonker #include <dt-bindings/power/rk3066-power.h> 768eea6e26SJohan Jonker hdmi: hdmi@10116000 { 778eea6e26SJohan Jonker compatible = "rockchip,rk3066-hdmi"; 788eea6e26SJohan Jonker reg = <0x10116000 0x2000>; 798eea6e26SJohan Jonker interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>; 808eea6e26SJohan Jonker clocks = <&cru HCLK_HDMI>; 818eea6e26SJohan Jonker clock-names = "hclk"; 828eea6e26SJohan Jonker pinctrl-0 = <&hdmii2c_xfer>, <&hdmi_hpd>; 838eea6e26SJohan Jonker pinctrl-names = "default"; 848eea6e26SJohan Jonker power-domains = <&power RK3066_PD_VIO>; 858eea6e26SJohan Jonker rockchip,grf = <&grf>; 868eea6e26SJohan Jonker 878eea6e26SJohan Jonker ports { 888eea6e26SJohan Jonker #address-cells = <1>; 898eea6e26SJohan Jonker #size-cells = <0>; 908eea6e26SJohan Jonker hdmi_in: port@0 { 918eea6e26SJohan Jonker reg = <0>; 928eea6e26SJohan Jonker #address-cells = <1>; 938eea6e26SJohan Jonker #size-cells = <0>; 948eea6e26SJohan Jonker hdmi_in_vop0: endpoint@0 { 958eea6e26SJohan Jonker reg = <0>; 968eea6e26SJohan Jonker remote-endpoint = <&vop0_out_hdmi>; 978eea6e26SJohan Jonker }; 988eea6e26SJohan Jonker hdmi_in_vop1: endpoint@1 { 998eea6e26SJohan Jonker reg = <1>; 1008eea6e26SJohan Jonker remote-endpoint = <&vop1_out_hdmi>; 1018eea6e26SJohan Jonker }; 1028eea6e26SJohan Jonker }; 1038eea6e26SJohan Jonker hdmi_out: port@1 { 1048eea6e26SJohan Jonker reg = <1>; 1058eea6e26SJohan Jonker hdmi_out_con: endpoint { 1068eea6e26SJohan Jonker remote-endpoint = <&hdmi_con_in>; 1078eea6e26SJohan Jonker }; 1088eea6e26SJohan Jonker }; 1098eea6e26SJohan Jonker }; 1108eea6e26SJohan Jonker }; 1118eea6e26SJohan Jonker 1128eea6e26SJohan Jonker pinctrl { 1138eea6e26SJohan Jonker hdmi { 1148eea6e26SJohan Jonker hdmi_hpd: hdmi-hpd { 1158eea6e26SJohan Jonker rockchip,pins = <0 RK_PA0 1 &pcfg_pull_default>; 1168eea6e26SJohan Jonker }; 1178eea6e26SJohan Jonker hdmii2c_xfer: hdmii2c-xfer { 1188eea6e26SJohan Jonker rockchip,pins = <0 RK_PA1 1 &pcfg_pull_none>, 1198eea6e26SJohan Jonker <0 RK_PA2 1 &pcfg_pull_none>; 1208eea6e26SJohan Jonker }; 1218eea6e26SJohan Jonker }; 1228eea6e26SJohan Jonker }; 123