xref: /OK3568_Linux_fs/kernel/arch/arm64/boot/dts/hisilicon/hi3660-drm.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0
2*4882a593Smuzhiyun/{
3*4882a593Smuzhiyun		dpe: dpe@E8600000 {
4*4882a593Smuzhiyun			compatible = "hisilicon,hi3660-dpe";
5*4882a593Smuzhiyun			status = "ok";
6*4882a593Smuzhiyun
7*4882a593Smuzhiyun			reg = <0x0 0xE8600000 0x0 0x80000>,
8*4882a593Smuzhiyun					<0x0 0xFFF35000 0 0x1000>,
9*4882a593Smuzhiyun					<0x0 0xFFF0A000 0 0x1000>,
10*4882a593Smuzhiyun					<0x0 0xFFF31000 0 0x1000>,
11*4882a593Smuzhiyun					<0x0 0xE86C0000 0 0x10000>;
12*4882a593Smuzhiyun			interrupts = <0 245 4>;
13*4882a593Smuzhiyun
14*4882a593Smuzhiyun			clocks = <&crg_ctrl HI3660_ACLK_GATE_DSS>,
15*4882a593Smuzhiyun				<&crg_ctrl HI3660_PCLK_GATE_DSS>,
16*4882a593Smuzhiyun				<&crg_ctrl HI3660_CLK_GATE_EDC0>,
17*4882a593Smuzhiyun				<&crg_ctrl HI3660_CLK_GATE_LDI0>,
18*4882a593Smuzhiyun				<&crg_ctrl HI3660_CLK_GATE_LDI1>,
19*4882a593Smuzhiyun				<&sctrl HI3660_CLK_GATE_DSS_AXI_MM>,
20*4882a593Smuzhiyun				<&sctrl HI3660_PCLK_GATE_MMBUF>;
21*4882a593Smuzhiyun			clock-names = "aclk_dss",
22*4882a593Smuzhiyun					"pclk_dss",
23*4882a593Smuzhiyun					"clk_edc0",
24*4882a593Smuzhiyun					"clk_ldi0",
25*4882a593Smuzhiyun					"clk_ldi1",
26*4882a593Smuzhiyun					"clk_dss_axi_mm",
27*4882a593Smuzhiyun					"pclk_mmbuf";
28*4882a593Smuzhiyun
29*4882a593Smuzhiyun			dma-coherent;
30*4882a593Smuzhiyun
31*4882a593Smuzhiyun			port {
32*4882a593Smuzhiyun				dpe_out: endpoint {
33*4882a593Smuzhiyun					remote-endpoint = <&dsi_in>;
34*4882a593Smuzhiyun				};
35*4882a593Smuzhiyun			};
36*4882a593Smuzhiyun
37*4882a593Smuzhiyun			iommu_info {
38*4882a593Smuzhiyun				start-addr = <0x8000>;
39*4882a593Smuzhiyun				size = <0xbfff8000>;
40*4882a593Smuzhiyun			};
41*4882a593Smuzhiyun		};
42*4882a593Smuzhiyun
43*4882a593Smuzhiyun		dsi: dsi@E8601000 {
44*4882a593Smuzhiyun			compatible = "hisilicon,hi3660-dsi";
45*4882a593Smuzhiyun			status = "ok";
46*4882a593Smuzhiyun
47*4882a593Smuzhiyun			reg = <0 0xE8601000 0 0x7F000>,
48*4882a593Smuzhiyun					<0 0xFFF35000 0 0x1000>;
49*4882a593Smuzhiyun
50*4882a593Smuzhiyun			clocks = <&crg_ctrl HI3660_CLK_GATE_TXDPHY0_REF>,
51*4882a593Smuzhiyun					<&crg_ctrl HI3660_CLK_GATE_TXDPHY1_REF>,
52*4882a593Smuzhiyun					<&crg_ctrl HI3660_CLK_GATE_TXDPHY0_CFG>,
53*4882a593Smuzhiyun					<&crg_ctrl HI3660_CLK_GATE_TXDPHY1_CFG>,
54*4882a593Smuzhiyun					<&crg_ctrl HI3660_PCLK_GATE_DSI0>,
55*4882a593Smuzhiyun					<&crg_ctrl HI3660_PCLK_GATE_DSI1>;
56*4882a593Smuzhiyun			clock-names = "clk_txdphy0_ref",
57*4882a593Smuzhiyun						"clk_txdphy1_ref",
58*4882a593Smuzhiyun						"clk_txdphy0_cfg",
59*4882a593Smuzhiyun						"clk_txdphy1_cfg",
60*4882a593Smuzhiyun						"pclk_dsi0",
61*4882a593Smuzhiyun						"pclk_dsi1";
62*4882a593Smuzhiyun
63*4882a593Smuzhiyun			#address-cells = <1>;
64*4882a593Smuzhiyun			#size-cells = <0>;
65*4882a593Smuzhiyun			mux-gpio = <&gpio2 4 0>;
66*4882a593Smuzhiyun
67*4882a593Smuzhiyun			ports {
68*4882a593Smuzhiyun				#address-cells = <1>;
69*4882a593Smuzhiyun				#size-cells = <0>;
70*4882a593Smuzhiyun
71*4882a593Smuzhiyun				port@0 {
72*4882a593Smuzhiyun					reg = <0>;
73*4882a593Smuzhiyun					dsi_in: endpoint {
74*4882a593Smuzhiyun						remote-endpoint = <&dpe_out>;
75*4882a593Smuzhiyun					};
76*4882a593Smuzhiyun				};
77*4882a593Smuzhiyun
78*4882a593Smuzhiyun				port@1 {
79*4882a593Smuzhiyun					#address-cells = <1>;
80*4882a593Smuzhiyun					#size-cells = <0>;
81*4882a593Smuzhiyun					reg = <1>;
82*4882a593Smuzhiyun
83*4882a593Smuzhiyun					dsi_out0: endpoint@0 {
84*4882a593Smuzhiyun						reg = <0>;
85*4882a593Smuzhiyun						remote-endpoint = <&adv7533_in>;
86*4882a593Smuzhiyun					};
87*4882a593Smuzhiyun
88*4882a593Smuzhiyun				};
89*4882a593Smuzhiyun			};
90*4882a593Smuzhiyun		};
91*4882a593Smuzhiyun};
92