dt-bindings: display: rockchip: add document for rk3066 hdmi
authorJohan Jonker <jbx6244@gmail.com>
Sat, 30 Mar 2019 09:56:39 +0000 (10:56 +0100)
committerHeiko Stuebner <heiko@sntech.de>
Sun, 31 Mar 2019 11:40:30 +0000 (13:40 +0200)
This patch adds a binding that describes the HDMI controller for
rk3066.

Signed-off-by: Johan Jonker <jbx6244@gmail.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20190330095639.14626-5-jbx6244@gmail.com
Documentation/devicetree/bindings/display/rockchip/rockchip,rk3066-hdmi.txt [new file with mode: 0644]

diff --git a/Documentation/devicetree/bindings/display/rockchip/rockchip,rk3066-hdmi.txt b/Documentation/devicetree/bindings/display/rockchip/rockchip,rk3066-hdmi.txt
new file mode 100644 (file)
index 0000000..d1ad31b
--- /dev/null
@@ -0,0 +1,72 @@
+Rockchip specific extensions for rk3066 HDMI
+============================================
+
+Required properties:
+- compatible:
+       "rockchip,rk3066-hdmi";
+- reg:
+       Physical base address and length of the controller's registers.
+- clocks, clock-names:
+       Phandle to HDMI controller clock, name should be "hclk".
+- interrupts:
+       HDMI interrupt number.
+- power-domains:
+       Phandle to the RK3066_PD_VIO power domain.
+- rockchip,grf:
+       This soc uses GRF regs to switch the HDMI TX input between vop0 and vop1.
+- ports:
+       Contains one port node with two endpoints, numbered 0 and 1,
+       connected respectively to vop0 and vop1.
+       Contains one port node with one endpoint
+       connected to a hdmi-connector node.
+- pinctrl-0, pinctrl-name:
+       Switch the iomux for the HPD/I2C pins to HDMI function.
+
+Example:
+       hdmi: hdmi@10116000 {
+               compatible = "rockchip,rk3066-hdmi";
+               reg = <0x10116000 0x2000>;
+               interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
+               clocks = <&cru HCLK_HDMI>;
+               clock-names = "hclk";
+               power-domains = <&power RK3066_PD_VIO>;
+               rockchip,grf = <&grf>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&hdmii2c_xfer>, <&hdmi_hpd>;
+
+               ports {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       hdmi_in: port@0 {
+                               reg = <0>;
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+                               hdmi_in_vop0: endpoint@0 {
+                                       reg = <0>;
+                                       remote-endpoint = <&vop0_out_hdmi>;
+                               };
+                               hdmi_in_vop1: endpoint@1 {
+                                       reg = <1>;
+                                       remote-endpoint = <&vop1_out_hdmi>;
+                               };
+                       };
+                       hdmi_out: port@1 {
+                               reg = <1>;
+                               hdmi_out_con: endpoint {
+                                       remote-endpoint = <&hdmi_con_in>;
+                               };
+                       };
+               };
+       };
+
+&pinctrl {
+               hdmi {
+                       hdmi_hpd: hdmi-hpd {
+                               rockchip,pins = <0 RK_PA0 1 &pcfg_pull_default>;
+                       };
+                       hdmii2c_xfer: hdmii2c-xfer {
+                               rockchip,pins = <0 RK_PA1 1 &pcfg_pull_none>,
+                                               <0 RK_PA2 1 &pcfg_pull_none>;
+                       };
+               };
+};