From 797d668f5cfac165744d2a04b54c452a4f51f65e Mon Sep 17 00:00:00 2001 From: Shunqing Chen Date: Tue, 26 Dec 2017 11:21:21 +0800 Subject: [PATCH] arm64: dts: rockchip: rk3368-sziauto: add rk618 HDMI support. Change-Id: Ib5795febf1c5432d12988bfb5e9b86345513ef6d Signed-off-by: Shunqing Chen Signed-off-by: Wyon Bi --- .../dts/rockchip/rk3368-sziauto-rk618.dts | 100 ++++++++++++++++-- 1 file changed, 94 insertions(+), 6 deletions(-) diff --git a/arch/arm64/boot/dts/rockchip/rk3368-sziauto-rk618.dts b/arch/arm64/boot/dts/rockchip/rk3368-sziauto-rk618.dts index 78c1c421cec8..bf901182574c 100644 --- a/arch/arm64/boot/dts/rockchip/rk3368-sziauto-rk618.dts +++ b/arch/arm64/boot/dts/rockchip/rk3368-sziauto-rk618.dts @@ -234,11 +234,12 @@ CRU: cru { status = "okay"; }; - LVDS: lvds { - compatible = "rockchip,rk618-lvds"; - clocks = <&CRU LVDS_CLK>, <&CRU DITHER_CLK>, - <&CRU VIF0_CLK>, <&CRU SCALER_CLK>; - clock-names = "lvds", "dither", "vif", "scaler"; + HDMI: hdmi { + compatible = "rockchip,rk618-inno-hdmi"; + clocks = <&CRU HDMI_CLK>; + clock-names = "hdmi"; + interrupt-parent = <&gpio3>; + interrupts = <23 IRQ_TYPE_LEVEL_HIGH>; status = "okay"; ports { @@ -248,9 +249,63 @@ ports { port@0 { reg = <0>; - lvds_input_vop: endpoint { + hdmi_input_vop: endpoint { + remote-endpoint = <&vop_output_hdmi>; + }; + }; + + port@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + + /* Enable or Disable VIF Port */ + hdmi_output_vif: endpoint@0 { + reg = <0>; + remote-endpoint = <&vif_input_hdmi>; + status = "disabled"; + }; + + /* Enable or Disable Clone Port */ + hdmi_output_lvds: endpoint@1 { + reg = <1>; + remote-endpoint = <&lvds_input_hdmi>; + status = "disabled"; + }; + }; + }; + }; + + LVDS: lvds { + compatible = "rockchip,rk618-lvds"; + clocks = <&CRU LVDS_CLK>, <&CRU DITHER_CLK>, + <&CRU VIF0_CLK>, <&CRU SCALER_CLK>; + clock-names = "lvds", "dither", "vif", "scaler"; + status = "disabled"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + + lvds_input_vop: endpoint@0 { + reg = <0>; remote-endpoint = <&vop_output_lvds>; }; + + lvds_input_vif: endpoint@1 { + reg = <1>; + remote-endpoint = <&vif_output_lvds>; + }; + + lvds_input_hdmi: endpoint@2 { + reg = <2>; + remote-endpoint = <&hdmi_output_lvds>; + }; }; port@1 { @@ -262,6 +317,34 @@ lvds_output_panel: endpoint { }; }; }; + + VIF: vif { + compatible = "rockchip,rk618-vif"; + clocks = <&CRU VIF0_CLK>, <&CRU VIF0_PRE_CLK>; + clock-names = "vif", "vif_pre"; + status = "okay"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + vif_input_hdmi: endpoint { + remote-endpoint = <&hdmi_output_vif>; + }; + }; + + port@1 { + reg = <1>; + + vif_output_lvds: endpoint { + remote-endpoint = <&lvds_input_vif>; + }; + }; + }; + }; }; }; @@ -274,6 +357,11 @@ vop_output_lvds: endpoint@4 { reg = <4>; remote-endpoint = <&lvds_input_vop>; }; + + vop_output_hdmi: endpoint@5 { + reg = <5>; + remote-endpoint = <&hdmi_input_vop>; + }; }; &route_lvds {