aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHeiko Stuebner <heiko@sntech.de>2017-12-10 20:02:01 -0500
committerHeiko Stuebner <heiko@sntech.de>2018-09-28 07:16:30 -0400
commit725e351c265a8d78b104b7c7a07e3fd4a85a126f (patch)
tree4aeaaf1b98e6df0318e5321bf76a8007519fee2a
parent6c69dfe2af72960815292914fae4432e414b9e77 (diff)
arm64: dts: rockchip: add rk3328 display nodes
Add the chain of display nodes from the core display-subsystem through the one vop to the dw-hdmi output. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Tested-by: Robin Murphy <robin.murphy@arm.com> changes in v3: - drop reg from hdmi-in-port changes in v2: - remove trailing 0 from vop irq
-rw-r--r--arch/arm64/boot/dts/rockchip/rk3328.dtsi53
1 files changed, 53 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
index 351e23ac8239..e1a33dd981e0 100644
--- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
@@ -151,6 +151,11 @@
151 interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>; 151 interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
152 }; 152 };
153 153
154 display_subsystem: display-subsystem {
155 compatible = "rockchip,display-subsystem";
156 ports = <&vop_out>;
157 };
158
154 psci { 159 psci {
155 compatible = "arm,psci-1.0", "arm,psci-0.2"; 160 compatible = "arm,psci-1.0", "arm,psci-0.2";
156 method = "smc"; 161 method = "smc";
@@ -605,6 +610,28 @@
605 status = "disabled"; 610 status = "disabled";
606 }; 611 };
607 612
613 vop: vop@ff370000 {
614 compatible = "rockchip,rk3328-vop";
615 reg = <0x0 0xff370000 0x0 0x3efc>;
616 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
617 clocks = <&cru ACLK_VOP>, <&cru DCLK_LCDC>, <&cru HCLK_VOP>;
618 clock-names = "aclk_vop", "dclk_vop", "hclk_vop";
619 resets = <&cru SRST_VOP_A>, <&cru SRST_VOP_H>, <&cru SRST_VOP_D>;
620 reset-names = "axi", "ahb", "dclk";
621 iommus = <&vop_mmu>;
622 status = "disabled";
623
624 vop_out: port {
625 #address-cells = <1>;
626 #size-cells = <0>;
627
628 vop_out_hdmi: endpoint@0 {
629 reg = <0>;
630 remote-endpoint = <&hdmi_in_vop>;
631 };
632 };
633 };
634
608 vop_mmu: iommu@ff373f00 { 635 vop_mmu: iommu@ff373f00 {
609 compatible = "rockchip,iommu"; 636 compatible = "rockchip,iommu";
610 reg = <0x0 0xff373f00 0x0 0x100>; 637 reg = <0x0 0xff373f00 0x0 0x100>;
@@ -616,6 +643,32 @@
616 status = "disabled"; 643 status = "disabled";
617 }; 644 };
618 645
646 hdmi: hdmi@ff3c0000 {
647 compatible = "rockchip,rk3328-dw-hdmi";
648 reg = <0x0 0xff3c0000 0x0 0x20000>;
649 reg-io-width = <4>;
650 interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
651 <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
652 clocks = <&cru PCLK_HDMI>,
653 <&cru SCLK_HDMI_SFC>;
654 clock-names = "iahb",
655 "isfr";
656 phys = <&hdmiphy>;
657 phy-names = "hdmi";
658 pinctrl-names = "default";
659 pinctrl-0 = <&hdmi_cec &hdmii2c_xfer &hdmi_hpd>;
660 rockchip,grf = <&grf>;
661 status = "disabled";
662
663 ports {
664 hdmi_in: port {
665 hdmi_in_vop: endpoint {
666 remote-endpoint = <&vop_out_hdmi>;
667 };
668 };
669 };
670 };
671
619 hdmiphy: phy@ff430000 { 672 hdmiphy: phy@ff430000 {
620 compatible = "rockchip,rk3328-hdmi-phy"; 673 compatible = "rockchip,rk3328-hdmi-phy";
621 reg = <0x0 0xff430000 0x0 0x10000>; 674 reg = <0x0 0xff430000 0x0 0x10000>;