xref: /linux/arch/arm64/boot/dts/rockchip/rk356x-base.dtsi (revision 2f24482304ebd32c5aa374f31465b9941a860b92)
1853f9632SDragan Simic// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2853f9632SDragan Simic/*
3853f9632SDragan Simic * Copyright (c) 2021 Rockchip Electronics Co., Ltd.
4853f9632SDragan Simic */
5853f9632SDragan Simic
6853f9632SDragan Simic#include <dt-bindings/clock/rk3568-cru.h>
7853f9632SDragan Simic#include <dt-bindings/interrupt-controller/arm-gic.h>
8853f9632SDragan Simic#include <dt-bindings/interrupt-controller/irq.h>
9853f9632SDragan Simic#include <dt-bindings/phy/phy.h>
10853f9632SDragan Simic#include <dt-bindings/pinctrl/rockchip.h>
11853f9632SDragan Simic#include <dt-bindings/power/rk3568-power.h>
12853f9632SDragan Simic#include <dt-bindings/soc/rockchip,boot-mode.h>
13853f9632SDragan Simic#include <dt-bindings/thermal/thermal.h>
14853f9632SDragan Simic
15853f9632SDragan Simic/ {
16853f9632SDragan Simic	interrupt-parent = <&gic>;
17853f9632SDragan Simic	#address-cells = <2>;
18853f9632SDragan Simic	#size-cells = <2>;
19853f9632SDragan Simic
20853f9632SDragan Simic	aliases {
21853f9632SDragan Simic		gpio0 = &gpio0;
22853f9632SDragan Simic		gpio1 = &gpio1;
23853f9632SDragan Simic		gpio2 = &gpio2;
24853f9632SDragan Simic		gpio3 = &gpio3;
25853f9632SDragan Simic		gpio4 = &gpio4;
26853f9632SDragan Simic		i2c0 = &i2c0;
27853f9632SDragan Simic		i2c1 = &i2c1;
28853f9632SDragan Simic		i2c2 = &i2c2;
29853f9632SDragan Simic		i2c3 = &i2c3;
30853f9632SDragan Simic		i2c4 = &i2c4;
31853f9632SDragan Simic		i2c5 = &i2c5;
32853f9632SDragan Simic		serial0 = &uart0;
33853f9632SDragan Simic		serial1 = &uart1;
34853f9632SDragan Simic		serial2 = &uart2;
35853f9632SDragan Simic		serial3 = &uart3;
36853f9632SDragan Simic		serial4 = &uart4;
37853f9632SDragan Simic		serial5 = &uart5;
38853f9632SDragan Simic		serial6 = &uart6;
39853f9632SDragan Simic		serial7 = &uart7;
40853f9632SDragan Simic		serial8 = &uart8;
41853f9632SDragan Simic		serial9 = &uart9;
42853f9632SDragan Simic		spi0 = &spi0;
43853f9632SDragan Simic		spi1 = &spi1;
44853f9632SDragan Simic		spi2 = &spi2;
45853f9632SDragan Simic		spi3 = &spi3;
46853f9632SDragan Simic	};
47853f9632SDragan Simic
48853f9632SDragan Simic	cpus {
49853f9632SDragan Simic		#address-cells = <2>;
50853f9632SDragan Simic		#size-cells = <0>;
51853f9632SDragan Simic
52853f9632SDragan Simic		cpu0: cpu@0 {
53853f9632SDragan Simic			device_type = "cpu";
54853f9632SDragan Simic			compatible = "arm,cortex-a55";
55853f9632SDragan Simic			reg = <0x0 0x0>;
56853f9632SDragan Simic			clocks = <&scmi_clk 0>;
57853f9632SDragan Simic			#cooling-cells = <2>;
58853f9632SDragan Simic			enable-method = "psci";
59853f9632SDragan Simic			i-cache-size = <0x8000>;
60853f9632SDragan Simic			i-cache-line-size = <64>;
61853f9632SDragan Simic			i-cache-sets = <128>;
62853f9632SDragan Simic			d-cache-size = <0x8000>;
63853f9632SDragan Simic			d-cache-line-size = <64>;
64853f9632SDragan Simic			d-cache-sets = <128>;
65853f9632SDragan Simic			next-level-cache = <&l3_cache>;
66853f9632SDragan Simic		};
67853f9632SDragan Simic
68853f9632SDragan Simic		cpu1: cpu@100 {
69853f9632SDragan Simic			device_type = "cpu";
70853f9632SDragan Simic			compatible = "arm,cortex-a55";
71853f9632SDragan Simic			reg = <0x0 0x100>;
72853f9632SDragan Simic			#cooling-cells = <2>;
73853f9632SDragan Simic			enable-method = "psci";
74853f9632SDragan Simic			i-cache-size = <0x8000>;
75853f9632SDragan Simic			i-cache-line-size = <64>;
76853f9632SDragan Simic			i-cache-sets = <128>;
77853f9632SDragan Simic			d-cache-size = <0x8000>;
78853f9632SDragan Simic			d-cache-line-size = <64>;
79853f9632SDragan Simic			d-cache-sets = <128>;
80853f9632SDragan Simic			next-level-cache = <&l3_cache>;
81853f9632SDragan Simic		};
82853f9632SDragan Simic
83853f9632SDragan Simic		cpu2: cpu@200 {
84853f9632SDragan Simic			device_type = "cpu";
85853f9632SDragan Simic			compatible = "arm,cortex-a55";
86853f9632SDragan Simic			reg = <0x0 0x200>;
87853f9632SDragan Simic			#cooling-cells = <2>;
88853f9632SDragan Simic			enable-method = "psci";
89853f9632SDragan Simic			i-cache-size = <0x8000>;
90853f9632SDragan Simic			i-cache-line-size = <64>;
91853f9632SDragan Simic			i-cache-sets = <128>;
92853f9632SDragan Simic			d-cache-size = <0x8000>;
93853f9632SDragan Simic			d-cache-line-size = <64>;
94853f9632SDragan Simic			d-cache-sets = <128>;
95853f9632SDragan Simic			next-level-cache = <&l3_cache>;
96853f9632SDragan Simic		};
97853f9632SDragan Simic
98853f9632SDragan Simic		cpu3: cpu@300 {
99853f9632SDragan Simic			device_type = "cpu";
100853f9632SDragan Simic			compatible = "arm,cortex-a55";
101853f9632SDragan Simic			reg = <0x0 0x300>;
102853f9632SDragan Simic			#cooling-cells = <2>;
103853f9632SDragan Simic			enable-method = "psci";
104853f9632SDragan Simic			i-cache-size = <0x8000>;
105853f9632SDragan Simic			i-cache-line-size = <64>;
106853f9632SDragan Simic			i-cache-sets = <128>;
107853f9632SDragan Simic			d-cache-size = <0x8000>;
108853f9632SDragan Simic			d-cache-line-size = <64>;
109853f9632SDragan Simic			d-cache-sets = <128>;
110853f9632SDragan Simic			next-level-cache = <&l3_cache>;
111853f9632SDragan Simic		};
112853f9632SDragan Simic	};
113853f9632SDragan Simic
114853f9632SDragan Simic	/*
115853f9632SDragan Simic	 * There are no private per-core L2 caches, but only the
116853f9632SDragan Simic	 * L3 cache that appears to the CPU cores as L2 caches
117853f9632SDragan Simic	 */
118853f9632SDragan Simic	l3_cache: l3-cache {
119853f9632SDragan Simic		compatible = "cache";
120853f9632SDragan Simic		cache-level = <2>;
121853f9632SDragan Simic		cache-unified;
122853f9632SDragan Simic		cache-size = <0x80000>;
123853f9632SDragan Simic		cache-line-size = <64>;
124853f9632SDragan Simic		cache-sets = <512>;
125853f9632SDragan Simic	};
126853f9632SDragan Simic
127853f9632SDragan Simic	display_subsystem: display-subsystem {
128853f9632SDragan Simic		compatible = "rockchip,display-subsystem";
129853f9632SDragan Simic		ports = <&vop_out>;
130853f9632SDragan Simic	};
131853f9632SDragan Simic
132853f9632SDragan Simic	firmware {
133853f9632SDragan Simic		scmi: scmi {
134853f9632SDragan Simic			compatible = "arm,scmi-smc";
135853f9632SDragan Simic			arm,smc-id = <0x82000010>;
136853f9632SDragan Simic			shmem = <&scmi_shmem>;
137853f9632SDragan Simic			#address-cells = <1>;
138853f9632SDragan Simic			#size-cells = <0>;
139853f9632SDragan Simic
140853f9632SDragan Simic			scmi_clk: protocol@14 {
141853f9632SDragan Simic				reg = <0x14>;
142853f9632SDragan Simic				#clock-cells = <1>;
143853f9632SDragan Simic			};
144853f9632SDragan Simic		};
145853f9632SDragan Simic	};
146853f9632SDragan Simic
147853f9632SDragan Simic	hdmi_sound: hdmi-sound {
148853f9632SDragan Simic		compatible = "simple-audio-card";
149853f9632SDragan Simic		simple-audio-card,name = "HDMI";
150853f9632SDragan Simic		simple-audio-card,format = "i2s";
151853f9632SDragan Simic		simple-audio-card,mclk-fs = <256>;
152853f9632SDragan Simic		status = "disabled";
153853f9632SDragan Simic
154853f9632SDragan Simic		simple-audio-card,codec {
155853f9632SDragan Simic			sound-dai = <&hdmi>;
156853f9632SDragan Simic		};
157853f9632SDragan Simic
158853f9632SDragan Simic		simple-audio-card,cpu {
159853f9632SDragan Simic			sound-dai = <&i2s0_8ch>;
160853f9632SDragan Simic		};
161853f9632SDragan Simic	};
162853f9632SDragan Simic
163853f9632SDragan Simic	pmu {
164853f9632SDragan Simic		compatible = "arm,cortex-a55-pmu";
165853f9632SDragan Simic		interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_HIGH>,
166853f9632SDragan Simic			     <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>,
167853f9632SDragan Simic			     <GIC_SPI 230 IRQ_TYPE_LEVEL_HIGH>,
168853f9632SDragan Simic			     <GIC_SPI 231 IRQ_TYPE_LEVEL_HIGH>;
169853f9632SDragan Simic		interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
170853f9632SDragan Simic	};
171853f9632SDragan Simic
172853f9632SDragan Simic	psci {
173853f9632SDragan Simic		compatible = "arm,psci-1.0";
174853f9632SDragan Simic		method = "smc";
175853f9632SDragan Simic	};
176853f9632SDragan Simic
177*8fbb9376SChukun Pan	reserved-memory {
178*8fbb9376SChukun Pan		#address-cells = <2>;
179*8fbb9376SChukun Pan		#size-cells = <2>;
180*8fbb9376SChukun Pan		ranges;
181*8fbb9376SChukun Pan
182*8fbb9376SChukun Pan		scmi_shmem: shmem@10f000 {
183*8fbb9376SChukun Pan			compatible = "arm,scmi-shmem";
184*8fbb9376SChukun Pan			reg = <0x0 0x0010f000 0x0 0x100>;
185*8fbb9376SChukun Pan			no-map;
186*8fbb9376SChukun Pan		};
187*8fbb9376SChukun Pan	};
188*8fbb9376SChukun Pan
189853f9632SDragan Simic	timer {
190853f9632SDragan Simic		compatible = "arm,armv8-timer";
191853f9632SDragan Simic		interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_HIGH>,
192853f9632SDragan Simic			     <GIC_PPI 14 IRQ_TYPE_LEVEL_HIGH>,
193853f9632SDragan Simic			     <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH>,
194853f9632SDragan Simic			     <GIC_PPI 10 IRQ_TYPE_LEVEL_HIGH>;
195853f9632SDragan Simic		arm,no-tick-in-suspend;
196853f9632SDragan Simic	};
197853f9632SDragan Simic
198853f9632SDragan Simic	xin24m: xin24m {
199853f9632SDragan Simic		compatible = "fixed-clock";
200853f9632SDragan Simic		clock-frequency = <24000000>;
201853f9632SDragan Simic		clock-output-names = "xin24m";
202853f9632SDragan Simic		#clock-cells = <0>;
203853f9632SDragan Simic	};
204853f9632SDragan Simic
205853f9632SDragan Simic	xin32k: xin32k {
206853f9632SDragan Simic		compatible = "fixed-clock";
207853f9632SDragan Simic		clock-frequency = <32768>;
208853f9632SDragan Simic		clock-output-names = "xin32k";
209853f9632SDragan Simic		pinctrl-0 = <&clk32k_out0>;
210853f9632SDragan Simic		pinctrl-names = "default";
211853f9632SDragan Simic		#clock-cells = <0>;
212853f9632SDragan Simic	};
213853f9632SDragan Simic
214853f9632SDragan Simic	sata1: sata@fc400000 {
215853f9632SDragan Simic		compatible = "rockchip,rk3568-dwc-ahci", "snps,dwc-ahci";
216853f9632SDragan Simic		reg = <0 0xfc400000 0 0x1000>;
217853f9632SDragan Simic		clocks = <&cru ACLK_SATA1>, <&cru CLK_SATA1_PMALIVE>,
218853f9632SDragan Simic			 <&cru CLK_SATA1_RXOOB>;
219853f9632SDragan Simic		clock-names = "sata", "pmalive", "rxoob";
220853f9632SDragan Simic		interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
221853f9632SDragan Simic		phys = <&combphy1 PHY_TYPE_SATA>;
222853f9632SDragan Simic		phy-names = "sata-phy";
223853f9632SDragan Simic		ports-implemented = <0x1>;
224853f9632SDragan Simic		power-domains = <&power RK3568_PD_PIPE>;
225853f9632SDragan Simic		status = "disabled";
226853f9632SDragan Simic	};
227853f9632SDragan Simic
228853f9632SDragan Simic	sata2: sata@fc800000 {
229853f9632SDragan Simic		compatible = "rockchip,rk3568-dwc-ahci", "snps,dwc-ahci";
230853f9632SDragan Simic		reg = <0 0xfc800000 0 0x1000>;
231853f9632SDragan Simic		clocks = <&cru ACLK_SATA2>, <&cru CLK_SATA2_PMALIVE>,
232853f9632SDragan Simic			 <&cru CLK_SATA2_RXOOB>;
233853f9632SDragan Simic		clock-names = "sata", "pmalive", "rxoob";
234853f9632SDragan Simic		interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
235853f9632SDragan Simic		phys = <&combphy2 PHY_TYPE_SATA>;
236853f9632SDragan Simic		phy-names = "sata-phy";
237853f9632SDragan Simic		ports-implemented = <0x1>;
238853f9632SDragan Simic		power-domains = <&power RK3568_PD_PIPE>;
239853f9632SDragan Simic		status = "disabled";
240853f9632SDragan Simic	};
241853f9632SDragan Simic
242853f9632SDragan Simic	usb_host0_xhci: usb@fcc00000 {
243853f9632SDragan Simic		compatible = "rockchip,rk3568-dwc3", "snps,dwc3";
244853f9632SDragan Simic		reg = <0x0 0xfcc00000 0x0 0x400000>;
245853f9632SDragan Simic		interrupts = <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>;
246853f9632SDragan Simic		clocks = <&cru CLK_USB3OTG0_REF>, <&cru CLK_USB3OTG0_SUSPEND>,
247853f9632SDragan Simic			 <&cru ACLK_USB3OTG0>;
248853f9632SDragan Simic		clock-names = "ref_clk", "suspend_clk",
249853f9632SDragan Simic			      "bus_clk";
250853f9632SDragan Simic		dr_mode = "otg";
251853f9632SDragan Simic		phy_type = "utmi_wide";
252853f9632SDragan Simic		power-domains = <&power RK3568_PD_PIPE>;
253853f9632SDragan Simic		resets = <&cru SRST_USB3OTG0>;
254853f9632SDragan Simic		snps,dis_u2_susphy_quirk;
255853f9632SDragan Simic		status = "disabled";
256853f9632SDragan Simic	};
257853f9632SDragan Simic
258853f9632SDragan Simic	usb_host1_xhci: usb@fd000000 {
259853f9632SDragan Simic		compatible = "rockchip,rk3568-dwc3", "snps,dwc3";
260853f9632SDragan Simic		reg = <0x0 0xfd000000 0x0 0x400000>;
261853f9632SDragan Simic		interrupts = <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>;
262853f9632SDragan Simic		clocks = <&cru CLK_USB3OTG1_REF>, <&cru CLK_USB3OTG1_SUSPEND>,
263853f9632SDragan Simic			 <&cru ACLK_USB3OTG1>;
264853f9632SDragan Simic		clock-names = "ref_clk", "suspend_clk",
265853f9632SDragan Simic			      "bus_clk";
266853f9632SDragan Simic		dr_mode = "host";
267853f9632SDragan Simic		phys = <&usb2phy0_host>, <&combphy1 PHY_TYPE_USB3>;
268853f9632SDragan Simic		phy-names = "usb2-phy", "usb3-phy";
269853f9632SDragan Simic		phy_type = "utmi_wide";
270853f9632SDragan Simic		power-domains = <&power RK3568_PD_PIPE>;
271853f9632SDragan Simic		resets = <&cru SRST_USB3OTG1>;
272853f9632SDragan Simic		snps,dis_u2_susphy_quirk;
273853f9632SDragan Simic		status = "disabled";
274853f9632SDragan Simic	};
275853f9632SDragan Simic
276853f9632SDragan Simic	gic: interrupt-controller@fd400000 {
277853f9632SDragan Simic		compatible = "arm,gic-v3";
278853f9632SDragan Simic		reg = <0x0 0xfd400000 0 0x10000>, /* GICD */
279853f9632SDragan Simic		      <0x0 0xfd460000 0 0x80000>; /* GICR */
280853f9632SDragan Simic		interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
281853f9632SDragan Simic		interrupt-controller;
282853f9632SDragan Simic		#interrupt-cells = <3>;
283853f9632SDragan Simic		mbi-alias = <0x0 0xfd410000>;
284853f9632SDragan Simic		mbi-ranges = <296 24>;
285853f9632SDragan Simic		msi-controller;
286f15be3d4SDmitry Osipenko		ranges;
287f15be3d4SDmitry Osipenko		#address-cells = <2>;
288f15be3d4SDmitry Osipenko		#size-cells = <2>;
289f15be3d4SDmitry Osipenko		dma-noncoherent;
290f15be3d4SDmitry Osipenko
291f15be3d4SDmitry Osipenko		its: msi-controller@fd440000 {
292f15be3d4SDmitry Osipenko			compatible = "arm,gic-v3-its";
293f15be3d4SDmitry Osipenko			reg = <0x0 0xfd440000 0 0x20000>;
294f15be3d4SDmitry Osipenko			dma-noncoherent;
295f15be3d4SDmitry Osipenko			msi-controller;
296f15be3d4SDmitry Osipenko			#msi-cells = <1>;
297f15be3d4SDmitry Osipenko		};
298853f9632SDragan Simic	};
299853f9632SDragan Simic
300853f9632SDragan Simic	usb_host0_ehci: usb@fd800000 {
301853f9632SDragan Simic		compatible = "generic-ehci";
302853f9632SDragan Simic		reg = <0x0 0xfd800000 0x0 0x40000>;
303853f9632SDragan Simic		interrupts = <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>;
304853f9632SDragan Simic		clocks = <&cru HCLK_USB2HOST0>, <&cru HCLK_USB2HOST0_ARB>,
305853f9632SDragan Simic			 <&cru PCLK_USB>;
306853f9632SDragan Simic		phys = <&usb2phy1_otg>;
307853f9632SDragan Simic		phy-names = "usb";
308853f9632SDragan Simic		status = "disabled";
309853f9632SDragan Simic	};
310853f9632SDragan Simic
311853f9632SDragan Simic	usb_host0_ohci: usb@fd840000 {
312853f9632SDragan Simic		compatible = "generic-ohci";
313853f9632SDragan Simic		reg = <0x0 0xfd840000 0x0 0x40000>;
314853f9632SDragan Simic		interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
315853f9632SDragan Simic		clocks = <&cru HCLK_USB2HOST0>, <&cru HCLK_USB2HOST0_ARB>,
316853f9632SDragan Simic			 <&cru PCLK_USB>;
317853f9632SDragan Simic		phys = <&usb2phy1_otg>;
318853f9632SDragan Simic		phy-names = "usb";
319853f9632SDragan Simic		status = "disabled";
320853f9632SDragan Simic	};
321853f9632SDragan Simic
322853f9632SDragan Simic	usb_host1_ehci: usb@fd880000 {
323853f9632SDragan Simic		compatible = "generic-ehci";
324853f9632SDragan Simic		reg = <0x0 0xfd880000 0x0 0x40000>;
325853f9632SDragan Simic		interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>;
326853f9632SDragan Simic		clocks = <&cru HCLK_USB2HOST1>, <&cru HCLK_USB2HOST1_ARB>,
327853f9632SDragan Simic			 <&cru PCLK_USB>;
328853f9632SDragan Simic		phys = <&usb2phy1_host>;
329853f9632SDragan Simic		phy-names = "usb";
330853f9632SDragan Simic		status = "disabled";
331853f9632SDragan Simic	};
332853f9632SDragan Simic
333853f9632SDragan Simic	usb_host1_ohci: usb@fd8c0000 {
334853f9632SDragan Simic		compatible = "generic-ohci";
335853f9632SDragan Simic		reg = <0x0 0xfd8c0000 0x0 0x40000>;
336853f9632SDragan Simic		interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>;
337853f9632SDragan Simic		clocks = <&cru HCLK_USB2HOST1>, <&cru HCLK_USB2HOST1_ARB>,
338853f9632SDragan Simic			 <&cru PCLK_USB>;
339853f9632SDragan Simic		phys = <&usb2phy1_host>;
340853f9632SDragan Simic		phy-names = "usb";
341853f9632SDragan Simic		status = "disabled";
342853f9632SDragan Simic	};
343853f9632SDragan Simic
344853f9632SDragan Simic	pmugrf: syscon@fdc20000 {
345853f9632SDragan Simic		compatible = "rockchip,rk3568-pmugrf", "syscon", "simple-mfd";
346853f9632SDragan Simic		reg = <0x0 0xfdc20000 0x0 0x10000>;
347853f9632SDragan Simic
348853f9632SDragan Simic		pmu_io_domains: io-domains {
349853f9632SDragan Simic			compatible = "rockchip,rk3568-pmu-io-voltage-domain";
350853f9632SDragan Simic			status = "disabled";
351853f9632SDragan Simic		};
352853f9632SDragan Simic	};
353853f9632SDragan Simic
354853f9632SDragan Simic	pipegrf: syscon@fdc50000 {
355853f9632SDragan Simic		reg = <0x0 0xfdc50000 0x0 0x1000>;
356853f9632SDragan Simic	};
357853f9632SDragan Simic
358853f9632SDragan Simic	grf: syscon@fdc60000 {
359853f9632SDragan Simic		compatible = "rockchip,rk3568-grf", "syscon", "simple-mfd";
360853f9632SDragan Simic		reg = <0x0 0xfdc60000 0x0 0x10000>;
361853f9632SDragan Simic	};
362853f9632SDragan Simic
363853f9632SDragan Simic	pipe_phy_grf1: syscon@fdc80000 {
364853f9632SDragan Simic		compatible = "rockchip,rk3568-pipe-phy-grf", "syscon";
365853f9632SDragan Simic		reg = <0x0 0xfdc80000 0x0 0x1000>;
366853f9632SDragan Simic	};
367853f9632SDragan Simic
368853f9632SDragan Simic	pipe_phy_grf2: syscon@fdc90000 {
369853f9632SDragan Simic		compatible = "rockchip,rk3568-pipe-phy-grf", "syscon";
370853f9632SDragan Simic		reg = <0x0 0xfdc90000 0x0 0x1000>;
371853f9632SDragan Simic	};
372853f9632SDragan Simic
373853f9632SDragan Simic	usb2phy0_grf: syscon@fdca0000 {
374853f9632SDragan Simic		compatible = "rockchip,rk3568-usb2phy-grf", "syscon";
375853f9632SDragan Simic		reg = <0x0 0xfdca0000 0x0 0x8000>;
376853f9632SDragan Simic	};
377853f9632SDragan Simic
378853f9632SDragan Simic	usb2phy1_grf: syscon@fdca8000 {
379853f9632SDragan Simic		compatible = "rockchip,rk3568-usb2phy-grf", "syscon";
380853f9632SDragan Simic		reg = <0x0 0xfdca8000 0x0 0x8000>;
381853f9632SDragan Simic	};
382853f9632SDragan Simic
383853f9632SDragan Simic	pmucru: clock-controller@fdd00000 {
384853f9632SDragan Simic		compatible = "rockchip,rk3568-pmucru";
385853f9632SDragan Simic		reg = <0x0 0xfdd00000 0x0 0x1000>;
386853f9632SDragan Simic		#clock-cells = <1>;
387853f9632SDragan Simic		#reset-cells = <1>;
388853f9632SDragan Simic	};
389853f9632SDragan Simic
390853f9632SDragan Simic	cru: clock-controller@fdd20000 {
391853f9632SDragan Simic		compatible = "rockchip,rk3568-cru";
392853f9632SDragan Simic		reg = <0x0 0xfdd20000 0x0 0x1000>;
393853f9632SDragan Simic		clocks = <&xin24m>;
394853f9632SDragan Simic		clock-names = "xin24m";
395853f9632SDragan Simic		#clock-cells = <1>;
396853f9632SDragan Simic		#reset-cells = <1>;
397853f9632SDragan Simic		assigned-clocks = <&pmucru CLK_RTC_32K>, <&cru PLL_GPLL>, <&pmucru PLL_PPLL>;
398853f9632SDragan Simic		assigned-clock-rates = <32768>, <1200000000>, <200000000>;
399853f9632SDragan Simic		assigned-clock-parents = <&pmucru CLK_RTC32K_FRAC>;
400853f9632SDragan Simic		rockchip,grf = <&grf>;
401853f9632SDragan Simic	};
402853f9632SDragan Simic
403853f9632SDragan Simic	i2c0: i2c@fdd40000 {
404853f9632SDragan Simic		compatible = "rockchip,rk3568-i2c", "rockchip,rk3399-i2c";
405853f9632SDragan Simic		reg = <0x0 0xfdd40000 0x0 0x1000>;
406853f9632SDragan Simic		interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
407853f9632SDragan Simic		clocks = <&pmucru CLK_I2C0>, <&pmucru PCLK_I2C0>;
408853f9632SDragan Simic		clock-names = "i2c", "pclk";
409853f9632SDragan Simic		pinctrl-0 = <&i2c0_xfer>;
410853f9632SDragan Simic		pinctrl-names = "default";
411853f9632SDragan Simic		#address-cells = <1>;
412853f9632SDragan Simic		#size-cells = <0>;
413853f9632SDragan Simic		status = "disabled";
414853f9632SDragan Simic	};
415853f9632SDragan Simic
416853f9632SDragan Simic	uart0: serial@fdd50000 {
417853f9632SDragan Simic		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
418853f9632SDragan Simic		reg = <0x0 0xfdd50000 0x0 0x100>;
419853f9632SDragan Simic		interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>;
420853f9632SDragan Simic		clocks = <&pmucru SCLK_UART0>, <&pmucru PCLK_UART0>;
421853f9632SDragan Simic		clock-names = "baudclk", "apb_pclk";
422853f9632SDragan Simic		dmas = <&dmac0 0>, <&dmac0 1>;
423853f9632SDragan Simic		pinctrl-0 = <&uart0_xfer>;
424853f9632SDragan Simic		pinctrl-names = "default";
425853f9632SDragan Simic		reg-io-width = <4>;
426853f9632SDragan Simic		reg-shift = <2>;
427853f9632SDragan Simic		status = "disabled";
428853f9632SDragan Simic	};
429853f9632SDragan Simic
430853f9632SDragan Simic	pwm0: pwm@fdd70000 {
431853f9632SDragan Simic		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
432853f9632SDragan Simic		reg = <0x0 0xfdd70000 0x0 0x10>;
433853f9632SDragan Simic		clocks = <&pmucru CLK_PWM0>, <&pmucru PCLK_PWM0>;
434853f9632SDragan Simic		clock-names = "pwm", "pclk";
435853f9632SDragan Simic		pinctrl-0 = <&pwm0m0_pins>;
436853f9632SDragan Simic		pinctrl-names = "default";
437853f9632SDragan Simic		#pwm-cells = <3>;
438853f9632SDragan Simic		status = "disabled";
439853f9632SDragan Simic	};
440853f9632SDragan Simic
441853f9632SDragan Simic	pwm1: pwm@fdd70010 {
442853f9632SDragan Simic		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
443853f9632SDragan Simic		reg = <0x0 0xfdd70010 0x0 0x10>;
444853f9632SDragan Simic		clocks = <&pmucru CLK_PWM0>, <&pmucru PCLK_PWM0>;
445853f9632SDragan Simic		clock-names = "pwm", "pclk";
446853f9632SDragan Simic		pinctrl-0 = <&pwm1m0_pins>;
447853f9632SDragan Simic		pinctrl-names = "default";
448853f9632SDragan Simic		#pwm-cells = <3>;
449853f9632SDragan Simic		status = "disabled";
450853f9632SDragan Simic	};
451853f9632SDragan Simic
452853f9632SDragan Simic	pwm2: pwm@fdd70020 {
453853f9632SDragan Simic		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
454853f9632SDragan Simic		reg = <0x0 0xfdd70020 0x0 0x10>;
455853f9632SDragan Simic		clocks = <&pmucru CLK_PWM0>, <&pmucru PCLK_PWM0>;
456853f9632SDragan Simic		clock-names = "pwm", "pclk";
457853f9632SDragan Simic		pinctrl-0 = <&pwm2m0_pins>;
458853f9632SDragan Simic		pinctrl-names = "default";
459853f9632SDragan Simic		#pwm-cells = <3>;
460853f9632SDragan Simic		status = "disabled";
461853f9632SDragan Simic	};
462853f9632SDragan Simic
463853f9632SDragan Simic	pwm3: pwm@fdd70030 {
464853f9632SDragan Simic		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
465853f9632SDragan Simic		reg = <0x0 0xfdd70030 0x0 0x10>;
466853f9632SDragan Simic		clocks = <&pmucru CLK_PWM0>, <&pmucru PCLK_PWM0>;
467853f9632SDragan Simic		clock-names = "pwm", "pclk";
468853f9632SDragan Simic		pinctrl-0 = <&pwm3_pins>;
469853f9632SDragan Simic		pinctrl-names = "default";
470853f9632SDragan Simic		#pwm-cells = <3>;
471853f9632SDragan Simic		status = "disabled";
472853f9632SDragan Simic	};
473853f9632SDragan Simic
474853f9632SDragan Simic	pmu: power-management@fdd90000 {
475853f9632SDragan Simic		compatible = "rockchip,rk3568-pmu", "syscon", "simple-mfd";
476853f9632SDragan Simic		reg = <0x0 0xfdd90000 0x0 0x1000>;
477853f9632SDragan Simic
478853f9632SDragan Simic		power: power-controller {
479853f9632SDragan Simic			compatible = "rockchip,rk3568-power-controller";
480853f9632SDragan Simic			#power-domain-cells = <1>;
481853f9632SDragan Simic			#address-cells = <1>;
482853f9632SDragan Simic			#size-cells = <0>;
483853f9632SDragan Simic
484853f9632SDragan Simic			/* These power domains are grouped by VD_GPU */
485853f9632SDragan Simic			power-domain@RK3568_PD_GPU {
486853f9632SDragan Simic				reg = <RK3568_PD_GPU>;
487853f9632SDragan Simic				clocks = <&cru ACLK_GPU_PRE>,
488853f9632SDragan Simic					 <&cru PCLK_GPU_PRE>;
489853f9632SDragan Simic				pm_qos = <&qos_gpu>;
490853f9632SDragan Simic				#power-domain-cells = <0>;
491853f9632SDragan Simic			};
492853f9632SDragan Simic
493853f9632SDragan Simic			/* These power domains are grouped by VD_LOGIC */
494853f9632SDragan Simic			power-domain@RK3568_PD_VI {
495853f9632SDragan Simic				reg = <RK3568_PD_VI>;
496853f9632SDragan Simic				clocks = <&cru HCLK_VI>,
497853f9632SDragan Simic					 <&cru PCLK_VI>;
498853f9632SDragan Simic				pm_qos = <&qos_isp>,
499853f9632SDragan Simic					 <&qos_vicap0>,
500853f9632SDragan Simic					 <&qos_vicap1>;
501853f9632SDragan Simic				#power-domain-cells = <0>;
502853f9632SDragan Simic			};
503853f9632SDragan Simic
504853f9632SDragan Simic			power-domain@RK3568_PD_VO {
505853f9632SDragan Simic				reg = <RK3568_PD_VO>;
506853f9632SDragan Simic				clocks = <&cru HCLK_VO>,
507853f9632SDragan Simic					 <&cru PCLK_VO>,
508853f9632SDragan Simic					 <&cru ACLK_VOP_PRE>;
509853f9632SDragan Simic				pm_qos = <&qos_hdcp>,
510853f9632SDragan Simic					 <&qos_vop_m0>,
511853f9632SDragan Simic					 <&qos_vop_m1>;
512853f9632SDragan Simic				#power-domain-cells = <0>;
513853f9632SDragan Simic			};
514853f9632SDragan Simic
515853f9632SDragan Simic			power-domain@RK3568_PD_RGA {
516853f9632SDragan Simic				reg = <RK3568_PD_RGA>;
517853f9632SDragan Simic				clocks = <&cru HCLK_RGA_PRE>,
518853f9632SDragan Simic					 <&cru PCLK_RGA_PRE>;
519853f9632SDragan Simic				pm_qos = <&qos_ebc>,
520853f9632SDragan Simic					 <&qos_iep>,
521853f9632SDragan Simic					 <&qos_jpeg_dec>,
522853f9632SDragan Simic					 <&qos_jpeg_enc>,
523853f9632SDragan Simic					 <&qos_rga_rd>,
524853f9632SDragan Simic					 <&qos_rga_wr>;
525853f9632SDragan Simic				#power-domain-cells = <0>;
526853f9632SDragan Simic			};
527853f9632SDragan Simic
528853f9632SDragan Simic			power-domain@RK3568_PD_VPU {
529853f9632SDragan Simic				reg = <RK3568_PD_VPU>;
530853f9632SDragan Simic				clocks = <&cru HCLK_VPU_PRE>;
531853f9632SDragan Simic				pm_qos = <&qos_vpu>;
532853f9632SDragan Simic				#power-domain-cells = <0>;
533853f9632SDragan Simic			};
534853f9632SDragan Simic
535853f9632SDragan Simic			power-domain@RK3568_PD_RKVDEC {
536853f9632SDragan Simic				clocks = <&cru HCLK_RKVDEC_PRE>;
537853f9632SDragan Simic				reg = <RK3568_PD_RKVDEC>;
538853f9632SDragan Simic				pm_qos = <&qos_rkvdec>;
539853f9632SDragan Simic				#power-domain-cells = <0>;
540853f9632SDragan Simic			};
541853f9632SDragan Simic
542853f9632SDragan Simic			power-domain@RK3568_PD_RKVENC {
543853f9632SDragan Simic				reg = <RK3568_PD_RKVENC>;
544853f9632SDragan Simic				clocks = <&cru HCLK_RKVENC_PRE>;
545853f9632SDragan Simic				pm_qos = <&qos_rkvenc_rd_m0>,
546853f9632SDragan Simic					 <&qos_rkvenc_rd_m1>,
547853f9632SDragan Simic					 <&qos_rkvenc_wr_m0>;
548853f9632SDragan Simic				#power-domain-cells = <0>;
549853f9632SDragan Simic			};
550853f9632SDragan Simic		};
551853f9632SDragan Simic	};
552853f9632SDragan Simic
553853f9632SDragan Simic	gpu: gpu@fde60000 {
554853f9632SDragan Simic		compatible = "rockchip,rk3568-mali", "arm,mali-bifrost";
555853f9632SDragan Simic		reg = <0x0 0xfde60000 0x0 0x4000>;
556853f9632SDragan Simic		interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>,
557853f9632SDragan Simic			     <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>,
558853f9632SDragan Simic			     <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
559853f9632SDragan Simic		interrupt-names = "job", "mmu", "gpu";
560853f9632SDragan Simic		clocks = <&scmi_clk 1>, <&cru CLK_GPU>;
561853f9632SDragan Simic		clock-names = "gpu", "bus";
562853f9632SDragan Simic		#cooling-cells = <2>;
563853f9632SDragan Simic		power-domains = <&power RK3568_PD_GPU>;
564853f9632SDragan Simic		status = "disabled";
565853f9632SDragan Simic	};
566853f9632SDragan Simic
567853f9632SDragan Simic	vpu: video-codec@fdea0400 {
568853f9632SDragan Simic		compatible = "rockchip,rk3568-vpu";
569853f9632SDragan Simic		reg = <0x0 0xfdea0000 0x0 0x800>;
570853f9632SDragan Simic		interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
571853f9632SDragan Simic		interrupt-names = "vdpu";
572853f9632SDragan Simic		clocks = <&cru ACLK_VPU>, <&cru HCLK_VPU>;
573853f9632SDragan Simic		clock-names = "aclk", "hclk";
574853f9632SDragan Simic		iommus = <&vdpu_mmu>;
575853f9632SDragan Simic		power-domains = <&power RK3568_PD_VPU>;
576853f9632SDragan Simic	};
577853f9632SDragan Simic
578853f9632SDragan Simic	vdpu_mmu: iommu@fdea0800 {
579853f9632SDragan Simic		compatible = "rockchip,rk3568-iommu";
580853f9632SDragan Simic		reg = <0x0 0xfdea0800 0x0 0x40>;
581853f9632SDragan Simic		interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
582853f9632SDragan Simic		clock-names = "aclk", "iface";
583853f9632SDragan Simic		clocks = <&cru ACLK_VPU>, <&cru HCLK_VPU>;
584853f9632SDragan Simic		power-domains = <&power RK3568_PD_VPU>;
585853f9632SDragan Simic		#iommu-cells = <0>;
586853f9632SDragan Simic	};
587853f9632SDragan Simic
588853f9632SDragan Simic	rga: rga@fdeb0000 {
589853f9632SDragan Simic		compatible = "rockchip,rk3568-rga", "rockchip,rk3288-rga";
590853f9632SDragan Simic		reg = <0x0 0xfdeb0000 0x0 0x180>;
591853f9632SDragan Simic		interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
592853f9632SDragan Simic		clocks = <&cru ACLK_RGA>, <&cru HCLK_RGA>, <&cru CLK_RGA_CORE>;
593853f9632SDragan Simic		clock-names = "aclk", "hclk", "sclk";
594853f9632SDragan Simic		resets = <&cru SRST_RGA_CORE>, <&cru SRST_A_RGA>, <&cru SRST_H_RGA>;
595853f9632SDragan Simic		reset-names = "core", "axi", "ahb";
596853f9632SDragan Simic		power-domains = <&power RK3568_PD_RGA>;
597853f9632SDragan Simic	};
598853f9632SDragan Simic
599853f9632SDragan Simic	vepu: video-codec@fdee0000 {
600853f9632SDragan Simic		compatible = "rockchip,rk3568-vepu";
601853f9632SDragan Simic		reg = <0x0 0xfdee0000 0x0 0x800>;
602853f9632SDragan Simic		interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
603853f9632SDragan Simic		clocks = <&cru ACLK_JENC>, <&cru HCLK_JENC>;
604853f9632SDragan Simic		clock-names = "aclk", "hclk";
605853f9632SDragan Simic		iommus = <&vepu_mmu>;
606853f9632SDragan Simic		power-domains = <&power RK3568_PD_RGA>;
607853f9632SDragan Simic	};
608853f9632SDragan Simic
609853f9632SDragan Simic	vepu_mmu: iommu@fdee0800 {
610853f9632SDragan Simic		compatible = "rockchip,rk3568-iommu";
611853f9632SDragan Simic		reg = <0x0 0xfdee0800 0x0 0x40>;
612853f9632SDragan Simic		interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
613853f9632SDragan Simic		clocks = <&cru ACLK_JENC>, <&cru HCLK_JENC>;
614853f9632SDragan Simic		clock-names = "aclk", "iface";
615853f9632SDragan Simic		power-domains = <&power RK3568_PD_RGA>;
616853f9632SDragan Simic		#iommu-cells = <0>;
617853f9632SDragan Simic	};
618853f9632SDragan Simic
619853f9632SDragan Simic	sdmmc2: mmc@fe000000 {
620853f9632SDragan Simic		compatible = "rockchip,rk3568-dw-mshc", "rockchip,rk3288-dw-mshc";
621853f9632SDragan Simic		reg = <0x0 0xfe000000 0x0 0x4000>;
622853f9632SDragan Simic		interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
623853f9632SDragan Simic		clocks = <&cru HCLK_SDMMC2>, <&cru CLK_SDMMC2>,
624853f9632SDragan Simic			 <&cru SCLK_SDMMC2_DRV>, <&cru SCLK_SDMMC2_SAMPLE>;
625853f9632SDragan Simic		clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
626853f9632SDragan Simic		fifo-depth = <0x100>;
627853f9632SDragan Simic		max-frequency = <150000000>;
628853f9632SDragan Simic		resets = <&cru SRST_SDMMC2>;
629853f9632SDragan Simic		reset-names = "reset";
630853f9632SDragan Simic		status = "disabled";
631853f9632SDragan Simic	};
632853f9632SDragan Simic
633853f9632SDragan Simic	gmac1: ethernet@fe010000 {
634853f9632SDragan Simic		compatible = "rockchip,rk3568-gmac", "snps,dwmac-4.20a";
635853f9632SDragan Simic		reg = <0x0 0xfe010000 0x0 0x10000>;
636853f9632SDragan Simic		interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>,
637853f9632SDragan Simic			     <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
638853f9632SDragan Simic		interrupt-names = "macirq", "eth_wake_irq";
639853f9632SDragan Simic		clocks = <&cru SCLK_GMAC1>, <&cru SCLK_GMAC1_RX_TX>,
640853f9632SDragan Simic			 <&cru SCLK_GMAC1_RX_TX>, <&cru CLK_MAC1_REFOUT>,
641853f9632SDragan Simic			 <&cru ACLK_GMAC1>, <&cru PCLK_GMAC1>,
642853f9632SDragan Simic			 <&cru SCLK_GMAC1_RX_TX>, <&cru CLK_GMAC1_PTP_REF>;
643853f9632SDragan Simic		clock-names = "stmmaceth", "mac_clk_rx",
644853f9632SDragan Simic			      "mac_clk_tx", "clk_mac_refout",
645853f9632SDragan Simic			      "aclk_mac", "pclk_mac",
646853f9632SDragan Simic			      "clk_mac_speed", "ptp_ref";
647853f9632SDragan Simic		resets = <&cru SRST_A_GMAC1>;
648853f9632SDragan Simic		reset-names = "stmmaceth";
649853f9632SDragan Simic		rockchip,grf = <&grf>;
650853f9632SDragan Simic		snps,axi-config = <&gmac1_stmmac_axi_setup>;
651853f9632SDragan Simic		snps,mixed-burst;
652853f9632SDragan Simic		snps,mtl-rx-config = <&gmac1_mtl_rx_setup>;
653853f9632SDragan Simic		snps,mtl-tx-config = <&gmac1_mtl_tx_setup>;
654853f9632SDragan Simic		snps,tso;
655853f9632SDragan Simic		status = "disabled";
656853f9632SDragan Simic
657853f9632SDragan Simic		mdio1: mdio {
658853f9632SDragan Simic			compatible = "snps,dwmac-mdio";
659853f9632SDragan Simic			#address-cells = <0x1>;
660853f9632SDragan Simic			#size-cells = <0x0>;
661853f9632SDragan Simic		};
662853f9632SDragan Simic
663853f9632SDragan Simic		gmac1_stmmac_axi_setup: stmmac-axi-config {
664853f9632SDragan Simic			snps,blen = <0 0 0 0 16 8 4>;
665853f9632SDragan Simic			snps,rd_osr_lmt = <8>;
666853f9632SDragan Simic			snps,wr_osr_lmt = <4>;
667853f9632SDragan Simic		};
668853f9632SDragan Simic
669853f9632SDragan Simic		gmac1_mtl_rx_setup: rx-queues-config {
670853f9632SDragan Simic			snps,rx-queues-to-use = <1>;
671853f9632SDragan Simic			queue0 {};
672853f9632SDragan Simic		};
673853f9632SDragan Simic
674853f9632SDragan Simic		gmac1_mtl_tx_setup: tx-queues-config {
675853f9632SDragan Simic			snps,tx-queues-to-use = <1>;
676853f9632SDragan Simic			queue0 {};
677853f9632SDragan Simic		};
678853f9632SDragan Simic	};
679853f9632SDragan Simic
680853f9632SDragan Simic	vop: vop@fe040000 {
681853f9632SDragan Simic		reg = <0x0 0xfe040000 0x0 0x3000>, <0x0 0xfe044000 0x0 0x1000>;
682853f9632SDragan Simic		reg-names = "vop", "gamma-lut";
683853f9632SDragan Simic		interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
684853f9632SDragan Simic		clocks = <&cru ACLK_VOP>, <&cru HCLK_VOP>, <&cru DCLK_VOP0>,
685853f9632SDragan Simic			 <&cru DCLK_VOP1>, <&cru DCLK_VOP2>;
686853f9632SDragan Simic		clock-names = "aclk", "hclk", "dclk_vp0", "dclk_vp1", "dclk_vp2";
687853f9632SDragan Simic		iommus = <&vop_mmu>;
688853f9632SDragan Simic		power-domains = <&power RK3568_PD_VO>;
689853f9632SDragan Simic		rockchip,grf = <&grf>;
690853f9632SDragan Simic		status = "disabled";
691853f9632SDragan Simic
692853f9632SDragan Simic		vop_out: ports {
693853f9632SDragan Simic			#address-cells = <1>;
694853f9632SDragan Simic			#size-cells = <0>;
695853f9632SDragan Simic
696853f9632SDragan Simic			vp0: port@0 {
697853f9632SDragan Simic				reg = <0>;
698853f9632SDragan Simic				#address-cells = <1>;
699853f9632SDragan Simic				#size-cells = <0>;
700853f9632SDragan Simic			};
701853f9632SDragan Simic
702853f9632SDragan Simic			vp1: port@1 {
703853f9632SDragan Simic				reg = <1>;
704853f9632SDragan Simic				#address-cells = <1>;
705853f9632SDragan Simic				#size-cells = <0>;
706853f9632SDragan Simic			};
707853f9632SDragan Simic
708853f9632SDragan Simic			vp2: port@2 {
709853f9632SDragan Simic				reg = <2>;
710853f9632SDragan Simic				#address-cells = <1>;
711853f9632SDragan Simic				#size-cells = <0>;
712853f9632SDragan Simic			};
713853f9632SDragan Simic		};
714853f9632SDragan Simic	};
715853f9632SDragan Simic
716853f9632SDragan Simic	vop_mmu: iommu@fe043e00 {
717853f9632SDragan Simic		compatible = "rockchip,rk3568-iommu";
718853f9632SDragan Simic		reg = <0x0 0xfe043e00 0x0 0x100>, <0x0 0xfe043f00 0x0 0x100>;
719853f9632SDragan Simic		interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
720853f9632SDragan Simic		clocks = <&cru ACLK_VOP>, <&cru HCLK_VOP>;
721853f9632SDragan Simic		clock-names = "aclk", "iface";
722853f9632SDragan Simic		#iommu-cells = <0>;
723853f9632SDragan Simic		power-domains = <&power RK3568_PD_VO>;
724853f9632SDragan Simic		status = "disabled";
725853f9632SDragan Simic	};
726853f9632SDragan Simic
727853f9632SDragan Simic	dsi0: dsi@fe060000 {
728853f9632SDragan Simic		compatible = "rockchip,rk3568-mipi-dsi", "snps,dw-mipi-dsi";
729853f9632SDragan Simic		reg = <0x00 0xfe060000 0x00 0x10000>;
730853f9632SDragan Simic		interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
731853f9632SDragan Simic		clock-names = "pclk";
732853f9632SDragan Simic		clocks = <&cru PCLK_DSITX_0>;
733853f9632SDragan Simic		phy-names = "dphy";
734853f9632SDragan Simic		phys = <&dsi_dphy0>;
735853f9632SDragan Simic		power-domains = <&power RK3568_PD_VO>;
736853f9632SDragan Simic		reset-names = "apb";
737853f9632SDragan Simic		resets = <&cru SRST_P_DSITX_0>;
738853f9632SDragan Simic		rockchip,grf = <&grf>;
739853f9632SDragan Simic		status = "disabled";
740853f9632SDragan Simic
741853f9632SDragan Simic		ports {
742853f9632SDragan Simic			#address-cells = <1>;
743853f9632SDragan Simic			#size-cells = <0>;
744853f9632SDragan Simic
745853f9632SDragan Simic			dsi0_in: port@0 {
746853f9632SDragan Simic				reg = <0>;
747853f9632SDragan Simic			};
748853f9632SDragan Simic
749853f9632SDragan Simic			dsi0_out: port@1 {
750853f9632SDragan Simic				reg = <1>;
751853f9632SDragan Simic			};
752853f9632SDragan Simic		};
753853f9632SDragan Simic	};
754853f9632SDragan Simic
755853f9632SDragan Simic	dsi1: dsi@fe070000 {
756853f9632SDragan Simic		compatible = "rockchip,rk3568-mipi-dsi", "snps,dw-mipi-dsi";
757853f9632SDragan Simic		reg = <0x0 0xfe070000 0x0 0x10000>;
758853f9632SDragan Simic		interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
759853f9632SDragan Simic		clock-names = "pclk";
760853f9632SDragan Simic		clocks = <&cru PCLK_DSITX_1>;
761853f9632SDragan Simic		phy-names = "dphy";
762853f9632SDragan Simic		phys = <&dsi_dphy1>;
763853f9632SDragan Simic		power-domains = <&power RK3568_PD_VO>;
764853f9632SDragan Simic		reset-names = "apb";
765853f9632SDragan Simic		resets = <&cru SRST_P_DSITX_1>;
766853f9632SDragan Simic		rockchip,grf = <&grf>;
767853f9632SDragan Simic		status = "disabled";
768853f9632SDragan Simic
769853f9632SDragan Simic		ports {
770853f9632SDragan Simic			#address-cells = <1>;
771853f9632SDragan Simic			#size-cells = <0>;
772853f9632SDragan Simic
773853f9632SDragan Simic			dsi1_in: port@0 {
774853f9632SDragan Simic				reg = <0>;
775853f9632SDragan Simic			};
776853f9632SDragan Simic
777853f9632SDragan Simic			dsi1_out: port@1 {
778853f9632SDragan Simic				reg = <1>;
779853f9632SDragan Simic			};
780853f9632SDragan Simic		};
781853f9632SDragan Simic	};
782853f9632SDragan Simic
783853f9632SDragan Simic	hdmi: hdmi@fe0a0000 {
784853f9632SDragan Simic		compatible = "rockchip,rk3568-dw-hdmi";
785853f9632SDragan Simic		reg = <0x0 0xfe0a0000 0x0 0x20000>;
786853f9632SDragan Simic		interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
787853f9632SDragan Simic		clocks = <&cru PCLK_HDMI_HOST>,
788853f9632SDragan Simic			 <&cru CLK_HDMI_SFR>,
789853f9632SDragan Simic			 <&cru CLK_HDMI_CEC>,
790853f9632SDragan Simic			 <&pmucru CLK_HDMI_REF>,
791853f9632SDragan Simic			 <&cru HCLK_VO>;
792853f9632SDragan Simic		clock-names = "iahb", "isfr", "cec", "ref";
793853f9632SDragan Simic		pinctrl-names = "default";
794853f9632SDragan Simic		pinctrl-0 = <&hdmitx_scl &hdmitx_sda &hdmitxm0_cec>;
795853f9632SDragan Simic		power-domains = <&power RK3568_PD_VO>;
796853f9632SDragan Simic		reg-io-width = <4>;
797853f9632SDragan Simic		rockchip,grf = <&grf>;
798853f9632SDragan Simic		#sound-dai-cells = <0>;
799853f9632SDragan Simic		status = "disabled";
800853f9632SDragan Simic
801853f9632SDragan Simic		ports {
802853f9632SDragan Simic			#address-cells = <1>;
803853f9632SDragan Simic			#size-cells = <0>;
804853f9632SDragan Simic
805853f9632SDragan Simic			hdmi_in: port@0 {
806853f9632SDragan Simic				reg = <0>;
807853f9632SDragan Simic			};
808853f9632SDragan Simic
809853f9632SDragan Simic			hdmi_out: port@1 {
810853f9632SDragan Simic				reg = <1>;
811853f9632SDragan Simic			};
812853f9632SDragan Simic		};
813853f9632SDragan Simic	};
814853f9632SDragan Simic
815853f9632SDragan Simic	qos_gpu: qos@fe128000 {
816853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
817853f9632SDragan Simic		reg = <0x0 0xfe128000 0x0 0x20>;
818853f9632SDragan Simic	};
819853f9632SDragan Simic
820853f9632SDragan Simic	qos_rkvenc_rd_m0: qos@fe138080 {
821853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
822853f9632SDragan Simic		reg = <0x0 0xfe138080 0x0 0x20>;
823853f9632SDragan Simic	};
824853f9632SDragan Simic
825853f9632SDragan Simic	qos_rkvenc_rd_m1: qos@fe138100 {
826853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
827853f9632SDragan Simic		reg = <0x0 0xfe138100 0x0 0x20>;
828853f9632SDragan Simic	};
829853f9632SDragan Simic
830853f9632SDragan Simic	qos_rkvenc_wr_m0: qos@fe138180 {
831853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
832853f9632SDragan Simic		reg = <0x0 0xfe138180 0x0 0x20>;
833853f9632SDragan Simic	};
834853f9632SDragan Simic
835853f9632SDragan Simic	qos_isp: qos@fe148000 {
836853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
837853f9632SDragan Simic		reg = <0x0 0xfe148000 0x0 0x20>;
838853f9632SDragan Simic	};
839853f9632SDragan Simic
840853f9632SDragan Simic	qos_vicap0: qos@fe148080 {
841853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
842853f9632SDragan Simic		reg = <0x0 0xfe148080 0x0 0x20>;
843853f9632SDragan Simic	};
844853f9632SDragan Simic
845853f9632SDragan Simic	qos_vicap1: qos@fe148100 {
846853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
847853f9632SDragan Simic		reg = <0x0 0xfe148100 0x0 0x20>;
848853f9632SDragan Simic	};
849853f9632SDragan Simic
850853f9632SDragan Simic	qos_vpu: qos@fe150000 {
851853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
852853f9632SDragan Simic		reg = <0x0 0xfe150000 0x0 0x20>;
853853f9632SDragan Simic	};
854853f9632SDragan Simic
855853f9632SDragan Simic	qos_ebc: qos@fe158000 {
856853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
857853f9632SDragan Simic		reg = <0x0 0xfe158000 0x0 0x20>;
858853f9632SDragan Simic	};
859853f9632SDragan Simic
860853f9632SDragan Simic	qos_iep: qos@fe158100 {
861853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
862853f9632SDragan Simic		reg = <0x0 0xfe158100 0x0 0x20>;
863853f9632SDragan Simic	};
864853f9632SDragan Simic
865853f9632SDragan Simic	qos_jpeg_dec: qos@fe158180 {
866853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
867853f9632SDragan Simic		reg = <0x0 0xfe158180 0x0 0x20>;
868853f9632SDragan Simic	};
869853f9632SDragan Simic
870853f9632SDragan Simic	qos_jpeg_enc: qos@fe158200 {
871853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
872853f9632SDragan Simic		reg = <0x0 0xfe158200 0x0 0x20>;
873853f9632SDragan Simic	};
874853f9632SDragan Simic
875853f9632SDragan Simic	qos_rga_rd: qos@fe158280 {
876853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
877853f9632SDragan Simic		reg = <0x0 0xfe158280 0x0 0x20>;
878853f9632SDragan Simic	};
879853f9632SDragan Simic
880853f9632SDragan Simic	qos_rga_wr: qos@fe158300 {
881853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
882853f9632SDragan Simic		reg = <0x0 0xfe158300 0x0 0x20>;
883853f9632SDragan Simic	};
884853f9632SDragan Simic
885853f9632SDragan Simic	qos_npu: qos@fe180000 {
886853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
887853f9632SDragan Simic		reg = <0x0 0xfe180000 0x0 0x20>;
888853f9632SDragan Simic	};
889853f9632SDragan Simic
890853f9632SDragan Simic	qos_pcie2x1: qos@fe190000 {
891853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
892853f9632SDragan Simic		reg = <0x0 0xfe190000 0x0 0x20>;
893853f9632SDragan Simic	};
894853f9632SDragan Simic
895853f9632SDragan Simic	qos_sata1: qos@fe190280 {
896853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
897853f9632SDragan Simic		reg = <0x0 0xfe190280 0x0 0x20>;
898853f9632SDragan Simic	};
899853f9632SDragan Simic
900853f9632SDragan Simic	qos_sata2: qos@fe190300 {
901853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
902853f9632SDragan Simic		reg = <0x0 0xfe190300 0x0 0x20>;
903853f9632SDragan Simic	};
904853f9632SDragan Simic
905853f9632SDragan Simic	qos_usb3_0: qos@fe190380 {
906853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
907853f9632SDragan Simic		reg = <0x0 0xfe190380 0x0 0x20>;
908853f9632SDragan Simic	};
909853f9632SDragan Simic
910853f9632SDragan Simic	qos_usb3_1: qos@fe190400 {
911853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
912853f9632SDragan Simic		reg = <0x0 0xfe190400 0x0 0x20>;
913853f9632SDragan Simic	};
914853f9632SDragan Simic
915853f9632SDragan Simic	qos_rkvdec: qos@fe198000 {
916853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
917853f9632SDragan Simic		reg = <0x0 0xfe198000 0x0 0x20>;
918853f9632SDragan Simic	};
919853f9632SDragan Simic
920853f9632SDragan Simic	qos_hdcp: qos@fe1a8000 {
921853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
922853f9632SDragan Simic		reg = <0x0 0xfe1a8000 0x0 0x20>;
923853f9632SDragan Simic	};
924853f9632SDragan Simic
925853f9632SDragan Simic	qos_vop_m0: qos@fe1a8080 {
926853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
927853f9632SDragan Simic		reg = <0x0 0xfe1a8080 0x0 0x20>;
928853f9632SDragan Simic	};
929853f9632SDragan Simic
930853f9632SDragan Simic	qos_vop_m1: qos@fe1a8100 {
931853f9632SDragan Simic		compatible = "rockchip,rk3568-qos", "syscon";
932853f9632SDragan Simic		reg = <0x0 0xfe1a8100 0x0 0x20>;
933853f9632SDragan Simic	};
934853f9632SDragan Simic
935853f9632SDragan Simic	dfi: dfi@fe230000 {
936853f9632SDragan Simic		compatible = "rockchip,rk3568-dfi";
937853f9632SDragan Simic		reg = <0x00 0xfe230000 0x00 0x400>;
938853f9632SDragan Simic		interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
939853f9632SDragan Simic		rockchip,pmu = <&pmugrf>;
940853f9632SDragan Simic	};
941853f9632SDragan Simic
942853f9632SDragan Simic	pcie2x1: pcie@fe260000 {
943853f9632SDragan Simic		compatible = "rockchip,rk3568-pcie";
944853f9632SDragan Simic		reg = <0x3 0xc0000000 0x0 0x00400000>,
945853f9632SDragan Simic		      <0x0 0xfe260000 0x0 0x00010000>,
946853f9632SDragan Simic		      <0x0 0xf4000000 0x0 0x00100000>;
947853f9632SDragan Simic		reg-names = "dbi", "apb", "config";
948853f9632SDragan Simic		interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>,
949853f9632SDragan Simic			     <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>,
950853f9632SDragan Simic			     <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>,
951853f9632SDragan Simic			     <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>,
952853f9632SDragan Simic			     <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
953853f9632SDragan Simic		interrupt-names = "sys", "pmc", "msg", "legacy", "err";
954853f9632SDragan Simic		bus-range = <0x0 0xf>;
955853f9632SDragan Simic		clocks = <&cru ACLK_PCIE20_MST>, <&cru ACLK_PCIE20_SLV>,
956853f9632SDragan Simic			 <&cru ACLK_PCIE20_DBI>, <&cru PCLK_PCIE20>,
957853f9632SDragan Simic			 <&cru CLK_PCIE20_AUX_NDFT>;
958853f9632SDragan Simic		clock-names = "aclk_mst", "aclk_slv",
959853f9632SDragan Simic			      "aclk_dbi", "pclk", "aux";
960853f9632SDragan Simic		device_type = "pci";
961853f9632SDragan Simic		#interrupt-cells = <1>;
962853f9632SDragan Simic		interrupt-map-mask = <0 0 0 7>;
963853f9632SDragan Simic		interrupt-map = <0 0 0 1 &pcie_intc 0>,
964853f9632SDragan Simic				<0 0 0 2 &pcie_intc 1>,
965853f9632SDragan Simic				<0 0 0 3 &pcie_intc 2>,
966853f9632SDragan Simic				<0 0 0 4 &pcie_intc 3>;
967853f9632SDragan Simic		linux,pci-domain = <0>;
968853f9632SDragan Simic		num-ib-windows = <6>;
969853f9632SDragan Simic		num-ob-windows = <2>;
970853f9632SDragan Simic		max-link-speed = <2>;
971b956c9deSDmitry Osipenko		msi-map = <0x0 &its 0x0 0x1000>;
972853f9632SDragan Simic		num-lanes = <1>;
973853f9632SDragan Simic		phys = <&combphy2 PHY_TYPE_PCIE>;
974853f9632SDragan Simic		phy-names = "pcie-phy";
975853f9632SDragan Simic		power-domains = <&power RK3568_PD_PIPE>;
976853f9632SDragan Simic		ranges = <0x01000000 0x0 0xf4100000 0x0 0xf4100000 0x0 0x00100000>,
977853f9632SDragan Simic			 <0x02000000 0x0 0xf4200000 0x0 0xf4200000 0x0 0x01e00000>,
978853f9632SDragan Simic			 <0x03000000 0x0 0x40000000 0x3 0x00000000 0x0 0x40000000>;
979853f9632SDragan Simic		resets = <&cru SRST_PCIE20_POWERUP>;
980853f9632SDragan Simic		reset-names = "pipe";
981853f9632SDragan Simic		#address-cells = <3>;
982853f9632SDragan Simic		#size-cells = <2>;
983853f9632SDragan Simic		status = "disabled";
984853f9632SDragan Simic
985853f9632SDragan Simic		pcie_intc: legacy-interrupt-controller {
986853f9632SDragan Simic			#address-cells = <0>;
987853f9632SDragan Simic			#interrupt-cells = <1>;
988853f9632SDragan Simic			interrupt-controller;
989853f9632SDragan Simic			interrupt-parent = <&gic>;
990853f9632SDragan Simic			interrupts = <GIC_SPI 72 IRQ_TYPE_EDGE_RISING>;
991853f9632SDragan Simic		};
992853f9632SDragan Simic	};
993853f9632SDragan Simic
994853f9632SDragan Simic	sdmmc0: mmc@fe2b0000 {
995853f9632SDragan Simic		compatible = "rockchip,rk3568-dw-mshc", "rockchip,rk3288-dw-mshc";
996853f9632SDragan Simic		reg = <0x0 0xfe2b0000 0x0 0x4000>;
997853f9632SDragan Simic		interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
998853f9632SDragan Simic		clocks = <&cru HCLK_SDMMC0>, <&cru CLK_SDMMC0>,
999853f9632SDragan Simic			 <&cru SCLK_SDMMC0_DRV>, <&cru SCLK_SDMMC0_SAMPLE>;
1000853f9632SDragan Simic		clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
1001853f9632SDragan Simic		fifo-depth = <0x100>;
1002853f9632SDragan Simic		max-frequency = <150000000>;
1003853f9632SDragan Simic		resets = <&cru SRST_SDMMC0>;
1004853f9632SDragan Simic		reset-names = "reset";
1005853f9632SDragan Simic		status = "disabled";
1006853f9632SDragan Simic	};
1007853f9632SDragan Simic
1008853f9632SDragan Simic	sdmmc1: mmc@fe2c0000 {
1009853f9632SDragan Simic		compatible = "rockchip,rk3568-dw-mshc", "rockchip,rk3288-dw-mshc";
1010853f9632SDragan Simic		reg = <0x0 0xfe2c0000 0x0 0x4000>;
1011853f9632SDragan Simic		interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
1012853f9632SDragan Simic		clocks = <&cru HCLK_SDMMC1>, <&cru CLK_SDMMC1>,
1013853f9632SDragan Simic			 <&cru SCLK_SDMMC1_DRV>, <&cru SCLK_SDMMC1_SAMPLE>;
1014853f9632SDragan Simic		clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
1015853f9632SDragan Simic		fifo-depth = <0x100>;
1016853f9632SDragan Simic		max-frequency = <150000000>;
1017853f9632SDragan Simic		resets = <&cru SRST_SDMMC1>;
1018853f9632SDragan Simic		reset-names = "reset";
1019853f9632SDragan Simic		status = "disabled";
1020853f9632SDragan Simic	};
1021853f9632SDragan Simic
1022853f9632SDragan Simic	sfc: spi@fe300000 {
1023853f9632SDragan Simic		compatible = "rockchip,sfc";
1024853f9632SDragan Simic		reg = <0x0 0xfe300000 0x0 0x4000>;
1025853f9632SDragan Simic		interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
1026853f9632SDragan Simic		clocks = <&cru SCLK_SFC>, <&cru HCLK_SFC>;
1027853f9632SDragan Simic		clock-names = "clk_sfc", "hclk_sfc";
1028853f9632SDragan Simic		pinctrl-0 = <&fspi_pins>;
1029853f9632SDragan Simic		pinctrl-names = "default";
1030853f9632SDragan Simic		status = "disabled";
1031853f9632SDragan Simic	};
1032853f9632SDragan Simic
1033853f9632SDragan Simic	sdhci: mmc@fe310000 {
1034853f9632SDragan Simic		compatible = "rockchip,rk3568-dwcmshc";
1035853f9632SDragan Simic		reg = <0x0 0xfe310000 0x0 0x10000>;
1036853f9632SDragan Simic		interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
1037853f9632SDragan Simic		assigned-clocks = <&cru BCLK_EMMC>, <&cru TCLK_EMMC>;
1038853f9632SDragan Simic		assigned-clock-rates = <200000000>, <24000000>;
1039853f9632SDragan Simic		clocks = <&cru CCLK_EMMC>, <&cru HCLK_EMMC>,
1040853f9632SDragan Simic			 <&cru ACLK_EMMC>, <&cru BCLK_EMMC>,
1041853f9632SDragan Simic			 <&cru TCLK_EMMC>;
1042853f9632SDragan Simic		clock-names = "core", "bus", "axi", "block", "timer";
1043853f9632SDragan Simic		status = "disabled";
1044853f9632SDragan Simic	};
1045853f9632SDragan Simic
10465afdb98dSDragan Simic	/*
10475afdb98dSDragan Simic	 * Testing showed that the HWRNG found in RK3566 produces unacceptably
10485afdb98dSDragan Simic	 * low quality of random data, so the HWRNG isn't enabled for all RK356x
10495afdb98dSDragan Simic	 * SoC variants despite its presence.
10505afdb98dSDragan Simic	 */
1051853f9632SDragan Simic	rng: rng@fe388000 {
1052853f9632SDragan Simic		compatible = "rockchip,rk3568-rng";
1053853f9632SDragan Simic		reg = <0x0 0xfe388000 0x0 0x4000>;
1054853f9632SDragan Simic		clocks = <&cru CLK_TRNG_NS>, <&cru HCLK_TRNG_NS>;
1055853f9632SDragan Simic		clock-names = "core", "ahb";
1056853f9632SDragan Simic		resets = <&cru SRST_TRNG_NS>;
1057853f9632SDragan Simic		status = "disabled";
1058853f9632SDragan Simic	};
1059853f9632SDragan Simic
1060853f9632SDragan Simic	i2s0_8ch: i2s@fe400000 {
1061853f9632SDragan Simic		compatible = "rockchip,rk3568-i2s-tdm";
1062853f9632SDragan Simic		reg = <0x0 0xfe400000 0x0 0x1000>;
1063853f9632SDragan Simic		interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
1064853f9632SDragan Simic		assigned-clocks = <&cru CLK_I2S0_8CH_TX_SRC>, <&cru CLK_I2S0_8CH_RX_SRC>;
1065853f9632SDragan Simic		assigned-clock-rates = <1188000000>, <1188000000>;
1066853f9632SDragan Simic		clocks = <&cru MCLK_I2S0_8CH_TX>, <&cru MCLK_I2S0_8CH_RX>, <&cru HCLK_I2S0_8CH>;
1067853f9632SDragan Simic		clock-names = "mclk_tx", "mclk_rx", "hclk";
1068853f9632SDragan Simic		dmas = <&dmac1 0>;
1069853f9632SDragan Simic		dma-names = "tx";
1070853f9632SDragan Simic		resets = <&cru SRST_M_I2S0_8CH_TX>, <&cru SRST_M_I2S0_8CH_RX>;
1071853f9632SDragan Simic		reset-names = "tx-m", "rx-m";
1072853f9632SDragan Simic		rockchip,grf = <&grf>;
1073853f9632SDragan Simic		#sound-dai-cells = <0>;
1074853f9632SDragan Simic		status = "disabled";
1075853f9632SDragan Simic	};
1076853f9632SDragan Simic
1077853f9632SDragan Simic	i2s1_8ch: i2s@fe410000 {
1078853f9632SDragan Simic		compatible = "rockchip,rk3568-i2s-tdm";
1079853f9632SDragan Simic		reg = <0x0 0xfe410000 0x0 0x1000>;
1080853f9632SDragan Simic		interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
1081853f9632SDragan Simic		assigned-clocks = <&cru CLK_I2S1_8CH_TX_SRC>, <&cru CLK_I2S1_8CH_RX_SRC>;
1082853f9632SDragan Simic		assigned-clock-rates = <1188000000>, <1188000000>;
1083853f9632SDragan Simic		clocks = <&cru MCLK_I2S1_8CH_TX>, <&cru MCLK_I2S1_8CH_RX>,
1084853f9632SDragan Simic			 <&cru HCLK_I2S1_8CH>;
1085853f9632SDragan Simic		clock-names = "mclk_tx", "mclk_rx", "hclk";
1086853f9632SDragan Simic		dmas = <&dmac1 3>, <&dmac1 2>;
1087853f9632SDragan Simic		dma-names = "rx", "tx";
1088853f9632SDragan Simic		resets = <&cru SRST_M_I2S1_8CH_TX>, <&cru SRST_M_I2S1_8CH_RX>;
1089853f9632SDragan Simic		reset-names = "tx-m", "rx-m";
1090853f9632SDragan Simic		rockchip,grf = <&grf>;
1091853f9632SDragan Simic		pinctrl-names = "default";
1092853f9632SDragan Simic		pinctrl-0 = <&i2s1m0_sclktx &i2s1m0_sclkrx
1093853f9632SDragan Simic			     &i2s1m0_lrcktx &i2s1m0_lrckrx
1094853f9632SDragan Simic			     &i2s1m0_sdi0   &i2s1m0_sdi1
1095853f9632SDragan Simic			     &i2s1m0_sdi2   &i2s1m0_sdi3
1096853f9632SDragan Simic			     &i2s1m0_sdo0   &i2s1m0_sdo1
1097853f9632SDragan Simic			     &i2s1m0_sdo2   &i2s1m0_sdo3>;
1098853f9632SDragan Simic		#sound-dai-cells = <0>;
1099853f9632SDragan Simic		status = "disabled";
1100853f9632SDragan Simic	};
1101853f9632SDragan Simic
1102853f9632SDragan Simic	i2s2_2ch: i2s@fe420000 {
1103853f9632SDragan Simic		compatible = "rockchip,rk3568-i2s-tdm";
1104853f9632SDragan Simic		reg = <0x0 0xfe420000 0x0 0x1000>;
1105853f9632SDragan Simic		interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
1106853f9632SDragan Simic		assigned-clocks = <&cru CLK_I2S2_2CH_SRC>;
1107853f9632SDragan Simic		assigned-clock-rates = <1188000000>;
1108853f9632SDragan Simic		clocks = <&cru MCLK_I2S2_2CH>, <&cru MCLK_I2S2_2CH>, <&cru HCLK_I2S2_2CH>;
1109853f9632SDragan Simic		clock-names = "mclk_tx", "mclk_rx", "hclk";
1110853f9632SDragan Simic		dmas = <&dmac1 4>, <&dmac1 5>;
1111853f9632SDragan Simic		dma-names = "tx", "rx";
1112853f9632SDragan Simic		resets = <&cru SRST_M_I2S2_2CH>;
1113853f9632SDragan Simic		reset-names = "tx-m";
1114853f9632SDragan Simic		rockchip,grf = <&grf>;
1115853f9632SDragan Simic		pinctrl-names = "default";
1116853f9632SDragan Simic		pinctrl-0 = <&i2s2m0_sclktx
1117853f9632SDragan Simic				&i2s2m0_lrcktx
1118853f9632SDragan Simic				&i2s2m0_sdi
1119853f9632SDragan Simic				&i2s2m0_sdo>;
1120853f9632SDragan Simic		#sound-dai-cells = <0>;
1121853f9632SDragan Simic		status = "disabled";
1122853f9632SDragan Simic	};
1123853f9632SDragan Simic
1124853f9632SDragan Simic	i2s3_2ch: i2s@fe430000 {
1125853f9632SDragan Simic		compatible = "rockchip,rk3568-i2s-tdm";
1126853f9632SDragan Simic		reg = <0x0 0xfe430000 0x0 0x1000>;
1127853f9632SDragan Simic		interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
1128853f9632SDragan Simic		clocks = <&cru MCLK_I2S3_2CH_TX>, <&cru MCLK_I2S3_2CH_RX>,
1129853f9632SDragan Simic			 <&cru HCLK_I2S3_2CH>;
1130853f9632SDragan Simic		clock-names = "mclk_tx", "mclk_rx", "hclk";
1131853f9632SDragan Simic		dmas = <&dmac1 6>, <&dmac1 7>;
1132853f9632SDragan Simic		dma-names = "tx", "rx";
1133853f9632SDragan Simic		resets = <&cru SRST_M_I2S3_2CH_TX>, <&cru SRST_M_I2S3_2CH_RX>;
1134853f9632SDragan Simic		reset-names = "tx-m", "rx-m";
1135853f9632SDragan Simic		rockchip,grf = <&grf>;
1136853f9632SDragan Simic		#sound-dai-cells = <0>;
1137853f9632SDragan Simic		status = "disabled";
1138853f9632SDragan Simic	};
1139853f9632SDragan Simic
1140853f9632SDragan Simic	pdm: pdm@fe440000 {
1141853f9632SDragan Simic		compatible = "rockchip,rk3568-pdm";
1142853f9632SDragan Simic		reg = <0x0 0xfe440000 0x0 0x1000>;
1143853f9632SDragan Simic		interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
1144853f9632SDragan Simic		clocks = <&cru MCLK_PDM>, <&cru HCLK_PDM>;
1145853f9632SDragan Simic		clock-names = "pdm_clk", "pdm_hclk";
1146853f9632SDragan Simic		dmas = <&dmac1 9>;
1147853f9632SDragan Simic		dma-names = "rx";
1148853f9632SDragan Simic		pinctrl-0 = <&pdmm0_clk
1149853f9632SDragan Simic			     &pdmm0_clk1
1150853f9632SDragan Simic			     &pdmm0_sdi0
1151853f9632SDragan Simic			     &pdmm0_sdi1
1152853f9632SDragan Simic			     &pdmm0_sdi2
1153853f9632SDragan Simic			     &pdmm0_sdi3>;
1154853f9632SDragan Simic		pinctrl-names = "default";
1155853f9632SDragan Simic		resets = <&cru SRST_M_PDM>;
1156853f9632SDragan Simic		reset-names = "pdm-m";
1157853f9632SDragan Simic		#sound-dai-cells = <0>;
1158853f9632SDragan Simic		status = "disabled";
1159853f9632SDragan Simic	};
1160853f9632SDragan Simic
1161853f9632SDragan Simic	spdif: spdif@fe460000 {
1162853f9632SDragan Simic		compatible = "rockchip,rk3568-spdif";
1163853f9632SDragan Simic		reg = <0x0 0xfe460000 0x0 0x1000>;
1164853f9632SDragan Simic		interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
1165853f9632SDragan Simic		clock-names = "mclk", "hclk";
1166853f9632SDragan Simic		clocks = <&cru MCLK_SPDIF_8CH>, <&cru HCLK_SPDIF_8CH>;
1167853f9632SDragan Simic		dmas = <&dmac1 1>;
1168853f9632SDragan Simic		dma-names = "tx";
1169853f9632SDragan Simic		pinctrl-names = "default";
1170853f9632SDragan Simic		pinctrl-0 = <&spdifm0_tx>;
1171853f9632SDragan Simic		#sound-dai-cells = <0>;
1172853f9632SDragan Simic		status = "disabled";
1173853f9632SDragan Simic	};
1174853f9632SDragan Simic
1175853f9632SDragan Simic	dmac0: dma-controller@fe530000 {
1176853f9632SDragan Simic		compatible = "arm,pl330", "arm,primecell";
1177853f9632SDragan Simic		reg = <0x0 0xfe530000 0x0 0x4000>;
1178853f9632SDragan Simic		interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
1179853f9632SDragan Simic			     <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
1180853f9632SDragan Simic		arm,pl330-periph-burst;
1181853f9632SDragan Simic		clocks = <&cru ACLK_BUS>;
1182853f9632SDragan Simic		clock-names = "apb_pclk";
1183853f9632SDragan Simic		#dma-cells = <1>;
1184853f9632SDragan Simic	};
1185853f9632SDragan Simic
1186853f9632SDragan Simic	dmac1: dma-controller@fe550000 {
1187853f9632SDragan Simic		compatible = "arm,pl330", "arm,primecell";
1188853f9632SDragan Simic		reg = <0x0 0xfe550000 0x0 0x4000>;
1189853f9632SDragan Simic		interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>,
1190853f9632SDragan Simic			     <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
1191853f9632SDragan Simic		arm,pl330-periph-burst;
1192853f9632SDragan Simic		clocks = <&cru ACLK_BUS>;
1193853f9632SDragan Simic		clock-names = "apb_pclk";
1194853f9632SDragan Simic		#dma-cells = <1>;
1195853f9632SDragan Simic	};
1196853f9632SDragan Simic
1197853f9632SDragan Simic	i2c1: i2c@fe5a0000 {
1198853f9632SDragan Simic		compatible = "rockchip,rk3568-i2c", "rockchip,rk3399-i2c";
1199853f9632SDragan Simic		reg = <0x0 0xfe5a0000 0x0 0x1000>;
1200853f9632SDragan Simic		interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
1201853f9632SDragan Simic		clocks = <&cru CLK_I2C1>, <&cru PCLK_I2C1>;
1202853f9632SDragan Simic		clock-names = "i2c", "pclk";
1203853f9632SDragan Simic		pinctrl-0 = <&i2c1_xfer>;
1204853f9632SDragan Simic		pinctrl-names = "default";
1205853f9632SDragan Simic		#address-cells = <1>;
1206853f9632SDragan Simic		#size-cells = <0>;
1207853f9632SDragan Simic		status = "disabled";
1208853f9632SDragan Simic	};
1209853f9632SDragan Simic
1210853f9632SDragan Simic	i2c2: i2c@fe5b0000 {
1211853f9632SDragan Simic		compatible = "rockchip,rk3568-i2c", "rockchip,rk3399-i2c";
1212853f9632SDragan Simic		reg = <0x0 0xfe5b0000 0x0 0x1000>;
1213853f9632SDragan Simic		interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
1214853f9632SDragan Simic		clocks = <&cru CLK_I2C2>, <&cru PCLK_I2C2>;
1215853f9632SDragan Simic		clock-names = "i2c", "pclk";
1216853f9632SDragan Simic		pinctrl-0 = <&i2c2m0_xfer>;
1217853f9632SDragan Simic		pinctrl-names = "default";
1218853f9632SDragan Simic		#address-cells = <1>;
1219853f9632SDragan Simic		#size-cells = <0>;
1220853f9632SDragan Simic		status = "disabled";
1221853f9632SDragan Simic	};
1222853f9632SDragan Simic
1223853f9632SDragan Simic	i2c3: i2c@fe5c0000 {
1224853f9632SDragan Simic		compatible = "rockchip,rk3568-i2c", "rockchip,rk3399-i2c";
1225853f9632SDragan Simic		reg = <0x0 0xfe5c0000 0x0 0x1000>;
1226853f9632SDragan Simic		interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
1227853f9632SDragan Simic		clocks = <&cru CLK_I2C3>, <&cru PCLK_I2C3>;
1228853f9632SDragan Simic		clock-names = "i2c", "pclk";
1229853f9632SDragan Simic		pinctrl-0 = <&i2c3m0_xfer>;
1230853f9632SDragan Simic		pinctrl-names = "default";
1231853f9632SDragan Simic		#address-cells = <1>;
1232853f9632SDragan Simic		#size-cells = <0>;
1233853f9632SDragan Simic		status = "disabled";
1234853f9632SDragan Simic	};
1235853f9632SDragan Simic
1236853f9632SDragan Simic	i2c4: i2c@fe5d0000 {
1237853f9632SDragan Simic		compatible = "rockchip,rk3568-i2c", "rockchip,rk3399-i2c";
1238853f9632SDragan Simic		reg = <0x0 0xfe5d0000 0x0 0x1000>;
1239853f9632SDragan Simic		interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
1240853f9632SDragan Simic		clocks = <&cru CLK_I2C4>, <&cru PCLK_I2C4>;
1241853f9632SDragan Simic		clock-names = "i2c", "pclk";
1242853f9632SDragan Simic		pinctrl-0 = <&i2c4m0_xfer>;
1243853f9632SDragan Simic		pinctrl-names = "default";
1244853f9632SDragan Simic		#address-cells = <1>;
1245853f9632SDragan Simic		#size-cells = <0>;
1246853f9632SDragan Simic		status = "disabled";
1247853f9632SDragan Simic	};
1248853f9632SDragan Simic
1249853f9632SDragan Simic	i2c5: i2c@fe5e0000 {
1250853f9632SDragan Simic		compatible = "rockchip,rk3568-i2c", "rockchip,rk3399-i2c";
1251853f9632SDragan Simic		reg = <0x0 0xfe5e0000 0x0 0x1000>;
1252853f9632SDragan Simic		interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
1253853f9632SDragan Simic		clocks = <&cru CLK_I2C5>, <&cru PCLK_I2C5>;
1254853f9632SDragan Simic		clock-names = "i2c", "pclk";
1255853f9632SDragan Simic		pinctrl-0 = <&i2c5m0_xfer>;
1256853f9632SDragan Simic		pinctrl-names = "default";
1257853f9632SDragan Simic		#address-cells = <1>;
1258853f9632SDragan Simic		#size-cells = <0>;
1259853f9632SDragan Simic		status = "disabled";
1260853f9632SDragan Simic	};
1261853f9632SDragan Simic
1262853f9632SDragan Simic	wdt: watchdog@fe600000 {
1263853f9632SDragan Simic		compatible = "rockchip,rk3568-wdt", "snps,dw-wdt";
1264853f9632SDragan Simic		reg = <0x0 0xfe600000 0x0 0x100>;
1265853f9632SDragan Simic		interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>;
1266853f9632SDragan Simic		clocks = <&cru TCLK_WDT_NS>, <&cru PCLK_WDT_NS>;
1267853f9632SDragan Simic		clock-names = "tclk", "pclk";
1268853f9632SDragan Simic	};
1269853f9632SDragan Simic
1270853f9632SDragan Simic	spi0: spi@fe610000 {
1271853f9632SDragan Simic		compatible = "rockchip,rk3568-spi", "rockchip,rk3066-spi";
1272853f9632SDragan Simic		reg = <0x0 0xfe610000 0x0 0x1000>;
1273853f9632SDragan Simic		interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
1274853f9632SDragan Simic		clocks = <&cru CLK_SPI0>, <&cru PCLK_SPI0>;
1275853f9632SDragan Simic		clock-names = "spiclk", "apb_pclk";
1276853f9632SDragan Simic		dmas = <&dmac0 20>, <&dmac0 21>;
1277853f9632SDragan Simic		dma-names = "tx", "rx";
1278853f9632SDragan Simic		pinctrl-names = "default";
1279853f9632SDragan Simic		pinctrl-0 = <&spi0m0_cs0 &spi0m0_cs1 &spi0m0_pins>;
1280853f9632SDragan Simic		#address-cells = <1>;
1281853f9632SDragan Simic		#size-cells = <0>;
1282853f9632SDragan Simic		status = "disabled";
1283853f9632SDragan Simic	};
1284853f9632SDragan Simic
1285853f9632SDragan Simic	spi1: spi@fe620000 {
1286853f9632SDragan Simic		compatible = "rockchip,rk3568-spi", "rockchip,rk3066-spi";
1287853f9632SDragan Simic		reg = <0x0 0xfe620000 0x0 0x1000>;
1288853f9632SDragan Simic		interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
1289853f9632SDragan Simic		clocks = <&cru CLK_SPI1>, <&cru PCLK_SPI1>;
1290853f9632SDragan Simic		clock-names = "spiclk", "apb_pclk";
1291853f9632SDragan Simic		dmas = <&dmac0 22>, <&dmac0 23>;
1292853f9632SDragan Simic		dma-names = "tx", "rx";
1293853f9632SDragan Simic		pinctrl-names = "default";
1294853f9632SDragan Simic		pinctrl-0 = <&spi1m0_cs0 &spi1m0_cs1 &spi1m0_pins>;
1295853f9632SDragan Simic		#address-cells = <1>;
1296853f9632SDragan Simic		#size-cells = <0>;
1297853f9632SDragan Simic		status = "disabled";
1298853f9632SDragan Simic	};
1299853f9632SDragan Simic
1300853f9632SDragan Simic	spi2: spi@fe630000 {
1301853f9632SDragan Simic		compatible = "rockchip,rk3568-spi", "rockchip,rk3066-spi";
1302853f9632SDragan Simic		reg = <0x0 0xfe630000 0x0 0x1000>;
1303853f9632SDragan Simic		interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
1304853f9632SDragan Simic		clocks = <&cru CLK_SPI2>, <&cru PCLK_SPI2>;
1305853f9632SDragan Simic		clock-names = "spiclk", "apb_pclk";
1306853f9632SDragan Simic		dmas = <&dmac0 24>, <&dmac0 25>;
1307853f9632SDragan Simic		dma-names = "tx", "rx";
1308853f9632SDragan Simic		pinctrl-names = "default";
1309853f9632SDragan Simic		pinctrl-0 = <&spi2m0_cs0 &spi2m0_cs1 &spi2m0_pins>;
1310853f9632SDragan Simic		#address-cells = <1>;
1311853f9632SDragan Simic		#size-cells = <0>;
1312853f9632SDragan Simic		status = "disabled";
1313853f9632SDragan Simic	};
1314853f9632SDragan Simic
1315853f9632SDragan Simic	spi3: spi@fe640000 {
1316853f9632SDragan Simic		compatible = "rockchip,rk3568-spi", "rockchip,rk3066-spi";
1317853f9632SDragan Simic		reg = <0x0 0xfe640000 0x0 0x1000>;
1318853f9632SDragan Simic		interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
1319853f9632SDragan Simic		clocks = <&cru CLK_SPI3>, <&cru PCLK_SPI3>;
1320853f9632SDragan Simic		clock-names = "spiclk", "apb_pclk";
1321853f9632SDragan Simic		dmas = <&dmac0 26>, <&dmac0 27>;
1322853f9632SDragan Simic		dma-names = "tx", "rx";
1323853f9632SDragan Simic		pinctrl-names = "default";
1324853f9632SDragan Simic		pinctrl-0 = <&spi3m0_cs0 &spi3m0_cs1 &spi3m0_pins>;
1325853f9632SDragan Simic		#address-cells = <1>;
1326853f9632SDragan Simic		#size-cells = <0>;
1327853f9632SDragan Simic		status = "disabled";
1328853f9632SDragan Simic	};
1329853f9632SDragan Simic
1330853f9632SDragan Simic	uart1: serial@fe650000 {
1331853f9632SDragan Simic		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
1332853f9632SDragan Simic		reg = <0x0 0xfe650000 0x0 0x100>;
1333853f9632SDragan Simic		interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>;
1334853f9632SDragan Simic		clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>;
1335853f9632SDragan Simic		clock-names = "baudclk", "apb_pclk";
1336853f9632SDragan Simic		dmas = <&dmac0 2>, <&dmac0 3>;
1337853f9632SDragan Simic		pinctrl-0 = <&uart1m0_xfer>;
1338853f9632SDragan Simic		pinctrl-names = "default";
1339853f9632SDragan Simic		reg-io-width = <4>;
1340853f9632SDragan Simic		reg-shift = <2>;
1341853f9632SDragan Simic		status = "disabled";
1342853f9632SDragan Simic	};
1343853f9632SDragan Simic
1344853f9632SDragan Simic	uart2: serial@fe660000 {
1345853f9632SDragan Simic		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
1346853f9632SDragan Simic		reg = <0x0 0xfe660000 0x0 0x100>;
1347853f9632SDragan Simic		interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>;
1348853f9632SDragan Simic		clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>;
1349853f9632SDragan Simic		clock-names = "baudclk", "apb_pclk";
1350853f9632SDragan Simic		dmas = <&dmac0 4>, <&dmac0 5>;
1351853f9632SDragan Simic		pinctrl-0 = <&uart2m0_xfer>;
1352853f9632SDragan Simic		pinctrl-names = "default";
1353853f9632SDragan Simic		reg-io-width = <4>;
1354853f9632SDragan Simic		reg-shift = <2>;
1355853f9632SDragan Simic		status = "disabled";
1356853f9632SDragan Simic	};
1357853f9632SDragan Simic
1358853f9632SDragan Simic	uart3: serial@fe670000 {
1359853f9632SDragan Simic		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
1360853f9632SDragan Simic		reg = <0x0 0xfe670000 0x0 0x100>;
1361853f9632SDragan Simic		interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>;
1362853f9632SDragan Simic		clocks = <&cru SCLK_UART3>, <&cru PCLK_UART3>;
1363853f9632SDragan Simic		clock-names = "baudclk", "apb_pclk";
1364853f9632SDragan Simic		dmas = <&dmac0 6>, <&dmac0 7>;
1365853f9632SDragan Simic		pinctrl-0 = <&uart3m0_xfer>;
1366853f9632SDragan Simic		pinctrl-names = "default";
1367853f9632SDragan Simic		reg-io-width = <4>;
1368853f9632SDragan Simic		reg-shift = <2>;
1369853f9632SDragan Simic		status = "disabled";
1370853f9632SDragan Simic	};
1371853f9632SDragan Simic
1372853f9632SDragan Simic	uart4: serial@fe680000 {
1373853f9632SDragan Simic		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
1374853f9632SDragan Simic		reg = <0x0 0xfe680000 0x0 0x100>;
1375853f9632SDragan Simic		interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
1376853f9632SDragan Simic		clocks = <&cru SCLK_UART4>, <&cru PCLK_UART4>;
1377853f9632SDragan Simic		clock-names = "baudclk", "apb_pclk";
1378853f9632SDragan Simic		dmas = <&dmac0 8>, <&dmac0 9>;
1379853f9632SDragan Simic		pinctrl-0 = <&uart4m0_xfer>;
1380853f9632SDragan Simic		pinctrl-names = "default";
1381853f9632SDragan Simic		reg-io-width = <4>;
1382853f9632SDragan Simic		reg-shift = <2>;
1383853f9632SDragan Simic		status = "disabled";
1384853f9632SDragan Simic	};
1385853f9632SDragan Simic
1386853f9632SDragan Simic	uart5: serial@fe690000 {
1387853f9632SDragan Simic		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
1388853f9632SDragan Simic		reg = <0x0 0xfe690000 0x0 0x100>;
1389853f9632SDragan Simic		interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
1390853f9632SDragan Simic		clocks = <&cru SCLK_UART5>, <&cru PCLK_UART5>;
1391853f9632SDragan Simic		clock-names = "baudclk", "apb_pclk";
1392853f9632SDragan Simic		dmas = <&dmac0 10>, <&dmac0 11>;
1393853f9632SDragan Simic		pinctrl-0 = <&uart5m0_xfer>;
1394853f9632SDragan Simic		pinctrl-names = "default";
1395853f9632SDragan Simic		reg-io-width = <4>;
1396853f9632SDragan Simic		reg-shift = <2>;
1397853f9632SDragan Simic		status = "disabled";
1398853f9632SDragan Simic	};
1399853f9632SDragan Simic
1400853f9632SDragan Simic	uart6: serial@fe6a0000 {
1401853f9632SDragan Simic		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
1402853f9632SDragan Simic		reg = <0x0 0xfe6a0000 0x0 0x100>;
1403853f9632SDragan Simic		interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
1404853f9632SDragan Simic		clocks = <&cru SCLK_UART6>, <&cru PCLK_UART6>;
1405853f9632SDragan Simic		clock-names = "baudclk", "apb_pclk";
1406853f9632SDragan Simic		dmas = <&dmac0 12>, <&dmac0 13>;
1407853f9632SDragan Simic		pinctrl-0 = <&uart6m0_xfer>;
1408853f9632SDragan Simic		pinctrl-names = "default";
1409853f9632SDragan Simic		reg-io-width = <4>;
1410853f9632SDragan Simic		reg-shift = <2>;
1411853f9632SDragan Simic		status = "disabled";
1412853f9632SDragan Simic	};
1413853f9632SDragan Simic
1414853f9632SDragan Simic	uart7: serial@fe6b0000 {
1415853f9632SDragan Simic		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
1416853f9632SDragan Simic		reg = <0x0 0xfe6b0000 0x0 0x100>;
1417853f9632SDragan Simic		interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
1418853f9632SDragan Simic		clocks = <&cru SCLK_UART7>, <&cru PCLK_UART7>;
1419853f9632SDragan Simic		clock-names = "baudclk", "apb_pclk";
1420853f9632SDragan Simic		dmas = <&dmac0 14>, <&dmac0 15>;
1421853f9632SDragan Simic		pinctrl-0 = <&uart7m0_xfer>;
1422853f9632SDragan Simic		pinctrl-names = "default";
1423853f9632SDragan Simic		reg-io-width = <4>;
1424853f9632SDragan Simic		reg-shift = <2>;
1425853f9632SDragan Simic		status = "disabled";
1426853f9632SDragan Simic	};
1427853f9632SDragan Simic
1428853f9632SDragan Simic	uart8: serial@fe6c0000 {
1429853f9632SDragan Simic		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
1430853f9632SDragan Simic		reg = <0x0 0xfe6c0000 0x0 0x100>;
1431853f9632SDragan Simic		interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>;
1432853f9632SDragan Simic		clocks = <&cru SCLK_UART8>, <&cru PCLK_UART8>;
1433853f9632SDragan Simic		clock-names = "baudclk", "apb_pclk";
1434853f9632SDragan Simic		dmas = <&dmac0 16>, <&dmac0 17>;
1435853f9632SDragan Simic		pinctrl-0 = <&uart8m0_xfer>;
1436853f9632SDragan Simic		pinctrl-names = "default";
1437853f9632SDragan Simic		reg-io-width = <4>;
1438853f9632SDragan Simic		reg-shift = <2>;
1439853f9632SDragan Simic		status = "disabled";
1440853f9632SDragan Simic	};
1441853f9632SDragan Simic
1442853f9632SDragan Simic	uart9: serial@fe6d0000 {
1443853f9632SDragan Simic		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
1444853f9632SDragan Simic		reg = <0x0 0xfe6d0000 0x0 0x100>;
1445853f9632SDragan Simic		interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
1446853f9632SDragan Simic		clocks = <&cru SCLK_UART9>, <&cru PCLK_UART9>;
1447853f9632SDragan Simic		clock-names = "baudclk", "apb_pclk";
1448853f9632SDragan Simic		dmas = <&dmac0 18>, <&dmac0 19>;
1449853f9632SDragan Simic		pinctrl-0 = <&uart9m0_xfer>;
1450853f9632SDragan Simic		pinctrl-names = "default";
1451853f9632SDragan Simic		reg-io-width = <4>;
1452853f9632SDragan Simic		reg-shift = <2>;
1453853f9632SDragan Simic		status = "disabled";
1454853f9632SDragan Simic	};
1455853f9632SDragan Simic
1456853f9632SDragan Simic	thermal_zones: thermal-zones {
1457853f9632SDragan Simic		cpu_thermal: cpu-thermal {
1458853f9632SDragan Simic			polling-delay-passive = <100>;
1459853f9632SDragan Simic			polling-delay = <1000>;
1460853f9632SDragan Simic
1461853f9632SDragan Simic			thermal-sensors = <&tsadc 0>;
1462853f9632SDragan Simic
1463853f9632SDragan Simic			trips {
1464853f9632SDragan Simic				cpu_alert0: cpu_alert0 {
1465853f9632SDragan Simic					temperature = <70000>;
1466853f9632SDragan Simic					hysteresis = <2000>;
1467853f9632SDragan Simic					type = "passive";
1468853f9632SDragan Simic				};
1469853f9632SDragan Simic				cpu_alert1: cpu_alert1 {
1470853f9632SDragan Simic					temperature = <75000>;
1471853f9632SDragan Simic					hysteresis = <2000>;
1472853f9632SDragan Simic					type = "passive";
1473853f9632SDragan Simic				};
1474853f9632SDragan Simic				cpu_crit: cpu_crit {
1475853f9632SDragan Simic					temperature = <95000>;
1476853f9632SDragan Simic					hysteresis = <2000>;
1477853f9632SDragan Simic					type = "critical";
1478853f9632SDragan Simic				};
1479853f9632SDragan Simic			};
1480853f9632SDragan Simic
1481853f9632SDragan Simic			cooling-maps {
1482853f9632SDragan Simic				map0 {
1483853f9632SDragan Simic					trip = <&cpu_alert0>;
1484853f9632SDragan Simic					cooling-device =
1485853f9632SDragan Simic						<&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
1486853f9632SDragan Simic						<&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
1487853f9632SDragan Simic						<&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
1488853f9632SDragan Simic						<&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
1489853f9632SDragan Simic				};
1490853f9632SDragan Simic			};
1491853f9632SDragan Simic		};
1492853f9632SDragan Simic
1493853f9632SDragan Simic		gpu_thermal: gpu-thermal {
1494853f9632SDragan Simic			polling-delay-passive = <20>; /* milliseconds */
1495853f9632SDragan Simic			polling-delay = <1000>; /* milliseconds */
1496853f9632SDragan Simic
1497853f9632SDragan Simic			thermal-sensors = <&tsadc 1>;
1498853f9632SDragan Simic
1499853f9632SDragan Simic			trips {
1500853f9632SDragan Simic				gpu_threshold: gpu-threshold {
1501853f9632SDragan Simic					temperature = <70000>;
1502853f9632SDragan Simic					hysteresis = <2000>;
1503853f9632SDragan Simic					type = "passive";
1504853f9632SDragan Simic				};
1505853f9632SDragan Simic				gpu_target: gpu-target {
1506853f9632SDragan Simic					temperature = <75000>;
1507853f9632SDragan Simic					hysteresis = <2000>;
1508853f9632SDragan Simic					type = "passive";
1509853f9632SDragan Simic				};
1510853f9632SDragan Simic				gpu_crit: gpu-crit {
1511853f9632SDragan Simic					temperature = <95000>;
1512853f9632SDragan Simic					hysteresis = <2000>;
1513853f9632SDragan Simic					type = "critical";
1514853f9632SDragan Simic				};
1515853f9632SDragan Simic			};
1516853f9632SDragan Simic
1517853f9632SDragan Simic			cooling-maps {
1518853f9632SDragan Simic				map0 {
1519853f9632SDragan Simic					trip = <&gpu_target>;
1520853f9632SDragan Simic					cooling-device =
1521853f9632SDragan Simic						<&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
1522853f9632SDragan Simic				};
1523853f9632SDragan Simic			};
1524853f9632SDragan Simic		};
1525853f9632SDragan Simic	};
1526853f9632SDragan Simic
1527853f9632SDragan Simic	tsadc: tsadc@fe710000 {
1528853f9632SDragan Simic		compatible = "rockchip,rk3568-tsadc";
1529853f9632SDragan Simic		reg = <0x0 0xfe710000 0x0 0x100>;
1530853f9632SDragan Simic		interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>;
1531853f9632SDragan Simic		assigned-clocks = <&cru CLK_TSADC_TSEN>, <&cru CLK_TSADC>;
1532853f9632SDragan Simic		assigned-clock-rates = <17000000>, <700000>;
1533853f9632SDragan Simic		clocks = <&cru CLK_TSADC>, <&cru PCLK_TSADC>;
1534853f9632SDragan Simic		clock-names = "tsadc", "apb_pclk";
1535853f9632SDragan Simic		resets = <&cru SRST_P_TSADC>, <&cru SRST_TSADC>,
1536853f9632SDragan Simic			 <&cru SRST_TSADCPHY>;
1537853f9632SDragan Simic		rockchip,grf = <&grf>;
1538853f9632SDragan Simic		rockchip,hw-tshut-temp = <95000>;
1539853f9632SDragan Simic		pinctrl-names = "default", "sleep";
1540853f9632SDragan Simic		pinctrl-0 = <&tsadc_shutorg>;
1541853f9632SDragan Simic		pinctrl-1 = <&tsadc_pin>;
1542853f9632SDragan Simic		#thermal-sensor-cells = <1>;
1543853f9632SDragan Simic		status = "disabled";
1544853f9632SDragan Simic	};
1545853f9632SDragan Simic
1546853f9632SDragan Simic	saradc: saradc@fe720000 {
1547853f9632SDragan Simic		compatible = "rockchip,rk3568-saradc", "rockchip,rk3399-saradc";
1548853f9632SDragan Simic		reg = <0x0 0xfe720000 0x0 0x100>;
1549853f9632SDragan Simic		interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
1550853f9632SDragan Simic		clocks = <&cru CLK_SARADC>, <&cru PCLK_SARADC>;
1551853f9632SDragan Simic		clock-names = "saradc", "apb_pclk";
1552853f9632SDragan Simic		resets = <&cru SRST_P_SARADC>;
1553853f9632SDragan Simic		reset-names = "saradc-apb";
1554853f9632SDragan Simic		#io-channel-cells = <1>;
1555853f9632SDragan Simic		status = "disabled";
1556853f9632SDragan Simic	};
1557853f9632SDragan Simic
1558853f9632SDragan Simic	pwm4: pwm@fe6e0000 {
1559853f9632SDragan Simic		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
1560853f9632SDragan Simic		reg = <0x0 0xfe6e0000 0x0 0x10>;
1561853f9632SDragan Simic		clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>;
1562853f9632SDragan Simic		clock-names = "pwm", "pclk";
1563853f9632SDragan Simic		pinctrl-0 = <&pwm4_pins>;
1564853f9632SDragan Simic		pinctrl-names = "default";
1565853f9632SDragan Simic		#pwm-cells = <3>;
1566853f9632SDragan Simic		status = "disabled";
1567853f9632SDragan Simic	};
1568853f9632SDragan Simic
1569853f9632SDragan Simic	pwm5: pwm@fe6e0010 {
1570853f9632SDragan Simic		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
1571853f9632SDragan Simic		reg = <0x0 0xfe6e0010 0x0 0x10>;
1572853f9632SDragan Simic		clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>;
1573853f9632SDragan Simic		clock-names = "pwm", "pclk";
1574853f9632SDragan Simic		pinctrl-0 = <&pwm5_pins>;
1575853f9632SDragan Simic		pinctrl-names = "default";
1576853f9632SDragan Simic		#pwm-cells = <3>;
1577853f9632SDragan Simic		status = "disabled";
1578853f9632SDragan Simic	};
1579853f9632SDragan Simic
1580853f9632SDragan Simic	pwm6: pwm@fe6e0020 {
1581853f9632SDragan Simic		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
1582853f9632SDragan Simic		reg = <0x0 0xfe6e0020 0x0 0x10>;
1583853f9632SDragan Simic		clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>;
1584853f9632SDragan Simic		clock-names = "pwm", "pclk";
1585853f9632SDragan Simic		pinctrl-0 = <&pwm6_pins>;
1586853f9632SDragan Simic		pinctrl-names = "default";
1587853f9632SDragan Simic		#pwm-cells = <3>;
1588853f9632SDragan Simic		status = "disabled";
1589853f9632SDragan Simic	};
1590853f9632SDragan Simic
1591853f9632SDragan Simic	pwm7: pwm@fe6e0030 {
1592853f9632SDragan Simic		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
1593853f9632SDragan Simic		reg = <0x0 0xfe6e0030 0x0 0x10>;
1594853f9632SDragan Simic		clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>;
1595853f9632SDragan Simic		clock-names = "pwm", "pclk";
1596853f9632SDragan Simic		pinctrl-0 = <&pwm7_pins>;
1597853f9632SDragan Simic		pinctrl-names = "default";
1598853f9632SDragan Simic		#pwm-cells = <3>;
1599853f9632SDragan Simic		status = "disabled";
1600853f9632SDragan Simic	};
1601853f9632SDragan Simic
1602853f9632SDragan Simic	pwm8: pwm@fe6f0000 {
1603853f9632SDragan Simic		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
1604853f9632SDragan Simic		reg = <0x0 0xfe6f0000 0x0 0x10>;
1605853f9632SDragan Simic		clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>;
1606853f9632SDragan Simic		clock-names = "pwm", "pclk";
1607853f9632SDragan Simic		pinctrl-0 = <&pwm8m0_pins>;
1608853f9632SDragan Simic		pinctrl-names = "default";
1609853f9632SDragan Simic		#pwm-cells = <3>;
1610853f9632SDragan Simic		status = "disabled";
1611853f9632SDragan Simic	};
1612853f9632SDragan Simic
1613853f9632SDragan Simic	pwm9: pwm@fe6f0010 {
1614853f9632SDragan Simic		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
1615853f9632SDragan Simic		reg = <0x0 0xfe6f0010 0x0 0x10>;
1616853f9632SDragan Simic		clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>;
1617853f9632SDragan Simic		clock-names = "pwm", "pclk";
1618853f9632SDragan Simic		pinctrl-0 = <&pwm9m0_pins>;
1619853f9632SDragan Simic		pinctrl-names = "default";
1620853f9632SDragan Simic		#pwm-cells = <3>;
1621853f9632SDragan Simic		status = "disabled";
1622853f9632SDragan Simic	};
1623853f9632SDragan Simic
1624853f9632SDragan Simic	pwm10: pwm@fe6f0020 {
1625853f9632SDragan Simic		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
1626853f9632SDragan Simic		reg = <0x0 0xfe6f0020 0x0 0x10>;
1627853f9632SDragan Simic		clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>;
1628853f9632SDragan Simic		clock-names = "pwm", "pclk";
1629853f9632SDragan Simic		pinctrl-0 = <&pwm10m0_pins>;
1630853f9632SDragan Simic		pinctrl-names = "default";
1631853f9632SDragan Simic		#pwm-cells = <3>;
1632853f9632SDragan Simic		status = "disabled";
1633853f9632SDragan Simic	};
1634853f9632SDragan Simic
1635853f9632SDragan Simic	pwm11: pwm@fe6f0030 {
1636853f9632SDragan Simic		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
1637853f9632SDragan Simic		reg = <0x0 0xfe6f0030 0x0 0x10>;
1638853f9632SDragan Simic		clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>;
1639853f9632SDragan Simic		clock-names = "pwm", "pclk";
1640853f9632SDragan Simic		pinctrl-0 = <&pwm11m0_pins>;
1641853f9632SDragan Simic		pinctrl-names = "default";
1642853f9632SDragan Simic		#pwm-cells = <3>;
1643853f9632SDragan Simic		status = "disabled";
1644853f9632SDragan Simic	};
1645853f9632SDragan Simic
1646853f9632SDragan Simic	pwm12: pwm@fe700000 {
1647853f9632SDragan Simic		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
1648853f9632SDragan Simic		reg = <0x0 0xfe700000 0x0 0x10>;
1649853f9632SDragan Simic		clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>;
1650853f9632SDragan Simic		clock-names = "pwm", "pclk";
1651853f9632SDragan Simic		pinctrl-0 = <&pwm12m0_pins>;
1652853f9632SDragan Simic		pinctrl-names = "default";
1653853f9632SDragan Simic		#pwm-cells = <3>;
1654853f9632SDragan Simic		status = "disabled";
1655853f9632SDragan Simic	};
1656853f9632SDragan Simic
1657853f9632SDragan Simic	pwm13: pwm@fe700010 {
1658853f9632SDragan Simic		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
1659853f9632SDragan Simic		reg = <0x0 0xfe700010 0x0 0x10>;
1660853f9632SDragan Simic		clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>;
1661853f9632SDragan Simic		clock-names = "pwm", "pclk";
1662853f9632SDragan Simic		pinctrl-0 = <&pwm13m0_pins>;
1663853f9632SDragan Simic		pinctrl-names = "default";
1664853f9632SDragan Simic		#pwm-cells = <3>;
1665853f9632SDragan Simic		status = "disabled";
1666853f9632SDragan Simic	};
1667853f9632SDragan Simic
1668853f9632SDragan Simic	pwm14: pwm@fe700020 {
1669853f9632SDragan Simic		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
1670853f9632SDragan Simic		reg = <0x0 0xfe700020 0x0 0x10>;
1671853f9632SDragan Simic		clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>;
1672853f9632SDragan Simic		clock-names = "pwm", "pclk";
1673853f9632SDragan Simic		pinctrl-0 = <&pwm14m0_pins>;
1674853f9632SDragan Simic		pinctrl-names = "default";
1675853f9632SDragan Simic		#pwm-cells = <3>;
1676853f9632SDragan Simic		status = "disabled";
1677853f9632SDragan Simic	};
1678853f9632SDragan Simic
1679853f9632SDragan Simic	pwm15: pwm@fe700030 {
1680853f9632SDragan Simic		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
1681853f9632SDragan Simic		reg = <0x0 0xfe700030 0x0 0x10>;
1682853f9632SDragan Simic		clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>;
1683853f9632SDragan Simic		clock-names = "pwm", "pclk";
1684853f9632SDragan Simic		pinctrl-0 = <&pwm15m0_pins>;
1685853f9632SDragan Simic		pinctrl-names = "default";
1686853f9632SDragan Simic		#pwm-cells = <3>;
1687853f9632SDragan Simic		status = "disabled";
1688853f9632SDragan Simic	};
1689853f9632SDragan Simic
1690853f9632SDragan Simic	combphy1: phy@fe830000 {
1691853f9632SDragan Simic		compatible = "rockchip,rk3568-naneng-combphy";
1692853f9632SDragan Simic		reg = <0x0 0xfe830000 0x0 0x100>;
1693853f9632SDragan Simic		clocks = <&pmucru CLK_PCIEPHY1_REF>,
1694853f9632SDragan Simic			 <&cru PCLK_PIPEPHY1>,
1695853f9632SDragan Simic			 <&cru PCLK_PIPE>;
1696853f9632SDragan Simic		clock-names = "ref", "apb", "pipe";
1697853f9632SDragan Simic		assigned-clocks = <&pmucru CLK_PCIEPHY1_REF>;
1698853f9632SDragan Simic		assigned-clock-rates = <100000000>;
1699853f9632SDragan Simic		resets = <&cru SRST_PIPEPHY1>;
17008b9c1275SChukun Pan		reset-names = "phy";
1701853f9632SDragan Simic		rockchip,pipe-grf = <&pipegrf>;
1702853f9632SDragan Simic		rockchip,pipe-phy-grf = <&pipe_phy_grf1>;
1703853f9632SDragan Simic		#phy-cells = <1>;
1704853f9632SDragan Simic		status = "disabled";
1705853f9632SDragan Simic	};
1706853f9632SDragan Simic
1707853f9632SDragan Simic	combphy2: phy@fe840000 {
1708853f9632SDragan Simic		compatible = "rockchip,rk3568-naneng-combphy";
1709853f9632SDragan Simic		reg = <0x0 0xfe840000 0x0 0x100>;
1710853f9632SDragan Simic		clocks = <&pmucru CLK_PCIEPHY2_REF>,
1711853f9632SDragan Simic			 <&cru PCLK_PIPEPHY2>,
1712853f9632SDragan Simic			 <&cru PCLK_PIPE>;
1713853f9632SDragan Simic		clock-names = "ref", "apb", "pipe";
1714853f9632SDragan Simic		assigned-clocks = <&pmucru CLK_PCIEPHY2_REF>;
1715853f9632SDragan Simic		assigned-clock-rates = <100000000>;
1716853f9632SDragan Simic		resets = <&cru SRST_PIPEPHY2>;
17178b9c1275SChukun Pan		reset-names = "phy";
1718853f9632SDragan Simic		rockchip,pipe-grf = <&pipegrf>;
1719853f9632SDragan Simic		rockchip,pipe-phy-grf = <&pipe_phy_grf2>;
1720853f9632SDragan Simic		#phy-cells = <1>;
1721853f9632SDragan Simic		status = "disabled";
1722853f9632SDragan Simic	};
1723853f9632SDragan Simic
1724853f9632SDragan Simic	csi_dphy: phy@fe870000 {
1725853f9632SDragan Simic		compatible = "rockchip,rk3568-csi-dphy";
1726853f9632SDragan Simic		reg = <0x0 0xfe870000 0x0 0x10000>;
1727853f9632SDragan Simic		clocks = <&cru PCLK_MIPICSIPHY>;
1728853f9632SDragan Simic		clock-names = "pclk";
1729853f9632SDragan Simic		#phy-cells = <0>;
1730853f9632SDragan Simic		resets = <&cru SRST_P_MIPICSIPHY>;
1731853f9632SDragan Simic		reset-names = "apb";
1732853f9632SDragan Simic		rockchip,grf = <&grf>;
1733853f9632SDragan Simic		status = "disabled";
1734853f9632SDragan Simic	};
1735853f9632SDragan Simic
1736853f9632SDragan Simic	dsi_dphy0: mipi-dphy@fe850000 {
1737853f9632SDragan Simic		compatible = "rockchip,rk3568-dsi-dphy";
1738853f9632SDragan Simic		reg = <0x0 0xfe850000 0x0 0x10000>;
1739853f9632SDragan Simic		clock-names = "ref", "pclk";
1740853f9632SDragan Simic		clocks = <&pmucru CLK_MIPIDSIPHY0_REF>, <&cru PCLK_MIPIDSIPHY0>;
1741853f9632SDragan Simic		#phy-cells = <0>;
1742853f9632SDragan Simic		power-domains = <&power RK3568_PD_VO>;
1743853f9632SDragan Simic		reset-names = "apb";
1744853f9632SDragan Simic		resets = <&cru SRST_P_MIPIDSIPHY0>;
1745853f9632SDragan Simic		status = "disabled";
1746853f9632SDragan Simic	};
1747853f9632SDragan Simic
1748853f9632SDragan Simic	dsi_dphy1: mipi-dphy@fe860000 {
1749853f9632SDragan Simic		compatible = "rockchip,rk3568-dsi-dphy";
1750853f9632SDragan Simic		reg = <0x0 0xfe860000 0x0 0x10000>;
1751853f9632SDragan Simic		clock-names = "ref", "pclk";
1752853f9632SDragan Simic		clocks = <&pmucru CLK_MIPIDSIPHY1_REF>, <&cru PCLK_MIPIDSIPHY1>;
1753853f9632SDragan Simic		#phy-cells = <0>;
1754853f9632SDragan Simic		power-domains = <&power RK3568_PD_VO>;
1755853f9632SDragan Simic		reset-names = "apb";
1756853f9632SDragan Simic		resets = <&cru SRST_P_MIPIDSIPHY1>;
1757853f9632SDragan Simic		status = "disabled";
1758853f9632SDragan Simic	};
1759853f9632SDragan Simic
1760853f9632SDragan Simic	usb2phy0: usb2phy@fe8a0000 {
1761853f9632SDragan Simic		compatible = "rockchip,rk3568-usb2phy";
1762853f9632SDragan Simic		reg = <0x0 0xfe8a0000 0x0 0x10000>;
1763853f9632SDragan Simic		clocks = <&pmucru CLK_USBPHY0_REF>;
1764853f9632SDragan Simic		clock-names = "phyclk";
1765853f9632SDragan Simic		clock-output-names = "clk_usbphy0_480m";
1766853f9632SDragan Simic		interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>;
1767853f9632SDragan Simic		rockchip,usbgrf = <&usb2phy0_grf>;
1768853f9632SDragan Simic		#clock-cells = <0>;
1769853f9632SDragan Simic		status = "disabled";
1770853f9632SDragan Simic
1771853f9632SDragan Simic		usb2phy0_host: host-port {
1772853f9632SDragan Simic			#phy-cells = <0>;
1773853f9632SDragan Simic			status = "disabled";
1774853f9632SDragan Simic		};
1775853f9632SDragan Simic
1776853f9632SDragan Simic		usb2phy0_otg: otg-port {
1777853f9632SDragan Simic			#phy-cells = <0>;
1778853f9632SDragan Simic			status = "disabled";
1779853f9632SDragan Simic		};
1780853f9632SDragan Simic	};
1781853f9632SDragan Simic
1782853f9632SDragan Simic	usb2phy1: usb2phy@fe8b0000 {
1783853f9632SDragan Simic		compatible = "rockchip,rk3568-usb2phy";
1784853f9632SDragan Simic		reg = <0x0 0xfe8b0000 0x0 0x10000>;
1785853f9632SDragan Simic		clocks = <&pmucru CLK_USBPHY1_REF>;
1786853f9632SDragan Simic		clock-names = "phyclk";
1787853f9632SDragan Simic		clock-output-names = "clk_usbphy1_480m";
1788853f9632SDragan Simic		interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>;
1789853f9632SDragan Simic		rockchip,usbgrf = <&usb2phy1_grf>;
1790853f9632SDragan Simic		#clock-cells = <0>;
1791853f9632SDragan Simic		status = "disabled";
1792853f9632SDragan Simic
1793853f9632SDragan Simic		usb2phy1_host: host-port {
1794853f9632SDragan Simic			#phy-cells = <0>;
1795853f9632SDragan Simic			status = "disabled";
1796853f9632SDragan Simic		};
1797853f9632SDragan Simic
1798853f9632SDragan Simic		usb2phy1_otg: otg-port {
1799853f9632SDragan Simic			#phy-cells = <0>;
1800853f9632SDragan Simic			status = "disabled";
1801853f9632SDragan Simic		};
1802853f9632SDragan Simic	};
1803853f9632SDragan Simic
1804853f9632SDragan Simic	pinctrl: pinctrl {
1805853f9632SDragan Simic		compatible = "rockchip,rk3568-pinctrl";
1806853f9632SDragan Simic		rockchip,grf = <&grf>;
1807853f9632SDragan Simic		rockchip,pmu = <&pmugrf>;
1808853f9632SDragan Simic		#address-cells = <2>;
1809853f9632SDragan Simic		#size-cells = <2>;
1810853f9632SDragan Simic		ranges;
1811853f9632SDragan Simic
1812853f9632SDragan Simic		gpio0: gpio@fdd60000 {
1813853f9632SDragan Simic			compatible = "rockchip,gpio-bank";
1814853f9632SDragan Simic			reg = <0x0 0xfdd60000 0x0 0x100>;
1815853f9632SDragan Simic			interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
1816853f9632SDragan Simic			clocks = <&pmucru PCLK_GPIO0>, <&pmucru DBCLK_GPIO0>;
1817853f9632SDragan Simic			gpio-controller;
1818853f9632SDragan Simic			gpio-ranges = <&pinctrl 0 0 32>;
1819853f9632SDragan Simic			#gpio-cells = <2>;
1820853f9632SDragan Simic			interrupt-controller;
1821853f9632SDragan Simic			#interrupt-cells = <2>;
1822853f9632SDragan Simic		};
1823853f9632SDragan Simic
1824853f9632SDragan Simic		gpio1: gpio@fe740000 {
1825853f9632SDragan Simic			compatible = "rockchip,gpio-bank";
1826853f9632SDragan Simic			reg = <0x0 0xfe740000 0x0 0x100>;
1827853f9632SDragan Simic			interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
1828853f9632SDragan Simic			clocks = <&cru PCLK_GPIO1>, <&cru DBCLK_GPIO1>;
1829853f9632SDragan Simic			gpio-controller;
1830853f9632SDragan Simic			gpio-ranges = <&pinctrl 0 32 32>;
1831853f9632SDragan Simic			#gpio-cells = <2>;
1832853f9632SDragan Simic			interrupt-controller;
1833853f9632SDragan Simic			#interrupt-cells = <2>;
1834853f9632SDragan Simic		};
1835853f9632SDragan Simic
1836853f9632SDragan Simic		gpio2: gpio@fe750000 {
1837853f9632SDragan Simic			compatible = "rockchip,gpio-bank";
1838853f9632SDragan Simic			reg = <0x0 0xfe750000 0x0 0x100>;
1839853f9632SDragan Simic			interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
1840853f9632SDragan Simic			clocks = <&cru PCLK_GPIO2>, <&cru DBCLK_GPIO2>;
1841853f9632SDragan Simic			gpio-controller;
1842853f9632SDragan Simic			gpio-ranges = <&pinctrl 0 64 32>;
1843853f9632SDragan Simic			#gpio-cells = <2>;
1844853f9632SDragan Simic			interrupt-controller;
1845853f9632SDragan Simic			#interrupt-cells = <2>;
1846853f9632SDragan Simic		};
1847853f9632SDragan Simic
1848853f9632SDragan Simic		gpio3: gpio@fe760000 {
1849853f9632SDragan Simic			compatible = "rockchip,gpio-bank";
1850853f9632SDragan Simic			reg = <0x0 0xfe760000 0x0 0x100>;
1851853f9632SDragan Simic			interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
1852853f9632SDragan Simic			clocks = <&cru PCLK_GPIO3>, <&cru DBCLK_GPIO3>;
1853853f9632SDragan Simic			gpio-controller;
1854853f9632SDragan Simic			gpio-ranges = <&pinctrl 0 96 32>;
1855853f9632SDragan Simic			#gpio-cells = <2>;
1856853f9632SDragan Simic			interrupt-controller;
1857853f9632SDragan Simic			#interrupt-cells = <2>;
1858853f9632SDragan Simic		};
1859853f9632SDragan Simic
1860853f9632SDragan Simic		gpio4: gpio@fe770000 {
1861853f9632SDragan Simic			compatible = "rockchip,gpio-bank";
1862853f9632SDragan Simic			reg = <0x0 0xfe770000 0x0 0x100>;
1863853f9632SDragan Simic			interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
1864853f9632SDragan Simic			clocks = <&cru PCLK_GPIO4>, <&cru DBCLK_GPIO4>;
1865853f9632SDragan Simic			gpio-controller;
1866853f9632SDragan Simic			gpio-ranges = <&pinctrl 0 128 32>;
1867853f9632SDragan Simic			#gpio-cells = <2>;
1868853f9632SDragan Simic			interrupt-controller;
1869853f9632SDragan Simic			#interrupt-cells = <2>;
1870853f9632SDragan Simic		};
1871853f9632SDragan Simic	};
1872853f9632SDragan Simic};
1873853f9632SDragan Simic
1874853f9632SDragan Simic#include "rk3568-pinctrl.dtsi"
1875