xref: /rk3399_rockchip-uboot/arch/arm/dts/rv1126b.dtsi (revision 4e72b3266b78595b835d5326b538aedd3bd0e034)
1*4e72b326SXuhui Lin// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*4e72b326SXuhui Lin/*
3*4e72b326SXuhui Lin * Copyright (c) 2024 Rockchip Electronics Co., Ltd.
4*4e72b326SXuhui Lin */
5*4e72b326SXuhui Lin
6*4e72b326SXuhui Lin#include <dt-bindings/clock/rockchip,rv1126b-cru.h>
7*4e72b326SXuhui Lin#include <dt-bindings/gpio/gpio.h>
8*4e72b326SXuhui Lin#include <dt-bindings/interrupt-controller/arm-gic.h>
9*4e72b326SXuhui Lin#include <dt-bindings/interrupt-controller/irq.h>
10*4e72b326SXuhui Lin#include <dt-bindings/phy/phy.h>
11*4e72b326SXuhui Lin#include <dt-bindings/pinctrl/rockchip.h>
12*4e72b326SXuhui Lin#include <dt-bindings/power/rockchip,rv1126b-power.h>
13*4e72b326SXuhui Lin#include <dt-bindings/soc/rockchip,boot-mode.h>
14*4e72b326SXuhui Lin#include <dt-bindings/soc/rockchip-system-status.h>
15*4e72b326SXuhui Lin
16*4e72b326SXuhui Lin/ {
17*4e72b326SXuhui Lin	compatible = "rockchip,rv1126b";
18*4e72b326SXuhui Lin
19*4e72b326SXuhui Lin	interrupt-parent = <&gic>;
20*4e72b326SXuhui Lin	#address-cells = <1>;
21*4e72b326SXuhui Lin	#size-cells = <1>;
22*4e72b326SXuhui Lin
23*4e72b326SXuhui Lin	aliases {
24*4e72b326SXuhui Lin		csi2dphy0 = &csi2_dphy0;
25*4e72b326SXuhui Lin		csi2dphy1 = &csi2_dphy1;
26*4e72b326SXuhui Lin		csi2dphy2 = &csi2_dphy2;
27*4e72b326SXuhui Lin		csi2dphy3 = &csi2_dphy3;
28*4e72b326SXuhui Lin		csi2dphy4 = &csi2_dphy4;
29*4e72b326SXuhui Lin		csi2dphy5 = &csi2_dphy5;
30*4e72b326SXuhui Lin		ethernet0 = &gmac;
31*4e72b326SXuhui Lin		gpio0 = &gpio0;
32*4e72b326SXuhui Lin		gpio1 = &gpio1;
33*4e72b326SXuhui Lin		gpio2 = &gpio2;
34*4e72b326SXuhui Lin		gpio3 = &gpio3;
35*4e72b326SXuhui Lin		gpio4 = &gpio4;
36*4e72b326SXuhui Lin		gpio5 = &gpio5;
37*4e72b326SXuhui Lin		gpio6 = &gpio6;
38*4e72b326SXuhui Lin		gpio7 = &gpio7;
39*4e72b326SXuhui Lin		i2c0 = &i2c0;
40*4e72b326SXuhui Lin		i2c1 = &i2c1;
41*4e72b326SXuhui Lin		i2c2 = &i2c2;
42*4e72b326SXuhui Lin		i2c3 = &i2c3;
43*4e72b326SXuhui Lin		i2c4 = &i2c4;
44*4e72b326SXuhui Lin		i2c5 = &i2c5;
45*4e72b326SXuhui Lin		mmc0 = &emmc;
46*4e72b326SXuhui Lin		mmc1 = &sdmmc0;
47*4e72b326SXuhui Lin		mmc2 = &sdmmc1;
48*4e72b326SXuhui Lin		rkcif_mipi_lvds0= &rkcif_mipi_lvds;
49*4e72b326SXuhui Lin		rkcif_mipi_lvds1= &rkcif_mipi_lvds1;
50*4e72b326SXuhui Lin		rkcif_mipi_lvds2= &rkcif_mipi_lvds2;
51*4e72b326SXuhui Lin		rkcif_mipi_lvds3= &rkcif_mipi_lvds3;
52*4e72b326SXuhui Lin		serial0 = &uart0;
53*4e72b326SXuhui Lin		serial1 = &uart1;
54*4e72b326SXuhui Lin		serial2 = &uart2;
55*4e72b326SXuhui Lin		serial3 = &uart3;
56*4e72b326SXuhui Lin		serial4 = &uart4;
57*4e72b326SXuhui Lin		serial5 = &uart5;
58*4e72b326SXuhui Lin		serial6 = &uart6;
59*4e72b326SXuhui Lin		serial7 = &uart7;
60*4e72b326SXuhui Lin		spi0 = &spi0;
61*4e72b326SXuhui Lin		spi1 = &spi1;
62*4e72b326SXuhui Lin		spi2 = &fspi0;
63*4e72b326SXuhui Lin		spi3 = &fspi1;
64*4e72b326SXuhui Lin	};
65*4e72b326SXuhui Lin
66*4e72b326SXuhui Lin	clocks {
67*4e72b326SXuhui Lin		compatible = "simple-bus";
68*4e72b326SXuhui Lin		#address-cells = <1>;
69*4e72b326SXuhui Lin		#size-cells = <1>;
70*4e72b326SXuhui Lin		ranges;
71*4e72b326SXuhui Lin
72*4e72b326SXuhui Lin		mclkin_sai0: mclkin-sai0 {
73*4e72b326SXuhui Lin			compatible = "fixed-clock";
74*4e72b326SXuhui Lin			#clock-cells = <0>;
75*4e72b326SXuhui Lin			clock-frequency = <0>;
76*4e72b326SXuhui Lin			clock-output-names = "mclk_sai0_from_io";
77*4e72b326SXuhui Lin			status = "disabled";
78*4e72b326SXuhui Lin		};
79*4e72b326SXuhui Lin
80*4e72b326SXuhui Lin		mclkin_sai1: mclkin-sai1 {
81*4e72b326SXuhui Lin			compatible = "fixed-clock";
82*4e72b326SXuhui Lin			#clock-cells = <0>;
83*4e72b326SXuhui Lin			clock-frequency = <0>;
84*4e72b326SXuhui Lin			clock-output-names = "mclk_sai1_from_io";
85*4e72b326SXuhui Lin			status = "disabled";
86*4e72b326SXuhui Lin		};
87*4e72b326SXuhui Lin
88*4e72b326SXuhui Lin		mclkin_sai2: mclkin-sai2 {
89*4e72b326SXuhui Lin			compatible = "fixed-clock";
90*4e72b326SXuhui Lin			#clock-cells = <0>;
91*4e72b326SXuhui Lin			clock-frequency = <0>;
92*4e72b326SXuhui Lin			clock-output-names = "mclk_sai2_from_io";
93*4e72b326SXuhui Lin			status = "disabled";
94*4e72b326SXuhui Lin		};
95*4e72b326SXuhui Lin
96*4e72b326SXuhui Lin		sclkin_sai0: sclkin-sai0 {
97*4e72b326SXuhui Lin			compatible = "fixed-clock";
98*4e72b326SXuhui Lin			#clock-cells = <0>;
99*4e72b326SXuhui Lin			clock-frequency = <0>;
100*4e72b326SXuhui Lin			clock-output-names = "sclk_sai0_from_io";
101*4e72b326SXuhui Lin			status = "disabled";
102*4e72b326SXuhui Lin		};
103*4e72b326SXuhui Lin
104*4e72b326SXuhui Lin		sclkin_sai1: sclkin-sai1 {
105*4e72b326SXuhui Lin			compatible = "fixed-clock";
106*4e72b326SXuhui Lin			#clock-cells = <0>;
107*4e72b326SXuhui Lin			clock-frequency = <0>;
108*4e72b326SXuhui Lin			clock-output-names = "sclk_sai1_from_io";
109*4e72b326SXuhui Lin			status = "disabled";
110*4e72b326SXuhui Lin		};
111*4e72b326SXuhui Lin
112*4e72b326SXuhui Lin		sclkin_sai2: sclkin-sai2 {
113*4e72b326SXuhui Lin			compatible = "fixed-clock";
114*4e72b326SXuhui Lin			#clock-cells = <0>;
115*4e72b326SXuhui Lin			clock-frequency = <0>;
116*4e72b326SXuhui Lin			clock-output-names = "sclk_sai2_from_io";
117*4e72b326SXuhui Lin			status = "disabled";
118*4e72b326SXuhui Lin		};
119*4e72b326SXuhui Lin
120*4e72b326SXuhui Lin		xin32k: xin32k {
121*4e72b326SXuhui Lin			compatible = "fixed-clock";
122*4e72b326SXuhui Lin			#clock-cells = <0>;
123*4e72b326SXuhui Lin			clock-frequency = <32768>;
124*4e72b326SXuhui Lin			clock-output-names = "xin32k";
125*4e72b326SXuhui Lin		};
126*4e72b326SXuhui Lin
127*4e72b326SXuhui Lin		xin24m: xin24m {
128*4e72b326SXuhui Lin			compatible = "fixed-clock";
129*4e72b326SXuhui Lin			#clock-cells = <0>;
130*4e72b326SXuhui Lin			clock-frequency = <24000000>;
131*4e72b326SXuhui Lin			clock-output-names = "xin24m";
132*4e72b326SXuhui Lin		};
133*4e72b326SXuhui Lin
134*4e72b326SXuhui Lin		clk_rcosc: clk_rcosc {
135*4e72b326SXuhui Lin			compatible = "fixed-clock";
136*4e72b326SXuhui Lin			#clock-cells = <0>;
137*4e72b326SXuhui Lin			clock-frequency = <96000000>;
138*4e72b326SXuhui Lin			clock-output-names = "clk_rcosc";
139*4e72b326SXuhui Lin		};
140*4e72b326SXuhui Lin
141*4e72b326SXuhui Lin		mclkout_sai0: mclkout-sai0@20100048 {
142*4e72b326SXuhui Lin			compatible = "rockchip,clk-out";
143*4e72b326SXuhui Lin			reg = <0x20100048 0x4>;
144*4e72b326SXuhui Lin			clocks = <&cru MCLK_SAI0_OUT2IO>;
145*4e72b326SXuhui Lin			#clock-cells = <0>;
146*4e72b326SXuhui Lin			clock-output-names = "mclk_sai0_to_io";
147*4e72b326SXuhui Lin			rockchip,bit-shift = <0>;
148*4e72b326SXuhui Lin			rockchip,bit-set-to-disable;
149*4e72b326SXuhui Lin			status = "disabled";
150*4e72b326SXuhui Lin		};
151*4e72b326SXuhui Lin
152*4e72b326SXuhui Lin		mclkout_sai1: mclkout-sai1@20100048 {
153*4e72b326SXuhui Lin			compatible = "rockchip,clk-out";
154*4e72b326SXuhui Lin			reg = <0x20100048 0x4>;
155*4e72b326SXuhui Lin			clocks = <&cru MCLK_SAI1_OUT2IO>;
156*4e72b326SXuhui Lin			#clock-cells = <0>;
157*4e72b326SXuhui Lin			clock-output-names = "mclk_sai1_to_io";
158*4e72b326SXuhui Lin			rockchip,bit-shift = <1>;
159*4e72b326SXuhui Lin			rockchip,bit-set-to-disable;
160*4e72b326SXuhui Lin			status = "disabled";
161*4e72b326SXuhui Lin		};
162*4e72b326SXuhui Lin
163*4e72b326SXuhui Lin		mclkout_sai2: mclkout-sai2@20100048 {
164*4e72b326SXuhui Lin			compatible = "rockchip,clk-out";
165*4e72b326SXuhui Lin			reg = <0x20100048 0x4>;
166*4e72b326SXuhui Lin			clocks = <&cru MCLK_SAI2_OUT2IO>;
167*4e72b326SXuhui Lin			#clock-cells = <0>;
168*4e72b326SXuhui Lin			clock-output-names = "mclk_sai2_to_io";
169*4e72b326SXuhui Lin			rockchip,bit-shift = <2>;
170*4e72b326SXuhui Lin			rockchip,bit-set-to-disable;
171*4e72b326SXuhui Lin			status = "disabled";
172*4e72b326SXuhui Lin		};
173*4e72b326SXuhui Lin
174*4e72b326SXuhui Lin		pvtpll_core: pvtpll-core@20480000 {
175*4e72b326SXuhui Lin			compatible = "rockchip,rv1126b-core-pvtpll", "syscon";
176*4e72b326SXuhui Lin			reg = <0x20480000 0x100>;
177*4e72b326SXuhui Lin			clocks = <&cru ARMCLK>;
178*4e72b326SXuhui Lin			#clock-cells = <0>;
179*4e72b326SXuhui Lin			clock-output-names = "clk_core_pvtpll";
180*4e72b326SXuhui Lin			assigned-clocks = <&pvtpll_core>;
181*4e72b326SXuhui Lin			assigned-clock-rates = <1200000000>;
182*4e72b326SXuhui Lin		};
183*4e72b326SXuhui Lin	};
184*4e72b326SXuhui Lin
185*4e72b326SXuhui Lin	cpus {
186*4e72b326SXuhui Lin		#address-cells = <1>;
187*4e72b326SXuhui Lin		#size-cells = <0>;
188*4e72b326SXuhui Lin
189*4e72b326SXuhui Lin		cpu0: cpu@0 {
190*4e72b326SXuhui Lin			device_type = "cpu";
191*4e72b326SXuhui Lin			compatible = "arm,cortex-a53";
192*4e72b326SXuhui Lin			reg = <0x0>;
193*4e72b326SXuhui Lin			enable-method = "psci";
194*4e72b326SXuhui Lin			clocks = <&cru ARMCLK>;
195*4e72b326SXuhui Lin			operating-points-v2 = <&cpu_opp_table>;
196*4e72b326SXuhui Lin		};
197*4e72b326SXuhui Lin		cpu1: cpu@1 {
198*4e72b326SXuhui Lin			device_type = "cpu";
199*4e72b326SXuhui Lin			compatible = "arm,cortex-a53";
200*4e72b326SXuhui Lin			reg = <0x1>;
201*4e72b326SXuhui Lin			enable-method = "psci";
202*4e72b326SXuhui Lin			clocks = <&cru ARMCLK>;
203*4e72b326SXuhui Lin			operating-points-v2 = <&cpu_opp_table>;
204*4e72b326SXuhui Lin		};
205*4e72b326SXuhui Lin		cpu2: cpu@2 {
206*4e72b326SXuhui Lin			device_type = "cpu";
207*4e72b326SXuhui Lin			compatible = "arm,cortex-a53";
208*4e72b326SXuhui Lin			reg = <0x2>;
209*4e72b326SXuhui Lin			enable-method = "psci";
210*4e72b326SXuhui Lin			clocks = <&cru ARMCLK>;
211*4e72b326SXuhui Lin			operating-points-v2 = <&cpu_opp_table>;
212*4e72b326SXuhui Lin		};
213*4e72b326SXuhui Lin		cpu3: cpu@3 {
214*4e72b326SXuhui Lin			device_type = "cpu";
215*4e72b326SXuhui Lin			compatible = "arm,cortex-a53";
216*4e72b326SXuhui Lin			reg = <0x3>;
217*4e72b326SXuhui Lin			enable-method = "psci";
218*4e72b326SXuhui Lin			clocks = <&cru ARMCLK>;
219*4e72b326SXuhui Lin			operating-points-v2 = <&cpu_opp_table>;
220*4e72b326SXuhui Lin		};
221*4e72b326SXuhui Lin	};
222*4e72b326SXuhui Lin
223*4e72b326SXuhui Lin	cpu_opp_table: cpu0-opp-table {
224*4e72b326SXuhui Lin		compatible = "operating-points-v2";
225*4e72b326SXuhui Lin		opp-shared;
226*4e72b326SXuhui Lin
227*4e72b326SXuhui Lin		nvmem-cells = <&cpu_leakage>;
228*4e72b326SXuhui Lin		nvmem-cell-names = "leakage";
229*4e72b326SXuhui Lin
230*4e72b326SXuhui Lin		opp-594000000 {
231*4e72b326SXuhui Lin			opp-hz = /bits/ 64 <594000000>;
232*4e72b326SXuhui Lin			opp-microvolt = <850000 850000 1100000>;
233*4e72b326SXuhui Lin			clock-latency-ns = <40000>;
234*4e72b326SXuhui Lin			opp-suspend;
235*4e72b326SXuhui Lin		};
236*4e72b326SXuhui Lin
237*4e72b326SXuhui Lin		opp-816000000 {
238*4e72b326SXuhui Lin			opp-hz = /bits/ 64 <816000000>;
239*4e72b326SXuhui Lin			opp-microvolt = <850000 850000 1100000>;
240*4e72b326SXuhui Lin			clock-latency-ns = <40000>;
241*4e72b326SXuhui Lin		};
242*4e72b326SXuhui Lin		opp-1008000000 {
243*4e72b326SXuhui Lin			opp-hz = /bits/ 64 <1008000000>;
244*4e72b326SXuhui Lin			opp-microvolt = <850000 850000 1100000>;
245*4e72b326SXuhui Lin			clock-latency-ns = <40000>;
246*4e72b326SXuhui Lin		};
247*4e72b326SXuhui Lin		opp-1200000000 {
248*4e72b326SXuhui Lin			opp-hz = /bits/ 64 <1200000000>;
249*4e72b326SXuhui Lin			opp-microvolt = <862500 862500 1100000>;
250*4e72b326SXuhui Lin			clock-latency-ns = <40000>;
251*4e72b326SXuhui Lin		};
252*4e72b326SXuhui Lin		opp-1296000000 {
253*4e72b326SXuhui Lin			opp-hz = /bits/ 64 <1296000000>;
254*4e72b326SXuhui Lin			opp-microvolt = <912500 912500 1100000>;
255*4e72b326SXuhui Lin			clock-latency-ns = <40000>;
256*4e72b326SXuhui Lin		};
257*4e72b326SXuhui Lin		opp-1416000000 {
258*4e72b326SXuhui Lin			opp-hz = /bits/ 64 <1416000000>;
259*4e72b326SXuhui Lin			opp-microvolt = <937500 937500 1100000>;
260*4e72b326SXuhui Lin			clock-latency-ns = <40000>;
261*4e72b326SXuhui Lin		};
262*4e72b326SXuhui Lin		opp-1512000000 {
263*4e72b326SXuhui Lin			opp-hz = /bits/ 64 <1512000000>;
264*4e72b326SXuhui Lin			opp-microvolt = <962500 962500 1100000>;
265*4e72b326SXuhui Lin			clock-latency-ns = <40000>;
266*4e72b326SXuhui Lin		};
267*4e72b326SXuhui Lin		opp-1608000000 {
268*4e72b326SXuhui Lin			opp-hz = /bits/ 64 <1608000000>;
269*4e72b326SXuhui Lin			opp-microvolt = <1012500 1012500 1100000>;
270*4e72b326SXuhui Lin			clock-latency-ns = <40000>;
271*4e72b326SXuhui Lin		};
272*4e72b326SXuhui Lin	};
273*4e72b326SXuhui Lin
274*4e72b326SXuhui Lin	cpuinfo {
275*4e72b326SXuhui Lin		compatible = "rockchip,cpuinfo";
276*4e72b326SXuhui Lin		nvmem-cells = <&otp_id>, <&cpu_version>, <&cpu_code>;
277*4e72b326SXuhui Lin		nvmem-cell-names = "id", "cpu-version", "cpu-code";
278*4e72b326SXuhui Lin	};
279*4e72b326SXuhui Lin
280*4e72b326SXuhui Lin	/* dphy0 full mode */
281*4e72b326SXuhui Lin	csi2_dphy0: csi2-dphy0 {
282*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-csi2-dphy";
283*4e72b326SXuhui Lin		rockchip,hw = <&csi2_dphy0_hw>, <&csi2_dphy1_hw>;
284*4e72b326SXuhui Lin		status = "disabled";
285*4e72b326SXuhui Lin	};
286*4e72b326SXuhui Lin
287*4e72b326SXuhui Lin	/* dphy0 split mode 01 */
288*4e72b326SXuhui Lin	csi2_dphy1: csi2-dphy1 {
289*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-csi2-dphy";
290*4e72b326SXuhui Lin		rockchip,hw = <&csi2_dphy0_hw>, <&csi2_dphy1_hw>;
291*4e72b326SXuhui Lin		status = "disabled";
292*4e72b326SXuhui Lin	};
293*4e72b326SXuhui Lin
294*4e72b326SXuhui Lin	/* dphy0 split mode 23 */
295*4e72b326SXuhui Lin	csi2_dphy2: csi2-dphy2 {
296*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-csi2-dphy";
297*4e72b326SXuhui Lin		rockchip,hw = <&csi2_dphy0_hw>, <&csi2_dphy1_hw>;
298*4e72b326SXuhui Lin		status = "disabled";
299*4e72b326SXuhui Lin	};
300*4e72b326SXuhui Lin
301*4e72b326SXuhui Lin	/* dphy1 full mode */
302*4e72b326SXuhui Lin	csi2_dphy3: csi2-dphy3 {
303*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-csi2-dphy";
304*4e72b326SXuhui Lin		rockchip,hw = <&csi2_dphy0_hw>, <&csi2_dphy1_hw>;
305*4e72b326SXuhui Lin		status = "disabled";
306*4e72b326SXuhui Lin	};
307*4e72b326SXuhui Lin
308*4e72b326SXuhui Lin	/* dphy1 split mode 01 */
309*4e72b326SXuhui Lin	csi2_dphy4: csi2-dphy4 {
310*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-csi2-dphy";
311*4e72b326SXuhui Lin		rockchip,hw = <&csi2_dphy0_hw>, <&csi2_dphy1_hw>;
312*4e72b326SXuhui Lin		status = "disabled";
313*4e72b326SXuhui Lin	};
314*4e72b326SXuhui Lin
315*4e72b326SXuhui Lin	/* dphy1 split mode 23 */
316*4e72b326SXuhui Lin	csi2_dphy5: csi2-dphy5 {
317*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-csi2-dphy";
318*4e72b326SXuhui Lin		rockchip,hw = <&csi2_dphy0_hw>, <&csi2_dphy1_hw>;
319*4e72b326SXuhui Lin		status = "disabled";
320*4e72b326SXuhui Lin	};
321*4e72b326SXuhui Lin
322*4e72b326SXuhui Lin	display_subsystem: display-subsystem {
323*4e72b326SXuhui Lin		compatible = "rockchip,display-subsystem";
324*4e72b326SXuhui Lin		ports = <&vop_out>;
325*4e72b326SXuhui Lin		status = "disabled";
326*4e72b326SXuhui Lin		logo-memory-region = <&drm_logo>;
327*4e72b326SXuhui Lin
328*4e72b326SXuhui Lin		route {
329*4e72b326SXuhui Lin			route_dsi: route-dsi {
330*4e72b326SXuhui Lin				status = "disabled";
331*4e72b326SXuhui Lin				logo,uboot = "logo.bmp";
332*4e72b326SXuhui Lin				logo,kernel = "logo_kernel.bmp";
333*4e72b326SXuhui Lin				logo,mode = "center";
334*4e72b326SXuhui Lin				charge_logo,mode = "center";
335*4e72b326SXuhui Lin				connect = <&vop_out_dsi>;
336*4e72b326SXuhui Lin			};
337*4e72b326SXuhui Lin
338*4e72b326SXuhui Lin			route_rgb: route-rgb {
339*4e72b326SXuhui Lin				status = "disabled";
340*4e72b326SXuhui Lin				logo,uboot = "logo.bmp";
341*4e72b326SXuhui Lin				logo,kernel = "logo_kernel.bmp";
342*4e72b326SXuhui Lin				logo,mode = "center";
343*4e72b326SXuhui Lin				charge_logo,mode = "center";
344*4e72b326SXuhui Lin				connect = <&vop_out_rgb>;
345*4e72b326SXuhui Lin			};
346*4e72b326SXuhui Lin		};
347*4e72b326SXuhui Lin	};
348*4e72b326SXuhui Lin
349*4e72b326SXuhui Lin	fiq_debugger: fiq-debugger {
350*4e72b326SXuhui Lin		compatible = "rockchip,fiq-debugger";
351*4e72b326SXuhui Lin		rockchip,serial-id = <0>;
352*4e72b326SXuhui Lin		rockchip,wake-irq = <0>;
353*4e72b326SXuhui Lin		rockchip,irq-mode-enable = <0>;
354*4e72b326SXuhui Lin		rockchip,baudrate = <1500000>;  /* Only 115200 and 1500000 */
355*4e72b326SXuhui Lin		interrupts = <GIC_SPI 240 IRQ_TYPE_LEVEL_HIGH>;
356*4e72b326SXuhui Lin		status = "disabled";
357*4e72b326SXuhui Lin	};
358*4e72b326SXuhui Lin
359*4e72b326SXuhui Lin	mipi0_csi2: mipi0-csi2 {
360*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-mipi-csi2";
361*4e72b326SXuhui Lin		rockchip,hw = <&mipi0_csi2_hw>, <&mipi1_csi2_hw>,
362*4e72b326SXuhui Lin			      <&mipi2_csi2_hw>, <&mipi3_csi2_hw>;
363*4e72b326SXuhui Lin		status = "disabled";
364*4e72b326SXuhui Lin	};
365*4e72b326SXuhui Lin
366*4e72b326SXuhui Lin	mipi1_csi2: mipi1-csi2 {
367*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-mipi-csi2";
368*4e72b326SXuhui Lin		rockchip,hw = <&mipi0_csi2_hw>, <&mipi1_csi2_hw>,
369*4e72b326SXuhui Lin			      <&mipi2_csi2_hw>, <&mipi3_csi2_hw>;
370*4e72b326SXuhui Lin		status = "disabled";
371*4e72b326SXuhui Lin	};
372*4e72b326SXuhui Lin
373*4e72b326SXuhui Lin	mipi2_csi2: mipi2-csi2 {
374*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-mipi-csi2";
375*4e72b326SXuhui Lin		rockchip,hw = <&mipi0_csi2_hw>, <&mipi1_csi2_hw>,
376*4e72b326SXuhui Lin			      <&mipi2_csi2_hw>, <&mipi3_csi2_hw>;
377*4e72b326SXuhui Lin		status = "disabled";
378*4e72b326SXuhui Lin	};
379*4e72b326SXuhui Lin
380*4e72b326SXuhui Lin	mipi3_csi2: mipi3-csi2 {
381*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-mipi-csi2";
382*4e72b326SXuhui Lin		rockchip,hw = <&mipi0_csi2_hw>, <&mipi1_csi2_hw>,
383*4e72b326SXuhui Lin			      <&mipi2_csi2_hw>, <&mipi3_csi2_hw>;
384*4e72b326SXuhui Lin		status = "disabled";
385*4e72b326SXuhui Lin	};
386*4e72b326SXuhui Lin
387*4e72b326SXuhui Lin	mpp_srv: mpp-srv {
388*4e72b326SXuhui Lin		compatible = "rockchip,mpp-service";
389*4e72b326SXuhui Lin		rockchip,taskqueue-count = <3>;
390*4e72b326SXuhui Lin		rockchip,resetgroup-count = <3>;
391*4e72b326SXuhui Lin		status = "disabled";
392*4e72b326SXuhui Lin	};
393*4e72b326SXuhui Lin
394*4e72b326SXuhui Lin	mpp_vcodec: mpp-vcodec {
395*4e72b326SXuhui Lin		compatible = "rockchip,vcodec";
396*4e72b326SXuhui Lin		status = "disabled";
397*4e72b326SXuhui Lin	};
398*4e72b326SXuhui Lin
399*4e72b326SXuhui Lin	pmu_a53: pmu-a53 {
400*4e72b326SXuhui Lin		compatible = "arm,cortex-a53-pmu";
401*4e72b326SXuhui Lin		interrupts = <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>,
402*4e72b326SXuhui Lin			     <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>,
403*4e72b326SXuhui Lin			     <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>,
404*4e72b326SXuhui Lin			     <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>;
405*4e72b326SXuhui Lin		interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
406*4e72b326SXuhui Lin	};
407*4e72b326SXuhui Lin
408*4e72b326SXuhui Lin	psci: psci {
409*4e72b326SXuhui Lin		compatible = "arm,psci-1.0";
410*4e72b326SXuhui Lin		method = "smc";
411*4e72b326SXuhui Lin	};
412*4e72b326SXuhui Lin
413*4e72b326SXuhui Lin	reserved-memory {
414*4e72b326SXuhui Lin		#address-cells = <1>;
415*4e72b326SXuhui Lin		#size-cells = <1>;
416*4e72b326SXuhui Lin		ranges;
417*4e72b326SXuhui Lin
418*4e72b326SXuhui Lin		drm_logo: drm-logo@0 {
419*4e72b326SXuhui Lin			compatible = "rockchip,drm-logo";
420*4e72b326SXuhui Lin			reg = <0x0 0x0>;
421*4e72b326SXuhui Lin		};
422*4e72b326SXuhui Lin	};
423*4e72b326SXuhui Lin
424*4e72b326SXuhui Lin	rkaiisp_vir0: rkaiisp-vir0 {
425*4e72b326SXuhui Lin		compatible = "rockchip,rkaiisp-vir";
426*4e72b326SXuhui Lin		rockchip,hw = <&rkaiisp>;
427*4e72b326SXuhui Lin		status = "disabled";
428*4e72b326SXuhui Lin	};
429*4e72b326SXuhui Lin
430*4e72b326SXuhui Lin	rkaiisp_vir1: rkaiisp-vir1 {
431*4e72b326SXuhui Lin		compatible = "rockchip,rkaiisp-vir";
432*4e72b326SXuhui Lin		rockchip,hw = <&rkaiisp>;
433*4e72b326SXuhui Lin		status = "disabled";
434*4e72b326SXuhui Lin	};
435*4e72b326SXuhui Lin
436*4e72b326SXuhui Lin	rkaiisp_vir2: rkaiisp-vir2 {
437*4e72b326SXuhui Lin		compatible = "rockchip,rkaiisp-vir";
438*4e72b326SXuhui Lin		rockchip,hw = <&rkaiisp>;
439*4e72b326SXuhui Lin		status = "disabled";
440*4e72b326SXuhui Lin	};
441*4e72b326SXuhui Lin
442*4e72b326SXuhui Lin	rkaiisp_vir3: rkaiisp-vir3 {
443*4e72b326SXuhui Lin		compatible = "rockchip,rkaiisp-vir";
444*4e72b326SXuhui Lin		rockchip,hw = <&rkaiisp>;
445*4e72b326SXuhui Lin		status = "disabled";
446*4e72b326SXuhui Lin	};
447*4e72b326SXuhui Lin
448*4e72b326SXuhui Lin	rkcif_mipi_lvds: rkcif-mipi-lvds {
449*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-mipi-lvds";
450*4e72b326SXuhui Lin		rockchip,hw = <&rkcif>;
451*4e72b326SXuhui Lin		status = "disabled";
452*4e72b326SXuhui Lin	};
453*4e72b326SXuhui Lin
454*4e72b326SXuhui Lin	rkcif_mipi_lvds_sditf: rkcif-mipi-lvds-sditf {
455*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-sditf";
456*4e72b326SXuhui Lin		rockchip,cif = <&rkcif_mipi_lvds>;
457*4e72b326SXuhui Lin		status = "disabled";
458*4e72b326SXuhui Lin	};
459*4e72b326SXuhui Lin
460*4e72b326SXuhui Lin	rkcif_mipi_lvds_sditf_vir1: rkcif-mipi-lvds-sditf-vir1 {
461*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-sditf";
462*4e72b326SXuhui Lin		rockchip,cif = <&rkcif_mipi_lvds>;
463*4e72b326SXuhui Lin		status = "disabled";
464*4e72b326SXuhui Lin	};
465*4e72b326SXuhui Lin
466*4e72b326SXuhui Lin	rkcif_mipi_lvds_sditf_vir2: rkcif-mipi-lvds-sditf-vir2 {
467*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-sditf";
468*4e72b326SXuhui Lin		rockchip,cif = <&rkcif_mipi_lvds>;
469*4e72b326SXuhui Lin		status = "disabled";
470*4e72b326SXuhui Lin	};
471*4e72b326SXuhui Lin
472*4e72b326SXuhui Lin	rkcif_mipi_lvds_sditf_vir3: rkcif-mipi-lvds-sditf-vir3 {
473*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-sditf";
474*4e72b326SXuhui Lin		rockchip,cif = <&rkcif_mipi_lvds>;
475*4e72b326SXuhui Lin		status = "disabled";
476*4e72b326SXuhui Lin	};
477*4e72b326SXuhui Lin
478*4e72b326SXuhui Lin	rkcif_mipi_lvds1: rkcif-mipi-lvds1 {
479*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-mipi-lvds";
480*4e72b326SXuhui Lin		rockchip,hw = <&rkcif>;
481*4e72b326SXuhui Lin		status = "disabled";
482*4e72b326SXuhui Lin	};
483*4e72b326SXuhui Lin
484*4e72b326SXuhui Lin	rkcif_mipi_lvds1_sditf: rkcif-mipi-lvds1-sditf {
485*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-sditf";
486*4e72b326SXuhui Lin		rockchip,cif = <&rkcif_mipi_lvds1>;
487*4e72b326SXuhui Lin		status = "disabled";
488*4e72b326SXuhui Lin	};
489*4e72b326SXuhui Lin
490*4e72b326SXuhui Lin	rkcif_mipi_lvds1_sditf_vir1: rkcif-mipi-lvds1-sditf-vir1 {
491*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-sditf";
492*4e72b326SXuhui Lin		rockchip,cif = <&rkcif_mipi_lvds1>;
493*4e72b326SXuhui Lin		status = "disabled";
494*4e72b326SXuhui Lin	};
495*4e72b326SXuhui Lin
496*4e72b326SXuhui Lin	rkcif_mipi_lvds1_sditf_vir2: rkcif-mipi-lvds1-sditf-vir2 {
497*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-sditf";
498*4e72b326SXuhui Lin		rockchip,cif = <&rkcif_mipi_lvds1>;
499*4e72b326SXuhui Lin		status = "disabled";
500*4e72b326SXuhui Lin	};
501*4e72b326SXuhui Lin
502*4e72b326SXuhui Lin	rkcif_mipi_lvds1_sditf_vir3: rkcif-mipi-lvds1-sditf-vir3 {
503*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-sditf";
504*4e72b326SXuhui Lin		rockchip,cif = <&rkcif_mipi_lvds1>;
505*4e72b326SXuhui Lin		status = "disabled";
506*4e72b326SXuhui Lin	};
507*4e72b326SXuhui Lin
508*4e72b326SXuhui Lin	rkcif_mipi_lvds2: rkcif-mipi-lvds2 {
509*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-mipi-lvds";
510*4e72b326SXuhui Lin		rockchip,hw = <&rkcif>;
511*4e72b326SXuhui Lin		status = "disabled";
512*4e72b326SXuhui Lin	};
513*4e72b326SXuhui Lin
514*4e72b326SXuhui Lin	rkcif_mipi_lvds2_sditf: rkcif-mipi-lvds2-sditf {
515*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-sditf";
516*4e72b326SXuhui Lin		rockchip,cif = <&rkcif_mipi_lvds2>;
517*4e72b326SXuhui Lin		status = "disabled";
518*4e72b326SXuhui Lin	};
519*4e72b326SXuhui Lin
520*4e72b326SXuhui Lin	rkcif_mipi_lvds2_sditf_vir1: rkcif-mipi-lvds2-sditf-vir1 {
521*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-sditf";
522*4e72b326SXuhui Lin		rockchip,cif = <&rkcif_mipi_lvds2>;
523*4e72b326SXuhui Lin		status = "disabled";
524*4e72b326SXuhui Lin	};
525*4e72b326SXuhui Lin
526*4e72b326SXuhui Lin	rkcif_mipi_lvds2_sditf_vir2: rkcif-mipi-lvds2-sditf-vir2 {
527*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-sditf";
528*4e72b326SXuhui Lin		rockchip,cif = <&rkcif_mipi_lvds2>;
529*4e72b326SXuhui Lin		status = "disabled";
530*4e72b326SXuhui Lin	};
531*4e72b326SXuhui Lin
532*4e72b326SXuhui Lin	rkcif_mipi_lvds2_sditf_vir3: rkcif-mipi-lvds2-sditf-vir3 {
533*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-sditf";
534*4e72b326SXuhui Lin		rockchip,cif = <&rkcif_mipi_lvds2>;
535*4e72b326SXuhui Lin		status = "disabled";
536*4e72b326SXuhui Lin	};
537*4e72b326SXuhui Lin
538*4e72b326SXuhui Lin	rkcif_mipi_lvds3: rkcif-mipi-lvds3 {
539*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-mipi-lvds";
540*4e72b326SXuhui Lin		rockchip,hw = <&rkcif>;
541*4e72b326SXuhui Lin		status = "disabled";
542*4e72b326SXuhui Lin	};
543*4e72b326SXuhui Lin
544*4e72b326SXuhui Lin	rkcif_mipi_lvds3_sditf: rkcif-mipi-lvds3-sditf {
545*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-sditf";
546*4e72b326SXuhui Lin		rockchip,cif = <&rkcif_mipi_lvds3>;
547*4e72b326SXuhui Lin		status = "disabled";
548*4e72b326SXuhui Lin	};
549*4e72b326SXuhui Lin
550*4e72b326SXuhui Lin	rkcif_mipi_lvds3_sditf_vir1: rkcif-mipi-lvds3-sditf-vir1 {
551*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-sditf";
552*4e72b326SXuhui Lin		rockchip,cif = <&rkcif_mipi_lvds3>;
553*4e72b326SXuhui Lin		status = "disabled";
554*4e72b326SXuhui Lin	};
555*4e72b326SXuhui Lin
556*4e72b326SXuhui Lin	rkcif_mipi_lvds3_sditf_vir2: rkcif-mipi-lvds3-sditf-vir2 {
557*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-sditf";
558*4e72b326SXuhui Lin		rockchip,cif = <&rkcif_mipi_lvds3>;
559*4e72b326SXuhui Lin		status = "disabled";
560*4e72b326SXuhui Lin	};
561*4e72b326SXuhui Lin
562*4e72b326SXuhui Lin	rkcif_mipi_lvds3_sditf_vir3: rkcif-mipi-lvds3-sditf-vir3 {
563*4e72b326SXuhui Lin		compatible = "rockchip,rkcif-sditf";
564*4e72b326SXuhui Lin		rockchip,cif = <&rkcif_mipi_lvds3>;
565*4e72b326SXuhui Lin		status = "disabled";
566*4e72b326SXuhui Lin	};
567*4e72b326SXuhui Lin
568*4e72b326SXuhui Lin	rkdvbm: rkdvbm {
569*4e72b326SXuhui Lin		compatible = "rockchip,rk-dvbm";
570*4e72b326SXuhui Lin		status = "disabled";
571*4e72b326SXuhui Lin	};
572*4e72b326SXuhui Lin
573*4e72b326SXuhui Lin	rkisp_vir0: rkisp-vir0 {
574*4e72b326SXuhui Lin		compatible = "rockchip,rkisp-vir";
575*4e72b326SXuhui Lin		rockchip,hw = <&rkisp>;
576*4e72b326SXuhui Lin		dvbm = <&rkdvbm>;
577*4e72b326SXuhui Lin		status = "disabled";
578*4e72b326SXuhui Lin	};
579*4e72b326SXuhui Lin
580*4e72b326SXuhui Lin	rkisp_vir1: rkisp-vir1 {
581*4e72b326SXuhui Lin		compatible = "rockchip,rkisp-vir";
582*4e72b326SXuhui Lin		rockchip,hw = <&rkisp>;
583*4e72b326SXuhui Lin		dvbm = <&rkdvbm>;
584*4e72b326SXuhui Lin		status = "disabled";
585*4e72b326SXuhui Lin	};
586*4e72b326SXuhui Lin
587*4e72b326SXuhui Lin	rkisp_vir2: rkisp-vir2 {
588*4e72b326SXuhui Lin		compatible = "rockchip,rkisp-vir";
589*4e72b326SXuhui Lin		rockchip,hw = <&rkisp>;
590*4e72b326SXuhui Lin		dvbm = <&rkdvbm>;
591*4e72b326SXuhui Lin		status = "disabled";
592*4e72b326SXuhui Lin	};
593*4e72b326SXuhui Lin
594*4e72b326SXuhui Lin	rkisp_vir3: rkisp-vir3 {
595*4e72b326SXuhui Lin		compatible = "rockchip,rkisp-vir";
596*4e72b326SXuhui Lin		rockchip,hw = <&rkisp>;
597*4e72b326SXuhui Lin		dvbm = <&rkdvbm>;
598*4e72b326SXuhui Lin		status = "disabled";
599*4e72b326SXuhui Lin	};
600*4e72b326SXuhui Lin
601*4e72b326SXuhui Lin	rkisp_vir0_sditf: rkisp-vir0-sditf {
602*4e72b326SXuhui Lin		compatible = "rockchip,rkisp-sditf";
603*4e72b326SXuhui Lin		rockchip,isp = <&rkisp_vir0>;
604*4e72b326SXuhui Lin		status = "disabled";
605*4e72b326SXuhui Lin
606*4e72b326SXuhui Lin		port {
607*4e72b326SXuhui Lin			isp_sditf0: endpoint {
608*4e72b326SXuhui Lin				remote-endpoint = <&vpss0_in>;
609*4e72b326SXuhui Lin			};
610*4e72b326SXuhui Lin		};
611*4e72b326SXuhui Lin	};
612*4e72b326SXuhui Lin
613*4e72b326SXuhui Lin	rkisp_vir1_sditf: rkisp-vir1-sditf {
614*4e72b326SXuhui Lin		compatible = "rockchip,rkisp-sditf";
615*4e72b326SXuhui Lin		rockchip,isp = <&rkisp_vir1>;
616*4e72b326SXuhui Lin		status = "disabled";
617*4e72b326SXuhui Lin
618*4e72b326SXuhui Lin		port {
619*4e72b326SXuhui Lin			isp_sditf1: endpoint {
620*4e72b326SXuhui Lin				remote-endpoint = <&vpss1_in>;
621*4e72b326SXuhui Lin			};
622*4e72b326SXuhui Lin		};
623*4e72b326SXuhui Lin	};
624*4e72b326SXuhui Lin
625*4e72b326SXuhui Lin	rkisp_vir2_sditf: rkisp-vir2-sditf {
626*4e72b326SXuhui Lin		compatible = "rockchip,rkisp-sditf";
627*4e72b326SXuhui Lin		rockchip,isp = <&rkisp_vir2>;
628*4e72b326SXuhui Lin		status = "disabled";
629*4e72b326SXuhui Lin
630*4e72b326SXuhui Lin		port {
631*4e72b326SXuhui Lin			isp_sditf2: endpoint {
632*4e72b326SXuhui Lin				remote-endpoint = <&vpss2_in>;
633*4e72b326SXuhui Lin			};
634*4e72b326SXuhui Lin		};
635*4e72b326SXuhui Lin	};
636*4e72b326SXuhui Lin
637*4e72b326SXuhui Lin	rkisp_vir3_sditf: rkisp-vir3-sditf {
638*4e72b326SXuhui Lin		compatible = "rockchip,rkisp-sditf";
639*4e72b326SXuhui Lin		rockchip,isp = <&rkisp_vir3>;
640*4e72b326SXuhui Lin		status = "disabled";
641*4e72b326SXuhui Lin
642*4e72b326SXuhui Lin		port {
643*4e72b326SXuhui Lin			isp_sditf3: endpoint {
644*4e72b326SXuhui Lin				remote-endpoint = <&vpss3_in>;
645*4e72b326SXuhui Lin			};
646*4e72b326SXuhui Lin		};
647*4e72b326SXuhui Lin	};
648*4e72b326SXuhui Lin
649*4e72b326SXuhui Lin	rkvpss_vir0: rkvpss-vir0 {
650*4e72b326SXuhui Lin		compatible = "rockchip,rkvpss-vir";
651*4e72b326SXuhui Lin		rockchip,hw = <&rkvpss>;
652*4e72b326SXuhui Lin		status = "disabled";
653*4e72b326SXuhui Lin
654*4e72b326SXuhui Lin		port {
655*4e72b326SXuhui Lin			vpss0_in: endpoint {
656*4e72b326SXuhui Lin				remote-endpoint = <&isp_sditf0>;
657*4e72b326SXuhui Lin			};
658*4e72b326SXuhui Lin		};
659*4e72b326SXuhui Lin	};
660*4e72b326SXuhui Lin
661*4e72b326SXuhui Lin	rkvpss_vir1: rkvpss-vir1 {
662*4e72b326SXuhui Lin		compatible = "rockchip,rkvpss-vir";
663*4e72b326SXuhui Lin		rockchip,hw = <&rkvpss>;
664*4e72b326SXuhui Lin		status = "disabled";
665*4e72b326SXuhui Lin
666*4e72b326SXuhui Lin		port {
667*4e72b326SXuhui Lin			vpss1_in: endpoint {
668*4e72b326SXuhui Lin				remote-endpoint = <&isp_sditf1>;
669*4e72b326SXuhui Lin			};
670*4e72b326SXuhui Lin		};
671*4e72b326SXuhui Lin	};
672*4e72b326SXuhui Lin
673*4e72b326SXuhui Lin	rkvpss_vir2: rkvpss-vir2 {
674*4e72b326SXuhui Lin		compatible = "rockchip,rkvpss-vir";
675*4e72b326SXuhui Lin		rockchip,hw = <&rkvpss>;
676*4e72b326SXuhui Lin		status = "disabled";
677*4e72b326SXuhui Lin
678*4e72b326SXuhui Lin		port {
679*4e72b326SXuhui Lin			vpss2_in: endpoint {
680*4e72b326SXuhui Lin				remote-endpoint = <&isp_sditf2>;
681*4e72b326SXuhui Lin			};
682*4e72b326SXuhui Lin		};
683*4e72b326SXuhui Lin	};
684*4e72b326SXuhui Lin
685*4e72b326SXuhui Lin	rkvpss_vir3: rkvpss-vir3 {
686*4e72b326SXuhui Lin		compatible = "rockchip,rkvpss-vir";
687*4e72b326SXuhui Lin		rockchip,hw = <&rkvpss>;
688*4e72b326SXuhui Lin		status = "disabled";
689*4e72b326SXuhui Lin
690*4e72b326SXuhui Lin		port {
691*4e72b326SXuhui Lin			vpss3_in: endpoint {
692*4e72b326SXuhui Lin				remote-endpoint = <&isp_sditf3>;
693*4e72b326SXuhui Lin			};
694*4e72b326SXuhui Lin		};
695*4e72b326SXuhui Lin	};
696*4e72b326SXuhui Lin
697*4e72b326SXuhui Lin	rockchip_system_monitor: rockchip-system-monitor {
698*4e72b326SXuhui Lin		compatible = "rockchip,system-monitor";
699*4e72b326SXuhui Lin	};
700*4e72b326SXuhui Lin
701*4e72b326SXuhui Lin	thermal_zones: thermal-zones {
702*4e72b326SXuhui Lin		cpu_thermal: cpu-thermal {
703*4e72b326SXuhui Lin			polling-delay-passive = <20>; /* milliseconds */
704*4e72b326SXuhui Lin			polling-delay = <1000>; /* milliseconds */
705*4e72b326SXuhui Lin			thermal-sensors = <&tsadc 0>;
706*4e72b326SXuhui Lin			trips {
707*4e72b326SXuhui Lin				soc_crit: soc-crit {
708*4e72b326SXuhui Lin					/* millicelsius */
709*4e72b326SXuhui Lin					temperature = <115000>;
710*4e72b326SXuhui Lin					/* millicelsius */
711*4e72b326SXuhui Lin					hysteresis = <2000>;
712*4e72b326SXuhui Lin					type = "critical";
713*4e72b326SXuhui Lin				};
714*4e72b326SXuhui Lin			};
715*4e72b326SXuhui Lin		};
716*4e72b326SXuhui Lin		npu_thermal: npu-thermal {
717*4e72b326SXuhui Lin			polling-delay-passive = <20>; /* milliseconds */
718*4e72b326SXuhui Lin			polling-delay = <1000>; /* milliseconds */
719*4e72b326SXuhui Lin			thermal-sensors = <&tsadc 1>;
720*4e72b326SXuhui Lin			trips {
721*4e72b326SXuhui Lin				bigcore_crit: bigcore-crit {
722*4e72b326SXuhui Lin					/* millicelsius */
723*4e72b326SXuhui Lin					temperature = <115000>;
724*4e72b326SXuhui Lin					/* millicelsius */
725*4e72b326SXuhui Lin					hysteresis = <2000>;
726*4e72b326SXuhui Lin					type = "critical";
727*4e72b326SXuhui Lin				};
728*4e72b326SXuhui Lin			};
729*4e72b326SXuhui Lin		};
730*4e72b326SXuhui Lin	};
731*4e72b326SXuhui Lin
732*4e72b326SXuhui Lin	timer {
733*4e72b326SXuhui Lin		compatible = "arm,armv8-timer";
734*4e72b326SXuhui Lin		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
735*4e72b326SXuhui Lin			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
736*4e72b326SXuhui Lin			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
737*4e72b326SXuhui Lin			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
738*4e72b326SXuhui Lin	};
739*4e72b326SXuhui Lin
740*4e72b326SXuhui Lin	cru: clock-controller@20000000 {
741*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-cru";
742*4e72b326SXuhui Lin		reg = <0x20000000 0xc0000>;
743*4e72b326SXuhui Lin		#clock-cells = <1>;
744*4e72b326SXuhui Lin		#reset-cells = <1>;
745*4e72b326SXuhui Lin
746*4e72b326SXuhui Lin		assigned-clocks =
747*4e72b326SXuhui Lin			<&cru PLL_GPLL>, <&cru PLL_CPLL>,
748*4e72b326SXuhui Lin			<&cru PLL_AUPLL>, <&cru CLK_AUDIO_FRAC0_SRC>,
749*4e72b326SXuhui Lin			<&cru CLK_AUDIO_FRAC1_SRC>, <&cru CLK_UART_FRAC0_SRC>,
750*4e72b326SXuhui Lin			<&cru CLK_UART_FRAC1_SRC>, <&cru CLK_CM_FRAC0_SRC>,
751*4e72b326SXuhui Lin			<&cru CLK_CM_FRAC1_SRC>, <&cru CLK_CM_FRAC2_SRC>,
752*4e72b326SXuhui Lin			<&cru CLK_UART_FRAC0>, <&cru CLK_UART_FRAC1>,
753*4e72b326SXuhui Lin			<&cru CLK_CM_FRAC0>, <&cru CLK_CM_FRAC1>,
754*4e72b326SXuhui Lin			<&cru CLK_CM_FRAC2>, <&cru CLK_AUDIO_FRAC0>,
755*4e72b326SXuhui Lin			<&cru CLK_AUDIO_FRAC1>;
756*4e72b326SXuhui Lin		assigned-clock-rates =
757*4e72b326SXuhui Lin			<1188000000>, <1000000000>,
758*4e72b326SXuhui Lin			<786432000>, <786432000>,
759*4e72b326SXuhui Lin			<786432000>, <1188000000>,
760*4e72b326SXuhui Lin			<1188000000>, <1188000000>,
761*4e72b326SXuhui Lin			<1188000000>, <786432000>,
762*4e72b326SXuhui Lin			<96000000>, <128000000>,
763*4e72b326SXuhui Lin			<18432000>, <500000000>,
764*4e72b326SXuhui Lin			<32768000>, <45158400>,
765*4e72b326SXuhui Lin			<49152000>;
766*4e72b326SXuhui Lin	};
767*4e72b326SXuhui Lin
768*4e72b326SXuhui Lin	grf: syscon@20100000 {
769*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-grf", "syscon", "simple-mfd";
770*4e72b326SXuhui Lin		reg = <0x20100000 0x91000>;
771*4e72b326SXuhui Lin
772*4e72b326SXuhui Lin		reboot_mode: reboot-mode {
773*4e72b326SXuhui Lin			compatible = "syscon-reboot-mode";
774*4e72b326SXuhui Lin			offset = <0x30200>;
775*4e72b326SXuhui Lin			mode-bootloader = <BOOT_BL_DOWNLOAD>;
776*4e72b326SXuhui Lin			mode-charge = <BOOT_CHARGING>;
777*4e72b326SXuhui Lin			mode-fastboot = <BOOT_FASTBOOT>;
778*4e72b326SXuhui Lin			mode-loader = <BOOT_BL_DOWNLOAD>;
779*4e72b326SXuhui Lin			mode-normal = <BOOT_NORMAL>;
780*4e72b326SXuhui Lin			mode-recovery = <BOOT_RECOVERY>;
781*4e72b326SXuhui Lin			mode-ums = <BOOT_UMS>;
782*4e72b326SXuhui Lin			mode-panic = <BOOT_PANIC>;
783*4e72b326SXuhui Lin			mode-watchdog = <BOOT_WATCHDOG>;
784*4e72b326SXuhui Lin		};
785*4e72b326SXuhui Lin	};
786*4e72b326SXuhui Lin
787*4e72b326SXuhui Lin	ioc_grf: syscon@201a0000 {
788*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-ioc-grf", "syscon", "simple-mfd";
789*4e72b326SXuhui Lin		reg = <0x201a0000 0x50000>;
790*4e72b326SXuhui Lin
791*4e72b326SXuhui Lin		rgb: rgb {
792*4e72b326SXuhui Lin			compatible = "rockchip,rv1126b-rgb";
793*4e72b326SXuhui Lin			status = "disabled";
794*4e72b326SXuhui Lin
795*4e72b326SXuhui Lin			ports {
796*4e72b326SXuhui Lin				#address-cells = <1>;
797*4e72b326SXuhui Lin				#size-cells = <0>;
798*4e72b326SXuhui Lin
799*4e72b326SXuhui Lin				port@0 {
800*4e72b326SXuhui Lin					reg = <0>;
801*4e72b326SXuhui Lin					#address-cells = <1>;
802*4e72b326SXuhui Lin					#size-cells = <0>;
803*4e72b326SXuhui Lin
804*4e72b326SXuhui Lin					rgb_in_vop: endpoint@0 {
805*4e72b326SXuhui Lin						reg = <0>;
806*4e72b326SXuhui Lin						remote-endpoint = <&vop_out_rgb>;
807*4e72b326SXuhui Lin					};
808*4e72b326SXuhui Lin				};
809*4e72b326SXuhui Lin
810*4e72b326SXuhui Lin			};
811*4e72b326SXuhui Lin		};
812*4e72b326SXuhui Lin	};
813*4e72b326SXuhui Lin
814*4e72b326SXuhui Lin	qos_cpu: qos@20310000 {
815*4e72b326SXuhui Lin		compatible = "syscon";
816*4e72b326SXuhui Lin		reg = <0x20310000 0x20>;
817*4e72b326SXuhui Lin	};
818*4e72b326SXuhui Lin
819*4e72b326SXuhui Lin	shaping_cpu: shaping@20310088 {
820*4e72b326SXuhui Lin		compatible = "syscon";
821*4e72b326SXuhui Lin		reg = <0x20310088 0x4>;
822*4e72b326SXuhui Lin	};
823*4e72b326SXuhui Lin
824*4e72b326SXuhui Lin	qos_emmc: qos@20320000 {
825*4e72b326SXuhui Lin		compatible = "syscon";
826*4e72b326SXuhui Lin		reg = <0x20320000 0x20>;
827*4e72b326SXuhui Lin	};
828*4e72b326SXuhui Lin
829*4e72b326SXuhui Lin	shaping_emmc: shaping@20320088 {
830*4e72b326SXuhui Lin		compatible = "syscon";
831*4e72b326SXuhui Lin		reg = <0x20320088 0x4>;
832*4e72b326SXuhui Lin	};
833*4e72b326SXuhui Lin
834*4e72b326SXuhui Lin	qos_fspi0: qos@20320100 {
835*4e72b326SXuhui Lin		compatible = "syscon";
836*4e72b326SXuhui Lin		reg = <0x20320100 0x20>;
837*4e72b326SXuhui Lin	};
838*4e72b326SXuhui Lin
839*4e72b326SXuhui Lin	shaping_fspi0: shaping@20320188 {
840*4e72b326SXuhui Lin		compatible = "syscon";
841*4e72b326SXuhui Lin		reg = <0x20320188 0x4>;
842*4e72b326SXuhui Lin	};
843*4e72b326SXuhui Lin
844*4e72b326SXuhui Lin	qos_usb2host: qos@20320200 {
845*4e72b326SXuhui Lin		compatible = "syscon";
846*4e72b326SXuhui Lin		reg = <0x20320200 0x20>;
847*4e72b326SXuhui Lin	};
848*4e72b326SXuhui Lin
849*4e72b326SXuhui Lin	shaping_usb2host: shaping@20320288 {
850*4e72b326SXuhui Lin		compatible = "syscon";
851*4e72b326SXuhui Lin		reg = <0x20320288 0x4>;
852*4e72b326SXuhui Lin	};
853*4e72b326SXuhui Lin
854*4e72b326SXuhui Lin	qos_usb3otg: qos@20320300 {
855*4e72b326SXuhui Lin		compatible = "syscon";
856*4e72b326SXuhui Lin		reg = <0x20320300 0x20>;
857*4e72b326SXuhui Lin	};
858*4e72b326SXuhui Lin
859*4e72b326SXuhui Lin	shaping_usb3otg: shaping@20320388 {
860*4e72b326SXuhui Lin		compatible = "syscon";
861*4e72b326SXuhui Lin		reg = <0x20320388 0x4>;
862*4e72b326SXuhui Lin	};
863*4e72b326SXuhui Lin
864*4e72b326SXuhui Lin	qos_gmac: qos@20330000 {
865*4e72b326SXuhui Lin		compatible = "syscon";
866*4e72b326SXuhui Lin		reg = <0x20330000 0x20>;
867*4e72b326SXuhui Lin	};
868*4e72b326SXuhui Lin
869*4e72b326SXuhui Lin	shaping_gmac: shaping@20330088 {
870*4e72b326SXuhui Lin		compatible = "syscon";
871*4e72b326SXuhui Lin		reg = <0x20330088 0x4>;
872*4e72b326SXuhui Lin	};
873*4e72b326SXuhui Lin
874*4e72b326SXuhui Lin	qos_isp: qos@20330100 {
875*4e72b326SXuhui Lin		compatible = "syscon";
876*4e72b326SXuhui Lin		reg = <0x20330100 0x20>;
877*4e72b326SXuhui Lin	};
878*4e72b326SXuhui Lin
879*4e72b326SXuhui Lin	shaping_isp: shaping@20330188 {
880*4e72b326SXuhui Lin		compatible = "syscon";
881*4e72b326SXuhui Lin		reg = <0x20330188 0x4>;
882*4e72b326SXuhui Lin	};
883*4e72b326SXuhui Lin
884*4e72b326SXuhui Lin	qos_rkcan0: qos@20330200 {
885*4e72b326SXuhui Lin		compatible = "syscon";
886*4e72b326SXuhui Lin		reg = <0x20330200 0x20>;
887*4e72b326SXuhui Lin	};
888*4e72b326SXuhui Lin
889*4e72b326SXuhui Lin	shaping_rkcan0: shaping@20330288 {
890*4e72b326SXuhui Lin		compatible = "syscon";
891*4e72b326SXuhui Lin		reg = <0x20330288 0x4>;
892*4e72b326SXuhui Lin	};
893*4e72b326SXuhui Lin
894*4e72b326SXuhui Lin	qos_rkcan1: qos@20330300 {
895*4e72b326SXuhui Lin		compatible = "syscon";
896*4e72b326SXuhui Lin		reg = <0x20330300 0x20>;
897*4e72b326SXuhui Lin	};
898*4e72b326SXuhui Lin
899*4e72b326SXuhui Lin	shaping_rkcan1: shaping@20330388 {
900*4e72b326SXuhui Lin		compatible = "syscon";
901*4e72b326SXuhui Lin		reg = <0x20330388 0x4>;
902*4e72b326SXuhui Lin	};
903*4e72b326SXuhui Lin
904*4e72b326SXuhui Lin	qos_sdmmc0: qos@20330400 {
905*4e72b326SXuhui Lin		compatible = "syscon";
906*4e72b326SXuhui Lin		reg = <0x20330400 0x20>;
907*4e72b326SXuhui Lin	};
908*4e72b326SXuhui Lin
909*4e72b326SXuhui Lin	shaping_sdmmc0: shaping@20330488 {
910*4e72b326SXuhui Lin		compatible = "syscon";
911*4e72b326SXuhui Lin		reg = <0x20330488 0x4>;
912*4e72b326SXuhui Lin	};
913*4e72b326SXuhui Lin
914*4e72b326SXuhui Lin	qos_vicap: qos@20330500 {
915*4e72b326SXuhui Lin		compatible = "syscon";
916*4e72b326SXuhui Lin		reg = <0x20330500 0x20>;
917*4e72b326SXuhui Lin	};
918*4e72b326SXuhui Lin
919*4e72b326SXuhui Lin	shaping_vicap: shaping@20330588 {
920*4e72b326SXuhui Lin		compatible = "syscon";
921*4e72b326SXuhui Lin		reg = <0x20330588 0x4>;
922*4e72b326SXuhui Lin	};
923*4e72b326SXuhui Lin
924*4e72b326SXuhui Lin	qos_vpsl: qos@20330600 {
925*4e72b326SXuhui Lin		compatible = "syscon";
926*4e72b326SXuhui Lin		reg = <0x20330600 0x20>;
927*4e72b326SXuhui Lin	};
928*4e72b326SXuhui Lin
929*4e72b326SXuhui Lin	shaping_vpsl: shaping@20330688 {
930*4e72b326SXuhui Lin		compatible = "syscon";
931*4e72b326SXuhui Lin		reg = <0x20330688 0x4>;
932*4e72b326SXuhui Lin	};
933*4e72b326SXuhui Lin
934*4e72b326SXuhui Lin	qos_vpss: qos@20330700 {
935*4e72b326SXuhui Lin		compatible = "syscon";
936*4e72b326SXuhui Lin		reg = <0x20330700 0x20>;
937*4e72b326SXuhui Lin	};
938*4e72b326SXuhui Lin
939*4e72b326SXuhui Lin	shaping_vpss: shaping@20330788 {
940*4e72b326SXuhui Lin		compatible = "syscon";
941*4e72b326SXuhui Lin		reg = <0x20330788 0x4>;
942*4e72b326SXuhui Lin	};
943*4e72b326SXuhui Lin
944*4e72b326SXuhui Lin	qos_saradc1: qos@20330800 {
945*4e72b326SXuhui Lin		compatible = "syscon";
946*4e72b326SXuhui Lin		reg = <0x20330800 0x20>;
947*4e72b326SXuhui Lin	};
948*4e72b326SXuhui Lin
949*4e72b326SXuhui Lin	shaping_saradc1: shaping@20330888 {
950*4e72b326SXuhui Lin		compatible = "syscon";
951*4e72b326SXuhui Lin		reg = <0x20330888 0x4>;
952*4e72b326SXuhui Lin	};
953*4e72b326SXuhui Lin
954*4e72b326SXuhui Lin	qos_saradc2: qos@20330900 {
955*4e72b326SXuhui Lin		compatible = "syscon";
956*4e72b326SXuhui Lin		reg = <0x20330900 0x20>;
957*4e72b326SXuhui Lin	};
958*4e72b326SXuhui Lin
959*4e72b326SXuhui Lin	shaping_saradc2: shaping@20330988 {
960*4e72b326SXuhui Lin		compatible = "syscon";
961*4e72b326SXuhui Lin		reg = <0x20330988 0x4>;
962*4e72b326SXuhui Lin	};
963*4e72b326SXuhui Lin
964*4e72b326SXuhui Lin	qos_npu: qos@20340000 {
965*4e72b326SXuhui Lin		compatible = "syscon";
966*4e72b326SXuhui Lin		reg = <0x20340000 0x20>;
967*4e72b326SXuhui Lin	};
968*4e72b326SXuhui Lin
969*4e72b326SXuhui Lin	shaping_npu: shaping@20340088 {
970*4e72b326SXuhui Lin		compatible = "syscon";
971*4e72b326SXuhui Lin		reg = <0x20340088 0x4>;
972*4e72b326SXuhui Lin	};
973*4e72b326SXuhui Lin
974*4e72b326SXuhui Lin	qos_rkvenc: qos@20350000 {
975*4e72b326SXuhui Lin		compatible = "syscon";
976*4e72b326SXuhui Lin		reg = <0x20350000 0x20>;
977*4e72b326SXuhui Lin	};
978*4e72b326SXuhui Lin
979*4e72b326SXuhui Lin	shaping_rkvenc: shaping@20350088 {
980*4e72b326SXuhui Lin		compatible = "syscon";
981*4e72b326SXuhui Lin		reg = <0x20350088 0x4>;
982*4e72b326SXuhui Lin	};
983*4e72b326SXuhui Lin
984*4e72b326SXuhui Lin	qos_saradc0: qos@20350100 {
985*4e72b326SXuhui Lin		compatible = "syscon";
986*4e72b326SXuhui Lin		reg = <0x20350100 0x20>;
987*4e72b326SXuhui Lin	};
988*4e72b326SXuhui Lin
989*4e72b326SXuhui Lin	shaping_saradc0: shaping@20350188 {
990*4e72b326SXuhui Lin		compatible = "syscon";
991*4e72b326SXuhui Lin		reg = <0x20350188 0x4>;
992*4e72b326SXuhui Lin	};
993*4e72b326SXuhui Lin
994*4e72b326SXuhui Lin	qos_sdmmc1: qos@20350200 {
995*4e72b326SXuhui Lin		compatible = "syscon";
996*4e72b326SXuhui Lin		reg = <0x20350200 0x20>;
997*4e72b326SXuhui Lin	};
998*4e72b326SXuhui Lin
999*4e72b326SXuhui Lin	shaping_sdmmc1: shaping@20350288 {
1000*4e72b326SXuhui Lin		compatible = "syscon";
1001*4e72b326SXuhui Lin		reg = <0x20350288 0x4>;
1002*4e72b326SXuhui Lin	};
1003*4e72b326SXuhui Lin
1004*4e72b326SXuhui Lin	qos_lpmcu: qos@20360000 {
1005*4e72b326SXuhui Lin		compatible = "syscon";
1006*4e72b326SXuhui Lin		reg = <0x20360000 0x20>;
1007*4e72b326SXuhui Lin	};
1008*4e72b326SXuhui Lin
1009*4e72b326SXuhui Lin	shaping_lpmcu: shaping@20360088 {
1010*4e72b326SXuhui Lin		compatible = "syscon";
1011*4e72b326SXuhui Lin		reg = <0x20360088 0x4>;
1012*4e72b326SXuhui Lin	};
1013*4e72b326SXuhui Lin
1014*4e72b326SXuhui Lin	qos_mcu: qos@20370100 {
1015*4e72b326SXuhui Lin		compatible = "syscon";
1016*4e72b326SXuhui Lin		reg = <0x20370100 0x20>;
1017*4e72b326SXuhui Lin	};
1018*4e72b326SXuhui Lin
1019*4e72b326SXuhui Lin	shaping_mcu: shaping@20370188 {
1020*4e72b326SXuhui Lin		compatible = "syscon";
1021*4e72b326SXuhui Lin		reg = <0x20370188 0x4>;
1022*4e72b326SXuhui Lin	};
1023*4e72b326SXuhui Lin
1024*4e72b326SXuhui Lin	qos_rga: qos@20370200 {
1025*4e72b326SXuhui Lin		compatible = "syscon";
1026*4e72b326SXuhui Lin		reg = <0x20370200 0x20>;
1027*4e72b326SXuhui Lin	};
1028*4e72b326SXuhui Lin
1029*4e72b326SXuhui Lin	shaping_rga: shaping@20370288 {
1030*4e72b326SXuhui Lin		compatible = "syscon";
1031*4e72b326SXuhui Lin		reg = <0x20370288 0x4>;
1032*4e72b326SXuhui Lin	};
1033*4e72b326SXuhui Lin
1034*4e72b326SXuhui Lin	qos_rkce: qos@20370400 {
1035*4e72b326SXuhui Lin		compatible = "syscon";
1036*4e72b326SXuhui Lin		reg = <0x20370400 0x20>;
1037*4e72b326SXuhui Lin	};
1038*4e72b326SXuhui Lin
1039*4e72b326SXuhui Lin	shaping_rkce: shaping@20370488 {
1040*4e72b326SXuhui Lin		compatible = "syscon";
1041*4e72b326SXuhui Lin		reg = <0x20370488 0x4>;
1042*4e72b326SXuhui Lin	};
1043*4e72b326SXuhui Lin
1044*4e72b326SXuhui Lin	qos_rkdma: qos@20370500 {
1045*4e72b326SXuhui Lin		compatible = "syscon";
1046*4e72b326SXuhui Lin		reg = <0x20370500 0x20>;
1047*4e72b326SXuhui Lin	};
1048*4e72b326SXuhui Lin
1049*4e72b326SXuhui Lin	shaping_rkdma: shaping@20370588 {
1050*4e72b326SXuhui Lin		compatible = "syscon";
1051*4e72b326SXuhui Lin		reg = <0x20370588 0x4>;
1052*4e72b326SXuhui Lin	};
1053*4e72b326SXuhui Lin
1054*4e72b326SXuhui Lin	qos_decom: qos@20380000 {
1055*4e72b326SXuhui Lin		compatible = "syscon";
1056*4e72b326SXuhui Lin		reg = <0x20380000 0x20>;
1057*4e72b326SXuhui Lin	};
1058*4e72b326SXuhui Lin
1059*4e72b326SXuhui Lin	shaping_decom: shaping@20380088 {
1060*4e72b326SXuhui Lin		compatible = "syscon";
1061*4e72b326SXuhui Lin		reg = <0x20380088 0x4>;
1062*4e72b326SXuhui Lin	};
1063*4e72b326SXuhui Lin
1064*4e72b326SXuhui Lin	qos_ooc: qos@20380100 {
1065*4e72b326SXuhui Lin		compatible = "syscon";
1066*4e72b326SXuhui Lin		reg = <0x20380100 0x20>;
1067*4e72b326SXuhui Lin	};
1068*4e72b326SXuhui Lin
1069*4e72b326SXuhui Lin	shaping_ooc: shaping@20380188 {
1070*4e72b326SXuhui Lin		compatible = "syscon";
1071*4e72b326SXuhui Lin		reg = <0x20380188 0x4>;
1072*4e72b326SXuhui Lin	};
1073*4e72b326SXuhui Lin
1074*4e72b326SXuhui Lin	qos_rkjpeg: qos@20380200 {
1075*4e72b326SXuhui Lin		compatible = "syscon";
1076*4e72b326SXuhui Lin		reg = <0x20380200 0x20>;
1077*4e72b326SXuhui Lin	};
1078*4e72b326SXuhui Lin
1079*4e72b326SXuhui Lin	shaping_rkjpeg: shaping@20380288 {
1080*4e72b326SXuhui Lin		compatible = "syscon";
1081*4e72b326SXuhui Lin		reg = <0x20380288 0x4>;
1082*4e72b326SXuhui Lin	};
1083*4e72b326SXuhui Lin
1084*4e72b326SXuhui Lin	qos_rkvdec: qos@20380300 {
1085*4e72b326SXuhui Lin		compatible = "syscon";
1086*4e72b326SXuhui Lin		reg = <0x20380300 0x20>;
1087*4e72b326SXuhui Lin	};
1088*4e72b326SXuhui Lin
1089*4e72b326SXuhui Lin	shaping_rkvdec: shaping@20380388 {
1090*4e72b326SXuhui Lin		compatible = "syscon";
1091*4e72b326SXuhui Lin		reg = <0x20380388 0x4>;
1092*4e72b326SXuhui Lin	};
1093*4e72b326SXuhui Lin
1094*4e72b326SXuhui Lin	qos_vop: qos@20380400 {
1095*4e72b326SXuhui Lin		compatible = "syscon";
1096*4e72b326SXuhui Lin		reg = <0x20380400 0x20>;
1097*4e72b326SXuhui Lin	};
1098*4e72b326SXuhui Lin
1099*4e72b326SXuhui Lin	shaping_vop: shaping@20380488 {
1100*4e72b326SXuhui Lin		compatible = "syscon";
1101*4e72b326SXuhui Lin		reg = <0x20380488 0x4>;
1102*4e72b326SXuhui Lin	};
1103*4e72b326SXuhui Lin
1104*4e72b326SXuhui Lin	qos_avsp_ro: qos@20390000 {
1105*4e72b326SXuhui Lin		compatible = "syscon";
1106*4e72b326SXuhui Lin		reg = <0x20390000 0x20>;
1107*4e72b326SXuhui Lin	};
1108*4e72b326SXuhui Lin
1109*4e72b326SXuhui Lin	shaping_avsp_ro: shaping@20390088 {
1110*4e72b326SXuhui Lin		compatible = "syscon";
1111*4e72b326SXuhui Lin		reg = <0x20390088 0x4>;
1112*4e72b326SXuhui Lin	};
1113*4e72b326SXuhui Lin
1114*4e72b326SXuhui Lin	qos_avsp_wo: qos@20390100 {
1115*4e72b326SXuhui Lin		compatible = "syscon";
1116*4e72b326SXuhui Lin		reg = <0x20390100 0x20>;
1117*4e72b326SXuhui Lin	};
1118*4e72b326SXuhui Lin
1119*4e72b326SXuhui Lin	shaping_avsp_wo: shaping@20390188 {
1120*4e72b326SXuhui Lin		compatible = "syscon";
1121*4e72b326SXuhui Lin		reg = <0x20390188 0x4>;
1122*4e72b326SXuhui Lin	};
1123*4e72b326SXuhui Lin
1124*4e72b326SXuhui Lin	qos_fec_ro: qos@20390200 {
1125*4e72b326SXuhui Lin		compatible = "syscon";
1126*4e72b326SXuhui Lin		reg = <0x20390200 0x20>;
1127*4e72b326SXuhui Lin	};
1128*4e72b326SXuhui Lin
1129*4e72b326SXuhui Lin	shaping_fec_ro: shaping@20390288 {
1130*4e72b326SXuhui Lin		compatible = "syscon";
1131*4e72b326SXuhui Lin		reg = <0x20390288 0x4>;
1132*4e72b326SXuhui Lin	};
1133*4e72b326SXuhui Lin
1134*4e72b326SXuhui Lin	qos_fec_wo: qos@20390300 {
1135*4e72b326SXuhui Lin		compatible = "syscon";
1136*4e72b326SXuhui Lin		reg = <0x20390300 0x20>;
1137*4e72b326SXuhui Lin	};
1138*4e72b326SXuhui Lin
1139*4e72b326SXuhui Lin	shaping_fec_wo: shaping@20390388 {
1140*4e72b326SXuhui Lin		compatible = "syscon";
1141*4e72b326SXuhui Lin		reg = <0x20390388 0x4>;
1142*4e72b326SXuhui Lin	};
1143*4e72b326SXuhui Lin
1144*4e72b326SXuhui Lin	qos_aad: qos@203a0000 {
1145*4e72b326SXuhui Lin		compatible = "syscon";
1146*4e72b326SXuhui Lin		reg = <0x203a0000 0x20>;
1147*4e72b326SXuhui Lin	};
1148*4e72b326SXuhui Lin
1149*4e72b326SXuhui Lin	shaping_aad: shaping@203a0088 {
1150*4e72b326SXuhui Lin		compatible = "syscon";
1151*4e72b326SXuhui Lin		reg = <0x203a0088 0x4>;
1152*4e72b326SXuhui Lin	};
1153*4e72b326SXuhui Lin
1154*4e72b326SXuhui Lin	qos_afe: qos@203a0100 {
1155*4e72b326SXuhui Lin		compatible = "syscon";
1156*4e72b326SXuhui Lin		reg = <0x203a0100 0x20>;
1157*4e72b326SXuhui Lin	};
1158*4e72b326SXuhui Lin
1159*4e72b326SXuhui Lin	shaping_afe: shaping@203a0188 {
1160*4e72b326SXuhui Lin		compatible = "syscon";
1161*4e72b326SXuhui Lin		reg = <0x203a0188 0x4>;
1162*4e72b326SXuhui Lin	};
1163*4e72b326SXuhui Lin
1164*4e72b326SXuhui Lin	qos_atdd: qos@203a0200 {
1165*4e72b326SXuhui Lin		compatible = "syscon";
1166*4e72b326SXuhui Lin		reg = <0x203a0200 0x20>;
1167*4e72b326SXuhui Lin	};
1168*4e72b326SXuhui Lin
1169*4e72b326SXuhui Lin	shaping_atdd: shaping@203a0288 {
1170*4e72b326SXuhui Lin		compatible = "syscon";
1171*4e72b326SXuhui Lin		reg = <0x203a0288 0x4>;
1172*4e72b326SXuhui Lin	};
1173*4e72b326SXuhui Lin
1174*4e72b326SXuhui Lin	qos_fspi1: qos@203a0300 {
1175*4e72b326SXuhui Lin		compatible = "syscon";
1176*4e72b326SXuhui Lin		reg = <0x203a0300 0x20>;
1177*4e72b326SXuhui Lin	};
1178*4e72b326SXuhui Lin
1179*4e72b326SXuhui Lin	shaping_fspi1: shaping@203a0388 {
1180*4e72b326SXuhui Lin		compatible = "syscon";
1181*4e72b326SXuhui Lin		reg = <0x203a0388 0x4>;
1182*4e72b326SXuhui Lin	};
1183*4e72b326SXuhui Lin
1184*4e72b326SXuhui Lin	qos_lpdma: qos@203a0400 {
1185*4e72b326SXuhui Lin		compatible = "syscon";
1186*4e72b326SXuhui Lin		reg = <0x203a0400 0x20>;
1187*4e72b326SXuhui Lin	};
1188*4e72b326SXuhui Lin
1189*4e72b326SXuhui Lin	shaping_lpdma: shaping@203a0488 {
1190*4e72b326SXuhui Lin		compatible = "syscon";
1191*4e72b326SXuhui Lin		reg = <0x203a0488 0x4>;
1192*4e72b326SXuhui Lin	};
1193*4e72b326SXuhui Lin
1194*4e72b326SXuhui Lin	qos_spi2ahb: qos@203a0500 {
1195*4e72b326SXuhui Lin		compatible = "syscon";
1196*4e72b326SXuhui Lin		reg = <0x203a0500 0x20>;
1197*4e72b326SXuhui Lin	};
1198*4e72b326SXuhui Lin
1199*4e72b326SXuhui Lin	shaping_spi2ahb: shaping@203a0588 {
1200*4e72b326SXuhui Lin		compatible = "syscon";
1201*4e72b326SXuhui Lin		reg = <0x203a0588 0x4>;
1202*4e72b326SXuhui Lin	};
1203*4e72b326SXuhui Lin
1204*4e72b326SXuhui Lin	qos_aisp: qos@203b0000 {
1205*4e72b326SXuhui Lin		compatible = "syscon";
1206*4e72b326SXuhui Lin		reg = <0x203b0000 0x20>;
1207*4e72b326SXuhui Lin	};
1208*4e72b326SXuhui Lin
1209*4e72b326SXuhui Lin	lpmcu_mbox0: mailbox@20500000 {
1210*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-mailbox", "rockchip,rk3576-mailbox";
1211*4e72b326SXuhui Lin		reg = <0x20500000 0x20>;
1212*4e72b326SXuhui Lin		interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
1213*4e72b326SXuhui Lin		clocks = <&cru PCLK_LPMCU_MAILBOX>;
1214*4e72b326SXuhui Lin		clock-names = "pclk_mailbox";
1215*4e72b326SXuhui Lin		#mbox-cells = <1>;
1216*4e72b326SXuhui Lin		status = "disabled";
1217*4e72b326SXuhui Lin	};
1218*4e72b326SXuhui Lin
1219*4e72b326SXuhui Lin	lpmcu_mbox1: mailbox@20510000 {
1220*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-mailbox", "rockchip,rk3576-mailbox";
1221*4e72b326SXuhui Lin		reg = <0x20510000 0x20>;
1222*4e72b326SXuhui Lin		interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
1223*4e72b326SXuhui Lin		clocks = <&cru PCLK_LPMCU_MAILBOX>;
1224*4e72b326SXuhui Lin		clock-names = "pclk_mailbox";
1225*4e72b326SXuhui Lin		#mbox-cells = <1>;
1226*4e72b326SXuhui Lin		status = "disabled";
1227*4e72b326SXuhui Lin	};
1228*4e72b326SXuhui Lin
1229*4e72b326SXuhui Lin	lpmcu_mbox2: mailbox@20520000 {
1230*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-mailbox", "rockchip,rk3576-mailbox";
1231*4e72b326SXuhui Lin		reg = <0x20520000 0x20>;
1232*4e72b326SXuhui Lin		interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
1233*4e72b326SXuhui Lin		clocks = <&cru PCLK_LPMCU_MAILBOX>;
1234*4e72b326SXuhui Lin		clock-names = "pclk_mailbox";
1235*4e72b326SXuhui Lin		#mbox-cells = <1>;
1236*4e72b326SXuhui Lin		status = "disabled";
1237*4e72b326SXuhui Lin	};
1238*4e72b326SXuhui Lin
1239*4e72b326SXuhui Lin	lpmcu_mbox3: mailbox@20530000 {
1240*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-mailbox", "rockchip,rk3576-mailbox";
1241*4e72b326SXuhui Lin		reg = <0x20530000 0x20>;
1242*4e72b326SXuhui Lin		interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
1243*4e72b326SXuhui Lin		clocks = <&cru PCLK_LPMCU_MAILBOX>;
1244*4e72b326SXuhui Lin		clock-names = "pclk_mailbox";
1245*4e72b326SXuhui Lin		#mbox-cells = <1>;
1246*4e72b326SXuhui Lin		status = "disabled";
1247*4e72b326SXuhui Lin	};
1248*4e72b326SXuhui Lin
1249*4e72b326SXuhui Lin	pwm1_4ch_0: pwm@20700000 {
1250*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1251*4e72b326SXuhui Lin		reg = <0x20700000 0x1000>;
1252*4e72b326SXuhui Lin		interrupts = <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>;
1253*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>;
1254*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1255*4e72b326SXuhui Lin		pinctrl-names = "active";
1256*4e72b326SXuhui Lin		pinctrl-0 = <&pwm1m0_ch0_pins>;
1257*4e72b326SXuhui Lin		#pwm-cells = <3>;
1258*4e72b326SXuhui Lin		status = "disabled";
1259*4e72b326SXuhui Lin	};
1260*4e72b326SXuhui Lin
1261*4e72b326SXuhui Lin	pwm1_4ch_1: pwm@20710000 {
1262*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1263*4e72b326SXuhui Lin		reg = <0x20710000 0x1000>;
1264*4e72b326SXuhui Lin		interrupts = <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
1265*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>;
1266*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1267*4e72b326SXuhui Lin		pinctrl-names = "active";
1268*4e72b326SXuhui Lin		pinctrl-0 = <&pwm1m0_ch1_pins>;
1269*4e72b326SXuhui Lin		#pwm-cells = <3>;
1270*4e72b326SXuhui Lin		status = "disabled";
1271*4e72b326SXuhui Lin	};
1272*4e72b326SXuhui Lin
1273*4e72b326SXuhui Lin	pwm1_4ch_2: pwm@20720000 {
1274*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1275*4e72b326SXuhui Lin		reg = <0x20720000 0x1000>;
1276*4e72b326SXuhui Lin		interrupts = <GIC_SPI 222 IRQ_TYPE_LEVEL_HIGH>;
1277*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>;
1278*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1279*4e72b326SXuhui Lin		pinctrl-names = "active";
1280*4e72b326SXuhui Lin		pinctrl-0 = <&pwm1m0_ch2_pins>;
1281*4e72b326SXuhui Lin		#pwm-cells = <3>;
1282*4e72b326SXuhui Lin		status = "disabled";
1283*4e72b326SXuhui Lin	};
1284*4e72b326SXuhui Lin
1285*4e72b326SXuhui Lin	pwm1_4ch_3: pwm@20730000 {
1286*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1287*4e72b326SXuhui Lin		reg = <0x20730000 0x1000>;
1288*4e72b326SXuhui Lin		interrupts = <GIC_SPI 223 IRQ_TYPE_LEVEL_HIGH>;
1289*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>;
1290*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1291*4e72b326SXuhui Lin		pinctrl-names = "active";
1292*4e72b326SXuhui Lin		pinctrl-0 = <&pwm1m0_ch3_pins>;
1293*4e72b326SXuhui Lin		#pwm-cells = <3>;
1294*4e72b326SXuhui Lin		status = "disabled";
1295*4e72b326SXuhui Lin	};
1296*4e72b326SXuhui Lin
1297*4e72b326SXuhui Lin	i2c2: i2c@20800000 {
1298*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-i2c", "rockchip,rk3399-i2c";
1299*4e72b326SXuhui Lin		reg = <0x20800000 0x1000>;
1300*4e72b326SXuhui Lin		interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
1301*4e72b326SXuhui Lin		#address-cells = <1>;
1302*4e72b326SXuhui Lin		#size-cells = <0>;
1303*4e72b326SXuhui Lin		clocks = <&cru CLK_I2C2>, <&cru PCLK_I2C2>;
1304*4e72b326SXuhui Lin		clock-names = "i2c", "pclk";
1305*4e72b326SXuhui Lin		pinctrl-names = "default";
1306*4e72b326SXuhui Lin		pinctrl-0 = <&i2c2m0_pins>;
1307*4e72b326SXuhui Lin		status = "disabled";
1308*4e72b326SXuhui Lin	};
1309*4e72b326SXuhui Lin
1310*4e72b326SXuhui Lin	uart0: serial@20810000 {
1311*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-uart", "snps,dw-apb-uart";
1312*4e72b326SXuhui Lin		reg = <0x20810000 0x100>;
1313*4e72b326SXuhui Lin		interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
1314*4e72b326SXuhui Lin		clocks = <&cru SCLK_UART0>, <&cru PCLK_UART0>;
1315*4e72b326SXuhui Lin		clock-names = "baudclk", "apb_pclk";
1316*4e72b326SXuhui Lin		reg-shift = <2>;
1317*4e72b326SXuhui Lin		reg-io-width = <4>;
1318*4e72b326SXuhui Lin		dmas = <&dmac 1>, <&dmac 0>;
1319*4e72b326SXuhui Lin		pinctrl-names = "default";
1320*4e72b326SXuhui Lin		pinctrl-0 = <&uart0m0_xfer_pins>;
1321*4e72b326SXuhui Lin		status = "disabled";
1322*4e72b326SXuhui Lin	};
1323*4e72b326SXuhui Lin
1324*4e72b326SXuhui Lin	pmu: power-management@20838000 {
1325*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pmu", "syscon", "simple-mfd";
1326*4e72b326SXuhui Lin		reg = <0x20838000 0x400>;
1327*4e72b326SXuhui Lin
1328*4e72b326SXuhui Lin		power: power-controller {
1329*4e72b326SXuhui Lin			compatible = "rockchip,rv1126b-power-controller";
1330*4e72b326SXuhui Lin			#power-domain-cells = <1>;
1331*4e72b326SXuhui Lin			#address-cells = <1>;
1332*4e72b326SXuhui Lin			#size-cells = <0>;
1333*4e72b326SXuhui Lin			status = "okay";
1334*4e72b326SXuhui Lin
1335*4e72b326SXuhui Lin			/* These power domains are grouped by VD_NPU */
1336*4e72b326SXuhui Lin			power-domain@RV1126B_PD_NPU {
1337*4e72b326SXuhui Lin				reg = <RV1126B_PD_NPU>;
1338*4e72b326SXuhui Lin				pm_qos = <&qos_npu>;
1339*4e72b326SXuhui Lin				pm_shaping = <&shaping_npu>;
1340*4e72b326SXuhui Lin			};
1341*4e72b326SXuhui Lin			/* These power domains are grouped by VD_LOGIC */
1342*4e72b326SXuhui Lin			power-domain@RV1126B_PD_VDO {
1343*4e72b326SXuhui Lin				reg = <RV1126B_PD_VDO>;
1344*4e72b326SXuhui Lin				pm_qos = <&qos_vop>,
1345*4e72b326SXuhui Lin					 <&qos_rkvdec>,
1346*4e72b326SXuhui Lin					 <&qos_rkjpeg>,
1347*4e72b326SXuhui Lin					 <&qos_decom>;
1348*4e72b326SXuhui Lin				pm_shaping = <&shaping_vop>,
1349*4e72b326SXuhui Lin					     <&shaping_rkvdec>,
1350*4e72b326SXuhui Lin					     <&shaping_rkjpeg>,
1351*4e72b326SXuhui Lin					     <&shaping_decom>;
1352*4e72b326SXuhui Lin			};
1353*4e72b326SXuhui Lin			power-domain@RV1126B_PD_AISP {
1354*4e72b326SXuhui Lin				reg = <RV1126B_PD_AISP>;
1355*4e72b326SXuhui Lin				pm_qos = <&qos_aisp>;
1356*4e72b326SXuhui Lin			};
1357*4e72b326SXuhui Lin		};
1358*4e72b326SXuhui Lin	};
1359*4e72b326SXuhui Lin
1360*4e72b326SXuhui Lin	audio_codec_pmu: audio-codec@20890000 {
1361*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-codec", "rockchip,rk3506-codec";
1362*4e72b326SXuhui Lin		reg = <0x20890000 0x1000>;
1363*4e72b326SXuhui Lin		#sound-dai-cells = <0>;
1364*4e72b326SXuhui Lin		sound-name-prefix = "ACodec_LP";
1365*4e72b326SXuhui Lin		clocks = <&cru PCLK_AUDIO_ADC_PMU>, <&cru MCLK_AUDIO_ADC_PMU>;
1366*4e72b326SXuhui Lin		clock-names = "pclk", "mclk";
1367*4e72b326SXuhui Lin		resets = <&cru SRST_MRESETN_AUDIO_ADC_PMU>;
1368*4e72b326SXuhui Lin		reset-names = "rst";
1369*4e72b326SXuhui Lin		rockchip,grf = <&grf>;
1370*4e72b326SXuhui Lin		status = "disabled";
1371*4e72b326SXuhui Lin	};
1372*4e72b326SXuhui Lin
1373*4e72b326SXuhui Lin	fspi1: spi@208c0000 {
1374*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-fspi", "rockchip,fspi";
1375*4e72b326SXuhui Lin		reg = <0x208c0000 0x4000>;
1376*4e72b326SXuhui Lin		interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
1377*4e72b326SXuhui Lin		clocks = <&cru SCLK_1X_FSPI1>, <&cru HCLK_FSPI1>;
1378*4e72b326SXuhui Lin		clock-names = "clk_sfc", "hclk_sfc";
1379*4e72b326SXuhui Lin		rockchip,grf = <&grf>;
1380*4e72b326SXuhui Lin		rockchip,max-dll = <0x7F>;
1381*4e72b326SXuhui Lin		rockchip,sclk-x2-bypass;
1382*4e72b326SXuhui Lin		#address-cells = <1>;
1383*4e72b326SXuhui Lin		#size-cells = <0>;
1384*4e72b326SXuhui Lin		status = "disabled";
1385*4e72b326SXuhui Lin	};
1386*4e72b326SXuhui Lin
1387*4e72b326SXuhui Lin	crypto: crypto@20940000 {
1388*4e72b326SXuhui Lin		compatible = "rockchip,crypto-ce";
1389*4e72b326SXuhui Lin		reg = <0x20940000 0x2000>;
1390*4e72b326SXuhui Lin		interrupts = <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>;
1391*4e72b326SXuhui Lin		clocks = <&cru ACLK_NSRKCE>, <&cru HCLK_NS_RKCE>,
1392*4e72b326SXuhui Lin			 <&cru CLK_PKA_NSRKCE>;
1393*4e72b326SXuhui Lin		clock-names = "aclk", "hclk", "pka";
1394*4e72b326SXuhui Lin		resets = <&cru SRST_HRESETN_NS_RKCE>;
1395*4e72b326SXuhui Lin		reset-names = "crypto-rst";
1396*4e72b326SXuhui Lin		status = "disabled";
1397*4e72b326SXuhui Lin	};
1398*4e72b326SXuhui Lin
1399*4e72b326SXuhui Lin	rng: rng@20950000 {
1400*4e72b326SXuhui Lin		compatible = "rockchip,rkrng";
1401*4e72b326SXuhui Lin		reg = <0x20950000 0x200>;
1402*4e72b326SXuhui Lin		interrupts = <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>;
1403*4e72b326SXuhui Lin		resets = <&cru SRST_HRESETN_RKRNG_NS>;
1404*4e72b326SXuhui Lin		reset-names = "reset";
1405*4e72b326SXuhui Lin		status = "disabled";
1406*4e72b326SXuhui Lin	};
1407*4e72b326SXuhui Lin
1408*4e72b326SXuhui Lin	sai0: sai@20960000 {
1409*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-sai", "rockchip,sai-v1";
1410*4e72b326SXuhui Lin		reg = <0x20960000 0x1000>;
1411*4e72b326SXuhui Lin		interrupts = <GIC_SPI 179 IRQ_TYPE_LEVEL_HIGH>;
1412*4e72b326SXuhui Lin		clocks = <&cru MCLK_SAI0>, <&cru HCLK_SAI0>;
1413*4e72b326SXuhui Lin		clock-names = "mclk", "hclk";
1414*4e72b326SXuhui Lin		dmas = <&dmac 17>, <&dmac 16>;
1415*4e72b326SXuhui Lin		dma-names = "tx", "rx";
1416*4e72b326SXuhui Lin		resets = <&cru SRST_MRESETN_SAI0>, <&cru SRST_HRESETN_SAI0>;
1417*4e72b326SXuhui Lin		reset-names = "m", "h";
1418*4e72b326SXuhui Lin		#sound-dai-cells = <0>;
1419*4e72b326SXuhui Lin		sound-name-prefix = "SAI0";
1420*4e72b326SXuhui Lin		pinctrl-names = "default";
1421*4e72b326SXuhui Lin		pinctrl-0 = <&sai0m0_lrck_pins
1422*4e72b326SXuhui Lin			     &sai0m0_sclk_pins
1423*4e72b326SXuhui Lin			     &sai0m0_sdi0_pins
1424*4e72b326SXuhui Lin			     &sai0m0_sdi1_pins
1425*4e72b326SXuhui Lin			     &sai0m0_sdi2_pins
1426*4e72b326SXuhui Lin			     &sai0m0_sdi3_pins
1427*4e72b326SXuhui Lin			     &sai0m0_sdo0_pins>;
1428*4e72b326SXuhui Lin		status = "disabled";
1429*4e72b326SXuhui Lin	};
1430*4e72b326SXuhui Lin
1431*4e72b326SXuhui Lin	sai1: sai@20970000 {
1432*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-sai", "rockchip,sai-v1";
1433*4e72b326SXuhui Lin		reg = <0x20970000 0x1000>;
1434*4e72b326SXuhui Lin		interrupts = <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>;
1435*4e72b326SXuhui Lin		clocks = <&cru MCLK_SAI1>, <&cru HCLK_SAI1>;
1436*4e72b326SXuhui Lin		clock-names = "mclk", "hclk";
1437*4e72b326SXuhui Lin		dmas = <&dmac 19>, <&dmac 18>;
1438*4e72b326SXuhui Lin		dma-names = "tx", "rx";
1439*4e72b326SXuhui Lin		resets = <&cru SRST_MRESETN_SAI1>, <&cru SRST_HRESETN_SAI1>;
1440*4e72b326SXuhui Lin		reset-names = "m", "h";
1441*4e72b326SXuhui Lin		#sound-dai-cells = <0>;
1442*4e72b326SXuhui Lin		sound-name-prefix = "SAI1";
1443*4e72b326SXuhui Lin		pinctrl-names = "default";
1444*4e72b326SXuhui Lin		pinctrl-0 = <&sai1m0_lrck_pins
1445*4e72b326SXuhui Lin			     &sai1m0_sclk_pins
1446*4e72b326SXuhui Lin			     &sai1m0_sdi_pins
1447*4e72b326SXuhui Lin			     &sai1m0_sdo_pins>;
1448*4e72b326SXuhui Lin		status = "disabled";
1449*4e72b326SXuhui Lin	};
1450*4e72b326SXuhui Lin
1451*4e72b326SXuhui Lin	sai2: sai@20980000 {
1452*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-sai", "rockchip,sai-v1";
1453*4e72b326SXuhui Lin		reg = <0x20980000 0x1000>;
1454*4e72b326SXuhui Lin		interrupts = <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>;
1455*4e72b326SXuhui Lin		clocks = <&cru MCLK_SAI2>, <&cru HCLK_SAI2>;
1456*4e72b326SXuhui Lin		clock-names = "mclk", "hclk";
1457*4e72b326SXuhui Lin		dmas = <&dmac 21>, <&dmac 20>;
1458*4e72b326SXuhui Lin		dma-names = "tx", "rx";
1459*4e72b326SXuhui Lin		resets = <&cru SRST_MRESETN_SAI2>, <&cru SRST_HRESETN_SAI2>;
1460*4e72b326SXuhui Lin		reset-names = "m", "h";
1461*4e72b326SXuhui Lin		#sound-dai-cells = <0>;
1462*4e72b326SXuhui Lin		sound-name-prefix = "SAI2";
1463*4e72b326SXuhui Lin		pinctrl-names = "default";
1464*4e72b326SXuhui Lin		pinctrl-0 = <&sai2m0_lrck_pins
1465*4e72b326SXuhui Lin			     &sai2m0_sclk_pins
1466*4e72b326SXuhui Lin			     &sai2m0_sdi0_pins
1467*4e72b326SXuhui Lin			     &sai2m0_sdi1_pins
1468*4e72b326SXuhui Lin			     &sai2m0_sdi2_pins
1469*4e72b326SXuhui Lin			     &sai2m0_sdo_pins>;
1470*4e72b326SXuhui Lin		status = "disabled";
1471*4e72b326SXuhui Lin	};
1472*4e72b326SXuhui Lin
1473*4e72b326SXuhui Lin	pdm: pdm@20990000 {
1474*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pdm", "rockchip,rk3576-pdm";
1475*4e72b326SXuhui Lin		reg = <0x20990000 0x1000>;
1476*4e72b326SXuhui Lin		interrupts = <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>;
1477*4e72b326SXuhui Lin		clocks = <&cru MCLK_PDM>, <&cru HCLK_PDM>, <&cru CLKOUT_PDM>;
1478*4e72b326SXuhui Lin		clock-names = "pdm_clk", "pdm_hclk", "pdm_clk_out";
1479*4e72b326SXuhui Lin		dmas = <&dmac 26>;
1480*4e72b326SXuhui Lin		dma-names = "rx";
1481*4e72b326SXuhui Lin		rockchip,pdm-data-shift = <5 5 5 5 5 5 5 5>;
1482*4e72b326SXuhui Lin		pinctrl-names = "default", "idle", "clk";
1483*4e72b326SXuhui Lin		pinctrl-0 = <&pdmm0_sdi0_pins
1484*4e72b326SXuhui Lin			     &pdmm0_sdi1_pins
1485*4e72b326SXuhui Lin			     &pdmm0_sdi2_pins
1486*4e72b326SXuhui Lin			     &pdmm0_sdi3_pins>;
1487*4e72b326SXuhui Lin		pinctrl-1 = <&pdmm0_clk0_idle
1488*4e72b326SXuhui Lin			     &pdmm0_clk1_idle>;
1489*4e72b326SXuhui Lin		pinctrl-2 = <&pdmm0_clk0_pins
1490*4e72b326SXuhui Lin			     &pdmm0_clk1_pins>;
1491*4e72b326SXuhui Lin		#sound-dai-cells = <0>;
1492*4e72b326SXuhui Lin		sound-name-prefix = "PDM0";
1493*4e72b326SXuhui Lin		status = "disabled";
1494*4e72b326SXuhui Lin	};
1495*4e72b326SXuhui Lin
1496*4e72b326SXuhui Lin	acdcdig_dsm: acdcdig-dsm@209a0000 {
1497*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-dsm";
1498*4e72b326SXuhui Lin		reg = <0x209a0000 0x1000>;
1499*4e72b326SXuhui Lin		clocks = <&cru MCLK_RKDSM>, <&cru HCLK_RKDSM>;
1500*4e72b326SXuhui Lin		clock-names = "dac", "pclk";
1501*4e72b326SXuhui Lin		resets = <&cru SRST_MRESETN_RKDSM>;
1502*4e72b326SXuhui Lin		reset-names = "reset" ;
1503*4e72b326SXuhui Lin		rockchip,grf = <&grf>;
1504*4e72b326SXuhui Lin		rockchip,ioc-grf = <&ioc_grf>;
1505*4e72b326SXuhui Lin		pinctrl-names = "default";
1506*4e72b326SXuhui Lin		pinctrl-0 = <&dsm_aud_ln_pins
1507*4e72b326SXuhui Lin			     &dsm_aud_lp_pins
1508*4e72b326SXuhui Lin			     &dsm_aud_rn_pins
1509*4e72b326SXuhui Lin			     &dsm_aud_rp_pins>;
1510*4e72b326SXuhui Lin		#sound-dai-cells = <0>;
1511*4e72b326SXuhui Lin		status = "disabled";
1512*4e72b326SXuhui Lin	};
1513*4e72b326SXuhui Lin
1514*4e72b326SXuhui Lin	asrc0: asrc@209b0000 {
1515*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-asrc", "rockchip,rk3506-asrc";
1516*4e72b326SXuhui Lin		reg = <0x209b0000 0x1000>;
1517*4e72b326SXuhui Lin		interrupts = <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>;
1518*4e72b326SXuhui Lin		clocks = <&cru CLK_ASRC0>, <&cru HCLK_ASRC0>,
1519*4e72b326SXuhui Lin			 <&cru LRCK_SRC_ASRC0>, <&cru LRCK_DST_ASRC0>;
1520*4e72b326SXuhui Lin		clock-names = "mclk", "hclk",
1521*4e72b326SXuhui Lin			      "src_lrck", "dst_lrck";
1522*4e72b326SXuhui Lin		dmas = <&dmac 22>, <&dmac 23>;
1523*4e72b326SXuhui Lin		dma-names = "rx", "tx";
1524*4e72b326SXuhui Lin		resets = <&cru SRST_RESETN_ASRC0>, <&cru SRST_HRESETN_ASRC0>;
1525*4e72b326SXuhui Lin		reset-names = "m", "h";
1526*4e72b326SXuhui Lin		#sound-dai-cells = <0>;
1527*4e72b326SXuhui Lin		sound-name-prefix = "ASRC0";
1528*4e72b326SXuhui Lin		status = "disabled";
1529*4e72b326SXuhui Lin	};
1530*4e72b326SXuhui Lin
1531*4e72b326SXuhui Lin	asrc1: asrc@209c0000 {
1532*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-asrc", "rockchip,rk3506-asrc";
1533*4e72b326SXuhui Lin		reg = <0x209c0000 0x1000>;
1534*4e72b326SXuhui Lin		interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;
1535*4e72b326SXuhui Lin		clocks = <&cru CLK_ASRC1>, <&cru HCLK_ASRC1>,
1536*4e72b326SXuhui Lin			 <&cru LRCK_SRC_ASRC1>, <&cru LRCK_DST_ASRC1>;
1537*4e72b326SXuhui Lin		clock-names = "mclk", "hclk",
1538*4e72b326SXuhui Lin			      "src_lrck", "dst_lrck";
1539*4e72b326SXuhui Lin		dmas = <&dmac 24>, <&dmac 25>;
1540*4e72b326SXuhui Lin		dma-names = "rx", "tx";
1541*4e72b326SXuhui Lin		resets = <&cru SRST_RESETN_ASRC1>, <&cru SRST_HRESETN_ASRC1>;
1542*4e72b326SXuhui Lin		reset-names = "m", "h";
1543*4e72b326SXuhui Lin		#sound-dai-cells = <0>;
1544*4e72b326SXuhui Lin		sound-name-prefix = "ASRC1";
1545*4e72b326SXuhui Lin		status = "disabled";
1546*4e72b326SXuhui Lin	};
1547*4e72b326SXuhui Lin
1548*4e72b326SXuhui Lin	rga2_core0: rga@209f0000 {
1549*4e72b326SXuhui Lin		compatible = "rockchip,rga2";
1550*4e72b326SXuhui Lin		reg = <0x209f0000 0x1000>;
1551*4e72b326SXuhui Lin		interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>;
1552*4e72b326SXuhui Lin		interrupt-names = "rga2_core0_irq";
1553*4e72b326SXuhui Lin		clocks = <&cru ACLK_RGA>, <&cru HCLK_RGA>, <&cru CLK_CORE_RGA>;
1554*4e72b326SXuhui Lin		clock-names = "aclk_rga", "hclk_rga", "clk_rga";
1555*4e72b326SXuhui Lin		iommus = <&rga2_core0_mmu>;
1556*4e72b326SXuhui Lin		status = "disabled";
1557*4e72b326SXuhui Lin	};
1558*4e72b326SXuhui Lin
1559*4e72b326SXuhui Lin	rga2_core0_mmu: iommu@209f0f00 {
1560*4e72b326SXuhui Lin		compatible = "rockchip,iommu-v2";
1561*4e72b326SXuhui Lin		reg = <0x209f0f00 0x100>;
1562*4e72b326SXuhui Lin		interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>;
1563*4e72b326SXuhui Lin		interrupt-names = "rga2_0_mmu";
1564*4e72b326SXuhui Lin		clocks = <&cru ACLK_RGA>, <&cru HCLK_RGA>;
1565*4e72b326SXuhui Lin		clock-names = "aclk", "iface";
1566*4e72b326SXuhui Lin		#iommu-cells = <0>;
1567*4e72b326SXuhui Lin		status = "disabled";
1568*4e72b326SXuhui Lin	};
1569*4e72b326SXuhui Lin
1570*4e72b326SXuhui Lin	wdt: watchdog@20b60000 {
1571*4e72b326SXuhui Lin		compatible = "snps,dw-wdt";
1572*4e72b326SXuhui Lin		reg = <0x20b60000 0x100>;
1573*4e72b326SXuhui Lin		clocks = <&cru TCLK_WDT_NS>, <&cru PCLK_WDT_NS>;
1574*4e72b326SXuhui Lin		clock-names = "tclk", "pclk";
1575*4e72b326SXuhui Lin		interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
1576*4e72b326SXuhui Lin		status = "disabled";
1577*4e72b326SXuhui Lin	};
1578*4e72b326SXuhui Lin
1579*4e72b326SXuhui Lin	dmac: dma-controller@20b80000 {
1580*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-dma", "rockchip,dma";
1581*4e72b326SXuhui Lin		reg = <0x20b80000 0x2000>;
1582*4e72b326SXuhui Lin		interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
1583*4e72b326SXuhui Lin		clocks = <&cru ACLK_RKDMA>;
1584*4e72b326SXuhui Lin		clock-names = "aclk";
1585*4e72b326SXuhui Lin		#dma-cells = <1>;
1586*4e72b326SXuhui Lin	};
1587*4e72b326SXuhui Lin
1588*4e72b326SXuhui Lin	otp: otp@20b90000 {
1589*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-otp";
1590*4e72b326SXuhui Lin		reg = <0x20b90000 0x4000>;
1591*4e72b326SXuhui Lin		#address-cells = <1>;
1592*4e72b326SXuhui Lin		#size-cells = <1>;
1593*4e72b326SXuhui Lin		clocks = <&cru CLK_USER_OTPC_NS>, <&cru CLK_SBPI_OTPC_NS>,
1594*4e72b326SXuhui Lin			 <&cru PCLK_OTPC_NS>, <&cru PCLK_OTP_MASK>;
1595*4e72b326SXuhui Lin		clock-names = "usr", "sbpi", "apb", "phy";
1596*4e72b326SXuhui Lin		resets = <&cru SRST_RESETN_USER_OTPC_NS>, <&cru SRST_RESETN_SBPI_OTPC_NS>,
1597*4e72b326SXuhui Lin			 <&cru SRST_PRESETN_OTPC_NS>, <&cru SRST_PRESETN_OTP_MASK>;
1598*4e72b326SXuhui Lin		reset-names = "usr", "sbpi", "apb", "phy";
1599*4e72b326SXuhui Lin
1600*4e72b326SXuhui Lin		/* Data cells */
1601*4e72b326SXuhui Lin		cpu_code: cpu-code@2 {
1602*4e72b326SXuhui Lin			reg = <0x02 0x2>;
1603*4e72b326SXuhui Lin		};
1604*4e72b326SXuhui Lin		cpu_version: cpu-version@21 {
1605*4e72b326SXuhui Lin			reg = <0x21 0x1>;
1606*4e72b326SXuhui Lin			bits = <3 3>;
1607*4e72b326SXuhui Lin		};
1608*4e72b326SXuhui Lin		otp_id: otp-id@22 {
1609*4e72b326SXuhui Lin			reg = <0x22 0x10>;
1610*4e72b326SXuhui Lin		};
1611*4e72b326SXuhui Lin		cpu_leakage: cpu-leakage@32 {
1612*4e72b326SXuhui Lin			reg = <0x32 0x1>;
1613*4e72b326SXuhui Lin		};
1614*4e72b326SXuhui Lin		log_leakage: log-leakage@33 {
1615*4e72b326SXuhui Lin			reg = <0x33 0x1>;
1616*4e72b326SXuhui Lin		};
1617*4e72b326SXuhui Lin		npu_leakage: npu-leakage@34 {
1618*4e72b326SXuhui Lin			reg = <0x34 0x1>;
1619*4e72b326SXuhui Lin		};
1620*4e72b326SXuhui Lin	};
1621*4e72b326SXuhui Lin
1622*4e72b326SXuhui Lin	tsadc: tsadc@20bb0000 {
1623*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-tsadc";
1624*4e72b326SXuhui Lin		reg = <0x20bb0000 0x400>;
1625*4e72b326SXuhui Lin		interrupts = <GIC_SPI 214 IRQ_TYPE_LEVEL_HIGH>;
1626*4e72b326SXuhui Lin		clocks = <&cru CLK_TSADC>, <&cru PCLK_TSADC>,
1627*4e72b326SXuhui Lin			 <&cru CLK_TSADC_PHYCTRL>;
1628*4e72b326SXuhui Lin		clock-names = "tsadc", "apb_pclk", "tsadc_phyctrl";
1629*4e72b326SXuhui Lin		resets = <&cru SRST_RESETN_TSADC>, <&cru SRST_PRESETN_TSADC>,
1630*4e72b326SXuhui Lin			 <&cru SRST_RESETN_TSADC_PHYCTRL>;
1631*4e72b326SXuhui Lin		reset-names = "tsadc", "tsadc-apb", "tsadc-phy";
1632*4e72b326SXuhui Lin		#thermal-sensor-cells = <1>;
1633*4e72b326SXuhui Lin		rockchip,grf = <&grf>;
1634*4e72b326SXuhui Lin		rockchip,hw-tshut-temp = <120000>;
1635*4e72b326SXuhui Lin		rockchip,hw-tshut-mode = <0>; /* tshut mode 0:CRU 1:GPIO */
1636*4e72b326SXuhui Lin		rockchip,hw-tshut-polarity = <0>; /* tshut polarity 0:LOW 1:HIGH */
1637*4e72b326SXuhui Lin		status = "disabled";
1638*4e72b326SXuhui Lin	};
1639*4e72b326SXuhui Lin
1640*4e72b326SXuhui Lin	audio_codec: audio-codec@20bf0000 {
1641*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-codec", "rockchip,rk3506-codec";
1642*4e72b326SXuhui Lin		reg = <0x20bf0000 0x1000>;
1643*4e72b326SXuhui Lin		#sound-dai-cells = <0>;
1644*4e72b326SXuhui Lin		sound-name-prefix = "ACodec";
1645*4e72b326SXuhui Lin		clocks = <&cru PCLK_AUDIO_ADC_BUS>, <&cru MCLK_AUDIO_ADC_BUS>;
1646*4e72b326SXuhui Lin		clock-names = "pclk", "mclk";
1647*4e72b326SXuhui Lin		resets = <&cru SRST_MRESETN_AUDIO_ADC_BUS>;
1648*4e72b326SXuhui Lin		reset-names = "rst";
1649*4e72b326SXuhui Lin		rockchip,grf = <&grf>;
1650*4e72b326SXuhui Lin		status = "disabled";
1651*4e72b326SXuhui Lin	};
1652*4e72b326SXuhui Lin
1653*4e72b326SXuhui Lin	rktimer: timer@20c00000 {
1654*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-timer", "rockchip,rk3288-timer";
1655*4e72b326SXuhui Lin		reg = <0x20c00000 0x20>;
1656*4e72b326SXuhui Lin		interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
1657*4e72b326SXuhui Lin		clocks = <&cru PCLK_TIMER>, <&cru CLK_TIMER0>;
1658*4e72b326SXuhui Lin		clock-names = "pclk", "timer";
1659*4e72b326SXuhui Lin	};
1660*4e72b326SXuhui Lin
1661*4e72b326SXuhui Lin	hpmcu_mbox0: mailbox@20d00000 {
1662*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-mailbox", "rockchip,rk3576-mailbox";
1663*4e72b326SXuhui Lin		reg = <0x20d00000 0x20>;
1664*4e72b326SXuhui Lin		interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
1665*4e72b326SXuhui Lin		clocks = <&cru PCLK_HPMCU_MAILBOX>;
1666*4e72b326SXuhui Lin		clock-names = "pclk_mailbox";
1667*4e72b326SXuhui Lin		#mbox-cells = <1>;
1668*4e72b326SXuhui Lin		status = "disabled";
1669*4e72b326SXuhui Lin	};
1670*4e72b326SXuhui Lin
1671*4e72b326SXuhui Lin	hpmcu_mbox1: mailbox@20d10000 {
1672*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-mailbox", "rockchip,rk3576-mailbox";
1673*4e72b326SXuhui Lin		reg = <0x20d10000 0x20>;
1674*4e72b326SXuhui Lin		interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
1675*4e72b326SXuhui Lin		clocks = <&cru PCLK_HPMCU_MAILBOX>;
1676*4e72b326SXuhui Lin		clock-names = "pclk_mailbox";
1677*4e72b326SXuhui Lin		#mbox-cells = <1>;
1678*4e72b326SXuhui Lin		status = "disabled";
1679*4e72b326SXuhui Lin	};
1680*4e72b326SXuhui Lin
1681*4e72b326SXuhui Lin	hpmcu_mbox2: mailbox@20d20000 {
1682*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-mailbox", "rockchip,rk3576-mailbox";
1683*4e72b326SXuhui Lin		reg = <0x20d20000 0x20>;
1684*4e72b326SXuhui Lin		interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
1685*4e72b326SXuhui Lin		clocks = <&cru PCLK_HPMCU_MAILBOX>;
1686*4e72b326SXuhui Lin		clock-names = "pclk_mailbox";
1687*4e72b326SXuhui Lin		#mbox-cells = <1>;
1688*4e72b326SXuhui Lin		status = "disabled";
1689*4e72b326SXuhui Lin	};
1690*4e72b326SXuhui Lin
1691*4e72b326SXuhui Lin	hpmcu_mbox3: mailbox@20d30000 {
1692*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-mailbox", "rockchip,rk3576-mailbox";
1693*4e72b326SXuhui Lin		reg = <0x20d30000 0x20>;
1694*4e72b326SXuhui Lin		interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
1695*4e72b326SXuhui Lin		clocks = <&cru PCLK_HPMCU_MAILBOX>;
1696*4e72b326SXuhui Lin		clock-names = "pclk_mailbox";
1697*4e72b326SXuhui Lin		#mbox-cells = <1>;
1698*4e72b326SXuhui Lin		status = "disabled";
1699*4e72b326SXuhui Lin	};
1700*4e72b326SXuhui Lin
1701*4e72b326SXuhui Lin	pwm0_8ch_0: pwm@20e00000 {
1702*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1703*4e72b326SXuhui Lin		reg = <0x20e00000 0x1000>;
1704*4e72b326SXuhui Lin		interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
1705*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM0>, <&cru PCLK_PWM0>;
1706*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1707*4e72b326SXuhui Lin		pinctrl-names = "active";
1708*4e72b326SXuhui Lin		pinctrl-0 = <&pwm0m0_ch0_pins>;
1709*4e72b326SXuhui Lin		#pwm-cells = <3>;
1710*4e72b326SXuhui Lin		status = "disabled";
1711*4e72b326SXuhui Lin	};
1712*4e72b326SXuhui Lin
1713*4e72b326SXuhui Lin	pwm0_8ch_1: pwm@20e10000 {
1714*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1715*4e72b326SXuhui Lin		reg = <0x20e10000 0x1000>;
1716*4e72b326SXuhui Lin		interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
1717*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM0>, <&cru PCLK_PWM0>;
1718*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1719*4e72b326SXuhui Lin		pinctrl-names = "active";
1720*4e72b326SXuhui Lin		pinctrl-0 = <&pwm0m0_ch1_pins>;
1721*4e72b326SXuhui Lin		#pwm-cells = <3>;
1722*4e72b326SXuhui Lin		status = "disabled";
1723*4e72b326SXuhui Lin	};
1724*4e72b326SXuhui Lin
1725*4e72b326SXuhui Lin	pwm0_8ch_2: pwm@20e20000 {
1726*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1727*4e72b326SXuhui Lin		reg = <0x20e20000 0x1000>;
1728*4e72b326SXuhui Lin		interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
1729*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM0>, <&cru PCLK_PWM0>;
1730*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1731*4e72b326SXuhui Lin		pinctrl-names = "active";
1732*4e72b326SXuhui Lin		pinctrl-0 = <&pwm0m0_ch2_pins>;
1733*4e72b326SXuhui Lin		#pwm-cells = <3>;
1734*4e72b326SXuhui Lin		status = "disabled";
1735*4e72b326SXuhui Lin	};
1736*4e72b326SXuhui Lin
1737*4e72b326SXuhui Lin	pwm0_8ch_3: pwm@20e30000 {
1738*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1739*4e72b326SXuhui Lin		reg = <0x20e30000 0x1000>;
1740*4e72b326SXuhui Lin		interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
1741*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM0>, <&cru PCLK_PWM0>;
1742*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1743*4e72b326SXuhui Lin		pinctrl-names = "active";
1744*4e72b326SXuhui Lin		pinctrl-0 = <&pwm0m0_ch3_pins>;
1745*4e72b326SXuhui Lin		#pwm-cells = <3>;
1746*4e72b326SXuhui Lin		status = "disabled";
1747*4e72b326SXuhui Lin	};
1748*4e72b326SXuhui Lin
1749*4e72b326SXuhui Lin	pwm0_8ch_4: pwm@20e40000 {
1750*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1751*4e72b326SXuhui Lin		reg = <0x20e40000 0x1000>;
1752*4e72b326SXuhui Lin		interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
1753*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM0>, <&cru PCLK_PWM0>;
1754*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1755*4e72b326SXuhui Lin		pinctrl-names = "active";
1756*4e72b326SXuhui Lin		pinctrl-0 = <&pwm0m0_ch4_pins>;
1757*4e72b326SXuhui Lin		#pwm-cells = <3>;
1758*4e72b326SXuhui Lin		status = "disabled";
1759*4e72b326SXuhui Lin	};
1760*4e72b326SXuhui Lin
1761*4e72b326SXuhui Lin	pwm0_8ch_5: pwm@20e50000 {
1762*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1763*4e72b326SXuhui Lin		reg = <0x20e50000 0x1000>;
1764*4e72b326SXuhui Lin		interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
1765*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM0>, <&cru PCLK_PWM0>;
1766*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1767*4e72b326SXuhui Lin		pinctrl-names = "active";
1768*4e72b326SXuhui Lin		pinctrl-0 = <&pwm0m0_ch5_pins>;
1769*4e72b326SXuhui Lin		#pwm-cells = <3>;
1770*4e72b326SXuhui Lin		status = "disabled";
1771*4e72b326SXuhui Lin	};
1772*4e72b326SXuhui Lin
1773*4e72b326SXuhui Lin	pwm0_8ch_6: pwm@20e60000 {
1774*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1775*4e72b326SXuhui Lin		reg = <0x20e60000 0x1000>;
1776*4e72b326SXuhui Lin		interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
1777*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM0>, <&cru PCLK_PWM0>;
1778*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1779*4e72b326SXuhui Lin		pinctrl-names = "active";
1780*4e72b326SXuhui Lin		pinctrl-0 = <&pwm0m0_ch6_pins>;
1781*4e72b326SXuhui Lin		#pwm-cells = <3>;
1782*4e72b326SXuhui Lin		status = "disabled";
1783*4e72b326SXuhui Lin	};
1784*4e72b326SXuhui Lin
1785*4e72b326SXuhui Lin	pwm0_8ch_7: pwm@20e70000 {
1786*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1787*4e72b326SXuhui Lin		reg = <0x20e70000 0x1000>;
1788*4e72b326SXuhui Lin		interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
1789*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM0>, <&cru PCLK_PWM0>;
1790*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1791*4e72b326SXuhui Lin		pinctrl-names = "active";
1792*4e72b326SXuhui Lin		pinctrl-0 = <&pwm0m0_ch7_pins>;
1793*4e72b326SXuhui Lin		#pwm-cells = <3>;
1794*4e72b326SXuhui Lin		status = "disabled";
1795*4e72b326SXuhui Lin	};
1796*4e72b326SXuhui Lin
1797*4e72b326SXuhui Lin	pwm2_8ch_0: pwm@20f00000 {
1798*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1799*4e72b326SXuhui Lin		reg = <0x20f00000 0x1000>;
1800*4e72b326SXuhui Lin		interrupts = <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>;
1801*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>, <&cru CLK_OSC_PWM2>;
1802*4e72b326SXuhui Lin		clock-names = "pwm", "pclk", "osc";
1803*4e72b326SXuhui Lin		pinctrl-names = "active";
1804*4e72b326SXuhui Lin		pinctrl-0 = <&pwm2m0_ch0_pins>;
1805*4e72b326SXuhui Lin		#pwm-cells = <3>;
1806*4e72b326SXuhui Lin		status = "disabled";
1807*4e72b326SXuhui Lin	};
1808*4e72b326SXuhui Lin
1809*4e72b326SXuhui Lin	pwm2_8ch_1: pwm@20f10000 {
1810*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1811*4e72b326SXuhui Lin		reg = <0x20f10000 0x1000>;
1812*4e72b326SXuhui Lin		interrupts = <GIC_SPI 225 IRQ_TYPE_LEVEL_HIGH>;
1813*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>, <&cru CLK_OSC_PWM2>;
1814*4e72b326SXuhui Lin		clock-names = "pwm", "pclk", "osc";
1815*4e72b326SXuhui Lin		pinctrl-names = "active";
1816*4e72b326SXuhui Lin		pinctrl-0 = <&pwm2m0_ch1_pins>;
1817*4e72b326SXuhui Lin		#pwm-cells = <3>;
1818*4e72b326SXuhui Lin		status = "disabled";
1819*4e72b326SXuhui Lin	};
1820*4e72b326SXuhui Lin
1821*4e72b326SXuhui Lin	pwm2_8ch_2: pwm@20f20000 {
1822*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1823*4e72b326SXuhui Lin		reg = <0x20f20000 0x1000>;
1824*4e72b326SXuhui Lin		interrupts = <GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH>;
1825*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>, <&cru CLK_OSC_PWM2>;
1826*4e72b326SXuhui Lin		clock-names = "pwm", "pclk", "osc";
1827*4e72b326SXuhui Lin		pinctrl-names = "active";
1828*4e72b326SXuhui Lin		pinctrl-0 = <&pwm2m0_ch2_pins>;
1829*4e72b326SXuhui Lin		#pwm-cells = <3>;
1830*4e72b326SXuhui Lin		status = "disabled";
1831*4e72b326SXuhui Lin	};
1832*4e72b326SXuhui Lin
1833*4e72b326SXuhui Lin	pwm2_8ch_3: pwm@20f30000 {
1834*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1835*4e72b326SXuhui Lin		reg = <0x20f30000 0x1000>;
1836*4e72b326SXuhui Lin		interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_HIGH>;
1837*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>, <&cru CLK_OSC_PWM2>;
1838*4e72b326SXuhui Lin		clock-names = "pwm", "pclk", "osc";
1839*4e72b326SXuhui Lin		pinctrl-names = "active";
1840*4e72b326SXuhui Lin		pinctrl-0 = <&pwm2m0_ch3_pins>;
1841*4e72b326SXuhui Lin		#pwm-cells = <3>;
1842*4e72b326SXuhui Lin		status = "disabled";
1843*4e72b326SXuhui Lin	};
1844*4e72b326SXuhui Lin
1845*4e72b326SXuhui Lin	pwm2_8ch_4: pwm@20f40000 {
1846*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1847*4e72b326SXuhui Lin		reg = <0x20f40000 0x1000>;
1848*4e72b326SXuhui Lin		interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_HIGH>;
1849*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>, <&cru CLK_OSC_PWM2>;
1850*4e72b326SXuhui Lin		clock-names = "pwm", "pclk", "osc";
1851*4e72b326SXuhui Lin		pinctrl-names = "active";
1852*4e72b326SXuhui Lin		pinctrl-0 = <&pwm2m0_ch4_pins>;
1853*4e72b326SXuhui Lin		#pwm-cells = <3>;
1854*4e72b326SXuhui Lin		status = "disabled";
1855*4e72b326SXuhui Lin	};
1856*4e72b326SXuhui Lin
1857*4e72b326SXuhui Lin	pwm2_8ch_5: pwm@20f50000 {
1858*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1859*4e72b326SXuhui Lin		reg = <0x20f50000 0x1000>;
1860*4e72b326SXuhui Lin		interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>;
1861*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>, <&cru CLK_OSC_PWM2>;
1862*4e72b326SXuhui Lin		clock-names = "pwm", "pclk", "osc";
1863*4e72b326SXuhui Lin		pinctrl-names = "active";
1864*4e72b326SXuhui Lin		pinctrl-0 = <&pwm2m0_ch5_pins>;
1865*4e72b326SXuhui Lin		#pwm-cells = <3>;
1866*4e72b326SXuhui Lin		status = "disabled";
1867*4e72b326SXuhui Lin	};
1868*4e72b326SXuhui Lin
1869*4e72b326SXuhui Lin	pwm2_8ch_6: pwm@20f60000 {
1870*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1871*4e72b326SXuhui Lin		reg = <0x20f60000 0x1000>;
1872*4e72b326SXuhui Lin		interrupts = <GIC_SPI 230 IRQ_TYPE_LEVEL_HIGH>;
1873*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>, <&cru CLK_OSC_PWM2>;
1874*4e72b326SXuhui Lin		clock-names = "pwm", "pclk", "osc";
1875*4e72b326SXuhui Lin		pinctrl-names = "active";
1876*4e72b326SXuhui Lin		pinctrl-0 = <&pwm2m0_ch6_pins>;
1877*4e72b326SXuhui Lin		#pwm-cells = <3>;
1878*4e72b326SXuhui Lin		status = "disabled";
1879*4e72b326SXuhui Lin	};
1880*4e72b326SXuhui Lin
1881*4e72b326SXuhui Lin	pwm2_8ch_7: pwm@20f70000 {
1882*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1883*4e72b326SXuhui Lin		reg = <0x20f70000 0x1000>;
1884*4e72b326SXuhui Lin		interrupts = <GIC_SPI 231 IRQ_TYPE_LEVEL_HIGH>;
1885*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>, <&cru CLK_OSC_PWM2>;
1886*4e72b326SXuhui Lin		clock-names = "pwm", "pclk", "osc";
1887*4e72b326SXuhui Lin		pinctrl-names = "active";
1888*4e72b326SXuhui Lin		pinctrl-0 = <&pwm2m0_ch7_pins>;
1889*4e72b326SXuhui Lin		#pwm-cells = <3>;
1890*4e72b326SXuhui Lin		status = "disabled";
1891*4e72b326SXuhui Lin	};
1892*4e72b326SXuhui Lin
1893*4e72b326SXuhui Lin	pwm3_8ch_0: pwm@21000000 {
1894*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1895*4e72b326SXuhui Lin		reg = <0x21000000 0x1000>;
1896*4e72b326SXuhui Lin		interrupts = <GIC_SPI 232 IRQ_TYPE_LEVEL_HIGH>;
1897*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>;
1898*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1899*4e72b326SXuhui Lin		pinctrl-names = "active";
1900*4e72b326SXuhui Lin		pinctrl-0 = <&pwm3m0_ch0_pins>;
1901*4e72b326SXuhui Lin		#pwm-cells = <3>;
1902*4e72b326SXuhui Lin		status = "disabled";
1903*4e72b326SXuhui Lin	};
1904*4e72b326SXuhui Lin
1905*4e72b326SXuhui Lin	pwm3_8ch_1: pwm@21010000 {
1906*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1907*4e72b326SXuhui Lin		reg = <0x21010000 0x1000>;
1908*4e72b326SXuhui Lin		interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH>;
1909*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>;
1910*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1911*4e72b326SXuhui Lin		pinctrl-names = "active";
1912*4e72b326SXuhui Lin		pinctrl-0 = <&pwm3m0_ch1_pins>;
1913*4e72b326SXuhui Lin		#pwm-cells = <3>;
1914*4e72b326SXuhui Lin		status = "disabled";
1915*4e72b326SXuhui Lin	};
1916*4e72b326SXuhui Lin
1917*4e72b326SXuhui Lin	pwm3_8ch_2: pwm@21020000 {
1918*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1919*4e72b326SXuhui Lin		reg = <0x21020000 0x1000>;
1920*4e72b326SXuhui Lin		interrupts = <GIC_SPI 234 IRQ_TYPE_LEVEL_HIGH>;
1921*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>;
1922*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1923*4e72b326SXuhui Lin		pinctrl-names = "active";
1924*4e72b326SXuhui Lin		pinctrl-0 = <&pwm3m0_ch2_pins>;
1925*4e72b326SXuhui Lin		#pwm-cells = <3>;
1926*4e72b326SXuhui Lin		status = "disabled";
1927*4e72b326SXuhui Lin	};
1928*4e72b326SXuhui Lin
1929*4e72b326SXuhui Lin	pwm3_8ch_3: pwm@21030000 {
1930*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1931*4e72b326SXuhui Lin		reg = <0x21030000 0x1000>;
1932*4e72b326SXuhui Lin		interrupts = <GIC_SPI 235 IRQ_TYPE_LEVEL_HIGH>;
1933*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>;
1934*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1935*4e72b326SXuhui Lin		pinctrl-names = "active";
1936*4e72b326SXuhui Lin		pinctrl-0 = <&pwm3m0_ch3_pins>;
1937*4e72b326SXuhui Lin		#pwm-cells = <3>;
1938*4e72b326SXuhui Lin		status = "disabled";
1939*4e72b326SXuhui Lin	};
1940*4e72b326SXuhui Lin
1941*4e72b326SXuhui Lin	pwm3_8ch_4: pwm@21040000 {
1942*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1943*4e72b326SXuhui Lin		reg = <0x21040000 0x1000>;
1944*4e72b326SXuhui Lin		interrupts = <GIC_SPI 236 IRQ_TYPE_LEVEL_HIGH>;
1945*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>;
1946*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1947*4e72b326SXuhui Lin		pinctrl-names = "active";
1948*4e72b326SXuhui Lin		pinctrl-0 = <&pwm3m0_ch4_pins>;
1949*4e72b326SXuhui Lin		#pwm-cells = <3>;
1950*4e72b326SXuhui Lin		status = "disabled";
1951*4e72b326SXuhui Lin	};
1952*4e72b326SXuhui Lin
1953*4e72b326SXuhui Lin	pwm3_8ch_5: pwm@21050000 {
1954*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1955*4e72b326SXuhui Lin		reg = <0x21050000 0x1000>;
1956*4e72b326SXuhui Lin		interrupts = <GIC_SPI 237 IRQ_TYPE_LEVEL_HIGH>;
1957*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>;
1958*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1959*4e72b326SXuhui Lin		pinctrl-names = "active";
1960*4e72b326SXuhui Lin		pinctrl-0 = <&pwm3m0_ch5_pins>;
1961*4e72b326SXuhui Lin		#pwm-cells = <3>;
1962*4e72b326SXuhui Lin		status = "disabled";
1963*4e72b326SXuhui Lin	};
1964*4e72b326SXuhui Lin
1965*4e72b326SXuhui Lin	pwm3_8ch_6: pwm@21060000 {
1966*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1967*4e72b326SXuhui Lin		reg = <0x21060000 0x1000>;
1968*4e72b326SXuhui Lin		interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>;
1969*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>;
1970*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1971*4e72b326SXuhui Lin		pinctrl-names = "active";
1972*4e72b326SXuhui Lin		pinctrl-0 = <&pwm3m0_ch6_pins>;
1973*4e72b326SXuhui Lin		#pwm-cells = <3>;
1974*4e72b326SXuhui Lin		status = "disabled";
1975*4e72b326SXuhui Lin	};
1976*4e72b326SXuhui Lin
1977*4e72b326SXuhui Lin	pwm3_8ch_7: pwm@21070000 {
1978*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pwm", "rockchip,rk3576-pwm";
1979*4e72b326SXuhui Lin		reg = <0x21070000 0x1000>;
1980*4e72b326SXuhui Lin		interrupts = <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>;
1981*4e72b326SXuhui Lin		clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>;
1982*4e72b326SXuhui Lin		clock-names = "pwm", "pclk";
1983*4e72b326SXuhui Lin		pinctrl-names = "active";
1984*4e72b326SXuhui Lin		pinctrl-0 = <&pwm3m0_ch7_pins>;
1985*4e72b326SXuhui Lin		#pwm-cells = <3>;
1986*4e72b326SXuhui Lin		status = "disabled";
1987*4e72b326SXuhui Lin	};
1988*4e72b326SXuhui Lin
1989*4e72b326SXuhui Lin	i2c0: i2c@21100000 {
1990*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-i2c", "rockchip,rk3399-i2c";
1991*4e72b326SXuhui Lin		reg = <0x21100000 0x1000>;
1992*4e72b326SXuhui Lin		interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
1993*4e72b326SXuhui Lin		#address-cells = <1>;
1994*4e72b326SXuhui Lin		#size-cells = <0>;
1995*4e72b326SXuhui Lin		clocks = <&cru CLK_I2C0>, <&cru PCLK_I2C0>;
1996*4e72b326SXuhui Lin		clock-names = "i2c", "pclk";
1997*4e72b326SXuhui Lin		dmas = <&dmac 29>, <&dmac 28>;
1998*4e72b326SXuhui Lin		dma-names = "tx", "rx";
1999*4e72b326SXuhui Lin		pinctrl-names = "default";
2000*4e72b326SXuhui Lin		pinctrl-0 = <&i2c0m0_pins>;
2001*4e72b326SXuhui Lin		status = "disabled";
2002*4e72b326SXuhui Lin	};
2003*4e72b326SXuhui Lin
2004*4e72b326SXuhui Lin	i2c1: i2c@21110000 {
2005*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-i2c", "rockchip,rk3399-i2c";
2006*4e72b326SXuhui Lin		reg = <0x21110000 0x1000>;
2007*4e72b326SXuhui Lin		interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
2008*4e72b326SXuhui Lin		#address-cells = <1>;
2009*4e72b326SXuhui Lin		#size-cells = <0>;
2010*4e72b326SXuhui Lin		clocks = <&cru CLK_I2C1>, <&cru PCLK_I2C1>;
2011*4e72b326SXuhui Lin		clock-names = "i2c", "pclk";
2012*4e72b326SXuhui Lin		dmas = <&dmac 31>, <&dmac 30>;
2013*4e72b326SXuhui Lin		dma-names = "tx", "rx";
2014*4e72b326SXuhui Lin		pinctrl-names = "default";
2015*4e72b326SXuhui Lin		pinctrl-0 = <&i2c1m0_pins>;
2016*4e72b326SXuhui Lin		status = "disabled";
2017*4e72b326SXuhui Lin	};
2018*4e72b326SXuhui Lin
2019*4e72b326SXuhui Lin	i2c3: i2c@21120000 {
2020*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-i2c", "rockchip,rk3399-i2c";
2021*4e72b326SXuhui Lin		reg = <0x21120000 0x1000>;
2022*4e72b326SXuhui Lin		interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
2023*4e72b326SXuhui Lin		#address-cells = <1>;
2024*4e72b326SXuhui Lin		#size-cells = <0>;
2025*4e72b326SXuhui Lin		clocks = <&cru CLK_I2C3>, <&cru PCLK_I2C3>;
2026*4e72b326SXuhui Lin		clock-names = "i2c", "pclk";
2027*4e72b326SXuhui Lin		dmas = <&dmac 35>, <&dmac 34>;
2028*4e72b326SXuhui Lin		dma-names = "tx", "rx";
2029*4e72b326SXuhui Lin		pinctrl-names = "default";
2030*4e72b326SXuhui Lin		pinctrl-0 = <&i2c3m0_pins>;
2031*4e72b326SXuhui Lin		status = "disabled";
2032*4e72b326SXuhui Lin	};
2033*4e72b326SXuhui Lin
2034*4e72b326SXuhui Lin	i2c4: i2c@21130000 {
2035*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-i2c", "rockchip,rk3399-i2c";
2036*4e72b326SXuhui Lin		reg = <0x21130000 0x1000>;
2037*4e72b326SXuhui Lin		interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
2038*4e72b326SXuhui Lin		#address-cells = <1>;
2039*4e72b326SXuhui Lin		#size-cells = <0>;
2040*4e72b326SXuhui Lin		clocks = <&cru CLK_I2C4>, <&cru PCLK_I2C4>;
2041*4e72b326SXuhui Lin		clock-names = "i2c", "pclk";
2042*4e72b326SXuhui Lin		dmas = <&dmac 37>, <&dmac 36>;
2043*4e72b326SXuhui Lin		dma-names = "tx", "rx";
2044*4e72b326SXuhui Lin		pinctrl-names = "default";
2045*4e72b326SXuhui Lin		pinctrl-0 = <&i2c4m0_pins>;
2046*4e72b326SXuhui Lin		status = "disabled";
2047*4e72b326SXuhui Lin	};
2048*4e72b326SXuhui Lin
2049*4e72b326SXuhui Lin	i2c5: i2c@21140000 {
2050*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-i2c", "rockchip,rk3399-i2c";
2051*4e72b326SXuhui Lin		reg = <0x21140000 0x1000>;
2052*4e72b326SXuhui Lin		interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
2053*4e72b326SXuhui Lin		#address-cells = <1>;
2054*4e72b326SXuhui Lin		#size-cells = <0>;
2055*4e72b326SXuhui Lin		clocks = <&cru CLK_I2C5>, <&cru PCLK_I2C5>;
2056*4e72b326SXuhui Lin		clock-names = "i2c", "pclk";
2057*4e72b326SXuhui Lin		dmas = <&dmac 39>, <&dmac 38>;
2058*4e72b326SXuhui Lin		dma-names = "tx", "rx";
2059*4e72b326SXuhui Lin		pinctrl-names = "default";
2060*4e72b326SXuhui Lin		pinctrl-0 = <&i2c5m0_pins>;
2061*4e72b326SXuhui Lin		status = "disabled";
2062*4e72b326SXuhui Lin	};
2063*4e72b326SXuhui Lin
2064*4e72b326SXuhui Lin	uart1: serial@21160000 {
2065*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-uart", "snps,dw-apb-uart";
2066*4e72b326SXuhui Lin		reg = <0x21160000 0x100>;
2067*4e72b326SXuhui Lin		interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
2068*4e72b326SXuhui Lin		clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>;
2069*4e72b326SXuhui Lin		clock-names = "baudclk", "apb_pclk";
2070*4e72b326SXuhui Lin		reg-shift = <2>;
2071*4e72b326SXuhui Lin		reg-io-width = <4>;
2072*4e72b326SXuhui Lin		dmas = <&dmac 3>, <&dmac 2>;
2073*4e72b326SXuhui Lin		pinctrl-names = "default";
2074*4e72b326SXuhui Lin		pinctrl-0 = <&uart1m0_xfer_pins &uart1m0_ctsn_pins &uart1m0_rtsn_pins>;
2075*4e72b326SXuhui Lin		status = "disabled";
2076*4e72b326SXuhui Lin	};
2077*4e72b326SXuhui Lin
2078*4e72b326SXuhui Lin	uart2: serial@21170000 {
2079*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-uart", "snps,dw-apb-uart";
2080*4e72b326SXuhui Lin		reg = <0x21170000 0x100>;
2081*4e72b326SXuhui Lin		interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
2082*4e72b326SXuhui Lin		clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>;
2083*4e72b326SXuhui Lin		clock-names = "baudclk", "apb_pclk";
2084*4e72b326SXuhui Lin		reg-shift = <2>;
2085*4e72b326SXuhui Lin		reg-io-width = <4>;
2086*4e72b326SXuhui Lin		dmas = <&dmac 5>, <&dmac 4>;
2087*4e72b326SXuhui Lin		pinctrl-names = "default";
2088*4e72b326SXuhui Lin		pinctrl-0 = <&uart2m0_xfer_pins &uart2m0_ctsn_pins &uart2m0_rtsn_pins>;
2089*4e72b326SXuhui Lin		status = "disabled";
2090*4e72b326SXuhui Lin	};
2091*4e72b326SXuhui Lin
2092*4e72b326SXuhui Lin	uart3: serial@21180000 {
2093*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-uart", "snps,dw-apb-uart";
2094*4e72b326SXuhui Lin		reg = <0x21180000 0x100>;
2095*4e72b326SXuhui Lin		interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
2096*4e72b326SXuhui Lin		clocks = <&cru SCLK_UART3>, <&cru PCLK_UART3>;
2097*4e72b326SXuhui Lin		clock-names = "baudclk", "apb_pclk";
2098*4e72b326SXuhui Lin		reg-shift = <2>;
2099*4e72b326SXuhui Lin		reg-io-width = <4>;
2100*4e72b326SXuhui Lin		dmas = <&dmac 7>, <&dmac 6>;
2101*4e72b326SXuhui Lin		pinctrl-names = "default";
2102*4e72b326SXuhui Lin		pinctrl-0 = <&uart3m0_xfer_pins &uart3m0_ctsn_pins &uart3m0_rtsn_pins>;
2103*4e72b326SXuhui Lin		status = "disabled";
2104*4e72b326SXuhui Lin	};
2105*4e72b326SXuhui Lin
2106*4e72b326SXuhui Lin	uart4: serial@21190000 {
2107*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-uart", "snps,dw-apb-uart";
2108*4e72b326SXuhui Lin		reg = <0x21190000 0x100>;
2109*4e72b326SXuhui Lin		interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
2110*4e72b326SXuhui Lin		clocks = <&cru SCLK_UART4>, <&cru PCLK_UART4>;
2111*4e72b326SXuhui Lin		clock-names = "baudclk", "apb_pclk";
2112*4e72b326SXuhui Lin		reg-shift = <2>;
2113*4e72b326SXuhui Lin		reg-io-width = <4>;
2114*4e72b326SXuhui Lin		dmas = <&dmac 9>, <&dmac 8>;
2115*4e72b326SXuhui Lin		pinctrl-names = "default";
2116*4e72b326SXuhui Lin		pinctrl-0 = <&uart4m0_xfer_pins &uart4m0_ctsn_pins &uart4m0_rtsn_pins>;
2117*4e72b326SXuhui Lin		status = "disabled";
2118*4e72b326SXuhui Lin	};
2119*4e72b326SXuhui Lin
2120*4e72b326SXuhui Lin	uart5: serial@211a0000 {
2121*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-uart", "snps,dw-apb-uart";
2122*4e72b326SXuhui Lin		reg = <0x211a0000 0x100>;
2123*4e72b326SXuhui Lin		interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
2124*4e72b326SXuhui Lin		clocks = <&cru SCLK_UART5>, <&cru PCLK_UART5>;
2125*4e72b326SXuhui Lin		clock-names = "baudclk", "apb_pclk";
2126*4e72b326SXuhui Lin		reg-shift = <2>;
2127*4e72b326SXuhui Lin		reg-io-width = <4>;
2128*4e72b326SXuhui Lin		dmas = <&dmac 11>, <&dmac 10>;
2129*4e72b326SXuhui Lin		pinctrl-names = "default";
2130*4e72b326SXuhui Lin		pinctrl-0 = <&uart5m0_xfer_pins &uart5m0_ctsn_pins &uart5m0_rtsn_pins>;
2131*4e72b326SXuhui Lin		status = "disabled";
2132*4e72b326SXuhui Lin	};
2133*4e72b326SXuhui Lin
2134*4e72b326SXuhui Lin	uart6: serial@211b0000 {
2135*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-uart", "snps,dw-apb-uart";
2136*4e72b326SXuhui Lin		reg = <0x211b0000 0x100>;
2137*4e72b326SXuhui Lin		interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
2138*4e72b326SXuhui Lin		clocks = <&cru SCLK_UART6>, <&cru PCLK_UART6>;
2139*4e72b326SXuhui Lin		clock-names = "baudclk", "apb_pclk";
2140*4e72b326SXuhui Lin		reg-shift = <2>;
2141*4e72b326SXuhui Lin		reg-io-width = <4>;
2142*4e72b326SXuhui Lin		dmas = <&dmac 13>, <&dmac 12>;
2143*4e72b326SXuhui Lin		pinctrl-names = "default";
2144*4e72b326SXuhui Lin		pinctrl-0 = <&uart6m0_xfer_pins &uart6m0_ctsn_pins &uart6m0_rtsn_pins>;
2145*4e72b326SXuhui Lin		status = "disabled";
2146*4e72b326SXuhui Lin	};
2147*4e72b326SXuhui Lin
2148*4e72b326SXuhui Lin	uart7: serial@211c0000 {
2149*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-uart", "snps,dw-apb-uart";
2150*4e72b326SXuhui Lin		reg = <0x211c0000 0x100>;
2151*4e72b326SXuhui Lin		interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
2152*4e72b326SXuhui Lin		clocks = <&cru SCLK_UART7>, <&cru PCLK_UART7>;
2153*4e72b326SXuhui Lin		clock-names = "baudclk", "apb_pclk";
2154*4e72b326SXuhui Lin		reg-shift = <2>;
2155*4e72b326SXuhui Lin		reg-io-width = <4>;
2156*4e72b326SXuhui Lin		dmas = <&dmac 15>, <&dmac 14>;
2157*4e72b326SXuhui Lin		pinctrl-names = "default";
2158*4e72b326SXuhui Lin		pinctrl-0 = <&uart7m0_xfer_pins &uart7m0_ctsn_pins &uart7m0_rtsn_pins>;
2159*4e72b326SXuhui Lin		status = "disabled";
2160*4e72b326SXuhui Lin	};
2161*4e72b326SXuhui Lin
2162*4e72b326SXuhui Lin	spi0: spi@211e0000 {
2163*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-spi", "rockchip,rk3066-spi";
2164*4e72b326SXuhui Lin		reg = <0x211e0000 0x1000>;
2165*4e72b326SXuhui Lin		interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>;
2166*4e72b326SXuhui Lin		#address-cells = <1>;
2167*4e72b326SXuhui Lin		#size-cells = <0>;
2168*4e72b326SXuhui Lin		clocks = <&cru CLK_SPI0>, <&cru PCLK_SPI0>;
2169*4e72b326SXuhui Lin		clock-names = "spiclk", "apb_pclk";
2170*4e72b326SXuhui Lin		dmas = <&dmac 40>, <&dmac 41>;
2171*4e72b326SXuhui Lin		dma-names = "rx", "tx";
2172*4e72b326SXuhui Lin		pinctrl-names = "default";
2173*4e72b326SXuhui Lin		pinctrl-0 = <&spi0m0_clk_pins &spi0m0_csn0_pins &spi0m0_csn1_pins>;
2174*4e72b326SXuhui Lin		status = "disabled";
2175*4e72b326SXuhui Lin	};
2176*4e72b326SXuhui Lin
2177*4e72b326SXuhui Lin	spi1: spi@211f0000 {
2178*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-spi", "rockchip,rk3066-spi";
2179*4e72b326SXuhui Lin		reg = <0x211f0000 0x1000>;
2180*4e72b326SXuhui Lin		interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>;
2181*4e72b326SXuhui Lin		#address-cells = <1>;
2182*4e72b326SXuhui Lin		#size-cells = <0>;
2183*4e72b326SXuhui Lin		clocks = <&cru CLK_SPI1>, <&cru PCLK_SPI1>;
2184*4e72b326SXuhui Lin		clock-names = "spiclk", "apb_pclk";
2185*4e72b326SXuhui Lin		dmas = <&dmac 42>, <&dmac 43>;
2186*4e72b326SXuhui Lin		dma-names = "rx", "tx";
2187*4e72b326SXuhui Lin		pinctrl-names = "default";
2188*4e72b326SXuhui Lin		pinctrl-0 = <&spi1m0_clk_pins &spi1m0_csn0_pins &spi1m0_csn1_pins>;
2189*4e72b326SXuhui Lin		status = "disabled";
2190*4e72b326SXuhui Lin	};
2191*4e72b326SXuhui Lin
2192*4e72b326SXuhui Lin	gic: interrupt-controller@21201000 {
2193*4e72b326SXuhui Lin		compatible = "arm,gic-400";
2194*4e72b326SXuhui Lin		#interrupt-cells = <3>;
2195*4e72b326SXuhui Lin		#address-cells = <0>;
2196*4e72b326SXuhui Lin		interrupt-controller;
2197*4e72b326SXuhui Lin		reg = <0x21201000 0x1000>,
2198*4e72b326SXuhui Lin		      <0x21202000 0x2000>,
2199*4e72b326SXuhui Lin		      <0x21204000 0x2000>,
2200*4e72b326SXuhui Lin		      <0x21206000 0x2000>;
2201*4e72b326SXuhui Lin		interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
2202*4e72b326SXuhui Lin	};
2203*4e72b326SXuhui Lin
2204*4e72b326SXuhui Lin	hwlock: hwspinlock@21210000 {
2205*4e72b326SXuhui Lin		compatible = "rockchip,hwspinlock";
2206*4e72b326SXuhui Lin		reg = <0x21210000 0x100>;
2207*4e72b326SXuhui Lin		#hwlock-cells = <1>;
2208*4e72b326SXuhui Lin		rockchip,hwlock-num-locks = <64>;
2209*4e72b326SXuhui Lin		status = "disabled";
2210*4e72b326SXuhui Lin	};
2211*4e72b326SXuhui Lin
2212*4e72b326SXuhui Lin	rtc: rtc@21280000 {
2213*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-rtc";
2214*4e72b326SXuhui Lin		reg = <0x21280000 0x1000>;
2215*4e72b326SXuhui Lin		rockchip,grf = <&grf>;
2216*4e72b326SXuhui Lin		interrupts = <GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>;
2217*4e72b326SXuhui Lin		clocks = <&cru PCLK_RTC_ROOT>;
2218*4e72b326SXuhui Lin		clock-names = "pclk_phy";
2219*4e72b326SXuhui Lin		assigned-clocks = <&cru PCLK_RTC_ROOT>;
2220*4e72b326SXuhui Lin		assigned-clock-rates = <50000000>;
2221*4e72b326SXuhui Lin		status = "disabled";
2222*4e72b326SXuhui Lin	};
2223*4e72b326SXuhui Lin
2224*4e72b326SXuhui Lin	usb2phy: usb2-phy@21400000 {
2225*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-usb2phy";
2226*4e72b326SXuhui Lin		reg = <0x21400000 0x10000>;
2227*4e72b326SXuhui Lin		clocks = <&cru PCLK_USB2PHY>;
2228*4e72b326SXuhui Lin		clock-names = "pclk";
2229*4e72b326SXuhui Lin		clock-output-names = "usb480m_phy";
2230*4e72b326SXuhui Lin		#clock-cells = <0>;
2231*4e72b326SXuhui Lin		rockchip,usbctrl-grf = <&grf>;
2232*4e72b326SXuhui Lin		rockchip,usbgrf = <&grf>;
2233*4e72b326SXuhui Lin		status = "disabled";
2234*4e72b326SXuhui Lin
2235*4e72b326SXuhui Lin		usb2phy_host: host-port {
2236*4e72b326SXuhui Lin			#phy-cells = <0>;
2237*4e72b326SXuhui Lin			interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
2238*4e72b326SXuhui Lin			interrupt-names = "linestate";
2239*4e72b326SXuhui Lin			status = "disabled";
2240*4e72b326SXuhui Lin		};
2241*4e72b326SXuhui Lin
2242*4e72b326SXuhui Lin		usb2phy_otg: otg-port {
2243*4e72b326SXuhui Lin			#phy-cells = <0>;
2244*4e72b326SXuhui Lin			interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>,
2245*4e72b326SXuhui Lin				     <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
2246*4e72b326SXuhui Lin				     <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
2247*4e72b326SXuhui Lin			interrupt-names = "otg-id", "otg-bvalid", "linestate";
2248*4e72b326SXuhui Lin			status = "disabled";
2249*4e72b326SXuhui Lin		};
2250*4e72b326SXuhui Lin	};
2251*4e72b326SXuhui Lin
2252*4e72b326SXuhui Lin	usb3phy: usb3-phy@21410000 {
2253*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-usb3-phy";
2254*4e72b326SXuhui Lin		reg = <0x21410000 0x10000>;
2255*4e72b326SXuhui Lin		clocks = <&cru CLK_REF_PIPEPHY>, <&cru PCLK_PIPEPHY>;
2256*4e72b326SXuhui Lin		clock-names = "refclk", "apbclk";
2257*4e72b326SXuhui Lin		assigned-clocks = <&cru CLK_REF_PIPEPHY>;
2258*4e72b326SXuhui Lin		assigned-clock-rates = <100000000>;
2259*4e72b326SXuhui Lin		#phy-cells = <1>;
2260*4e72b326SXuhui Lin		resets = <&cru SRST_PRESETN_PIPEPHY>, <&cru SRST_RESETN_REF_PIPEPHY>;
2261*4e72b326SXuhui Lin		reset-names = "combphy-apb", "combphy";
2262*4e72b326SXuhui Lin		rockchip,pipe-grf = <&grf>;
2263*4e72b326SXuhui Lin		rockchip,pipe-phy-grf = <&grf>;
2264*4e72b326SXuhui Lin		status = "disabled";
2265*4e72b326SXuhui Lin	};
2266*4e72b326SXuhui Lin
2267*4e72b326SXuhui Lin	fspi0: spi@21460000 {
2268*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-fspi", "rockchip,fspi";
2269*4e72b326SXuhui Lin		reg = <0x21460000 0x4000>;
2270*4e72b326SXuhui Lin		interrupts = <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>;
2271*4e72b326SXuhui Lin		clocks = <&cru SCLK_2X_FSPI0>, <&cru HCLK_FSPI0>;
2272*4e72b326SXuhui Lin		clock-names = "clk_sfc", "hclk_sfc";
2273*4e72b326SXuhui Lin		rockchip,grf = <&grf>;
2274*4e72b326SXuhui Lin		rockchip,max-dll = <0xFF>;
2275*4e72b326SXuhui Lin		#address-cells = <1>;
2276*4e72b326SXuhui Lin		#size-cells = <0>;
2277*4e72b326SXuhui Lin		status = "disabled";
2278*4e72b326SXuhui Lin	};
2279*4e72b326SXuhui Lin
2280*4e72b326SXuhui Lin	emmc: mmc@21470000 {
2281*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-dw-mshc", "rockchip,rk3288-dw-mshc";
2282*4e72b326SXuhui Lin		reg = <0x21470000 0x4000>;
2283*4e72b326SXuhui Lin		interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
2284*4e72b326SXuhui Lin		clocks = <&cru HCLK_EMMC>, <&cru CCLK_EMMC>;
2285*4e72b326SXuhui Lin		clock-names = "biu", "ciu";
2286*4e72b326SXuhui Lin		fifo-depth = <0x100>;
2287*4e72b326SXuhui Lin		max-frequency = <200000000>;
2288*4e72b326SXuhui Lin		status = "disabled";
2289*4e72b326SXuhui Lin	};
2290*4e72b326SXuhui Lin
2291*4e72b326SXuhui Lin	usb_host_ehci: usb@21480000 {
2292*4e72b326SXuhui Lin		compatible = "generic-ehci";
2293*4e72b326SXuhui Lin		reg = <0x21480000 0x40000>;
2294*4e72b326SXuhui Lin		interrupts = <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>;
2295*4e72b326SXuhui Lin		clocks = <&cru HCLK_USB2HOST>, <&cru HCLK_ARB_USB2HOST>, <&usb2phy>;
2296*4e72b326SXuhui Lin		clock-names = "usbhost", "arbiter", "utmi";
2297*4e72b326SXuhui Lin		phys = <&usb2phy_host>;
2298*4e72b326SXuhui Lin		phy-names = "usb2-phy";
2299*4e72b326SXuhui Lin		status = "disabled";
2300*4e72b326SXuhui Lin	};
2301*4e72b326SXuhui Lin
2302*4e72b326SXuhui Lin	usb_host_ohci: usb@214c0000 {
2303*4e72b326SXuhui Lin		compatible = "generic-ohci";
2304*4e72b326SXuhui Lin		reg = <0x214c0000 0x40000>;
2305*4e72b326SXuhui Lin		interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
2306*4e72b326SXuhui Lin		clocks = <&cru HCLK_USB2HOST>, <&cru HCLK_ARB_USB2HOST>, <&usb2phy>;
2307*4e72b326SXuhui Lin		clock-names = "usbhost", "arbiter", "utmi";
2308*4e72b326SXuhui Lin		phys = <&usb2phy_host>;
2309*4e72b326SXuhui Lin		phy-names = "usb2-phy";
2310*4e72b326SXuhui Lin		status = "disabled";
2311*4e72b326SXuhui Lin	};
2312*4e72b326SXuhui Lin
2313*4e72b326SXuhui Lin	usb_drd_dwc3: usb@21500000 {
2314*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-dwc3", "rockchip,rk3576-dwc3", "snps,dwc3";
2315*4e72b326SXuhui Lin		reg = <0x21500000 0x100000>;
2316*4e72b326SXuhui Lin		clocks = <&cru CLK_REF_USB3OTG>,
2317*4e72b326SXuhui Lin			 <&cru CLK_SUSPEND_USB3OTG>,
2318*4e72b326SXuhui Lin			 <&cru ACLK_USB3OTG>;
2319*4e72b326SXuhui Lin		clock-names = "ref", "suspend", "bus_clk";
2320*4e72b326SXuhui Lin		interrupts = <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>;
2321*4e72b326SXuhui Lin		resets = <&cru SRST_ARESETN_USB3OTG>;
2322*4e72b326SXuhui Lin		reset-names = "usb3-otg";
2323*4e72b326SXuhui Lin		dr_mode = "otg";
2324*4e72b326SXuhui Lin		phys = <&usb2phy_otg>, <&usb3phy PHY_TYPE_USB3>;
2325*4e72b326SXuhui Lin		phy-names = "usb2-phy", "usb3-phy";
2326*4e72b326SXuhui Lin		phy_type = "utmi_wide";
2327*4e72b326SXuhui Lin		snps,dis_enblslpm_quirk;
2328*4e72b326SXuhui Lin		snps,dis-u1-entry-quirk;
2329*4e72b326SXuhui Lin		snps,dis-u2-entry-quirk;
2330*4e72b326SXuhui Lin		snps,dis-u2-freeclk-exists-quirk;
2331*4e72b326SXuhui Lin		snps,dis-del-phy-power-chg-quirk;
2332*4e72b326SXuhui Lin		snps,dis-tx-ipgap-linecheck-quirk;
2333*4e72b326SXuhui Lin		snps,dis_rxdet_inp3_quirk;
2334*4e72b326SXuhui Lin		snps,parkmode-disable-hs-quirk;
2335*4e72b326SXuhui Lin		snps,parkmode-disable-ss-quirk;
2336*4e72b326SXuhui Lin		status = "disabled";
2337*4e72b326SXuhui Lin	};
2338*4e72b326SXuhui Lin
2339*4e72b326SXuhui Lin	dfi: dfi@21620000 {
2340*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-dfi";
2341*4e72b326SXuhui Lin		reg = <0x21620000 0x10000>;
2342*4e72b326SXuhui Lin		rockchip,pmugrf = <&grf>;
2343*4e72b326SXuhui Lin		status = "disabled";
2344*4e72b326SXuhui Lin	};
2345*4e72b326SXuhui Lin
2346*4e72b326SXuhui Lin	mipi0_csi2_hw: mipi0-csi2-hw@21c00000 {
2347*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-mipi-csi2-hw";
2348*4e72b326SXuhui Lin		reg = <0x21c00000 0x10000>;
2349*4e72b326SXuhui Lin		reg-names = "csihost_regs";
2350*4e72b326SXuhui Lin		interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>,
2351*4e72b326SXuhui Lin			     <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>;
2352*4e72b326SXuhui Lin		interrupt-names = "csi-intr1", "csi-intr2";
2353*4e72b326SXuhui Lin		clocks = <&cru PCLK_CSI2HOST0>, <&cru DCLK_CSI2HOST0>;
2354*4e72b326SXuhui Lin		clock-names = "pclk_csi2host", "dclk_csi2host";
2355*4e72b326SXuhui Lin		resets = <&cru SRST_PRESETN_CSI2HOST0>;
2356*4e72b326SXuhui Lin		reset-names = "srst_csihost_p";
2357*4e72b326SXuhui Lin		status = "okay";
2358*4e72b326SXuhui Lin	};
2359*4e72b326SXuhui Lin
2360*4e72b326SXuhui Lin	mipi1_csi2_hw: mipi1-csi2-hw@21c10000 {
2361*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-mipi-csi2-hw";
2362*4e72b326SXuhui Lin		reg = <0x21c10000 0x10000>;
2363*4e72b326SXuhui Lin		reg-names = "csihost_regs";
2364*4e72b326SXuhui Lin		interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>,
2365*4e72b326SXuhui Lin			     <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
2366*4e72b326SXuhui Lin		interrupt-names = "csi-intr1", "csi-intr2";
2367*4e72b326SXuhui Lin		clocks = <&cru PCLK_CSI2HOST1>, <&cru DCLK_CSI2HOST1>;
2368*4e72b326SXuhui Lin		clock-names = "pclk_csi2host", "dclk_csi2host";
2369*4e72b326SXuhui Lin		resets = <&cru SRST_PRESETN_CSI2HOST1>;
2370*4e72b326SXuhui Lin		reset-names = "srst_csihost_p";
2371*4e72b326SXuhui Lin		status = "okay";
2372*4e72b326SXuhui Lin	};
2373*4e72b326SXuhui Lin
2374*4e72b326SXuhui Lin	mipi2_csi2_hw: mipi2-csi2-hw@21c20000 {
2375*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-mipi-csi2-hw";
2376*4e72b326SXuhui Lin		reg = <0x21c20000 0x10000>;
2377*4e72b326SXuhui Lin		reg-names = "csihost_regs";
2378*4e72b326SXuhui Lin		interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>,
2379*4e72b326SXuhui Lin			     <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>;
2380*4e72b326SXuhui Lin		interrupt-names = "csi-intr1", "csi-intr2";
2381*4e72b326SXuhui Lin		clocks = <&cru PCLK_CSI2HOST2>, <&cru DCLK_CSI2HOST2>;
2382*4e72b326SXuhui Lin		clock-names = "pclk_csi2host", "dclk_csi2host";
2383*4e72b326SXuhui Lin		resets = <&cru SRST_PRESETN_CSI2HOST2>;
2384*4e72b326SXuhui Lin		reset-names = "srst_csihost_p";
2385*4e72b326SXuhui Lin		status = "okay";
2386*4e72b326SXuhui Lin	};
2387*4e72b326SXuhui Lin
2388*4e72b326SXuhui Lin	mipi3_csi2_hw: mipi3-csi2-hw@21c30000 {
2389*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-mipi-csi2-hw";
2390*4e72b326SXuhui Lin		reg = <0x21c30000 0x10000>;
2391*4e72b326SXuhui Lin		reg-names = "csihost_regs";
2392*4e72b326SXuhui Lin		interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>,
2393*4e72b326SXuhui Lin			     <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>;
2394*4e72b326SXuhui Lin		interrupt-names = "csi-intr1", "csi-intr2";
2395*4e72b326SXuhui Lin		clocks = <&cru PCLK_CSI2HOST3>, <&cru DCLK_CSI2HOST3>;
2396*4e72b326SXuhui Lin		clock-names = "pclk_csi2host", "dclk_csi2host";
2397*4e72b326SXuhui Lin		resets = <&cru SRST_PRESETN_CSI2HOST3>;
2398*4e72b326SXuhui Lin		reset-names = "srst_csihost_p";
2399*4e72b326SXuhui Lin		status = "okay";
2400*4e72b326SXuhui Lin	};
2401*4e72b326SXuhui Lin
2402*4e72b326SXuhui Lin	csi2_dphy0_hw: csi2-dphy0-hw@21c40000 {
2403*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-csi2-dphy-hw";
2404*4e72b326SXuhui Lin		reg = <0x21c40000 0x10000>;
2405*4e72b326SXuhui Lin		clocks = <&cru PCLK_CSIPHY0>;
2406*4e72b326SXuhui Lin		clock-names = "pclk";
2407*4e72b326SXuhui Lin		resets = <&cru SRST_PRESETN_CSIPHY0>;
2408*4e72b326SXuhui Lin		reset-names = "srst_p_csiphy0";
2409*4e72b326SXuhui Lin		rockchip,grf = <&grf>;
2410*4e72b326SXuhui Lin		status = "okay";
2411*4e72b326SXuhui Lin	};
2412*4e72b326SXuhui Lin
2413*4e72b326SXuhui Lin	csi2_dphy1_hw: csi2-dphy1-hw@21c50000 {
2414*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-csi2-dphy-hw";
2415*4e72b326SXuhui Lin		reg = <0x21c50000 0x10000>;
2416*4e72b326SXuhui Lin		clocks = <&cru PCLK_CSIPHY1>;
2417*4e72b326SXuhui Lin		clock-names = "pclk";
2418*4e72b326SXuhui Lin		resets = <&cru SRST_PRESETN_CSIPHY1>;
2419*4e72b326SXuhui Lin		reset-names = "srst_p_csiphy1";
2420*4e72b326SXuhui Lin		rockchip,grf = <&grf>;
2421*4e72b326SXuhui Lin		status = "okay";
2422*4e72b326SXuhui Lin	};
2423*4e72b326SXuhui Lin
2424*4e72b326SXuhui Lin	gmac: ethernet@21c70000 {
2425*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-gmac", "snps,dwmac-4.20a";
2426*4e72b326SXuhui Lin		reg = <0x21c70000 0x10000>;
2427*4e72b326SXuhui Lin		interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>,
2428*4e72b326SXuhui Lin			     <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>;
2429*4e72b326SXuhui Lin		interrupt-names = "macirq", "eth_wake_irq";
2430*4e72b326SXuhui Lin		rockchip,grf = <&grf>;
2431*4e72b326SXuhui Lin		rockchip,php_grf = <&ioc_grf>;
2432*4e72b326SXuhui Lin		clocks = <&cru CLK_GMAC_125M>, <&cru CLK_50M_GMAC_IOBUF_VI>,
2433*4e72b326SXuhui Lin			 <&cru PCLK_GMAC>, <&cru ACLK_GMAC>,
2434*4e72b326SXuhui Lin			 <&cru CLK_GMAC_PTP_REF>;
2435*4e72b326SXuhui Lin		clock-names = "stmmaceth", "clk_mac_ref",
2436*4e72b326SXuhui Lin			      "pclk_mac", "aclk_mac",
2437*4e72b326SXuhui Lin			      "ptp_ref";
2438*4e72b326SXuhui Lin		resets = <&cru SRST_ARESETN_GMAC>;
2439*4e72b326SXuhui Lin		reset-names = "stmmaceth";
2440*4e72b326SXuhui Lin
2441*4e72b326SXuhui Lin		snps,mixed-burst;
2442*4e72b326SXuhui Lin		snps,tso;
2443*4e72b326SXuhui Lin
2444*4e72b326SXuhui Lin		snps,axi-config = <&gmac0_stmmac_axi_setup>;
2445*4e72b326SXuhui Lin		snps,mtl-rx-config = <&gmac0_mtl_rx_setup>;
2446*4e72b326SXuhui Lin		snps,mtl-tx-config = <&gmac0_mtl_tx_setup>;
2447*4e72b326SXuhui Lin		status = "disabled";
2448*4e72b326SXuhui Lin
2449*4e72b326SXuhui Lin		mdio: mdio {
2450*4e72b326SXuhui Lin			compatible = "snps,dwmac-mdio";
2451*4e72b326SXuhui Lin			#address-cells = <0x1>;
2452*4e72b326SXuhui Lin			#size-cells = <0x0>;
2453*4e72b326SXuhui Lin		};
2454*4e72b326SXuhui Lin
2455*4e72b326SXuhui Lin		gmac0_stmmac_axi_setup: stmmac-axi-config {
2456*4e72b326SXuhui Lin			snps,wr_osr_lmt = <4>;
2457*4e72b326SXuhui Lin			snps,rd_osr_lmt = <8>;
2458*4e72b326SXuhui Lin			snps,blen = <0 0 0 0 16 8 4>;
2459*4e72b326SXuhui Lin		};
2460*4e72b326SXuhui Lin
2461*4e72b326SXuhui Lin		gmac0_mtl_rx_setup: rx-queues-config {
2462*4e72b326SXuhui Lin			snps,rx-queues-to-use = <1>;
2463*4e72b326SXuhui Lin			queue0 {
2464*4e72b326SXuhui Lin				status = "okay";
2465*4e72b326SXuhui Lin			};
2466*4e72b326SXuhui Lin		};
2467*4e72b326SXuhui Lin
2468*4e72b326SXuhui Lin		gmac0_mtl_tx_setup: tx-queues-config {
2469*4e72b326SXuhui Lin			snps,tx-queues-to-use = <1>;
2470*4e72b326SXuhui Lin			queue0 {
2471*4e72b326SXuhui Lin				status = "okay";
2472*4e72b326SXuhui Lin			};
2473*4e72b326SXuhui Lin		};
2474*4e72b326SXuhui Lin	};
2475*4e72b326SXuhui Lin
2476*4e72b326SXuhui Lin	dsmc: dsmc@21ca0000 {
2477*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-dsmc", "rockchip,rk3506-dsmc";
2478*4e72b326SXuhui Lin		reg = <0x21ca0000 0x10000>;
2479*4e72b326SXuhui Lin		rockchip,grf = <&grf>;
2480*4e72b326SXuhui Lin		interrupts = <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>;
2481*4e72b326SXuhui Lin		resets = <&cru SRST_ARESETN_DSMC>, <&cru SRST_PRESETN_DSMC>;
2482*4e72b326SXuhui Lin		reset-names = "dsmc", "apb";
2483*4e72b326SXuhui Lin		clocks = <&cru CLK_SYS_DSMC_ROOT>,
2484*4e72b326SXuhui Lin			 <&cru ACLK_DSMC>,
2485*4e72b326SXuhui Lin			 <&cru PCLK_DSMC>,
2486*4e72b326SXuhui Lin			 <&cru CLK_SYS_DSMC_ROOT>;
2487*4e72b326SXuhui Lin		clock-names = "clk_sys", "aclk_dsmc", "pclk", "aclk_root";
2488*4e72b326SXuhui Lin		clock-frequency = <100000000>;
2489*4e72b326SXuhui Lin		dmas = <&dmac 46>, <&dmac 47>;
2490*4e72b326SXuhui Lin		dma-names = "req0", "req1";
2491*4e72b326SXuhui Lin		pinctrl-names = "default", "active", "lb-slave";
2492*4e72b326SXuhui Lin		pinctrl-0 = <&dsmc_csn_idle
2493*4e72b326SXuhui Lin			     &dsmc_bus16_pins
2494*4e72b326SXuhui Lin			     &dsmc_clk_pins>;
2495*4e72b326SXuhui Lin		pinctrl-1 = <&dsmc_csn_pins>;
2496*4e72b326SXuhui Lin		pinctrl-2 = <&dsmc_int_pins>;
2497*4e72b326SXuhui Lin		status = "disabled";
2498*4e72b326SXuhui Lin		slave {
2499*4e72b326SXuhui Lin			rockchip,dqs-dll = <0x20 0x20
2500*4e72b326SXuhui Lin					    0x20 0x20
2501*4e72b326SXuhui Lin					    0x20 0x20
2502*4e72b326SXuhui Lin					    0x20 0x20>;
2503*4e72b326SXuhui Lin			rockchip,ranges = <0x0 0x10000000 0x0 0x2000000>;
2504*4e72b326SXuhui Lin			rockchip,slave-dev = <&dsmc_slave>;
2505*4e72b326SXuhui Lin		};
2506*4e72b326SXuhui Lin	};
2507*4e72b326SXuhui Lin
2508*4e72b326SXuhui Lin	dsmc_slave: dsmc-slave {
2509*4e72b326SXuhui Lin		compatible = "rockchip,dsmc-slave";
2510*4e72b326SXuhui Lin		rockchip,clk-mode = <0>;
2511*4e72b326SXuhui Lin		status = "disabled";
2512*4e72b326SXuhui Lin		psram {
2513*4e72b326SXuhui Lin			dsmc_psram0: psram0 {
2514*4e72b326SXuhui Lin				status = "disabled";
2515*4e72b326SXuhui Lin			};
2516*4e72b326SXuhui Lin			dsmc_psram1: psram1 {
2517*4e72b326SXuhui Lin				status = "disabled";
2518*4e72b326SXuhui Lin			};
2519*4e72b326SXuhui Lin			dsmc_psram2: psram2 {
2520*4e72b326SXuhui Lin				status = "disabled";
2521*4e72b326SXuhui Lin			};
2522*4e72b326SXuhui Lin			dsmc_psram3: psram3 {
2523*4e72b326SXuhui Lin				status = "disabled";
2524*4e72b326SXuhui Lin			};
2525*4e72b326SXuhui Lin		};
2526*4e72b326SXuhui Lin
2527*4e72b326SXuhui Lin		lb-slave {
2528*4e72b326SXuhui Lin			dsmc_lb_slave0: lb-slave0 {
2529*4e72b326SXuhui Lin				rockchip,mtr-timing = <1 0 0 0 0 0 2 2>;
2530*4e72b326SXuhui Lin				rockchip,int-en = <0x0>;
2531*4e72b326SXuhui Lin				status = "disabled";
2532*4e72b326SXuhui Lin				dsmc_p0_region: region {
2533*4e72b326SXuhui Lin					dsmc_p0_region0: region0 {
2534*4e72b326SXuhui Lin						rockchip,attribute = "Merged FIFO";
2535*4e72b326SXuhui Lin						rockchip,ca-addr-width = <0>;
2536*4e72b326SXuhui Lin						rockchip,dummy-clk-num = <1>;
2537*4e72b326SXuhui Lin						rockchip,cs0-be-ctrled = <0>;
2538*4e72b326SXuhui Lin						rockchip,cs0-ctrl = <0>;
2539*4e72b326SXuhui Lin						status = "disabled";
2540*4e72b326SXuhui Lin					};
2541*4e72b326SXuhui Lin					dsmc_p0_region1: region1 {
2542*4e72b326SXuhui Lin						rockchip,attribute = "No-Merge FIFO";
2543*4e72b326SXuhui Lin						rockchip,ca-addr-width = <0>;
2544*4e72b326SXuhui Lin						rockchip,dummy-clk-num = <1>;
2545*4e72b326SXuhui Lin						rockchip,cs0-be-ctrled = <0>;
2546*4e72b326SXuhui Lin						rockchip,cs0-ctrl = <0>;
2547*4e72b326SXuhui Lin						status = "disabled";
2548*4e72b326SXuhui Lin					};
2549*4e72b326SXuhui Lin					dsmc_p0_region2: region2 {
2550*4e72b326SXuhui Lin						rockchip,attribute = "DPRA";
2551*4e72b326SXuhui Lin						rockchip,ca-addr-width = <0>;
2552*4e72b326SXuhui Lin						rockchip,dummy-clk-num = <1>;
2553*4e72b326SXuhui Lin						rockchip,cs0-be-ctrled = <0>;
2554*4e72b326SXuhui Lin						rockchip,cs0-ctrl = <0>;
2555*4e72b326SXuhui Lin						status = "disabled";
2556*4e72b326SXuhui Lin					};
2557*4e72b326SXuhui Lin					dsmc_p0_region3: region3 {
2558*4e72b326SXuhui Lin						rockchip,attribute = "Register";
2559*4e72b326SXuhui Lin						rockchip,ca-addr-width = <0>;
2560*4e72b326SXuhui Lin						rockchip,dummy-clk-num = <1>;
2561*4e72b326SXuhui Lin						rockchip,cs0-be-ctrled = <0>;
2562*4e72b326SXuhui Lin						rockchip,cs0-ctrl = <0>;
2563*4e72b326SXuhui Lin						status = "disabled";
2564*4e72b326SXuhui Lin					};
2565*4e72b326SXuhui Lin				};
2566*4e72b326SXuhui Lin			};
2567*4e72b326SXuhui Lin			dsmc_lb_slave1: lb-slave1 {
2568*4e72b326SXuhui Lin				rockchip,mtr-timing = <1 0 0 0 0 0 2 2>;
2569*4e72b326SXuhui Lin				rockchip,int-en = <0x1>;
2570*4e72b326SXuhui Lin				status = "disabled";
2571*4e72b326SXuhui Lin				dsmc_p1_region: region {
2572*4e72b326SXuhui Lin					dsmc_p1_region0: region0 {
2573*4e72b326SXuhui Lin						rockchip,attribute = "Merged FIFO";
2574*4e72b326SXuhui Lin						rockchip,ca-addr-width = <0>;
2575*4e72b326SXuhui Lin						rockchip,dummy-clk-num = <1>;
2576*4e72b326SXuhui Lin						rockchip,cs0-be-ctrled = <0>;
2577*4e72b326SXuhui Lin						rockchip,cs0-ctrl = <0>;
2578*4e72b326SXuhui Lin						status = "disabled";
2579*4e72b326SXuhui Lin					};
2580*4e72b326SXuhui Lin					dsmc_p1_region1: region1 {
2581*4e72b326SXuhui Lin						rockchip,attribute = "No-Merge FIFO";
2582*4e72b326SXuhui Lin						rockchip,ca-addr-width = <0>;
2583*4e72b326SXuhui Lin						rockchip,dummy-clk-num = <1>;
2584*4e72b326SXuhui Lin						rockchip,cs0-be-ctrled = <0>;
2585*4e72b326SXuhui Lin						rockchip,cs0-ctrl = <0>;
2586*4e72b326SXuhui Lin						status = "disabled";
2587*4e72b326SXuhui Lin					};
2588*4e72b326SXuhui Lin					dsmc_p1_region2: region2 {
2589*4e72b326SXuhui Lin						rockchip,attribute = "DPRA";
2590*4e72b326SXuhui Lin						rockchip,ca-addr-width = <0>;
2591*4e72b326SXuhui Lin						rockchip,dummy-clk-num = <1>;
2592*4e72b326SXuhui Lin						rockchip,cs0-be-ctrled = <0>;
2593*4e72b326SXuhui Lin						rockchip,cs0-ctrl = <0>;
2594*4e72b326SXuhui Lin						status = "disabled";
2595*4e72b326SXuhui Lin					};
2596*4e72b326SXuhui Lin					dsmc_p1_region3: region3 {
2597*4e72b326SXuhui Lin						rockchip,attribute = "Register";
2598*4e72b326SXuhui Lin						rockchip,ca-addr-width = <0>;
2599*4e72b326SXuhui Lin						rockchip,dummy-clk-num = <1>;
2600*4e72b326SXuhui Lin						rockchip,cs0-be-ctrled = <0>;
2601*4e72b326SXuhui Lin						rockchip,cs0-ctrl = <0>;
2602*4e72b326SXuhui Lin						status = "disabled";
2603*4e72b326SXuhui Lin					};
2604*4e72b326SXuhui Lin				};
2605*4e72b326SXuhui Lin			};
2606*4e72b326SXuhui Lin			dsmc_lb_slave2: lb-slave2 {
2607*4e72b326SXuhui Lin				rockchip,mtr-timing = <1 0 0 0 0 0 2 2>;
2608*4e72b326SXuhui Lin				rockchip,int-en = <0x2>;
2609*4e72b326SXuhui Lin				status = "disabled";
2610*4e72b326SXuhui Lin				dsmc_p2_region: region {
2611*4e72b326SXuhui Lin					dsmc_p2_region0: region0 {
2612*4e72b326SXuhui Lin						rockchip,attribute = "Merged FIFO";
2613*4e72b326SXuhui Lin						rockchip,ca-addr-width = <0>;
2614*4e72b326SXuhui Lin						rockchip,dummy-clk-num = <1>;
2615*4e72b326SXuhui Lin						rockchip,cs0-be-ctrled = <0>;
2616*4e72b326SXuhui Lin						rockchip,cs0-ctrl = <0>;
2617*4e72b326SXuhui Lin						status = "disabled";
2618*4e72b326SXuhui Lin					};
2619*4e72b326SXuhui Lin					dsmc_p2_region1: region1 {
2620*4e72b326SXuhui Lin						rockchip,attribute = "No-Merge FIFO";
2621*4e72b326SXuhui Lin						rockchip,ca-addr-width = <0>;
2622*4e72b326SXuhui Lin						rockchip,dummy-clk-num = <1>;
2623*4e72b326SXuhui Lin						rockchip,cs0-be-ctrled = <0>;
2624*4e72b326SXuhui Lin						rockchip,cs0-ctrl = <0>;
2625*4e72b326SXuhui Lin						status = "disabled";
2626*4e72b326SXuhui Lin					};
2627*4e72b326SXuhui Lin					dsmc_p2_region2: region2 {
2628*4e72b326SXuhui Lin						rockchip,attribute = "DPRA";
2629*4e72b326SXuhui Lin						rockchip,ca-addr-width = <0>;
2630*4e72b326SXuhui Lin						rockchip,dummy-clk-num = <1>;
2631*4e72b326SXuhui Lin						rockchip,cs0-be-ctrled = <0>;
2632*4e72b326SXuhui Lin						rockchip,cs0-ctrl = <0>;
2633*4e72b326SXuhui Lin						status = "disabled";
2634*4e72b326SXuhui Lin					};
2635*4e72b326SXuhui Lin					dsmc_p2_region3: region3 {
2636*4e72b326SXuhui Lin						rockchip,attribute = "Register";
2637*4e72b326SXuhui Lin						rockchip,ca-addr-width = <0>;
2638*4e72b326SXuhui Lin						rockchip,dummy-clk-num = <1>;
2639*4e72b326SXuhui Lin						rockchip,cs0-be-ctrled = <0>;
2640*4e72b326SXuhui Lin						rockchip,cs0-ctrl = <0>;
2641*4e72b326SXuhui Lin						status = "disabled";
2642*4e72b326SXuhui Lin					};
2643*4e72b326SXuhui Lin				};
2644*4e72b326SXuhui Lin			};
2645*4e72b326SXuhui Lin			dsmc_lb_slave3: lb-slave3 {
2646*4e72b326SXuhui Lin				rockchip,mtr-timing = <1 0 0 0 0 0 2 2>;
2647*4e72b326SXuhui Lin				rockchip,int-en = <0x3>;
2648*4e72b326SXuhui Lin				status = "disabled";
2649*4e72b326SXuhui Lin				dsmc_p3_region: region {
2650*4e72b326SXuhui Lin					dsmc_p3_region0: region0 {
2651*4e72b326SXuhui Lin						rockchip,attribute = "Merged FIFO";
2652*4e72b326SXuhui Lin						rockchip,ca-addr-width = <0>;
2653*4e72b326SXuhui Lin						rockchip,dummy-clk-num = <1>;
2654*4e72b326SXuhui Lin						rockchip,cs0-be-ctrled = <0>;
2655*4e72b326SXuhui Lin						rockchip,cs0-ctrl = <0>;
2656*4e72b326SXuhui Lin						status = "disabled";
2657*4e72b326SXuhui Lin					};
2658*4e72b326SXuhui Lin					dsmc_p3_region1: region1 {
2659*4e72b326SXuhui Lin						rockchip,attribute = "No-Merge FIFO";
2660*4e72b326SXuhui Lin						rockchip,ca-addr-width = <0>;
2661*4e72b326SXuhui Lin						rockchip,dummy-clk-num = <1>;
2662*4e72b326SXuhui Lin						rockchip,cs0-be-ctrled = <0>;
2663*4e72b326SXuhui Lin						rockchip,cs0-ctrl = <0>;
2664*4e72b326SXuhui Lin						status = "disabled";
2665*4e72b326SXuhui Lin					};
2666*4e72b326SXuhui Lin					dsmc_p3_region2: region2 {
2667*4e72b326SXuhui Lin						rockchip,attribute = "DPRA";
2668*4e72b326SXuhui Lin						rockchip,ca-addr-width = <0>;
2669*4e72b326SXuhui Lin						rockchip,dummy-clk-num = <1>;
2670*4e72b326SXuhui Lin						rockchip,cs0-be-ctrled = <0>;
2671*4e72b326SXuhui Lin						rockchip,cs0-ctrl = <0>;
2672*4e72b326SXuhui Lin						status = "disabled";
2673*4e72b326SXuhui Lin					};
2674*4e72b326SXuhui Lin					dsmc_p3_region3: region3 {
2675*4e72b326SXuhui Lin						rockchip,attribute = "Register";
2676*4e72b326SXuhui Lin						rockchip,ca-addr-width = <0>;
2677*4e72b326SXuhui Lin						rockchip,dummy-clk-num = <1>;
2678*4e72b326SXuhui Lin						rockchip,cs0-be-ctrled = <0>;
2679*4e72b326SXuhui Lin						rockchip,cs0-ctrl = <0>;
2680*4e72b326SXuhui Lin						status = "disabled";
2681*4e72b326SXuhui Lin					};
2682*4e72b326SXuhui Lin				};
2683*4e72b326SXuhui Lin			};
2684*4e72b326SXuhui Lin		};
2685*4e72b326SXuhui Lin	};
2686*4e72b326SXuhui Lin
2687*4e72b326SXuhui Lin	saradc1: saradc@21cb0000 {
2688*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-saradc";
2689*4e72b326SXuhui Lin		reg = <0x21cb0000 0x10000>;
2690*4e72b326SXuhui Lin		interrupts = <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>;
2691*4e72b326SXuhui Lin		#io-channel-cells = <1>;
2692*4e72b326SXuhui Lin		clocks = <&cru CLK_SARADC1>, <&cru PCLK_SARADC1>;
2693*4e72b326SXuhui Lin		clock-names = "saradc", "apb_pclk";
2694*4e72b326SXuhui Lin		resets = <&cru SRST_PRESETN_SARADC1>;
2695*4e72b326SXuhui Lin		reset-names = "saradc-apb";
2696*4e72b326SXuhui Lin		status = "disabled";
2697*4e72b326SXuhui Lin	};
2698*4e72b326SXuhui Lin
2699*4e72b326SXuhui Lin	saradc2: saradc@21cc0000 {
2700*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-saradc";
2701*4e72b326SXuhui Lin		reg = <0x21cc0000 0x10000>;
2702*4e72b326SXuhui Lin		interrupts = <GIC_SPI 213 IRQ_TYPE_LEVEL_HIGH>;
2703*4e72b326SXuhui Lin		#io-channel-cells = <1>;
2704*4e72b326SXuhui Lin		clocks = <&cru CLK_SARADC2>, <&cru PCLK_SARADC2>;
2705*4e72b326SXuhui Lin		clock-names = "saradc", "apb_pclk";
2706*4e72b326SXuhui Lin		resets = <&cru SRST_PRESETN_SARADC2>;
2707*4e72b326SXuhui Lin		reset-names = "saradc-apb";
2708*4e72b326SXuhui Lin		status = "disabled";
2709*4e72b326SXuhui Lin	};
2710*4e72b326SXuhui Lin
2711*4e72b326SXuhui Lin	rkisp: isp@21d00000 {
2712*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-rkisp";
2713*4e72b326SXuhui Lin		reg = <0x21d00000 0x7f00>, <0x21d30000 0x2f00>;
2714*4e72b326SXuhui Lin		interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>,
2715*4e72b326SXuhui Lin			     <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>,
2716*4e72b326SXuhui Lin			     <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>,
2717*4e72b326SXuhui Lin			     <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>,
2718*4e72b326SXuhui Lin			     <GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>;
2719*4e72b326SXuhui Lin		interrupt-names = "isp_mipi_irq", "isp_mi_irq", "isp_irq",
2720*4e72b326SXuhui Lin				  "vpsl_mi_irq", "vpsl_irq";
2721*4e72b326SXuhui Lin		clocks = <&cru HCLK_ISP>, <&cru ACLK_ISP>,
2722*4e72b326SXuhui Lin			 <&cru CLK_CORE_ISP>, <&cru ISP0CLK_VICAP>,
2723*4e72b326SXuhui Lin			 <&cru HCLK_VPSL>, <&cru ACLK_VPSL>, <&cru CLK_CORE_VPSL>;
2724*4e72b326SXuhui Lin		clock-names = "hclk_isp", "aclk_isp",
2725*4e72b326SXuhui Lin			      "clk_isp_core", "clk_isp_vicap",
2726*4e72b326SXuhui Lin			      "hclk_vpsl", "aclk_vpsl", "clk_core_vpsl";
2727*4e72b326SXuhui Lin		iommus = <&rkisp_mmu>;
2728*4e72b326SXuhui Lin		status = "disabled";
2729*4e72b326SXuhui Lin	};
2730*4e72b326SXuhui Lin
2731*4e72b326SXuhui Lin	rkisp_mmu: iommu@21d07f00 {
2732*4e72b326SXuhui Lin		compatible = "rockchip,iommu-v2";
2733*4e72b326SXuhui Lin		reg = <0x21d07f00 0x100>, <0x21d32f00 0x100>;
2734*4e72b326SXuhui Lin		interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>;
2735*4e72b326SXuhui Lin		interrupt-names = "isp_mmu", "vpsl_mmu";
2736*4e72b326SXuhui Lin		clocks = <&cru ACLK_ISP>, <&cru HCLK_ISP>,
2737*4e72b326SXuhui Lin			 <&cru ACLK_VPSL>, <&cru HCLK_VPSL>;
2738*4e72b326SXuhui Lin		clock-names = "aclk0", "iface0", "aclk1", "iface1";
2739*4e72b326SXuhui Lin		#iommu-cells = <0>;
2740*4e72b326SXuhui Lin		rockchip,disable-mmu-reset;
2741*4e72b326SXuhui Lin		status = "disabled";
2742*4e72b326SXuhui Lin	};
2743*4e72b326SXuhui Lin
2744*4e72b326SXuhui Lin	rkcif: rkcif@21d10000 {
2745*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-cif";
2746*4e72b326SXuhui Lin		reg = <0x21d10000 0x1000>;
2747*4e72b326SXuhui Lin		reg-names = "cif_regs";
2748*4e72b326SXuhui Lin		interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>;
2749*4e72b326SXuhui Lin		interrupt-names = "cif-intr";
2750*4e72b326SXuhui Lin		clocks = <&cru ACLK_VICAP>, <&cru HCLK_VICAP>,
2751*4e72b326SXuhui Lin			 <&cru DCLK_VICAP>, <&cru ISP0CLK_VICAP>;
2752*4e72b326SXuhui Lin		clock-names = "aclk_cif", "hclk_cif",
2753*4e72b326SXuhui Lin			      "dclk_cif", "isp0clk_cif";
2754*4e72b326SXuhui Lin		resets = <&cru SRST_ARESETN_VICAP>, <&cru SRST_HRESETN_VICAP>,
2755*4e72b326SXuhui Lin			 <&cru SRST_DRESETN_VICAP>, <&cru SRST_ISP0RESETN_VICAP>;
2756*4e72b326SXuhui Lin		reset-names = "rst_cif_a", "rst_cif_h",
2757*4e72b326SXuhui Lin			      "rst_cif_d", "rst_cif_isp0";
2758*4e72b326SXuhui Lin		rockchip,grf = <&grf>;
2759*4e72b326SXuhui Lin		iommus = <&rkcif_mmu>;
2760*4e72b326SXuhui Lin		status = "disabled";
2761*4e72b326SXuhui Lin	};
2762*4e72b326SXuhui Lin
2763*4e72b326SXuhui Lin	rkcif_mmu: iommu@21d10f00 {
2764*4e72b326SXuhui Lin		compatible = "rockchip,iommu-v2";
2765*4e72b326SXuhui Lin		reg = <0x21d10f00 0x100>;
2766*4e72b326SXuhui Lin		interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
2767*4e72b326SXuhui Lin		interrupt-names = "cif_mmu";
2768*4e72b326SXuhui Lin		clocks = <&cru ACLK_VICAP>, <&cru HCLK_VICAP>;
2769*4e72b326SXuhui Lin		clock-names = "aclk", "iface";
2770*4e72b326SXuhui Lin		rockchip,disable-mmu-reset;
2771*4e72b326SXuhui Lin		#iommu-cells = <0>;
2772*4e72b326SXuhui Lin		status = "disabled";
2773*4e72b326SXuhui Lin	};
2774*4e72b326SXuhui Lin
2775*4e72b326SXuhui Lin	rkvpss: vpss@21d20000 {
2776*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-rkvpss";
2777*4e72b326SXuhui Lin		reg = <0x21d20000 0x3f00>;
2778*4e72b326SXuhui Lin		interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>,
2779*4e72b326SXuhui Lin			     <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>;
2780*4e72b326SXuhui Lin		interrupt-names = "mi_irq", "vpss_irq";
2781*4e72b326SXuhui Lin		clocks = <&cru ACLK_VPSS>, <&cru HCLK_VPSS>,
2782*4e72b326SXuhui Lin			 <&cru CLK_CORE_VPSS>;
2783*4e72b326SXuhui Lin		clock-names = "aclk_vpss", "hclk_vpss", "clk_vpss";
2784*4e72b326SXuhui Lin		iommus = <&rkvpss_mmu>;
2785*4e72b326SXuhui Lin		status = "disabled";
2786*4e72b326SXuhui Lin	};
2787*4e72b326SXuhui Lin
2788*4e72b326SXuhui Lin	rkvpss_mmu: iommu@21d23f00 {
2789*4e72b326SXuhui Lin		compatible = "rockchip,iommu-v2";
2790*4e72b326SXuhui Lin		reg = <0x21d23f00 0x100>;
2791*4e72b326SXuhui Lin		interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>;
2792*4e72b326SXuhui Lin		interrupt-names = "vpss_mmu";
2793*4e72b326SXuhui Lin		clocks = <&cru ACLK_VPSS>, <&cru HCLK_VPSS>;
2794*4e72b326SXuhui Lin		clock-names = "aclk", "iface";
2795*4e72b326SXuhui Lin		#iommu-cells = <0>;
2796*4e72b326SXuhui Lin		rockchip,disable-mmu-reset;
2797*4e72b326SXuhui Lin		status = "disabled";
2798*4e72b326SXuhui Lin	};
2799*4e72b326SXuhui Lin
2800*4e72b326SXuhui Lin	can0: can@21d40000 {
2801*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-canfd";
2802*4e72b326SXuhui Lin		reg = <0x21d40000 0x1000>;
2803*4e72b326SXuhui Lin		interrupts = <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>;
2804*4e72b326SXuhui Lin		clocks = <&cru CLK_CAN0>, <&cru HCLK_CAN0>;
2805*4e72b326SXuhui Lin		clock-names = "baudclk", "apb_pclk";
2806*4e72b326SXuhui Lin		resets = <&cru SRST_RESETN_CAN0>, <&cru SRST_HRESETN_CAN0>;
2807*4e72b326SXuhui Lin		reset-names = "can", "can-apb";
2808*4e72b326SXuhui Lin		dmas = <&dmac 44>;
2809*4e72b326SXuhui Lin		dma-names = "rx";
2810*4e72b326SXuhui Lin		status = "disabled";
2811*4e72b326SXuhui Lin	};
2812*4e72b326SXuhui Lin
2813*4e72b326SXuhui Lin	can1: can@21d50000 {
2814*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-canfd";
2815*4e72b326SXuhui Lin		reg = <0x21d50000 0x1000>;
2816*4e72b326SXuhui Lin		interrupts = <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>;
2817*4e72b326SXuhui Lin		clocks = <&cru CLK_CAN1>, <&cru HCLK_CAN1>;
2818*4e72b326SXuhui Lin		clock-names = "baudclk", "apb_pclk";
2819*4e72b326SXuhui Lin		resets = <&cru SRST_RESETN_CAN1>, <&cru SRST_HRESETN_CAN1>;
2820*4e72b326SXuhui Lin		reset-names = "can", "can-apb";
2821*4e72b326SXuhui Lin		dmas = <&dmac 45>;
2822*4e72b326SXuhui Lin		dma-names = "rx";
2823*4e72b326SXuhui Lin		status = "disabled";
2824*4e72b326SXuhui Lin	};
2825*4e72b326SXuhui Lin
2826*4e72b326SXuhui Lin	sdmmc0: mmc@21d60000 {
2827*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-dw-mshc", "rockchip,rk3288-dw-mshc";
2828*4e72b326SXuhui Lin		reg = <0x21d60000 0x4000>;
2829*4e72b326SXuhui Lin		interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>;
2830*4e72b326SXuhui Lin		clocks = <&cru HCLK_SDMMC0>, <&cru CCLK_SDMMC0>;
2831*4e72b326SXuhui Lin		clock-names = "biu", "ciu";
2832*4e72b326SXuhui Lin		fifo-depth = <0x100>;
2833*4e72b326SXuhui Lin		max-frequency = <200000000>;
2834*4e72b326SXuhui Lin		pinctrl-names = "normal", "idle";
2835*4e72b326SXuhui Lin		pinctrl-0 = <&sdmmc0_clk_pins &sdmmc0_cmd_pins &sdmmc0_detn_pins &sdmmc0_bus4_pins>;
2836*4e72b326SXuhui Lin		pinctrl-1 = <&sdmmc0_idle_pins &sdmmc0_detn_pins>;
2837*4e72b326SXuhui Lin		status = "disabled";
2838*4e72b326SXuhui Lin	};
2839*4e72b326SXuhui Lin
2840*4e72b326SXuhui Lin	saradc0: saradc@21f10000 {
2841*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-saradc";
2842*4e72b326SXuhui Lin		reg = <0x21f10000 0x10000>;
2843*4e72b326SXuhui Lin		interrupts = <GIC_SPI 211 IRQ_TYPE_LEVEL_HIGH>;
2844*4e72b326SXuhui Lin		#io-channel-cells = <1>;
2845*4e72b326SXuhui Lin		clocks = <&cru CLK_SARADC0>, <&cru PCLK_SARADC0>;
2846*4e72b326SXuhui Lin		clock-names = "saradc", "apb_pclk";
2847*4e72b326SXuhui Lin		resets = <&cru SRST_PRESETN_SARADC0>;
2848*4e72b326SXuhui Lin		reset-names = "saradc-apb";
2849*4e72b326SXuhui Lin		status = "disabled";
2850*4e72b326SXuhui Lin	};
2851*4e72b326SXuhui Lin
2852*4e72b326SXuhui Lin	rkvenc: rkvenc@21f40000 {
2853*4e72b326SXuhui Lin		compatible = "rockchip,rkv-encoder-rv1126b", "rockchip,rkv-encoder-v2";
2854*4e72b326SXuhui Lin		reg = <0x21f40000 0x6000>;
2855*4e72b326SXuhui Lin		interrupts = <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>;
2856*4e72b326SXuhui Lin		interrupt-names = "irq_rkvenc";
2857*4e72b326SXuhui Lin		clocks = <&cru ACLK_VEPU>, <&cru HCLK_VEPU>, <&cru CLK_CORE_VEPU>;
2858*4e72b326SXuhui Lin		clock-names = "aclk_vcodec", "hclk_vcodec", "clk_core";
2859*4e72b326SXuhui Lin		rockchip,normal-rates = <396000000>, <0>, <396000000>;
2860*4e72b326SXuhui Lin		resets = <&cru SRST_ARESETN_VEPU>, <&cru SRST_HRESETN_VEPU>,
2861*4e72b326SXuhui Lin			 <&cru SRST_RESETN_CORE_VEPU>;
2862*4e72b326SXuhui Lin		reset-names = "video_a", "video_h", "video_core";
2863*4e72b326SXuhui Lin		assigned-clocks = <&cru ACLK_VEPU>, <&cru CLK_CORE_VEPU>;
2864*4e72b326SXuhui Lin		assigned-clock-rates = <396000000>, <396000000>;
2865*4e72b326SXuhui Lin		iommus = <&rkvenc_mmu>;
2866*4e72b326SXuhui Lin		rockchip,srv = <&mpp_srv>;
2867*4e72b326SXuhui Lin		rockchip,taskqueue-node = <0>;
2868*4e72b326SXuhui Lin		rockchip,resetgroup-node = <0>;
2869*4e72b326SXuhui Lin		rockchip,skip-pmu-idle-request;
2870*4e72b326SXuhui Lin		dvbm = <&rkdvbm>;
2871*4e72b326SXuhui Lin		power-domains = <&power RV1126B_PD_VDO>;
2872*4e72b326SXuhui Lin		status = "disabled";
2873*4e72b326SXuhui Lin	};
2874*4e72b326SXuhui Lin
2875*4e72b326SXuhui Lin	rkvenc_mmu: iommu@21f4f000 {
2876*4e72b326SXuhui Lin		compatible = "rockchip,iommu-v2";
2877*4e72b326SXuhui Lin		reg = <0x21f4f000 0x100>;
2878*4e72b326SXuhui Lin		interrupts = <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>;
2879*4e72b326SXuhui Lin		interrupt-names = "rkvenc_mmu";
2880*4e72b326SXuhui Lin		clocks = <&cru ACLK_VEPU>, <&cru HCLK_VEPU>;
2881*4e72b326SXuhui Lin		clock-names = "aclk", "iface";
2882*4e72b326SXuhui Lin		#iommu-cells = <0>;
2883*4e72b326SXuhui Lin		rockchip,shootdown-entire;
2884*4e72b326SXuhui Lin		rockchip,enable-cmd-retry;
2885*4e72b326SXuhui Lin		power-domains = <&power RV1126B_PD_VDO>;
2886*4e72b326SXuhui Lin		status = "disabled";
2887*4e72b326SXuhui Lin	};
2888*4e72b326SXuhui Lin
2889*4e72b326SXuhui Lin	sdmmc1: mmc@21f60000 {
2890*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-dw-mshc", "rockchip,rk3288-dw-mshc";
2891*4e72b326SXuhui Lin		reg = <0x21f60000 0x4000>;
2892*4e72b326SXuhui Lin		interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>;
2893*4e72b326SXuhui Lin		clocks = <&cru HCLK_SDMMC1>, <&cru CCLK_SDMMC1>;
2894*4e72b326SXuhui Lin		clock-names = "biu", "ciu";
2895*4e72b326SXuhui Lin		fifo-depth = <0x100>;
2896*4e72b326SXuhui Lin		max-frequency = <200000000>;
2897*4e72b326SXuhui Lin		pinctrl-names = "default";
2898*4e72b326SXuhui Lin		pinctrl-0 = <&sdmmc1_clk_pins &sdmmc1_cmd_pins &sdmmc1_detn_pins &sdmmc1_bus4_pins>;
2899*4e72b326SXuhui Lin		status = "disabled";
2900*4e72b326SXuhui Lin	};
2901*4e72b326SXuhui Lin
2902*4e72b326SXuhui Lin	rkfec: rkfec@21f80000 {
2903*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-rkfec";
2904*4e72b326SXuhui Lin		reg = <0x21f80000 0xf00>;
2905*4e72b326SXuhui Lin		interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
2906*4e72b326SXuhui Lin		interrupt-names = "fec_irq";
2907*4e72b326SXuhui Lin		clocks = <&cru ACLK_FEC>, <&cru HCLK_FEC>, <&cru CLK_CORE_FEC>;
2908*4e72b326SXuhui Lin		clock-names = "aclk_fec", "hclk_fec", "clk_fec";
2909*4e72b326SXuhui Lin		iommus = <&rkfec_mmu>;
2910*4e72b326SXuhui Lin		status = "disabled";
2911*4e72b326SXuhui Lin	};
2912*4e72b326SXuhui Lin
2913*4e72b326SXuhui Lin	rkfec_mmu: iommu@21f80f00 {
2914*4e72b326SXuhui Lin		compatible = "rockchip,iommu-v2";
2915*4e72b326SXuhui Lin		reg = <0x21f80f00 0x100>;
2916*4e72b326SXuhui Lin		interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
2917*4e72b326SXuhui Lin		interrupt-names = "fec_mmu";
2918*4e72b326SXuhui Lin		clocks = <&cru ACLK_FEC>, <&cru HCLK_FEC>;
2919*4e72b326SXuhui Lin		clock-names = "aclk", "iface";
2920*4e72b326SXuhui Lin		#iommu-cells = <0>;
2921*4e72b326SXuhui Lin		rockchip,disable-mmu-reset;
2922*4e72b326SXuhui Lin		status = "disabled";
2923*4e72b326SXuhui Lin	};
2924*4e72b326SXuhui Lin
2925*4e72b326SXuhui Lin	rkavsp: rkavsp@21f90000 {
2926*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-rkavsp";
2927*4e72b326SXuhui Lin		reg = <0x21f90000 0xf00>;
2928*4e72b326SXuhui Lin		interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
2929*4e72b326SXuhui Lin		interrupt-names = "dcp_irq", "rcs_irq";
2930*4e72b326SXuhui Lin		clocks = <&cru ACLK_AVSP>, <&cru HCLK_AVSP>;
2931*4e72b326SXuhui Lin		clock-names = "aclk_avsp", "hclk_avsp";
2932*4e72b326SXuhui Lin		iommus = <&rkavsp_mmu>;
2933*4e72b326SXuhui Lin		status = "disabled";
2934*4e72b326SXuhui Lin	};
2935*4e72b326SXuhui Lin
2936*4e72b326SXuhui Lin	rkavsp_mmu: iommu@21f90f00 {
2937*4e72b326SXuhui Lin		compatible = "rockchip,iommu-v2";
2938*4e72b326SXuhui Lin		reg = <0x21f90f00 0x100>;
2939*4e72b326SXuhui Lin		interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>;
2940*4e72b326SXuhui Lin		interrupt-names = "avsp_mmu";
2941*4e72b326SXuhui Lin		clocks = <&cru ACLK_AVSP>, <&cru HCLK_AVSP>;
2942*4e72b326SXuhui Lin		clock-names = "aclk", "iface";
2943*4e72b326SXuhui Lin		#iommu-cells = <0>;
2944*4e72b326SXuhui Lin		rockchip,disable-mmu-reset;
2945*4e72b326SXuhui Lin		status = "disabled";
2946*4e72b326SXuhui Lin	};
2947*4e72b326SXuhui Lin
2948*4e72b326SXuhui Lin	rkaiisp: rkaiisp@21fa0000 {
2949*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-rkaiisp";
2950*4e72b326SXuhui Lin		reg = <0x21fa0000 0x3f00>;
2951*4e72b326SXuhui Lin		interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>;
2952*4e72b326SXuhui Lin		interrupt-names = "irq";
2953*4e72b326SXuhui Lin		clocks = <&cru ACLK_AISP>, <&cru HCLK_AISP>,
2954*4e72b326SXuhui Lin			 <&cru CLK_CORE_AISP>;
2955*4e72b326SXuhui Lin		clock-names = "aclk_aiisp", "hclk_aiisp", "clk_aiisp_core";
2956*4e72b326SXuhui Lin		iommus = <&rkaiisp_mmu>;
2957*4e72b326SXuhui Lin		power-domains = <&power RV1126B_PD_AISP>;
2958*4e72b326SXuhui Lin		status = "disabled";
2959*4e72b326SXuhui Lin	};
2960*4e72b326SXuhui Lin
2961*4e72b326SXuhui Lin	rkaiisp_mmu: iommu@21fa3f00 {
2962*4e72b326SXuhui Lin		compatible = "rockchip,iommu-v2";
2963*4e72b326SXuhui Lin		reg = <0x21fa3f00 0x100>;
2964*4e72b326SXuhui Lin		interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>;
2965*4e72b326SXuhui Lin		interrupt-names = "aiisp_mmu";
2966*4e72b326SXuhui Lin		clocks = <&cru ACLK_AISP>, <&cru HCLK_AISP>;
2967*4e72b326SXuhui Lin		clock-names = "aclk", "iface";
2968*4e72b326SXuhui Lin		power-domains = <&power RV1126B_PD_AISP>;
2969*4e72b326SXuhui Lin		rockchip,disable-mmu-reset;
2970*4e72b326SXuhui Lin		#iommu-cells = <0>;
2971*4e72b326SXuhui Lin		status = "disabled";
2972*4e72b326SXuhui Lin	};
2973*4e72b326SXuhui Lin
2974*4e72b326SXuhui Lin	rknpu: npu@22000000 {
2975*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-rknpu";
2976*4e72b326SXuhui Lin		reg = <0x22000000 0x8000>;
2977*4e72b326SXuhui Lin		interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>;
2978*4e72b326SXuhui Lin		interrupt-names = "npu_irq";
2979*4e72b326SXuhui Lin		clocks = <&cru ACLK_RKNN>, <&cru HCLK_RKNN>;
2980*4e72b326SXuhui Lin		clock-names = "aclk", "hclk";
2981*4e72b326SXuhui Lin		assigned-clocks = <&cru ACLK_RKNN>;
2982*4e72b326SXuhui Lin		assigned-clock-rates = <800000000>;
2983*4e72b326SXuhui Lin		operating-points-v2 = <&npu_opp_table>;
2984*4e72b326SXuhui Lin		resets = <&cru SRST_ARESETN_RKNN>, <&cru SRST_HRESETN_RKNN>;
2985*4e72b326SXuhui Lin		reset-names = "srst_a", "srst_h";
2986*4e72b326SXuhui Lin		power-domains = <&power RV1126B_PD_NPU>;
2987*4e72b326SXuhui Lin		iommus = <&rknpu_mmu>;
2988*4e72b326SXuhui Lin		status = "disabled";
2989*4e72b326SXuhui Lin	};
2990*4e72b326SXuhui Lin
2991*4e72b326SXuhui Lin	npu_opp_table: npu-opp-table {
2992*4e72b326SXuhui Lin		compatible = "operating-points-v2";
2993*4e72b326SXuhui Lin
2994*4e72b326SXuhui Lin		nvmem-cells = <&npu_leakage>;
2995*4e72b326SXuhui Lin		nvmem-cell-names = "leakage";
2996*4e72b326SXuhui Lin
2997*4e72b326SXuhui Lin		opp-396000000 {
2998*4e72b326SXuhui Lin			opp-hz = /bits/ 64 <396000000>;
2999*4e72b326SXuhui Lin			opp-microvolt = <900000 900000 1000000>;
3000*4e72b326SXuhui Lin		};
3001*4e72b326SXuhui Lin		opp-594000000 {
3002*4e72b326SXuhui Lin			opp-hz = /bits/ 64 <594000000>;
3003*4e72b326SXuhui Lin			opp-microvolt = <900000 900000 1000000>;
3004*4e72b326SXuhui Lin		};
3005*4e72b326SXuhui Lin	};
3006*4e72b326SXuhui Lin
3007*4e72b326SXuhui Lin	rknpu_mmu: iommu@22002000 {
3008*4e72b326SXuhui Lin		compatible = "rockchip,iommu-v2";
3009*4e72b326SXuhui Lin		reg = <0x22002000 0x100>;
3010*4e72b326SXuhui Lin		interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>;
3011*4e72b326SXuhui Lin		interrupt-names = "rknpu_mmu";
3012*4e72b326SXuhui Lin		clocks = <&cru ACLK_RKNN>, <&cru HCLK_RKNN>;
3013*4e72b326SXuhui Lin		clock-names = "aclk", "hclk";
3014*4e72b326SXuhui Lin		power-domains = <&power RV1126B_PD_NPU>;
3015*4e72b326SXuhui Lin		#iommu-cells = <0>;
3016*4e72b326SXuhui Lin		status = "disabled";
3017*4e72b326SXuhui Lin	};
3018*4e72b326SXuhui Lin
3019*4e72b326SXuhui Lin	hw_decompress: decompress@22100000 {
3020*4e72b326SXuhui Lin		compatible = "rockchip,hw-decompress";
3021*4e72b326SXuhui Lin		reg = <0x22100000 0x1000>;
3022*4e72b326SXuhui Lin		interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
3023*4e72b326SXuhui Lin		clocks = <&cru ACLK_DECOM>, <&cru DCLK_DECOM>, <&cru PCLK_DECOM>;
3024*4e72b326SXuhui Lin		clock-names = "aclk", "dclk", "pclk";
3025*4e72b326SXuhui Lin		resets = <&cru SRST_DRESETN_DECOM>;
3026*4e72b326SXuhui Lin		reset-names = "dresetn";
3027*4e72b326SXuhui Lin		status = "disabled";
3028*4e72b326SXuhui Lin	};
3029*4e72b326SXuhui Lin
3030*4e72b326SXuhui Lin	mipi_dphy: mipi-dphy@22110000 {
3031*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-dsi-dphy", "rockchip,rv1126-dsi-dphy";
3032*4e72b326SXuhui Lin		reg = <0x22110000 0x500>, <0x22120000 0x500>;
3033*4e72b326SXuhui Lin		reg-names = "phy", "host";
3034*4e72b326SXuhui Lin		assigned-clock-rates = <24000000>;
3035*4e72b326SXuhui Lin		clocks = <&xin24m>, <&cru PCLK_DSIPHY>, <&cru PCLK_MIPI_DSI>;
3036*4e72b326SXuhui Lin		clock-names = "ref", "pclk", "pclk_host";
3037*4e72b326SXuhui Lin		#clock-cells = <0>;
3038*4e72b326SXuhui Lin		resets = <&cru SRST_PRESETN_DSIPHY>;
3039*4e72b326SXuhui Lin		reset-names = "apb";
3040*4e72b326SXuhui Lin		#phy-cells = <0>;
3041*4e72b326SXuhui Lin		rockchip,grf = <&grf>;
3042*4e72b326SXuhui Lin		status = "disabled";
3043*4e72b326SXuhui Lin	};
3044*4e72b326SXuhui Lin
3045*4e72b326SXuhui Lin	dsi: dsi@22120000 {
3046*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-mipi-dsi";
3047*4e72b326SXuhui Lin		reg = <0x22120000 0x500>;
3048*4e72b326SXuhui Lin		interrupts = <GIC_SPI 167 IRQ_TYPE_LEVEL_HIGH>;
3049*4e72b326SXuhui Lin		clocks = <&cru PCLK_MIPI_DSI>;
3050*4e72b326SXuhui Lin		clock-names = "pclk";
3051*4e72b326SXuhui Lin		resets = <&cru SRST_PRESETN_MIPI_DSI>;
3052*4e72b326SXuhui Lin		reset-names = "apb";
3053*4e72b326SXuhui Lin		phys = <&mipi_dphy>;
3054*4e72b326SXuhui Lin		phy-names = "dphy";
3055*4e72b326SXuhui Lin		rockchip,grf = <&grf>;
3056*4e72b326SXuhui Lin		#address-cells = <1>;
3057*4e72b326SXuhui Lin		#size-cells = <0>;
3058*4e72b326SXuhui Lin		power-domains = <&power RV1126B_PD_VDO>;
3059*4e72b326SXuhui Lin		status = "disabled";
3060*4e72b326SXuhui Lin
3061*4e72b326SXuhui Lin		ports {
3062*4e72b326SXuhui Lin			port {
3063*4e72b326SXuhui Lin				dsi_in_vop: endpoint {
3064*4e72b326SXuhui Lin					remote-endpoint = <&vop_out_dsi>;
3065*4e72b326SXuhui Lin				};
3066*4e72b326SXuhui Lin			};
3067*4e72b326SXuhui Lin		};
3068*4e72b326SXuhui Lin	};
3069*4e72b326SXuhui Lin
3070*4e72b326SXuhui Lin	rkvdec: rkvdec@22140100 {
3071*4e72b326SXuhui Lin		compatible = "rockchip,rkv-decoder-rv1126b", "rockchip,rkv-decoder-v384a";
3072*4e72b326SXuhui Lin		reg = <0x22140100 0x600>, <0x22140000 0x100>;
3073*4e72b326SXuhui Lin		reg-names = "regs", "link";
3074*4e72b326SXuhui Lin		interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>;
3075*4e72b326SXuhui Lin		interrupt-names = "irq_rkvdec";
3076*4e72b326SXuhui Lin		clocks = <&cru ACLK_RKVDEC>, <&cru HCLK_RKVDEC>, <&cru CLK_HEVC_CA_RKVDEC>;
3077*4e72b326SXuhui Lin		clock-names = "aclk_vcodec", "hclk_vcodec", "clk_hevc_cabac";
3078*4e72b326SXuhui Lin		resets = <&cru SRST_ARESETN_VDO_BIU >, <&cru SRST_HRESETN_VDO_BIU>,
3079*4e72b326SXuhui Lin			 <&cru SRST_RESETN_HEVC_CA_RKVDEC>;
3080*4e72b326SXuhui Lin		reset-names = "video_a","video_h", "video_hevc_cabac";
3081*4e72b326SXuhui Lin		rockchip,normal-rates = <300000000>, <0>, <300000000>;
3082*4e72b326SXuhui Lin		assigned-clocks = <&cru ACLK_RKVDEC>, <&cru HCLK_RKVDEC>, <&cru CLK_HEVC_CA_RKVDEC>;
3083*4e72b326SXuhui Lin		assigned-clock-rates = <300000000>, <0>, <300000000>;
3084*4e72b326SXuhui Lin		iommus = <&rkvdec_mmu>;
3085*4e72b326SXuhui Lin		rockchip,srv = <&mpp_srv>;
3086*4e72b326SXuhui Lin		rockchip,task-capacity = <8>;
3087*4e72b326SXuhui Lin		rockchip,taskqueue-node = <1>;
3088*4e72b326SXuhui Lin		rockchip,resetgroup-node = <1>;
3089*4e72b326SXuhui Lin		rockchip,skip-pmu-idle-request;
3090*4e72b326SXuhui Lin		power-domains = <&power RV1126B_PD_VDO>;
3091*4e72b326SXuhui Lin		status = "disabled";
3092*4e72b326SXuhui Lin	};
3093*4e72b326SXuhui Lin
3094*4e72b326SXuhui Lin	rkvdec_mmu: iommu@22140800 {
3095*4e72b326SXuhui Lin		compatible = "rockchip,iommu-v2";
3096*4e72b326SXuhui Lin		reg = <0x22140800 0x40>, <0x22140900 0x40>;
3097*4e72b326SXuhui Lin		interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
3098*4e72b326SXuhui Lin		interrupt-names = "irq_rkvdec_mmu";
3099*4e72b326SXuhui Lin		clocks = <&cru ACLK_RKVDEC>, <&cru HCLK_RKVDEC>, <&cru CLK_HEVC_CA_RKVDEC>;
3100*4e72b326SXuhui Lin		clock-names = "aclk", "iface", "iface_c";
3101*4e72b326SXuhui Lin		rockchip,enable-cmd-retry;
3102*4e72b326SXuhui Lin		rockchip,shootdown-entire;
3103*4e72b326SXuhui Lin		#iommu-cells = <0>;
3104*4e72b326SXuhui Lin		power-domains = <&power RV1126B_PD_VDO>;
3105*4e72b326SXuhui Lin		status = "disabled";
3106*4e72b326SXuhui Lin	};
3107*4e72b326SXuhui Lin
3108*4e72b326SXuhui Lin	vop: vop@22150000 {
3109*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-vop";
3110*4e72b326SXuhui Lin		reg = <0x22150000 0x200>, <0x22150a00 0x400>;
3111*4e72b326SXuhui Lin		reg-names = "regs", "gamma_lut";
3112*4e72b326SXuhui Lin		rockchip,grf = <&ioc_grf>;
3113*4e72b326SXuhui Lin		interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
3114*4e72b326SXuhui Lin		clocks = <&cru ACLK_VOP>, <&cru DCLK_VOP>, <&cru HCLK_VOP>;
3115*4e72b326SXuhui Lin		clock-names = "aclk_vop", "dclk_vop", "hclk_vop";
3116*4e72b326SXuhui Lin		iommus = <&vop_mmu>;
3117*4e72b326SXuhui Lin		status = "disabled";
3118*4e72b326SXuhui Lin
3119*4e72b326SXuhui Lin		vop_out: port {
3120*4e72b326SXuhui Lin			#address-cells = <1>;
3121*4e72b326SXuhui Lin			#size-cells = <0>;
3122*4e72b326SXuhui Lin
3123*4e72b326SXuhui Lin			vop_out_rgb: endpoint@0 {
3124*4e72b326SXuhui Lin				reg = <0>;
3125*4e72b326SXuhui Lin				remote-endpoint = <&rgb_in_vop>;
3126*4e72b326SXuhui Lin			};
3127*4e72b326SXuhui Lin
3128*4e72b326SXuhui Lin			vop_out_dsi: endpoint@1 {
3129*4e72b326SXuhui Lin				reg = <1>;
3130*4e72b326SXuhui Lin				remote-endpoint = <&dsi_in_vop>;
3131*4e72b326SXuhui Lin			};
3132*4e72b326SXuhui Lin		};
3133*4e72b326SXuhui Lin	};
3134*4e72b326SXuhui Lin
3135*4e72b326SXuhui Lin	vop_mmu: iommu@22150f00 {
3136*4e72b326SXuhui Lin		compatible = "rockchip,iommu-v2";
3137*4e72b326SXuhui Lin		reg = <0x22150f00 0x100>;
3138*4e72b326SXuhui Lin		interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
3139*4e72b326SXuhui Lin		interrupt-names = "vop_mmu";
3140*4e72b326SXuhui Lin		clocks = <&cru ACLK_VOP>, <&cru HCLK_VOP>;
3141*4e72b326SXuhui Lin		clock-names = "aclk", "iface";
3142*4e72b326SXuhui Lin		#iommu-cells = <0>;
3143*4e72b326SXuhui Lin		rockchip,disable-device-link-resume;
3144*4e72b326SXuhui Lin		status = "disabled";
3145*4e72b326SXuhui Lin	};
3146*4e72b326SXuhui Lin
3147*4e72b326SXuhui Lin	jpegd: jpegd@22170000 {
3148*4e72b326SXuhui Lin		compatible = "rockchip,rkv-jpeg-decoder-v1";
3149*4e72b326SXuhui Lin		reg = <0x22170000 0x330>;
3150*4e72b326SXuhui Lin		interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>;
3151*4e72b326SXuhui Lin		interrupt-names = "irq_jpegd";
3152*4e72b326SXuhui Lin		clocks = <&cru ACLK_RKJPEG>, <&cru HCLK_RKJPEG>;
3153*4e72b326SXuhui Lin		clock-names = "aclk_vcodec", "hclk_vcodec";
3154*4e72b326SXuhui Lin		rockchip,normal-rates = <400000000>, <0>;
3155*4e72b326SXuhui Lin		assigned-clocks = <&cru ACLK_RKJPEG>;
3156*4e72b326SXuhui Lin		assigned-clock-rates = <400000000>;
3157*4e72b326SXuhui Lin		resets = <&cru SRST_ARESETN_RKJPEG>, <&cru SRST_HRESETN_RKJPEG>;
3158*4e72b326SXuhui Lin		reset-names = "video_a", "video_h";
3159*4e72b326SXuhui Lin		rockchip,skip-pmu-idle-request;
3160*4e72b326SXuhui Lin		iommus = <&jpeg_mmu>;
3161*4e72b326SXuhui Lin		rockchip,srv = <&mpp_srv>;
3162*4e72b326SXuhui Lin		rockchip,taskqueue-node = <2>;
3163*4e72b326SXuhui Lin		rockchip,resetgroup-node = <2>;
3164*4e72b326SXuhui Lin		power-domains = <&power RV1126B_PD_VDO>;
3165*4e72b326SXuhui Lin		status = "disabled";
3166*4e72b326SXuhui Lin	};
3167*4e72b326SXuhui Lin
3168*4e72b326SXuhui Lin	jpeg_mmu: iommu@22170f00 {
3169*4e72b326SXuhui Lin		compatible = "rockchip,iommu-v2";
3170*4e72b326SXuhui Lin		reg = <0x22170f00 0x28>;
3171*4e72b326SXuhui Lin		interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>;
3172*4e72b326SXuhui Lin		interrupt-names = "irq_jpeg_mmu";
3173*4e72b326SXuhui Lin		clocks = <&cru ACLK_RKJPEG>, <&cru HCLK_RKJPEG>;
3174*4e72b326SXuhui Lin		clock-name = "aclk", "iface";
3175*4e72b326SXuhui Lin		#iommu-cells = <0>;
3176*4e72b326SXuhui Lin		rockchip,shootdown-entire;
3177*4e72b326SXuhui Lin		power-domains = <&power RV1126B_PD_VDO>;
3178*4e72b326SXuhui Lin		status = "disabled";
3179*4e72b326SXuhui Lin	};
3180*4e72b326SXuhui Lin
3181*4e72b326SXuhui Lin	decom_mmu: iommu@22180000 {
3182*4e72b326SXuhui Lin		compatible = "rockchip,iommu-v2";
3183*4e72b326SXuhui Lin		reg = <0x22180000 0x100>;
3184*4e72b326SXuhui Lin		interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>;
3185*4e72b326SXuhui Lin		interrupt-names = "decom_mmu";
3186*4e72b326SXuhui Lin		clocks = <&cru ACLK_RKMMU_DECOM>, <&cru HCLK_RKMMU_DECOM>;
3187*4e72b326SXuhui Lin		clock-names = "aclk", "iface";
3188*4e72b326SXuhui Lin		#iommu-cells = <0>;
3189*4e72b326SXuhui Lin		status = "disabled";
3190*4e72b326SXuhui Lin	};
3191*4e72b326SXuhui Lin
3192*4e72b326SXuhui Lin	system_sram: sram@3ffb0000 {
3193*4e72b326SXuhui Lin		compatible = "mmio-sram";
3194*4e72b326SXuhui Lin		reg = <0x3ffb0000 0x10000>;
3195*4e72b326SXuhui Lin		#address-cells = <1>;
3196*4e72b326SXuhui Lin		#size-cells = <1>;
3197*4e72b326SXuhui Lin		ranges = <0 0x3ffb0000 0x10000>;
3198*4e72b326SXuhui Lin	};
3199*4e72b326SXuhui Lin
3200*4e72b326SXuhui Lin	pinctrl: pinctrl {
3201*4e72b326SXuhui Lin		compatible = "rockchip,rv1126b-pinctrl";
3202*4e72b326SXuhui Lin		rockchip,grf = <&ioc_grf>;
3203*4e72b326SXuhui Lin		#address-cells = <1>;
3204*4e72b326SXuhui Lin		#size-cells = <1>;
3205*4e72b326SXuhui Lin		ranges;
3206*4e72b326SXuhui Lin
3207*4e72b326SXuhui Lin		gpio0: gpio@20600000 {
3208*4e72b326SXuhui Lin			compatible = "rockchip,gpio-bank";
3209*4e72b326SXuhui Lin			reg = <0x20600000 0x200>;
3210*4e72b326SXuhui Lin			interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>;
3211*4e72b326SXuhui Lin			clocks = <&cru PCLK_PMU_GPIO0>, <&cru DBCLK_PMU_GPIO0>;
3212*4e72b326SXuhui Lin
3213*4e72b326SXuhui Lin			gpio-controller;
3214*4e72b326SXuhui Lin			#gpio-cells = <2>;
3215*4e72b326SXuhui Lin			gpio-ranges = <&pinctrl 0 0 32>;
3216*4e72b326SXuhui Lin			interrupt-controller;
3217*4e72b326SXuhui Lin			#interrupt-cells = <2>;
3218*4e72b326SXuhui Lin		};
3219*4e72b326SXuhui Lin
3220*4e72b326SXuhui Lin		gpio1: gpio@21300000 {
3221*4e72b326SXuhui Lin			compatible = "rockchip,gpio-bank";
3222*4e72b326SXuhui Lin			reg = <0x21300000 0x200>;
3223*4e72b326SXuhui Lin			interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
3224*4e72b326SXuhui Lin			clocks = <&cru PCLK_GPIO1>, <&cru DBCLK_GPIO1>;
3225*4e72b326SXuhui Lin
3226*4e72b326SXuhui Lin			gpio-controller;
3227*4e72b326SXuhui Lin			#gpio-cells = <2>;
3228*4e72b326SXuhui Lin			gpio-ranges = <&pinctrl 0 32 32>;
3229*4e72b326SXuhui Lin			interrupt-controller;
3230*4e72b326SXuhui Lin			#interrupt-cells = <2>;
3231*4e72b326SXuhui Lin		};
3232*4e72b326SXuhui Lin
3233*4e72b326SXuhui Lin		gpio2: gpio@21700000 {
3234*4e72b326SXuhui Lin			compatible = "rockchip,gpio-bank";
3235*4e72b326SXuhui Lin			reg = <0x21700000 0x200>;
3236*4e72b326SXuhui Lin			interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
3237*4e72b326SXuhui Lin			clocks = <&cru PCLK_GPIO2>, <&cru DBCLK_GPIO2>;
3238*4e72b326SXuhui Lin
3239*4e72b326SXuhui Lin			gpio-controller;
3240*4e72b326SXuhui Lin			#gpio-cells = <2>;
3241*4e72b326SXuhui Lin			gpio-ranges = <&pinctrl 0 64 32>;
3242*4e72b326SXuhui Lin			interrupt-controller;
3243*4e72b326SXuhui Lin			#interrupt-cells = <2>;
3244*4e72b326SXuhui Lin		};
3245*4e72b326SXuhui Lin
3246*4e72b326SXuhui Lin		gpio3: gpio@21e00000 {
3247*4e72b326SXuhui Lin			compatible = "rockchip,gpio-bank";
3248*4e72b326SXuhui Lin			reg = <0x21e00000 0x200>;
3249*4e72b326SXuhui Lin			interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
3250*4e72b326SXuhui Lin			clocks = <&cru PCLK_GPIO3>, <&cru DBCLK_GPIO3>;
3251*4e72b326SXuhui Lin
3252*4e72b326SXuhui Lin			gpio-controller;
3253*4e72b326SXuhui Lin			#gpio-cells = <2>;
3254*4e72b326SXuhui Lin			gpio-ranges = <&pinctrl 0 96 32>;
3255*4e72b326SXuhui Lin			interrupt-controller;
3256*4e72b326SXuhui Lin			#interrupt-cells = <2>;
3257*4e72b326SXuhui Lin		};
3258*4e72b326SXuhui Lin
3259*4e72b326SXuhui Lin		gpio4: gpio@21800000 {
3260*4e72b326SXuhui Lin			compatible = "rockchip,gpio-bank";
3261*4e72b326SXuhui Lin			reg = <0x21800000 0x200>;
3262*4e72b326SXuhui Lin			interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
3263*4e72b326SXuhui Lin			clocks = <&cru PCLK_GPIO4>, <&cru DBCLK_GPIO4>;
3264*4e72b326SXuhui Lin
3265*4e72b326SXuhui Lin			gpio-controller;
3266*4e72b326SXuhui Lin			#gpio-cells = <2>;
3267*4e72b326SXuhui Lin			gpio-ranges = <&pinctrl 0 128 32>;
3268*4e72b326SXuhui Lin			interrupt-controller;
3269*4e72b326SXuhui Lin			#interrupt-cells = <2>;
3270*4e72b326SXuhui Lin		};
3271*4e72b326SXuhui Lin
3272*4e72b326SXuhui Lin		gpio5: gpio@21900000 {
3273*4e72b326SXuhui Lin			compatible = "rockchip,gpio-bank";
3274*4e72b326SXuhui Lin			reg = <0x21900000 0x200>;
3275*4e72b326SXuhui Lin			interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
3276*4e72b326SXuhui Lin			clocks = <&cru PCLK_GPIO5>, <&cru DBCLK_GPIO5>;
3277*4e72b326SXuhui Lin
3278*4e72b326SXuhui Lin			gpio-controller;
3279*4e72b326SXuhui Lin			#gpio-cells = <2>;
3280*4e72b326SXuhui Lin			gpio-ranges = <&pinctrl 0 160 32>;
3281*4e72b326SXuhui Lin			interrupt-controller;
3282*4e72b326SXuhui Lin			#interrupt-cells = <2>;
3283*4e72b326SXuhui Lin		};
3284*4e72b326SXuhui Lin
3285*4e72b326SXuhui Lin		gpio6: gpio@21a00000 {
3286*4e72b326SXuhui Lin			compatible = "rockchip,gpio-bank";
3287*4e72b326SXuhui Lin			reg = <0x21a00000 0x200>;
3288*4e72b326SXuhui Lin			interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
3289*4e72b326SXuhui Lin			clocks = <&cru PCLK_GPIO6>, <&cru DBCLK_GPIO6>;
3290*4e72b326SXuhui Lin
3291*4e72b326SXuhui Lin			gpio-controller;
3292*4e72b326SXuhui Lin			#gpio-cells = <2>;
3293*4e72b326SXuhui Lin			gpio-ranges = <&pinctrl 0 192 32>;
3294*4e72b326SXuhui Lin			interrupt-controller;
3295*4e72b326SXuhui Lin			#interrupt-cells = <2>;
3296*4e72b326SXuhui Lin		};
3297*4e72b326SXuhui Lin
3298*4e72b326SXuhui Lin		gpio7: gpio@21b00000 {
3299*4e72b326SXuhui Lin			compatible = "rockchip,gpio-bank";
3300*4e72b326SXuhui Lin			reg = <0x21b00000 0x200>;
3301*4e72b326SXuhui Lin			interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
3302*4e72b326SXuhui Lin			clocks = <&cru PCLK_GPIO7>, <&cru DBCLK_GPIO7>;
3303*4e72b326SXuhui Lin
3304*4e72b326SXuhui Lin			gpio-controller;
3305*4e72b326SXuhui Lin			#gpio-cells = <2>;
3306*4e72b326SXuhui Lin			gpio-ranges = <&pinctrl 0 224 32>;
3307*4e72b326SXuhui Lin			interrupt-controller;
3308*4e72b326SXuhui Lin			#interrupt-cells = <2>;
3309*4e72b326SXuhui Lin		};
3310*4e72b326SXuhui Lin	};
3311*4e72b326SXuhui Lin};
3312*4e72b326SXuhui Lin
3313*4e72b326SXuhui Lin#include "rv1126b-pinctrl.dtsi"
3314