xref: /linux/arch/arm64/boot/dts/rockchip/rk3368.dtsi (revision 7c96a5cf680ac7339999becd454e1f2fd9b258fb)
14ee99cebSKlaus Goger// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2b790c2caSHeiko Stübner/*
3b790c2caSHeiko Stübner * Copyright (c) 2015 Heiko Stuebner <heiko@sntech.de>
4b790c2caSHeiko Stübner */
5b790c2caSHeiko Stübner
6b790c2caSHeiko Stübner#include <dt-bindings/clock/rk3368-cru.h>
7b790c2caSHeiko Stübner#include <dt-bindings/gpio/gpio.h>
8b790c2caSHeiko Stübner#include <dt-bindings/interrupt-controller/irq.h>
9b790c2caSHeiko Stübner#include <dt-bindings/interrupt-controller/arm-gic.h>
10b790c2caSHeiko Stübner#include <dt-bindings/pinctrl/rockchip.h>
112e9e2863SAndy Yan#include <dt-bindings/soc/rockchip,boot-mode.h>
12f990238fSCaesar Wang#include <dt-bindings/thermal/thermal.h>
13b790c2caSHeiko Stübner
14b790c2caSHeiko Stübner/ {
15b790c2caSHeiko Stübner	compatible = "rockchip,rk3368";
16b790c2caSHeiko Stübner	interrupt-parent = <&gic>;
17b790c2caSHeiko Stübner	#address-cells = <2>;
18b790c2caSHeiko Stübner	#size-cells = <2>;
19b790c2caSHeiko Stübner
20b790c2caSHeiko Stübner	aliases {
21ff08868eSHeiko Stuebner		ethernet0 = &gmac;
22b790c2caSHeiko Stübner		i2c0 = &i2c0;
23b790c2caSHeiko Stübner		i2c1 = &i2c1;
24b790c2caSHeiko Stübner		i2c2 = &i2c2;
25b790c2caSHeiko Stübner		i2c3 = &i2c3;
26b790c2caSHeiko Stübner		i2c4 = &i2c4;
27b790c2caSHeiko Stübner		i2c5 = &i2c5;
28b790c2caSHeiko Stübner		serial0 = &uart0;
29b790c2caSHeiko Stübner		serial1 = &uart1;
30b790c2caSHeiko Stübner		serial2 = &uart2;
31b790c2caSHeiko Stübner		serial3 = &uart3;
32b790c2caSHeiko Stübner		serial4 = &uart4;
33b790c2caSHeiko Stübner		spi0 = &spi0;
34b790c2caSHeiko Stübner		spi1 = &spi1;
35b790c2caSHeiko Stübner		spi2 = &spi2;
36b790c2caSHeiko Stübner	};
37b790c2caSHeiko Stübner
38b790c2caSHeiko Stübner	cpus {
39b790c2caSHeiko Stübner		#address-cells = <0x2>;
40b790c2caSHeiko Stübner		#size-cells = <0x0>;
41b790c2caSHeiko Stübner
42b790c2caSHeiko Stübner		cpu-map {
43b790c2caSHeiko Stübner			cluster0 {
44b790c2caSHeiko Stübner				core0 {
45b790c2caSHeiko Stübner					cpu = <&cpu_b0>;
46b790c2caSHeiko Stübner				};
47b790c2caSHeiko Stübner				core1 {
48b790c2caSHeiko Stübner					cpu = <&cpu_b1>;
49b790c2caSHeiko Stübner				};
50b790c2caSHeiko Stübner				core2 {
51b790c2caSHeiko Stübner					cpu = <&cpu_b2>;
52b790c2caSHeiko Stübner				};
53b790c2caSHeiko Stübner				core3 {
54b790c2caSHeiko Stübner					cpu = <&cpu_b3>;
55b790c2caSHeiko Stübner				};
56b790c2caSHeiko Stübner			};
57b790c2caSHeiko Stübner
58b790c2caSHeiko Stübner			cluster1 {
59b790c2caSHeiko Stübner				core0 {
60b790c2caSHeiko Stübner					cpu = <&cpu_l0>;
61b790c2caSHeiko Stübner				};
62b790c2caSHeiko Stübner				core1 {
63b790c2caSHeiko Stübner					cpu = <&cpu_l1>;
64b790c2caSHeiko Stübner				};
65b790c2caSHeiko Stübner				core2 {
66b790c2caSHeiko Stübner					cpu = <&cpu_l2>;
67b790c2caSHeiko Stübner				};
68b790c2caSHeiko Stübner				core3 {
69b790c2caSHeiko Stübner					cpu = <&cpu_l3>;
70b790c2caSHeiko Stübner				};
71b790c2caSHeiko Stübner			};
72b790c2caSHeiko Stübner		};
73b790c2caSHeiko Stübner
74b790c2caSHeiko Stübner		cpu_l0: cpu@0 {
75b790c2caSHeiko Stübner			device_type = "cpu";
7631af04cdSRob Herring			compatible = "arm,cortex-a53";
77b790c2caSHeiko Stübner			reg = <0x0 0x0>;
78b790c2caSHeiko Stübner			enable-method = "psci";
79f990238fSCaesar Wang			#cooling-cells = <2>; /* min followed by max */
80b790c2caSHeiko Stübner		};
81b790c2caSHeiko Stübner
82b790c2caSHeiko Stübner		cpu_l1: cpu@1 {
83b790c2caSHeiko Stübner			device_type = "cpu";
8431af04cdSRob Herring			compatible = "arm,cortex-a53";
85b790c2caSHeiko Stübner			reg = <0x0 0x1>;
86b790c2caSHeiko Stübner			enable-method = "psci";
87cc9b0918SViresh Kumar			#cooling-cells = <2>; /* min followed by max */
88b790c2caSHeiko Stübner		};
89b790c2caSHeiko Stübner
90b790c2caSHeiko Stübner		cpu_l2: cpu@2 {
91b790c2caSHeiko Stübner			device_type = "cpu";
9231af04cdSRob Herring			compatible = "arm,cortex-a53";
93b790c2caSHeiko Stübner			reg = <0x0 0x2>;
94b790c2caSHeiko Stübner			enable-method = "psci";
95cc9b0918SViresh Kumar			#cooling-cells = <2>; /* min followed by max */
96b790c2caSHeiko Stübner		};
97b790c2caSHeiko Stübner
98b790c2caSHeiko Stübner		cpu_l3: cpu@3 {
99b790c2caSHeiko Stübner			device_type = "cpu";
10031af04cdSRob Herring			compatible = "arm,cortex-a53";
101b790c2caSHeiko Stübner			reg = <0x0 0x3>;
102b790c2caSHeiko Stübner			enable-method = "psci";
103cc9b0918SViresh Kumar			#cooling-cells = <2>; /* min followed by max */
104b790c2caSHeiko Stübner		};
105b790c2caSHeiko Stübner
106b790c2caSHeiko Stübner		cpu_b0: cpu@100 {
107b790c2caSHeiko Stübner			device_type = "cpu";
10831af04cdSRob Herring			compatible = "arm,cortex-a53";
109b790c2caSHeiko Stübner			reg = <0x0 0x100>;
110b790c2caSHeiko Stübner			enable-method = "psci";
111f990238fSCaesar Wang			#cooling-cells = <2>; /* min followed by max */
112b790c2caSHeiko Stübner		};
113b790c2caSHeiko Stübner
114b790c2caSHeiko Stübner		cpu_b1: cpu@101 {
115b790c2caSHeiko Stübner			device_type = "cpu";
11631af04cdSRob Herring			compatible = "arm,cortex-a53";
117b790c2caSHeiko Stübner			reg = <0x0 0x101>;
118b790c2caSHeiko Stübner			enable-method = "psci";
119cc9b0918SViresh Kumar			#cooling-cells = <2>; /* min followed by max */
120b790c2caSHeiko Stübner		};
121b790c2caSHeiko Stübner
122b790c2caSHeiko Stübner		cpu_b2: cpu@102 {
123b790c2caSHeiko Stübner			device_type = "cpu";
12431af04cdSRob Herring			compatible = "arm,cortex-a53";
125b790c2caSHeiko Stübner			reg = <0x0 0x102>;
126b790c2caSHeiko Stübner			enable-method = "psci";
127cc9b0918SViresh Kumar			#cooling-cells = <2>; /* min followed by max */
128b790c2caSHeiko Stübner		};
129b790c2caSHeiko Stübner
130b790c2caSHeiko Stübner		cpu_b3: cpu@103 {
131b790c2caSHeiko Stübner			device_type = "cpu";
13231af04cdSRob Herring			compatible = "arm,cortex-a53";
133b790c2caSHeiko Stübner			reg = <0x0 0x103>;
134b790c2caSHeiko Stübner			enable-method = "psci";
135cc9b0918SViresh Kumar			#cooling-cells = <2>; /* min followed by max */
136b790c2caSHeiko Stübner		};
137b790c2caSHeiko Stübner	};
138b790c2caSHeiko Stübner
139b2411befSJohan Jonker	amba: bus {
1404b4c0db5SHuibin Hong		compatible = "simple-bus";
1414b4c0db5SHuibin Hong		#address-cells = <2>;
1424b4c0db5SHuibin Hong		#size-cells = <2>;
1434b4c0db5SHuibin Hong		ranges;
1444b4c0db5SHuibin Hong
1454b4c0db5SHuibin Hong		dmac_peri: dma-controller@ff250000 {
1464b4c0db5SHuibin Hong			compatible = "arm,pl330", "arm,primecell";
1474b4c0db5SHuibin Hong			reg = <0x0 0xff250000 0x0 0x4000>;
1484b4c0db5SHuibin Hong			interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
1494b4c0db5SHuibin Hong				     <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
1504b4c0db5SHuibin Hong			#dma-cells = <1>;
1514b4c0db5SHuibin Hong			arm,pl330-broken-no-flushp;
152505af918SSugar Zhang			arm,pl330-periph-burst;
1534b4c0db5SHuibin Hong			clocks = <&cru ACLK_DMAC_PERI>;
1544b4c0db5SHuibin Hong			clock-names = "apb_pclk";
1554b4c0db5SHuibin Hong		};
1564b4c0db5SHuibin Hong
1574b4c0db5SHuibin Hong		dmac_bus: dma-controller@ff600000 {
1584b4c0db5SHuibin Hong			compatible = "arm,pl330", "arm,primecell";
1594b4c0db5SHuibin Hong			reg = <0x0 0xff600000 0x0 0x4000>;
1604b4c0db5SHuibin Hong			interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
1614b4c0db5SHuibin Hong				     <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
1624b4c0db5SHuibin Hong			#dma-cells = <1>;
1634b4c0db5SHuibin Hong			arm,pl330-broken-no-flushp;
164505af918SSugar Zhang			arm,pl330-periph-burst;
1654b4c0db5SHuibin Hong			clocks = <&cru ACLK_DMAC_BUS>;
1664b4c0db5SHuibin Hong			clock-names = "apb_pclk";
1674b4c0db5SHuibin Hong		};
1684b4c0db5SHuibin Hong	};
1694b4c0db5SHuibin Hong
170b790c2caSHeiko Stübner	arm-pmu {
171b790c2caSHeiko Stübner		compatible = "arm,armv8-pmuv3";
172b790c2caSHeiko Stübner		interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
173b790c2caSHeiko Stübner			     <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
174b790c2caSHeiko Stübner			     <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
175b790c2caSHeiko Stübner			     <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
176b790c2caSHeiko Stübner			     <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
177b790c2caSHeiko Stübner			     <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
178b790c2caSHeiko Stübner			     <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
179b790c2caSHeiko Stübner			     <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>;
180b790c2caSHeiko Stübner		interrupt-affinity = <&cpu_l0>, <&cpu_l1>, <&cpu_l2>,
181b790c2caSHeiko Stübner				     <&cpu_l3>, <&cpu_b0>, <&cpu_b1>,
182b790c2caSHeiko Stübner				     <&cpu_b2>, <&cpu_b3>;
183b790c2caSHeiko Stübner	};
184b790c2caSHeiko Stübner
185b790c2caSHeiko Stübner	psci {
186b790c2caSHeiko Stübner		compatible = "arm,psci-0.2";
187b790c2caSHeiko Stübner		method = "smc";
188b790c2caSHeiko Stübner	};
189b790c2caSHeiko Stübner
190b790c2caSHeiko Stübner	timer {
191b790c2caSHeiko Stübner		compatible = "arm,armv8-timer";
192b790c2caSHeiko Stübner		interrupts = <GIC_PPI 13
193b790c2caSHeiko Stübner			(GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_HIGH)>,
194b790c2caSHeiko Stübner			     <GIC_PPI 14
195b790c2caSHeiko Stübner			(GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_HIGH)>,
196b790c2caSHeiko Stübner			     <GIC_PPI 11
197b790c2caSHeiko Stübner			(GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_HIGH)>,
198b790c2caSHeiko Stübner			     <GIC_PPI 10
199b790c2caSHeiko Stübner			(GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_HIGH)>;
200b790c2caSHeiko Stübner	};
201b790c2caSHeiko Stübner
202b790c2caSHeiko Stübner	xin24m: oscillator {
203b790c2caSHeiko Stübner		compatible = "fixed-clock";
204b790c2caSHeiko Stübner		clock-frequency = <24000000>;
205b790c2caSHeiko Stübner		clock-output-names = "xin24m";
206b790c2caSHeiko Stübner		#clock-cells = <0>;
207b790c2caSHeiko Stübner	};
208b790c2caSHeiko Stübner
2093ef7c255SJohan Jonker	sdmmc: mmc@ff0c0000 {
210b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-dw-mshc", "rockchip,rk3288-dw-mshc";
211b790c2caSHeiko Stübner		reg = <0x0 0xff0c0000 0x0 0x4000>;
212c4959069SJaehoon Chung		max-frequency = <150000000>;
21390191625SShawn Lin		clocks = <&cru HCLK_SDMMC>, <&cru SCLK_SDMMC>,
21490191625SShawn Lin			 <&cru SCLK_SDMMC_DRV>, <&cru SCLK_SDMMC_SAMPLE>;
21590191625SShawn Lin		clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
216b790c2caSHeiko Stübner		fifo-depth = <0x100>;
217b790c2caSHeiko Stübner		interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
218d0302e06SHeiko Stuebner		resets = <&cru SRST_MMC0>;
219d0302e06SHeiko Stuebner		reset-names = "reset";
220b790c2caSHeiko Stübner		status = "disabled";
221b790c2caSHeiko Stübner	};
222b790c2caSHeiko Stübner
2233ef7c255SJohan Jonker	sdio0: mmc@ff0d0000 {
224b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-dw-mshc", "rockchip,rk3288-dw-mshc";
225b790c2caSHeiko Stübner		reg = <0x0 0xff0d0000 0x0 0x4000>;
226c4959069SJaehoon Chung		max-frequency = <150000000>;
227b790c2caSHeiko Stübner		clocks = <&cru HCLK_SDIO0>, <&cru SCLK_SDIO0>,
228b790c2caSHeiko Stübner			 <&cru SCLK_SDIO0_DRV>, <&cru SCLK_SDIO0_SAMPLE>;
229ca9eee95SRobin Murphy		clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
230b790c2caSHeiko Stübner		fifo-depth = <0x100>;
231b790c2caSHeiko Stübner		interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
232d0302e06SHeiko Stuebner		resets = <&cru SRST_SDIO0>;
233d0302e06SHeiko Stuebner		reset-names = "reset";
234b790c2caSHeiko Stübner		status = "disabled";
235b790c2caSHeiko Stübner	};
236b790c2caSHeiko Stübner
2373ef7c255SJohan Jonker	emmc: mmc@ff0f0000 {
238b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-dw-mshc", "rockchip,rk3288-dw-mshc";
239b790c2caSHeiko Stübner		reg = <0x0 0xff0f0000 0x0 0x4000>;
240c4959069SJaehoon Chung		max-frequency = <150000000>;
24190191625SShawn Lin		clocks = <&cru HCLK_EMMC>, <&cru SCLK_EMMC>,
24290191625SShawn Lin			 <&cru SCLK_EMMC_DRV>, <&cru SCLK_EMMC_SAMPLE>;
24390191625SShawn Lin		clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
244b790c2caSHeiko Stübner		fifo-depth = <0x100>;
245b790c2caSHeiko Stübner		interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
246d0302e06SHeiko Stuebner		resets = <&cru SRST_EMMC>;
247d0302e06SHeiko Stuebner		reset-names = "reset";
248b790c2caSHeiko Stübner		status = "disabled";
249b790c2caSHeiko Stübner	};
250b790c2caSHeiko Stübner
251b790c2caSHeiko Stübner	saradc: saradc@ff100000 {
252b790c2caSHeiko Stübner		compatible = "rockchip,saradc";
253b790c2caSHeiko Stübner		reg = <0x0 0xff100000 0x0 0x100>;
254b790c2caSHeiko Stübner		interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
255b790c2caSHeiko Stübner		#io-channel-cells = <1>;
256b790c2caSHeiko Stübner		clocks = <&cru SCLK_SARADC>, <&cru PCLK_SARADC>;
257b790c2caSHeiko Stübner		clock-names = "saradc", "apb_pclk";
25878ec79bfSCaesar Wang		resets = <&cru SRST_SARADC>;
25978ec79bfSCaesar Wang		reset-names = "saradc-apb";
260b790c2caSHeiko Stübner		status = "disabled";
261b790c2caSHeiko Stübner	};
262b790c2caSHeiko Stübner
263b790c2caSHeiko Stübner	spi0: spi@ff110000 {
264b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-spi", "rockchip,rk3066-spi";
265b790c2caSHeiko Stübner		reg = <0x0 0xff110000 0x0 0x1000>;
266b790c2caSHeiko Stübner		clocks = <&cru SCLK_SPI0>, <&cru PCLK_SPI0>;
267b790c2caSHeiko Stübner		clock-names = "spiclk", "apb_pclk";
268b790c2caSHeiko Stübner		interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
269b790c2caSHeiko Stübner		pinctrl-names = "default";
270b790c2caSHeiko Stübner		pinctrl-0 = <&spi0_clk &spi0_tx &spi0_rx &spi0_cs0>;
271b790c2caSHeiko Stübner		#address-cells = <1>;
272b790c2caSHeiko Stübner		#size-cells = <0>;
273b790c2caSHeiko Stübner		status = "disabled";
274b790c2caSHeiko Stübner	};
275b790c2caSHeiko Stübner
276b790c2caSHeiko Stübner	spi1: spi@ff120000 {
277b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-spi", "rockchip,rk3066-spi";
278b790c2caSHeiko Stübner		reg = <0x0 0xff120000 0x0 0x1000>;
279b790c2caSHeiko Stübner		clocks = <&cru SCLK_SPI1>, <&cru PCLK_SPI1>;
280b790c2caSHeiko Stübner		clock-names = "spiclk", "apb_pclk";
281b790c2caSHeiko Stübner		interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
282b790c2caSHeiko Stübner		pinctrl-names = "default";
283b790c2caSHeiko Stübner		pinctrl-0 = <&spi1_clk &spi1_tx &spi1_rx &spi1_cs0>;
284b790c2caSHeiko Stübner		#address-cells = <1>;
285b790c2caSHeiko Stübner		#size-cells = <0>;
286b790c2caSHeiko Stübner		status = "disabled";
287b790c2caSHeiko Stübner	};
288b790c2caSHeiko Stübner
289b790c2caSHeiko Stübner	spi2: spi@ff130000 {
290b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-spi", "rockchip,rk3066-spi";
291b790c2caSHeiko Stübner		reg = <0x0 0xff130000 0x0 0x1000>;
292b790c2caSHeiko Stübner		clocks = <&cru SCLK_SPI2>, <&cru PCLK_SPI2>;
293b790c2caSHeiko Stübner		clock-names = "spiclk", "apb_pclk";
294b790c2caSHeiko Stübner		interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
295b790c2caSHeiko Stübner		pinctrl-names = "default";
296b790c2caSHeiko Stübner		pinctrl-0 = <&spi2_clk &spi2_tx &spi2_rx &spi2_cs0>;
297b790c2caSHeiko Stübner		#address-cells = <1>;
298b790c2caSHeiko Stübner		#size-cells = <0>;
299b790c2caSHeiko Stübner		status = "disabled";
300b790c2caSHeiko Stübner	};
301b790c2caSHeiko Stübner
3022c60dc43SAndy Yan	i2c2: i2c@ff140000 {
303b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-i2c", "rockchip,rk3288-i2c";
304b790c2caSHeiko Stübner		reg = <0x0 0xff140000 0x0 0x1000>;
305b790c2caSHeiko Stübner		interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
306b790c2caSHeiko Stübner		#address-cells = <1>;
307b790c2caSHeiko Stübner		#size-cells = <0>;
308b790c2caSHeiko Stübner		clock-names = "i2c";
3092c60dc43SAndy Yan		clocks = <&cru PCLK_I2C2>;
310b790c2caSHeiko Stübner		pinctrl-names = "default";
3112c60dc43SAndy Yan		pinctrl-0 = <&i2c2_xfer>;
312b790c2caSHeiko Stübner		status = "disabled";
313b790c2caSHeiko Stübner	};
314b790c2caSHeiko Stübner
315b790c2caSHeiko Stübner	i2c3: i2c@ff150000 {
316b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-i2c", "rockchip,rk3288-i2c";
317b790c2caSHeiko Stübner		reg = <0x0 0xff150000 0x0 0x1000>;
318b790c2caSHeiko Stübner		interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
319b790c2caSHeiko Stübner		#address-cells = <1>;
320b790c2caSHeiko Stübner		#size-cells = <0>;
321b790c2caSHeiko Stübner		clock-names = "i2c";
322b790c2caSHeiko Stübner		clocks = <&cru PCLK_I2C3>;
323b790c2caSHeiko Stübner		pinctrl-names = "default";
324b790c2caSHeiko Stübner		pinctrl-0 = <&i2c3_xfer>;
325b790c2caSHeiko Stübner		status = "disabled";
326b790c2caSHeiko Stübner	};
327b790c2caSHeiko Stübner
328b790c2caSHeiko Stübner	i2c4: i2c@ff160000 {
329b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-i2c", "rockchip,rk3288-i2c";
330b790c2caSHeiko Stübner		reg = <0x0 0xff160000 0x0 0x1000>;
331b790c2caSHeiko Stübner		interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
332b790c2caSHeiko Stübner		#address-cells = <1>;
333b790c2caSHeiko Stübner		#size-cells = <0>;
334b790c2caSHeiko Stübner		clock-names = "i2c";
335b790c2caSHeiko Stübner		clocks = <&cru PCLK_I2C4>;
336b790c2caSHeiko Stübner		pinctrl-names = "default";
337b790c2caSHeiko Stübner		pinctrl-0 = <&i2c4_xfer>;
338b790c2caSHeiko Stübner		status = "disabled";
339b790c2caSHeiko Stübner	};
340b790c2caSHeiko Stübner
341b790c2caSHeiko Stübner	i2c5: i2c@ff170000 {
342b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-i2c", "rockchip,rk3288-i2c";
343b790c2caSHeiko Stübner		reg = <0x0 0xff170000 0x0 0x1000>;
344b790c2caSHeiko Stübner		interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
345b790c2caSHeiko Stübner		#address-cells = <1>;
346b790c2caSHeiko Stübner		#size-cells = <0>;
347b790c2caSHeiko Stübner		clock-names = "i2c";
348b790c2caSHeiko Stübner		clocks = <&cru PCLK_I2C5>;
349b790c2caSHeiko Stübner		pinctrl-names = "default";
350b790c2caSHeiko Stübner		pinctrl-0 = <&i2c5_xfer>;
351b790c2caSHeiko Stübner		status = "disabled";
352b790c2caSHeiko Stübner	};
353b790c2caSHeiko Stübner
354b790c2caSHeiko Stübner	uart0: serial@ff180000 {
355b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-uart", "snps,dw-apb-uart";
356b790c2caSHeiko Stübner		reg = <0x0 0xff180000 0x0 0x100>;
357b790c2caSHeiko Stübner		clock-frequency = <24000000>;
358b790c2caSHeiko Stübner		clocks = <&cru SCLK_UART0>, <&cru PCLK_UART0>;
359b790c2caSHeiko Stübner		clock-names = "baudclk", "apb_pclk";
360b790c2caSHeiko Stübner		interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
361b790c2caSHeiko Stübner		reg-shift = <2>;
362b790c2caSHeiko Stübner		reg-io-width = <4>;
363b790c2caSHeiko Stübner		status = "disabled";
364b790c2caSHeiko Stübner	};
365b790c2caSHeiko Stübner
366b790c2caSHeiko Stübner	uart1: serial@ff190000 {
367b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-uart", "snps,dw-apb-uart";
368b790c2caSHeiko Stübner		reg = <0x0 0xff190000 0x0 0x100>;
369b790c2caSHeiko Stübner		clock-frequency = <24000000>;
370b790c2caSHeiko Stübner		clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>;
371b790c2caSHeiko Stübner		clock-names = "baudclk", "apb_pclk";
372b790c2caSHeiko Stübner		interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
373b790c2caSHeiko Stübner		reg-shift = <2>;
374b790c2caSHeiko Stübner		reg-io-width = <4>;
375b790c2caSHeiko Stübner		status = "disabled";
376b790c2caSHeiko Stübner	};
377b790c2caSHeiko Stübner
378b790c2caSHeiko Stübner	uart3: serial@ff1b0000 {
379b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-uart", "snps,dw-apb-uart";
380b790c2caSHeiko Stübner		reg = <0x0 0xff1b0000 0x0 0x100>;
381b790c2caSHeiko Stübner		clock-frequency = <24000000>;
382b790c2caSHeiko Stübner		clocks = <&cru SCLK_UART3>, <&cru PCLK_UART3>;
383b790c2caSHeiko Stübner		clock-names = "baudclk", "apb_pclk";
384b790c2caSHeiko Stübner		interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
385b790c2caSHeiko Stübner		reg-shift = <2>;
386b790c2caSHeiko Stübner		reg-io-width = <4>;
387b790c2caSHeiko Stübner		status = "disabled";
388b790c2caSHeiko Stübner	};
389b790c2caSHeiko Stübner
390b790c2caSHeiko Stübner	uart4: serial@ff1c0000 {
391b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-uart", "snps,dw-apb-uart";
392b790c2caSHeiko Stübner		reg = <0x0 0xff1c0000 0x0 0x100>;
393b790c2caSHeiko Stübner		clock-frequency = <24000000>;
394b790c2caSHeiko Stübner		clocks = <&cru SCLK_UART4>, <&cru PCLK_UART4>;
395b790c2caSHeiko Stübner		clock-names = "baudclk", "apb_pclk";
396b790c2caSHeiko Stübner		interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
397b790c2caSHeiko Stübner		reg-shift = <2>;
398b790c2caSHeiko Stübner		reg-io-width = <4>;
399b790c2caSHeiko Stübner		status = "disabled";
400b790c2caSHeiko Stübner	};
401b790c2caSHeiko Stübner
402f990238fSCaesar Wang	thermal-zones {
403*7c96a5cfSJohan Jonker		cpu_thermal: cpu-thermal {
4046ddf93e0SCaesar Wang			polling-delay-passive = <100>; /* milliseconds */
4056ddf93e0SCaesar Wang			polling-delay = <5000>; /* milliseconds */
4066ddf93e0SCaesar Wang
4076ddf93e0SCaesar Wang			thermal-sensors = <&tsadc 0>;
4086ddf93e0SCaesar Wang
4096ddf93e0SCaesar Wang			trips {
4106ddf93e0SCaesar Wang				cpu_alert0: cpu_alert0 {
4116ddf93e0SCaesar Wang					temperature = <75000>; /* millicelsius */
4126ddf93e0SCaesar Wang					hysteresis = <2000>; /* millicelsius */
4136ddf93e0SCaesar Wang					type = "passive";
4146ddf93e0SCaesar Wang				};
4156ddf93e0SCaesar Wang				cpu_alert1: cpu_alert1 {
4166ddf93e0SCaesar Wang					temperature = <80000>; /* millicelsius */
4176ddf93e0SCaesar Wang					hysteresis = <2000>; /* millicelsius */
4186ddf93e0SCaesar Wang					type = "passive";
4196ddf93e0SCaesar Wang				};
4206ddf93e0SCaesar Wang				cpu_crit: cpu_crit {
4216ddf93e0SCaesar Wang					temperature = <95000>; /* millicelsius */
4226ddf93e0SCaesar Wang					hysteresis = <2000>; /* millicelsius */
4236ddf93e0SCaesar Wang					type = "critical";
4246ddf93e0SCaesar Wang				};
4256ddf93e0SCaesar Wang			};
4266ddf93e0SCaesar Wang
4276ddf93e0SCaesar Wang			cooling-maps {
4286ddf93e0SCaesar Wang				map0 {
4296ddf93e0SCaesar Wang					trip = <&cpu_alert0>;
4306ddf93e0SCaesar Wang					cooling-device =
431cdd46460SViresh Kumar					<&cpu_b0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
432cdd46460SViresh Kumar					<&cpu_b1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
433cdd46460SViresh Kumar					<&cpu_b2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
434cdd46460SViresh Kumar					<&cpu_b3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
4356ddf93e0SCaesar Wang				};
4366ddf93e0SCaesar Wang				map1 {
4376ddf93e0SCaesar Wang					trip = <&cpu_alert1>;
4386ddf93e0SCaesar Wang					cooling-device =
439cdd46460SViresh Kumar					<&cpu_l0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
440cdd46460SViresh Kumar					<&cpu_l1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
441cdd46460SViresh Kumar					<&cpu_l2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
442cdd46460SViresh Kumar					<&cpu_l3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
4436ddf93e0SCaesar Wang				};
4446ddf93e0SCaesar Wang			};
4456ddf93e0SCaesar Wang		};
4466ddf93e0SCaesar Wang
447*7c96a5cfSJohan Jonker		gpu_thermal: gpu-thermal {
4486ddf93e0SCaesar Wang			polling-delay-passive = <100>; /* milliseconds */
4496ddf93e0SCaesar Wang			polling-delay = <5000>; /* milliseconds */
4506ddf93e0SCaesar Wang
4516ddf93e0SCaesar Wang			thermal-sensors = <&tsadc 1>;
4526ddf93e0SCaesar Wang
4536ddf93e0SCaesar Wang			trips {
4546ddf93e0SCaesar Wang				gpu_alert0: gpu_alert0 {
4556ddf93e0SCaesar Wang					temperature = <80000>; /* millicelsius */
4566ddf93e0SCaesar Wang					hysteresis = <2000>; /* millicelsius */
4576ddf93e0SCaesar Wang					type = "passive";
4586ddf93e0SCaesar Wang				};
4596ddf93e0SCaesar Wang				gpu_crit: gpu_crit {
4606ddf93e0SCaesar Wang					temperature = <115000>; /* millicelsius */
4616ddf93e0SCaesar Wang					hysteresis = <2000>; /* millicelsius */
4626ddf93e0SCaesar Wang					type = "critical";
4636ddf93e0SCaesar Wang				};
4646ddf93e0SCaesar Wang			};
4656ddf93e0SCaesar Wang
4666ddf93e0SCaesar Wang			cooling-maps {
4676ddf93e0SCaesar Wang				map0 {
4686ddf93e0SCaesar Wang					trip = <&gpu_alert0>;
4696ddf93e0SCaesar Wang					cooling-device =
470cdd46460SViresh Kumar					<&cpu_b0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
471cdd46460SViresh Kumar					<&cpu_b1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
472cdd46460SViresh Kumar					<&cpu_b2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
473cdd46460SViresh Kumar					<&cpu_b3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
4746ddf93e0SCaesar Wang				};
4756ddf93e0SCaesar Wang			};
4766ddf93e0SCaesar Wang		};
477f990238fSCaesar Wang	};
478f990238fSCaesar Wang
479f990238fSCaesar Wang	tsadc: tsadc@ff280000 {
480f990238fSCaesar Wang		compatible = "rockchip,rk3368-tsadc";
481f990238fSCaesar Wang		reg = <0x0 0xff280000 0x0 0x100>;
482f990238fSCaesar Wang		interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
483f990238fSCaesar Wang		clocks = <&cru SCLK_TSADC>, <&cru PCLK_TSADC>;
484f990238fSCaesar Wang		clock-names = "tsadc", "apb_pclk";
485f990238fSCaesar Wang		resets = <&cru SRST_TSADC>;
486f990238fSCaesar Wang		reset-names = "tsadc-apb";
487f990238fSCaesar Wang		pinctrl-names = "init", "default", "sleep";
4882bc65fefSJohan Jonker		pinctrl-0 = <&otp_pin>;
489f990238fSCaesar Wang		pinctrl-1 = <&otp_out>;
4902bc65fefSJohan Jonker		pinctrl-2 = <&otp_pin>;
491f990238fSCaesar Wang		#thermal-sensor-cells = <1>;
492f990238fSCaesar Wang		rockchip,hw-tshut-temp = <95000>;
493f990238fSCaesar Wang		status = "disabled";
494f990238fSCaesar Wang	};
495f990238fSCaesar Wang
496b790c2caSHeiko Stübner	gmac: ethernet@ff290000 {
497b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-gmac";
498b790c2caSHeiko Stübner		reg = <0x0 0xff290000 0x0 0x10000>;
499b790c2caSHeiko Stübner		interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
500b790c2caSHeiko Stübner		interrupt-names = "macirq";
501b790c2caSHeiko Stübner		rockchip,grf = <&grf>;
502b790c2caSHeiko Stübner		clocks = <&cru SCLK_MAC>,
503b790c2caSHeiko Stübner			<&cru SCLK_MAC_RX>, <&cru SCLK_MAC_TX>,
504b790c2caSHeiko Stübner			<&cru SCLK_MACREF>, <&cru SCLK_MACREF_OUT>,
505b790c2caSHeiko Stübner			<&cru ACLK_GMAC>, <&cru PCLK_GMAC>;
506b790c2caSHeiko Stübner		clock-names = "stmmaceth",
507b790c2caSHeiko Stübner			"mac_clk_rx", "mac_clk_tx",
508b790c2caSHeiko Stübner			"clk_mac_ref", "clk_mac_refout",
509b790c2caSHeiko Stübner			"aclk_mac", "pclk_mac";
510b790c2caSHeiko Stübner		status = "disabled";
511b790c2caSHeiko Stübner	};
512b790c2caSHeiko Stübner
513b790c2caSHeiko Stübner	usb_host0_ehci: usb@ff500000 {
514b790c2caSHeiko Stübner		compatible = "generic-ehci";
515b790c2caSHeiko Stübner		reg = <0x0 0xff500000 0x0 0x100>;
516b790c2caSHeiko Stübner		interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
517b790c2caSHeiko Stübner		clocks = <&cru HCLK_HOST0>;
518b790c2caSHeiko Stübner		status = "disabled";
519b790c2caSHeiko Stübner	};
520b790c2caSHeiko Stübner
521b790c2caSHeiko Stübner	usb_otg: usb@ff580000 {
522b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-usb", "rockchip,rk3066-usb",
523b790c2caSHeiko Stübner				"snps,dwc2";
524b790c2caSHeiko Stübner		reg = <0x0 0xff580000 0x0 0x40000>;
525b790c2caSHeiko Stübner		interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
526b790c2caSHeiko Stübner		clocks = <&cru HCLK_OTG0>;
527b790c2caSHeiko Stübner		clock-names = "otg";
528b790c2caSHeiko Stübner		dr_mode = "otg";
529b790c2caSHeiko Stübner		g-np-tx-fifo-size = <16>;
530b790c2caSHeiko Stübner		g-rx-fifo-size = <275>;
531b790c2caSHeiko Stübner		g-tx-fifo-size = <256 128 128 64 64 32>;
532b790c2caSHeiko Stübner		status = "disabled";
533b790c2caSHeiko Stübner	};
534b790c2caSHeiko Stübner
535b790c2caSHeiko Stübner	i2c0: i2c@ff650000 {
536b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-i2c", "rockchip,rk3288-i2c";
537b790c2caSHeiko Stübner		reg = <0x0 0xff650000 0x0 0x1000>;
538b790c2caSHeiko Stübner		clocks = <&cru PCLK_I2C0>;
539b790c2caSHeiko Stübner		clock-names = "i2c";
540b790c2caSHeiko Stübner		interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
541b790c2caSHeiko Stübner		pinctrl-names = "default";
542b790c2caSHeiko Stübner		pinctrl-0 = <&i2c0_xfer>;
543b790c2caSHeiko Stübner		#address-cells = <1>;
544b790c2caSHeiko Stübner		#size-cells = <0>;
545b790c2caSHeiko Stübner		status = "disabled";
546b790c2caSHeiko Stübner	};
547b790c2caSHeiko Stübner
5482c60dc43SAndy Yan	i2c1: i2c@ff660000 {
549b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-i2c", "rockchip,rk3288-i2c";
550b790c2caSHeiko Stübner		reg = <0x0 0xff660000 0x0 0x1000>;
551b790c2caSHeiko Stübner		interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
552b790c2caSHeiko Stübner		#address-cells = <1>;
553b790c2caSHeiko Stübner		#size-cells = <0>;
554b790c2caSHeiko Stübner		clock-names = "i2c";
5552c60dc43SAndy Yan		clocks = <&cru PCLK_I2C1>;
556b790c2caSHeiko Stübner		pinctrl-names = "default";
5572c60dc43SAndy Yan		pinctrl-0 = <&i2c1_xfer>;
558b790c2caSHeiko Stübner		status = "disabled";
559b790c2caSHeiko Stübner	};
560b790c2caSHeiko Stübner
561fa54322aSCaesar Wang	pwm0: pwm@ff680000 {
562fa54322aSCaesar Wang		compatible = "rockchip,rk3368-pwm", "rockchip,rk3288-pwm";
563fa54322aSCaesar Wang		reg = <0x0 0xff680000 0x0 0x10>;
564fa54322aSCaesar Wang		#pwm-cells = <3>;
565fa54322aSCaesar Wang		pinctrl-names = "default";
566fa54322aSCaesar Wang		pinctrl-0 = <&pwm0_pin>;
567fa54322aSCaesar Wang		clocks = <&cru PCLK_PWM1>;
568fa54322aSCaesar Wang		clock-names = "pwm";
569fa54322aSCaesar Wang		status = "disabled";
570fa54322aSCaesar Wang	};
571fa54322aSCaesar Wang
572fa54322aSCaesar Wang	pwm1: pwm@ff680010 {
573fa54322aSCaesar Wang		compatible = "rockchip,rk3368-pwm", "rockchip,rk3288-pwm";
574fa54322aSCaesar Wang		reg = <0x0 0xff680010 0x0 0x10>;
575fa54322aSCaesar Wang		#pwm-cells = <3>;
576fa54322aSCaesar Wang		pinctrl-names = "default";
577fa54322aSCaesar Wang		pinctrl-0 = <&pwm1_pin>;
578fa54322aSCaesar Wang		clocks = <&cru PCLK_PWM1>;
579fa54322aSCaesar Wang		clock-names = "pwm";
580fa54322aSCaesar Wang		status = "disabled";
581fa54322aSCaesar Wang	};
582fa54322aSCaesar Wang
583fa54322aSCaesar Wang	pwm2: pwm@ff680020 {
584fa54322aSCaesar Wang		compatible = "rockchip,rk3368-pwm", "rockchip,rk3288-pwm";
585fa54322aSCaesar Wang		reg = <0x0 0xff680020 0x0 0x10>;
586fa54322aSCaesar Wang		#pwm-cells = <3>;
587fa54322aSCaesar Wang		clocks = <&cru PCLK_PWM1>;
588fa54322aSCaesar Wang		clock-names = "pwm";
589fa54322aSCaesar Wang		status = "disabled";
590fa54322aSCaesar Wang	};
591fa54322aSCaesar Wang
592fa54322aSCaesar Wang	pwm3: pwm@ff680030 {
593fa54322aSCaesar Wang		compatible = "rockchip,rk3368-pwm", "rockchip,rk3288-pwm";
594fa54322aSCaesar Wang		reg = <0x0 0xff680030 0x0 0x10>;
595fa54322aSCaesar Wang		#pwm-cells = <3>;
596fa54322aSCaesar Wang		pinctrl-names = "default";
597fa54322aSCaesar Wang		pinctrl-0 = <&pwm3_pin>;
598fa54322aSCaesar Wang		clocks = <&cru PCLK_PWM1>;
599fa54322aSCaesar Wang		clock-names = "pwm";
600fa54322aSCaesar Wang		status = "disabled";
601fa54322aSCaesar Wang	};
602fa54322aSCaesar Wang
603b790c2caSHeiko Stübner	uart2: serial@ff690000 {
604b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-uart", "snps,dw-apb-uart";
605b790c2caSHeiko Stübner		reg = <0x0 0xff690000 0x0 0x100>;
606b790c2caSHeiko Stübner		clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>;
607b790c2caSHeiko Stübner		clock-names = "baudclk", "apb_pclk";
608b790c2caSHeiko Stübner		interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
609b790c2caSHeiko Stübner		pinctrl-names = "default";
610b790c2caSHeiko Stübner		pinctrl-0 = <&uart2_xfer>;
611b790c2caSHeiko Stübner		reg-shift = <2>;
612b790c2caSHeiko Stübner		reg-io-width = <4>;
613b790c2caSHeiko Stübner		status = "disabled";
614b790c2caSHeiko Stübner	};
615b790c2caSHeiko Stübner
6166e7f9f5aSCaesar Wang	mbox: mbox@ff6b0000 {
6176e7f9f5aSCaesar Wang		compatible = "rockchip,rk3368-mailbox";
6186e7f9f5aSCaesar Wang		reg = <0x0 0xff6b0000 0x0 0x1000>;
6196e7f9f5aSCaesar Wang		interrupts = <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>,
6206e7f9f5aSCaesar Wang			     <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>,
6216e7f9f5aSCaesar Wang			     <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>,
6226e7f9f5aSCaesar Wang			     <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>;
6236e7f9f5aSCaesar Wang		clocks = <&cru PCLK_MAILBOX>;
6246e7f9f5aSCaesar Wang		clock-names = "pclk_mailbox";
6256e7f9f5aSCaesar Wang		#mbox-cells = <1>;
626ec9b506fSJianqun Xu		status = "disabled";
6276e7f9f5aSCaesar Wang	};
6286e7f9f5aSCaesar Wang
629b790c2caSHeiko Stübner	pmugrf: syscon@ff738000 {
6304cca3d94SHeiko Stuebner		compatible = "rockchip,rk3368-pmugrf", "syscon", "simple-mfd";
631b790c2caSHeiko Stübner		reg = <0x0 0xff738000 0x0 0x1000>;
632d1ab05abSHeiko Stuebner
633d1ab05abSHeiko Stuebner		pmu_io_domains: io-domains {
634d1ab05abSHeiko Stuebner			compatible = "rockchip,rk3368-pmu-io-voltage-domain";
635d1ab05abSHeiko Stuebner			status = "disabled";
636d1ab05abSHeiko Stuebner		};
6372e9e2863SAndy Yan
6382e9e2863SAndy Yan		reboot-mode {
6392e9e2863SAndy Yan			compatible = "syscon-reboot-mode";
6402e9e2863SAndy Yan			offset = <0x200>;
6412e9e2863SAndy Yan			mode-normal = <BOOT_NORMAL>;
6422e9e2863SAndy Yan			mode-recovery = <BOOT_RECOVERY>;
6432e9e2863SAndy Yan			mode-bootloader = <BOOT_FASTBOOT>;
6442e9e2863SAndy Yan			mode-loader = <BOOT_BL_DOWNLOAD>;
6452e9e2863SAndy Yan		};
646b790c2caSHeiko Stübner	};
647b790c2caSHeiko Stübner
648b790c2caSHeiko Stübner	cru: clock-controller@ff760000 {
649b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-cru";
650b790c2caSHeiko Stübner		reg = <0x0 0xff760000 0x0 0x1000>;
651b790c2caSHeiko Stübner		rockchip,grf = <&grf>;
652b790c2caSHeiko Stübner		#clock-cells = <1>;
653b790c2caSHeiko Stübner		#reset-cells = <1>;
654b790c2caSHeiko Stübner	};
655b790c2caSHeiko Stübner
656b790c2caSHeiko Stübner	grf: syscon@ff770000 {
6574cca3d94SHeiko Stuebner		compatible = "rockchip,rk3368-grf", "syscon", "simple-mfd";
658b790c2caSHeiko Stübner		reg = <0x0 0xff770000 0x0 0x1000>;
659d1ab05abSHeiko Stuebner
660d1ab05abSHeiko Stuebner		io_domains: io-domains {
661d1ab05abSHeiko Stuebner			compatible = "rockchip,rk3368-io-voltage-domain";
662d1ab05abSHeiko Stuebner			status = "disabled";
663d1ab05abSHeiko Stuebner		};
664b790c2caSHeiko Stübner	};
665b790c2caSHeiko Stübner
666b790c2caSHeiko Stübner	wdt: watchdog@ff800000 {
667b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-wdt", "snps,dw-wdt";
668b790c2caSHeiko Stübner		reg = <0x0 0xff800000 0x0 0x100>;
669b790c2caSHeiko Stübner		clocks = <&cru PCLK_WDT>;
670b790c2caSHeiko Stübner		interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
671b790c2caSHeiko Stübner		status = "disabled";
672b790c2caSHeiko Stübner	};
673b790c2caSHeiko Stübner
674b8084e5bSCaesar Wang	timer@ff810000 {
675b8084e5bSCaesar Wang		compatible = "rockchip,rk3368-timer", "rockchip,rk3288-timer";
676b8084e5bSCaesar Wang		reg = <0x0 0xff810000 0x0 0x20>;
677b8084e5bSCaesar Wang		interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
678b8084e5bSCaesar Wang	};
679b8084e5bSCaesar Wang
6800328d68eSSugar Zhang	spdif: spdif@ff880000 {
6810328d68eSSugar Zhang		compatible = "rockchip,rk3368-spdif";
6820328d68eSSugar Zhang		reg = <0x0 0xff880000 0x0 0x1000>;
6830328d68eSSugar Zhang		interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
6840328d68eSSugar Zhang		clocks = <&cru SCLK_SPDIF_8CH>, <&cru HCLK_SPDIF>;
6850328d68eSSugar Zhang		clock-names = "mclk", "hclk";
6860328d68eSSugar Zhang		dmas = <&dmac_bus 3>;
6870328d68eSSugar Zhang		dma-names = "tx";
6880328d68eSSugar Zhang		pinctrl-names = "default";
6890328d68eSSugar Zhang		pinctrl-0 = <&spdif_tx>;
6900328d68eSSugar Zhang		status = "disabled";
6910328d68eSSugar Zhang	};
6920328d68eSSugar Zhang
693f7d89dfeSJianqun Xu	i2s_2ch: i2s-2ch@ff890000 {
694f7d89dfeSJianqun Xu		compatible = "rockchip,rk3368-i2s", "rockchip,rk3066-i2s";
695f7d89dfeSJianqun Xu		reg = <0x0 0xff890000 0x0 0x1000>;
696f7d89dfeSJianqun Xu		interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
697f7d89dfeSJianqun Xu		clock-names = "i2s_clk", "i2s_hclk";
698f7d89dfeSJianqun Xu		clocks = <&cru SCLK_I2S_2CH>, <&cru HCLK_I2S_2CH>;
699f7d89dfeSJianqun Xu		dmas = <&dmac_bus 6>, <&dmac_bus 7>;
700f7d89dfeSJianqun Xu		dma-names = "tx", "rx";
701f7d89dfeSJianqun Xu		status = "disabled";
702f7d89dfeSJianqun Xu	};
703f7d89dfeSJianqun Xu
704f7d89dfeSJianqun Xu	i2s_8ch: i2s-8ch@ff898000 {
705f7d89dfeSJianqun Xu		compatible = "rockchip,rk3368-i2s", "rockchip,rk3066-i2s";
706f7d89dfeSJianqun Xu		reg = <0x0 0xff898000 0x0 0x1000>;
707f7d89dfeSJianqun Xu		interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
708f7d89dfeSJianqun Xu		clock-names = "i2s_clk", "i2s_hclk";
709f7d89dfeSJianqun Xu		clocks = <&cru SCLK_I2S_8CH>, <&cru HCLK_I2S_8CH>;
710f7d89dfeSJianqun Xu		dmas = <&dmac_bus 0>, <&dmac_bus 1>;
711f7d89dfeSJianqun Xu		dma-names = "tx", "rx";
712f7d89dfeSJianqun Xu		pinctrl-names = "default";
713f7d89dfeSJianqun Xu		pinctrl-0 = <&i2s_8ch_bus>;
714f7d89dfeSJianqun Xu		status = "disabled";
715f7d89dfeSJianqun Xu	};
716f7d89dfeSJianqun Xu
717cede4c79SSimon Xue	iep_mmu: iommu@ff900800 {
718cede4c79SSimon Xue		compatible = "rockchip,iommu";
719cede4c79SSimon Xue		reg = <0x0 0xff900800 0x0 0x100>;
720b521102dSArnd Bergmann		interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
721cede4c79SSimon Xue		interrupt-names = "iep_mmu";
722df3bcde7SJeffy Chen		clocks = <&cru ACLK_IEP>, <&cru HCLK_IEP>;
723df3bcde7SJeffy Chen		clock-names = "aclk", "iface";
724cede4c79SSimon Xue		#iommu-cells = <0>;
725cede4c79SSimon Xue		status = "disabled";
726cede4c79SSimon Xue	};
727cede4c79SSimon Xue
728cede4c79SSimon Xue	isp_mmu: iommu@ff914000 {
729cede4c79SSimon Xue		compatible = "rockchip,iommu";
730cede4c79SSimon Xue		reg = <0x0 0xff914000 0x0 0x100>,
731cede4c79SSimon Xue		      <0x0 0xff915000 0x0 0x100>;
732cede4c79SSimon Xue		interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
733cede4c79SSimon Xue		interrupt-names = "isp_mmu";
734df3bcde7SJeffy Chen		clocks = <&cru ACLK_ISP>, <&cru HCLK_ISP>;
735df3bcde7SJeffy Chen		clock-names = "aclk", "iface";
736cede4c79SSimon Xue		#iommu-cells = <0>;
737cede4c79SSimon Xue		rockchip,disable-mmu-reset;
738cede4c79SSimon Xue		status = "disabled";
739cede4c79SSimon Xue	};
740cede4c79SSimon Xue
741cede4c79SSimon Xue	vop_mmu: iommu@ff930300 {
742cede4c79SSimon Xue		compatible = "rockchip,iommu";
743cede4c79SSimon Xue		reg = <0x0 0xff930300 0x0 0x100>;
744cede4c79SSimon Xue		interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
745cede4c79SSimon Xue		interrupt-names = "vop_mmu";
746df3bcde7SJeffy Chen		clocks = <&cru ACLK_VOP>, <&cru HCLK_VOP>;
747df3bcde7SJeffy Chen		clock-names = "aclk", "iface";
748cede4c79SSimon Xue		#iommu-cells = <0>;
749cede4c79SSimon Xue		status = "disabled";
750cede4c79SSimon Xue	};
751cede4c79SSimon Xue
752cede4c79SSimon Xue	hevc_mmu: iommu@ff9a0440 {
753cede4c79SSimon Xue		compatible = "rockchip,iommu";
754cede4c79SSimon Xue		reg = <0x0 0xff9a0440 0x0 0x40>,
755cede4c79SSimon Xue		      <0x0 0xff9a0480 0x0 0x40>;
756cede4c79SSimon Xue		interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
757cede4c79SSimon Xue		interrupt-names = "hevc_mmu";
758df3bcde7SJeffy Chen		clocks = <&cru ACLK_VIDEO>, <&cru HCLK_VIDEO>;
759df3bcde7SJeffy Chen		clock-names = "aclk", "iface";
760cede4c79SSimon Xue		#iommu-cells = <0>;
761cede4c79SSimon Xue		status = "disabled";
762cede4c79SSimon Xue	};
763cede4c79SSimon Xue
764cede4c79SSimon Xue	vpu_mmu: iommu@ff9a0800 {
765cede4c79SSimon Xue		compatible = "rockchip,iommu";
766cede4c79SSimon Xue		reg = <0x0 0xff9a0800 0x0 0x100>;
767cede4c79SSimon Xue		interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
768cede4c79SSimon Xue			     <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
769cede4c79SSimon Xue		interrupt-names = "vepu_mmu", "vdpu_mmu";
770df3bcde7SJeffy Chen		clocks = <&cru ACLK_VIDEO>, <&cru HCLK_VIDEO>;
771df3bcde7SJeffy Chen		clock-names = "aclk", "iface";
772cede4c79SSimon Xue		#iommu-cells = <0>;
773cede4c79SSimon Xue		status = "disabled";
774cede4c79SSimon Xue	};
775cede4c79SSimon Xue
7766f8c5393SRomain Perier	efuse256: efuse@ffb00000 {
7776f8c5393SRomain Perier		compatible = "rockchip,rk3368-efuse";
7786f8c5393SRomain Perier		reg = <0x0 0xffb00000 0x0 0x20>;
7796f8c5393SRomain Perier		#address-cells = <1>;
7806f8c5393SRomain Perier		#size-cells = <1>;
7816f8c5393SRomain Perier		clocks = <&cru PCLK_EFUSE256>;
7826f8c5393SRomain Perier		clock-names = "pclk_efuse";
7836f8c5393SRomain Perier
7846f8c5393SRomain Perier		cpu_leakage: cpu-leakage@17 {
7856f8c5393SRomain Perier			reg = <0x17 0x1>;
7866f8c5393SRomain Perier		};
7876f8c5393SRomain Perier		temp_adjust: temp-adjust@1f {
7886f8c5393SRomain Perier			reg = <0x1f 0x1>;
7896f8c5393SRomain Perier		};
7906f8c5393SRomain Perier	};
7916f8c5393SRomain Perier
792b790c2caSHeiko Stübner	gic: interrupt-controller@ffb71000 {
793b790c2caSHeiko Stübner		compatible = "arm,gic-400";
794b790c2caSHeiko Stübner		interrupt-controller;
795b790c2caSHeiko Stübner		#interrupt-cells = <3>;
796b790c2caSHeiko Stübner		#address-cells = <0>;
797b790c2caSHeiko Stübner
798b790c2caSHeiko Stübner		reg = <0x0 0xffb71000 0x0 0x1000>,
799ad1cfdf5SCaesar Wang		      <0x0 0xffb72000 0x0 0x2000>,
800b790c2caSHeiko Stübner		      <0x0 0xffb74000 0x0 0x2000>,
801b790c2caSHeiko Stübner		      <0x0 0xffb76000 0x0 0x2000>;
802b790c2caSHeiko Stübner		interrupts = <GIC_PPI 9
803b790c2caSHeiko Stübner		      (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_HIGH)>;
804b790c2caSHeiko Stübner	};
805b790c2caSHeiko Stübner
806b790c2caSHeiko Stübner	pinctrl: pinctrl {
807b790c2caSHeiko Stübner		compatible = "rockchip,rk3368-pinctrl";
808b790c2caSHeiko Stübner		rockchip,grf = <&grf>;
809b790c2caSHeiko Stübner		rockchip,pmu = <&pmugrf>;
810b790c2caSHeiko Stübner		#address-cells = <0x2>;
811b790c2caSHeiko Stübner		#size-cells = <0x2>;
812b790c2caSHeiko Stübner		ranges;
813b790c2caSHeiko Stübner
814b790c2caSHeiko Stübner		gpio0: gpio0@ff750000 {
815b790c2caSHeiko Stübner			compatible = "rockchip,gpio-bank";
816b790c2caSHeiko Stübner			reg = <0x0 0xff750000 0x0 0x100>;
817b790c2caSHeiko Stübner			clocks = <&cru PCLK_GPIO0>;
818b790c2caSHeiko Stübner			interrupts = <GIC_SPI 0x51 IRQ_TYPE_LEVEL_HIGH>;
819b790c2caSHeiko Stübner
820b790c2caSHeiko Stübner			gpio-controller;
821b790c2caSHeiko Stübner			#gpio-cells = <0x2>;
822b790c2caSHeiko Stübner
823b790c2caSHeiko Stübner			interrupt-controller;
824b790c2caSHeiko Stübner			#interrupt-cells = <0x2>;
825b790c2caSHeiko Stübner		};
826b790c2caSHeiko Stübner
827b790c2caSHeiko Stübner		gpio1: gpio1@ff780000 {
828b790c2caSHeiko Stübner			compatible = "rockchip,gpio-bank";
829b790c2caSHeiko Stübner			reg = <0x0 0xff780000 0x0 0x100>;
830b790c2caSHeiko Stübner			clocks = <&cru PCLK_GPIO1>;
831b790c2caSHeiko Stübner			interrupts = <GIC_SPI 0x52 IRQ_TYPE_LEVEL_HIGH>;
832b790c2caSHeiko Stübner
833b790c2caSHeiko Stübner			gpio-controller;
834b790c2caSHeiko Stübner			#gpio-cells = <0x2>;
835b790c2caSHeiko Stübner
836b790c2caSHeiko Stübner			interrupt-controller;
837b790c2caSHeiko Stübner			#interrupt-cells = <0x2>;
838b790c2caSHeiko Stübner		};
839b790c2caSHeiko Stübner
840b790c2caSHeiko Stübner		gpio2: gpio2@ff790000 {
841b790c2caSHeiko Stübner			compatible = "rockchip,gpio-bank";
842b790c2caSHeiko Stübner			reg = <0x0 0xff790000 0x0 0x100>;
843b790c2caSHeiko Stübner			clocks = <&cru PCLK_GPIO2>;
844b790c2caSHeiko Stübner			interrupts = <GIC_SPI 0x53 IRQ_TYPE_LEVEL_HIGH>;
845b790c2caSHeiko Stübner
846b790c2caSHeiko Stübner			gpio-controller;
847b790c2caSHeiko Stübner			#gpio-cells = <0x2>;
848b790c2caSHeiko Stübner
849b790c2caSHeiko Stübner			interrupt-controller;
850b790c2caSHeiko Stübner			#interrupt-cells = <0x2>;
851b790c2caSHeiko Stübner		};
852b790c2caSHeiko Stübner
853b790c2caSHeiko Stübner		gpio3: gpio3@ff7a0000 {
854b790c2caSHeiko Stübner			compatible = "rockchip,gpio-bank";
855b790c2caSHeiko Stübner			reg = <0x0 0xff7a0000 0x0 0x100>;
856b790c2caSHeiko Stübner			clocks = <&cru PCLK_GPIO3>;
857b790c2caSHeiko Stübner			interrupts = <GIC_SPI 0x54 IRQ_TYPE_LEVEL_HIGH>;
858b790c2caSHeiko Stübner
859b790c2caSHeiko Stübner			gpio-controller;
860b790c2caSHeiko Stübner			#gpio-cells = <0x2>;
861b790c2caSHeiko Stübner
862b790c2caSHeiko Stübner			interrupt-controller;
863b790c2caSHeiko Stübner			#interrupt-cells = <0x2>;
864b790c2caSHeiko Stübner		};
865b790c2caSHeiko Stübner
866b790c2caSHeiko Stübner		pcfg_pull_up: pcfg-pull-up {
867b790c2caSHeiko Stübner			bias-pull-up;
868b790c2caSHeiko Stübner		};
869b790c2caSHeiko Stübner
870b790c2caSHeiko Stübner		pcfg_pull_down: pcfg-pull-down {
871b790c2caSHeiko Stübner			bias-pull-down;
872b790c2caSHeiko Stübner		};
873b790c2caSHeiko Stübner
874b790c2caSHeiko Stübner		pcfg_pull_none: pcfg-pull-none {
875b790c2caSHeiko Stübner			bias-disable;
876b790c2caSHeiko Stübner		};
877b790c2caSHeiko Stübner
878b790c2caSHeiko Stübner		pcfg_pull_none_12ma: pcfg-pull-none-12ma {
879b790c2caSHeiko Stübner			bias-disable;
880b790c2caSHeiko Stübner			drive-strength = <12>;
881b790c2caSHeiko Stübner		};
882b790c2caSHeiko Stübner
883b790c2caSHeiko Stübner		emmc {
884b790c2caSHeiko Stübner			emmc_clk: emmc-clk {
885d64420e8SHeiko Stuebner				rockchip,pins = <2 RK_PA4 2 &pcfg_pull_none>;
886b790c2caSHeiko Stübner			};
887b790c2caSHeiko Stübner
888b790c2caSHeiko Stübner			emmc_cmd: emmc-cmd {
889d64420e8SHeiko Stuebner				rockchip,pins = <1 RK_PD2 2 &pcfg_pull_up>;
890b790c2caSHeiko Stübner			};
891b790c2caSHeiko Stübner
892b790c2caSHeiko Stübner			emmc_pwr: emmc-pwr {
893d64420e8SHeiko Stuebner				rockchip,pins = <1 RK_PD3 2 &pcfg_pull_up>;
894b790c2caSHeiko Stübner			};
895b790c2caSHeiko Stübner
896b790c2caSHeiko Stübner			emmc_bus1: emmc-bus1 {
897d64420e8SHeiko Stuebner				rockchip,pins = <1 RK_PC2 2 &pcfg_pull_up>;
898b790c2caSHeiko Stübner			};
899b790c2caSHeiko Stübner
900b790c2caSHeiko Stübner			emmc_bus4: emmc-bus4 {
901d64420e8SHeiko Stuebner				rockchip,pins = <1 RK_PC2 2 &pcfg_pull_up>,
902d64420e8SHeiko Stuebner						<1 RK_PC3 2 &pcfg_pull_up>,
903d64420e8SHeiko Stuebner						<1 RK_PC4 2 &pcfg_pull_up>,
904d64420e8SHeiko Stuebner						<1 RK_PC5 2 &pcfg_pull_up>;
905b790c2caSHeiko Stübner			};
906b790c2caSHeiko Stübner
907b790c2caSHeiko Stübner			emmc_bus8: emmc-bus8 {
908d64420e8SHeiko Stuebner				rockchip,pins = <1 RK_PC2 2 &pcfg_pull_up>,
909d64420e8SHeiko Stuebner						<1 RK_PC3 2 &pcfg_pull_up>,
910d64420e8SHeiko Stuebner						<1 RK_PC4 2 &pcfg_pull_up>,
911d64420e8SHeiko Stuebner						<1 RK_PC5 2 &pcfg_pull_up>,
912d64420e8SHeiko Stuebner						<1 RK_PC6 2 &pcfg_pull_up>,
913d64420e8SHeiko Stuebner						<1 RK_PC7 2 &pcfg_pull_up>,
914d64420e8SHeiko Stuebner						<1 RK_PD0 2 &pcfg_pull_up>,
915d64420e8SHeiko Stuebner						<1 RK_PD1 2 &pcfg_pull_up>;
916b790c2caSHeiko Stübner			};
917b790c2caSHeiko Stübner		};
918b790c2caSHeiko Stübner
919b790c2caSHeiko Stübner		gmac {
920b790c2caSHeiko Stübner			rgmii_pins: rgmii-pins {
921d64420e8SHeiko Stuebner				rockchip,pins =	<3 RK_PC6 1 &pcfg_pull_none>,
922d64420e8SHeiko Stuebner						<3 RK_PD0 1 &pcfg_pull_none>,
923d64420e8SHeiko Stuebner						<3 RK_PC3 1 &pcfg_pull_none>,
924d64420e8SHeiko Stuebner						<3 RK_PB0 1 &pcfg_pull_none_12ma>,
925d64420e8SHeiko Stuebner						<3 RK_PB1 1 &pcfg_pull_none_12ma>,
926d64420e8SHeiko Stuebner						<3 RK_PB2 1 &pcfg_pull_none_12ma>,
927d64420e8SHeiko Stuebner						<3 RK_PB6 1 &pcfg_pull_none_12ma>,
928d64420e8SHeiko Stuebner						<3 RK_PD4 1 &pcfg_pull_none_12ma>,
929d64420e8SHeiko Stuebner						<3 RK_PB5 1 &pcfg_pull_none_12ma>,
930d64420e8SHeiko Stuebner						<3 RK_PB7 1 &pcfg_pull_none>,
931d64420e8SHeiko Stuebner						<3 RK_PC0 1 &pcfg_pull_none>,
932d64420e8SHeiko Stuebner						<3 RK_PC1 1 &pcfg_pull_none>,
933d64420e8SHeiko Stuebner						<3 RK_PC2 1 &pcfg_pull_none>,
934d64420e8SHeiko Stuebner						<3 RK_PD1 1 &pcfg_pull_none>,
935d64420e8SHeiko Stuebner						<3 RK_PC4 1 &pcfg_pull_none>;
936b790c2caSHeiko Stübner			};
937b790c2caSHeiko Stübner
938b790c2caSHeiko Stübner			rmii_pins: rmii-pins {
939d64420e8SHeiko Stuebner				rockchip,pins =	<3 RK_PC6 1 &pcfg_pull_none>,
940d64420e8SHeiko Stuebner						<3 RK_PD0 1 &pcfg_pull_none>,
941d64420e8SHeiko Stuebner						<3 RK_PC3 1 &pcfg_pull_none>,
942d64420e8SHeiko Stuebner						<3 RK_PB0 1 &pcfg_pull_none_12ma>,
943d64420e8SHeiko Stuebner						<3 RK_PB1 1 &pcfg_pull_none_12ma>,
944d64420e8SHeiko Stuebner						<3 RK_PB5 1 &pcfg_pull_none_12ma>,
945d64420e8SHeiko Stuebner						<3 RK_PB7 1 &pcfg_pull_none>,
946d64420e8SHeiko Stuebner						<3 RK_PC0 1 &pcfg_pull_none>,
947d64420e8SHeiko Stuebner						<3 RK_PC4 1 &pcfg_pull_none>,
948d64420e8SHeiko Stuebner						<3 RK_PC5 1 &pcfg_pull_none>;
949b790c2caSHeiko Stübner			};
950b790c2caSHeiko Stübner		};
951b790c2caSHeiko Stübner
952b790c2caSHeiko Stübner		i2c0 {
953b790c2caSHeiko Stübner			i2c0_xfer: i2c0-xfer {
954d64420e8SHeiko Stuebner				rockchip,pins = <0 RK_PA6 1 &pcfg_pull_none>,
955d64420e8SHeiko Stuebner						<0 RK_PA7 1 &pcfg_pull_none>;
956b790c2caSHeiko Stübner			};
957b790c2caSHeiko Stübner		};
958b790c2caSHeiko Stübner
959b790c2caSHeiko Stübner		i2c1 {
960b790c2caSHeiko Stübner			i2c1_xfer: i2c1-xfer {
961d64420e8SHeiko Stuebner				rockchip,pins = <2 RK_PC5 1 &pcfg_pull_none>,
962d64420e8SHeiko Stuebner						<2 RK_PC6 1 &pcfg_pull_none>;
963b790c2caSHeiko Stübner			};
964b790c2caSHeiko Stübner		};
965b790c2caSHeiko Stübner
966b790c2caSHeiko Stübner		i2c2 {
967b790c2caSHeiko Stübner			i2c2_xfer: i2c2-xfer {
968d64420e8SHeiko Stuebner				rockchip,pins = <0 RK_PB1 2 &pcfg_pull_none>,
969d64420e8SHeiko Stuebner						<3 RK_PD7 2 &pcfg_pull_none>;
970b790c2caSHeiko Stübner			};
971b790c2caSHeiko Stübner		};
972b790c2caSHeiko Stübner
973b790c2caSHeiko Stübner		i2c3 {
974b790c2caSHeiko Stübner			i2c3_xfer: i2c3-xfer {
975d64420e8SHeiko Stuebner				rockchip,pins = <1 RK_PC0 1 &pcfg_pull_none>,
976d64420e8SHeiko Stuebner						<1 RK_PC1 1 &pcfg_pull_none>;
977b790c2caSHeiko Stübner			};
978b790c2caSHeiko Stübner		};
979b790c2caSHeiko Stübner
980b790c2caSHeiko Stübner		i2c4 {
981b790c2caSHeiko Stübner			i2c4_xfer: i2c4-xfer {
982d64420e8SHeiko Stuebner				rockchip,pins = <3 RK_PD0 2 &pcfg_pull_none>,
983d64420e8SHeiko Stuebner						<3 RK_PD1 2 &pcfg_pull_none>;
984b790c2caSHeiko Stübner			};
985b790c2caSHeiko Stübner		};
986b790c2caSHeiko Stübner
987b790c2caSHeiko Stübner		i2c5 {
988b790c2caSHeiko Stübner			i2c5_xfer: i2c5-xfer {
989d64420e8SHeiko Stuebner				rockchip,pins = <3 RK_PD2 2 &pcfg_pull_none>,
990d64420e8SHeiko Stuebner						<3 RK_PD3 2 &pcfg_pull_none>;
991b790c2caSHeiko Stübner			};
992b790c2caSHeiko Stübner		};
993b790c2caSHeiko Stübner
994f7d89dfeSJianqun Xu		i2s {
995f7d89dfeSJianqun Xu			i2s_8ch_bus: i2s-8ch-bus {
996d64420e8SHeiko Stuebner				rockchip,pins = <2 RK_PB4 1 &pcfg_pull_none>,
997d64420e8SHeiko Stuebner						<2 RK_PB5 1 &pcfg_pull_none>,
998d64420e8SHeiko Stuebner						<2 RK_PB6 1 &pcfg_pull_none>,
999d64420e8SHeiko Stuebner						<2 RK_PB7 1 &pcfg_pull_none>,
1000d64420e8SHeiko Stuebner						<2 RK_PC0 1 &pcfg_pull_none>,
1001d64420e8SHeiko Stuebner						<2 RK_PC1 1 &pcfg_pull_none>,
1002d64420e8SHeiko Stuebner						<2 RK_PC2 1 &pcfg_pull_none>,
1003d64420e8SHeiko Stuebner						<2 RK_PC3 1 &pcfg_pull_none>,
1004d64420e8SHeiko Stuebner						<2 RK_PC4 1 &pcfg_pull_none>;
1005f7d89dfeSJianqun Xu			};
1006f7d89dfeSJianqun Xu		};
1007f7d89dfeSJianqun Xu
1008fa54322aSCaesar Wang		pwm0 {
1009fa54322aSCaesar Wang			pwm0_pin: pwm0-pin {
1010d64420e8SHeiko Stuebner				rockchip,pins = <3 RK_PB0 2 &pcfg_pull_none>;
1011fa54322aSCaesar Wang			};
1012fa54322aSCaesar Wang		};
1013fa54322aSCaesar Wang
1014fa54322aSCaesar Wang		pwm1 {
1015fa54322aSCaesar Wang			pwm1_pin: pwm1-pin {
1016d64420e8SHeiko Stuebner				rockchip,pins = <0 RK_PB0 2 &pcfg_pull_none>;
1017fa54322aSCaesar Wang			};
1018fa54322aSCaesar Wang		};
1019fa54322aSCaesar Wang
1020fa54322aSCaesar Wang		pwm3 {
1021fa54322aSCaesar Wang			pwm3_pin: pwm3-pin {
1022d64420e8SHeiko Stuebner				rockchip,pins = <3 RK_PD5 3 &pcfg_pull_none>;
1023fa54322aSCaesar Wang			};
1024fa54322aSCaesar Wang		};
1025fa54322aSCaesar Wang
1026b790c2caSHeiko Stübner		sdio0 {
1027b790c2caSHeiko Stübner			sdio0_bus1: sdio0-bus1 {
1028d64420e8SHeiko Stuebner				rockchip,pins = <2 RK_PD4 1 &pcfg_pull_up>;
1029b790c2caSHeiko Stübner			};
1030b790c2caSHeiko Stübner
1031b790c2caSHeiko Stübner			sdio0_bus4: sdio0-bus4 {
1032d64420e8SHeiko Stuebner				rockchip,pins = <2 RK_PD4 1 &pcfg_pull_up>,
1033d64420e8SHeiko Stuebner						<2 RK_PD5 1 &pcfg_pull_up>,
1034d64420e8SHeiko Stuebner						<2 RK_PD6 1 &pcfg_pull_up>,
1035d64420e8SHeiko Stuebner						<2 RK_PD7 1 &pcfg_pull_up>;
1036b790c2caSHeiko Stübner			};
1037b790c2caSHeiko Stübner
1038b790c2caSHeiko Stübner			sdio0_cmd: sdio0-cmd {
1039d64420e8SHeiko Stuebner				rockchip,pins = <3 RK_PA0 1 &pcfg_pull_up>;
1040b790c2caSHeiko Stübner			};
1041b790c2caSHeiko Stübner
1042b790c2caSHeiko Stübner			sdio0_clk: sdio0-clk {
1043d64420e8SHeiko Stuebner				rockchip,pins = <3 RK_PA1 1 &pcfg_pull_none>;
1044b790c2caSHeiko Stübner			};
1045b790c2caSHeiko Stübner
1046b790c2caSHeiko Stübner			sdio0_cd: sdio0-cd {
1047d64420e8SHeiko Stuebner				rockchip,pins = <3 RK_PA2 1 &pcfg_pull_up>;
1048b790c2caSHeiko Stübner			};
1049b790c2caSHeiko Stübner
1050b790c2caSHeiko Stübner			sdio0_wp: sdio0-wp {
1051d64420e8SHeiko Stuebner				rockchip,pins = <3 RK_PA3 1 &pcfg_pull_up>;
1052b790c2caSHeiko Stübner			};
1053b790c2caSHeiko Stübner
1054b790c2caSHeiko Stübner			sdio0_pwr: sdio0-pwr {
1055d64420e8SHeiko Stuebner				rockchip,pins = <3 RK_PA4 1 &pcfg_pull_up>;
1056b790c2caSHeiko Stübner			};
1057b790c2caSHeiko Stübner
1058b790c2caSHeiko Stübner			sdio0_bkpwr: sdio0-bkpwr {
1059d64420e8SHeiko Stuebner				rockchip,pins = <3 RK_PA5 1 &pcfg_pull_up>;
1060b790c2caSHeiko Stübner			};
1061b790c2caSHeiko Stübner
1062b790c2caSHeiko Stübner			sdio0_int: sdio0-int {
1063d64420e8SHeiko Stuebner				rockchip,pins = <3 RK_PA6 1 &pcfg_pull_up>;
1064b790c2caSHeiko Stübner			};
1065b790c2caSHeiko Stübner		};
1066b790c2caSHeiko Stübner
1067b790c2caSHeiko Stübner		sdmmc {
1068b790c2caSHeiko Stübner			sdmmc_clk: sdmmc-clk {
1069d64420e8SHeiko Stuebner				rockchip,pins = <2 RK_PB1 1 &pcfg_pull_none>;
1070b790c2caSHeiko Stübner			};
1071b790c2caSHeiko Stübner
1072b790c2caSHeiko Stübner			sdmmc_cmd: sdmmc-cmd {
1073d64420e8SHeiko Stuebner				rockchip,pins = <2 RK_PB2 1 &pcfg_pull_up>;
1074b790c2caSHeiko Stübner			};
1075b790c2caSHeiko Stübner
10768fc5abd4SMatthias Brugger			sdmmc_cd: sdmmc-cd {
1077d64420e8SHeiko Stuebner				rockchip,pins = <2 RK_PB3 1 &pcfg_pull_up>;
1078b790c2caSHeiko Stübner			};
1079b790c2caSHeiko Stübner
1080b790c2caSHeiko Stübner			sdmmc_bus1: sdmmc-bus1 {
1081d64420e8SHeiko Stuebner				rockchip,pins = <2 RK_PA5 1 &pcfg_pull_up>;
1082b790c2caSHeiko Stübner			};
1083b790c2caSHeiko Stübner
1084b790c2caSHeiko Stübner			sdmmc_bus4: sdmmc-bus4 {
1085d64420e8SHeiko Stuebner				rockchip,pins = <2 RK_PA5 1 &pcfg_pull_up>,
1086d64420e8SHeiko Stuebner						<2 RK_PA6 1 &pcfg_pull_up>,
1087d64420e8SHeiko Stuebner						<2 RK_PA7 1 &pcfg_pull_up>,
1088d64420e8SHeiko Stuebner						<2 RK_PB0 1 &pcfg_pull_up>;
1089b790c2caSHeiko Stübner			};
1090b790c2caSHeiko Stübner		};
1091b790c2caSHeiko Stübner
10920328d68eSSugar Zhang		spdif {
10930328d68eSSugar Zhang			spdif_tx: spdif-tx {
1094d64420e8SHeiko Stuebner				rockchip,pins =	<2 RK_PC7 1 &pcfg_pull_none>;
10950328d68eSSugar Zhang			};
10960328d68eSSugar Zhang		};
10970328d68eSSugar Zhang
1098b790c2caSHeiko Stübner		spi0 {
1099b790c2caSHeiko Stübner			spi0_clk: spi0-clk {
1100d64420e8SHeiko Stuebner				rockchip,pins = <1 RK_PD5 2 &pcfg_pull_up>;
1101b790c2caSHeiko Stübner			};
1102b790c2caSHeiko Stübner			spi0_cs0: spi0-cs0 {
1103d64420e8SHeiko Stuebner				rockchip,pins = <1 RK_PD0 3 &pcfg_pull_up>;
1104b790c2caSHeiko Stübner			};
1105b790c2caSHeiko Stübner			spi0_cs1: spi0-cs1 {
1106d64420e8SHeiko Stuebner				rockchip,pins = <1 RK_PD1 3 &pcfg_pull_up>;
1107b790c2caSHeiko Stübner			};
1108b790c2caSHeiko Stübner			spi0_tx: spi0-tx {
1109d64420e8SHeiko Stuebner				rockchip,pins = <1 RK_PC7 3 &pcfg_pull_up>;
1110b790c2caSHeiko Stübner			};
1111b790c2caSHeiko Stübner			spi0_rx: spi0-rx {
1112d64420e8SHeiko Stuebner				rockchip,pins = <1 RK_PC6 3 &pcfg_pull_up>;
1113b790c2caSHeiko Stübner			};
1114b790c2caSHeiko Stübner		};
1115b790c2caSHeiko Stübner
1116b790c2caSHeiko Stübner		spi1 {
1117b790c2caSHeiko Stübner			spi1_clk: spi1-clk {
1118d64420e8SHeiko Stuebner				rockchip,pins = <1 RK_PB6 2 &pcfg_pull_up>;
1119b790c2caSHeiko Stübner			};
1120b790c2caSHeiko Stübner			spi1_cs0: spi1-cs0 {
1121d64420e8SHeiko Stuebner				rockchip,pins = <1 RK_PB7 2 &pcfg_pull_up>;
1122b790c2caSHeiko Stübner			};
1123b790c2caSHeiko Stübner			spi1_cs1: spi1-cs1 {
1124d64420e8SHeiko Stuebner				rockchip,pins = <3 RK_PD4 2 &pcfg_pull_up>;
1125b790c2caSHeiko Stübner			};
1126b790c2caSHeiko Stübner			spi1_rx: spi1-rx {
1127d64420e8SHeiko Stuebner				rockchip,pins = <1 RK_PC0 2 &pcfg_pull_up>;
1128b790c2caSHeiko Stübner			};
1129b790c2caSHeiko Stübner			spi1_tx: spi1-tx {
1130d64420e8SHeiko Stuebner				rockchip,pins = <1 RK_PC1 2 &pcfg_pull_up>;
1131b790c2caSHeiko Stübner			};
1132b790c2caSHeiko Stübner		};
1133b790c2caSHeiko Stübner
1134b790c2caSHeiko Stübner		spi2 {
1135b790c2caSHeiko Stübner			spi2_clk: spi2-clk {
1136d64420e8SHeiko Stuebner				rockchip,pins = <0 RK_PB4 2 &pcfg_pull_up>;
1137b790c2caSHeiko Stübner			};
1138b790c2caSHeiko Stübner			spi2_cs0: spi2-cs0 {
1139d64420e8SHeiko Stuebner				rockchip,pins = <0 RK_PB5 2 &pcfg_pull_up>;
1140b790c2caSHeiko Stübner			};
1141b790c2caSHeiko Stübner			spi2_rx: spi2-rx {
1142d64420e8SHeiko Stuebner				rockchip,pins = <0 RK_PB2 2 &pcfg_pull_up>;
1143b790c2caSHeiko Stübner			};
1144b790c2caSHeiko Stübner			spi2_tx: spi2-tx {
1145d64420e8SHeiko Stuebner				rockchip,pins = <0 RK_PB3 2 &pcfg_pull_up>;
1146b790c2caSHeiko Stübner			};
1147b790c2caSHeiko Stübner		};
1148b790c2caSHeiko Stübner
1149f990238fSCaesar Wang		tsadc {
11502bc65fefSJohan Jonker			otp_pin: otp-pin {
1151d64420e8SHeiko Stuebner				rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
1152f990238fSCaesar Wang			};
1153f990238fSCaesar Wang
1154f990238fSCaesar Wang			otp_out: otp-out {
1155d64420e8SHeiko Stuebner				rockchip,pins = <0 RK_PA3 1 &pcfg_pull_none>;
1156f990238fSCaesar Wang			};
1157f990238fSCaesar Wang		};
1158f990238fSCaesar Wang
1159b790c2caSHeiko Stübner		uart0 {
1160b790c2caSHeiko Stübner			uart0_xfer: uart0-xfer {
1161d64420e8SHeiko Stuebner				rockchip,pins = <2 RK_PD0 1 &pcfg_pull_up>,
1162d64420e8SHeiko Stuebner						<2 RK_PD1 1 &pcfg_pull_none>;
1163b790c2caSHeiko Stübner			};
1164b790c2caSHeiko Stübner
1165b790c2caSHeiko Stübner			uart0_cts: uart0-cts {
1166d64420e8SHeiko Stuebner				rockchip,pins = <2 RK_PD2 1 &pcfg_pull_none>;
1167b790c2caSHeiko Stübner			};
1168b790c2caSHeiko Stübner
1169b790c2caSHeiko Stübner			uart0_rts: uart0-rts {
1170d64420e8SHeiko Stuebner				rockchip,pins = <2 RK_PD3 1 &pcfg_pull_none>;
1171b790c2caSHeiko Stübner			};
1172b790c2caSHeiko Stübner		};
1173b790c2caSHeiko Stübner
1174b790c2caSHeiko Stübner		uart1 {
1175b790c2caSHeiko Stübner			uart1_xfer: uart1-xfer {
1176d64420e8SHeiko Stuebner				rockchip,pins = <0 RK_PC4 3 &pcfg_pull_up>,
1177d64420e8SHeiko Stuebner						<0 RK_PC5 3 &pcfg_pull_none>;
1178b790c2caSHeiko Stübner			};
1179b790c2caSHeiko Stübner
1180b790c2caSHeiko Stübner			uart1_cts: uart1-cts {
1181d64420e8SHeiko Stuebner				rockchip,pins = <0 RK_PC6 3 &pcfg_pull_none>;
1182b790c2caSHeiko Stübner			};
1183b790c2caSHeiko Stübner
1184b790c2caSHeiko Stübner			uart1_rts: uart1-rts {
1185d64420e8SHeiko Stuebner				rockchip,pins = <0 RK_PC7 3 &pcfg_pull_none>;
1186b790c2caSHeiko Stübner			};
1187b790c2caSHeiko Stübner		};
1188b790c2caSHeiko Stübner
1189b790c2caSHeiko Stübner		uart2 {
1190b790c2caSHeiko Stübner			uart2_xfer: uart2-xfer {
1191d64420e8SHeiko Stuebner				rockchip,pins = <2 RK_PA6 2 &pcfg_pull_up>,
1192d64420e8SHeiko Stuebner						<2 RK_PA5 2 &pcfg_pull_none>;
1193b790c2caSHeiko Stübner			};
1194b790c2caSHeiko Stübner			/* no rts / cts for uart2 */
1195b790c2caSHeiko Stübner		};
1196b790c2caSHeiko Stübner
1197b790c2caSHeiko Stübner		uart3 {
1198b790c2caSHeiko Stübner			uart3_xfer: uart3-xfer {
1199d64420e8SHeiko Stuebner				rockchip,pins = <3 RK_PD5 2 &pcfg_pull_up>,
1200d64420e8SHeiko Stuebner						<3 RK_PD6 3 &pcfg_pull_none>;
1201b790c2caSHeiko Stübner			};
1202b790c2caSHeiko Stübner
1203b790c2caSHeiko Stübner			uart3_cts: uart3-cts {
1204d64420e8SHeiko Stuebner				rockchip,pins = <3 RK_PC0 2 &pcfg_pull_none>;
1205b790c2caSHeiko Stübner			};
1206b790c2caSHeiko Stübner
1207b790c2caSHeiko Stübner			uart3_rts: uart3-rts {
1208d64420e8SHeiko Stuebner				rockchip,pins = <3 RK_PC1 2 &pcfg_pull_none>;
1209b790c2caSHeiko Stübner			};
1210b790c2caSHeiko Stübner		};
1211b790c2caSHeiko Stübner
1212b790c2caSHeiko Stübner		uart4 {
1213b790c2caSHeiko Stübner			uart4_xfer: uart4-xfer {
1214d64420e8SHeiko Stuebner				rockchip,pins = <0 RK_PD3 3 &pcfg_pull_up>,
1215d64420e8SHeiko Stuebner						<0 RK_PD2 3 &pcfg_pull_none>;
1216b790c2caSHeiko Stübner			};
1217b790c2caSHeiko Stübner
1218b790c2caSHeiko Stübner			uart4_cts: uart4-cts {
1219d64420e8SHeiko Stuebner				rockchip,pins = <0 RK_PD0 3 &pcfg_pull_none>;
1220b790c2caSHeiko Stübner			};
1221b790c2caSHeiko Stübner
1222b790c2caSHeiko Stübner			uart4_rts: uart4-rts {
1223d64420e8SHeiko Stuebner				rockchip,pins = <0 RK_PD1 3 &pcfg_pull_none>;
1224b790c2caSHeiko Stübner			};
1225b790c2caSHeiko Stübner		};
1226b790c2caSHeiko Stübner	};
1227b790c2caSHeiko Stübner};
1228