xref: /openbmc/u-boot/arch/arm/dts/rk3128.dtsi (revision 83d290c56fab2d38cd1ab4c4cc7099559c1d5046)
1*83d290c5STom Rini// SPDX-License-Identifier: GPL-2.0+
2bbd6e6d7SKever Yang/*
3bbd6e6d7SKever Yang * (C) Copyright 2017 Rockchip Electronics Co., Ltd
4bbd6e6d7SKever Yang */
5bbd6e6d7SKever Yang
6bbd6e6d7SKever Yang#include <dt-bindings/gpio/gpio.h>
7bbd6e6d7SKever Yang#include <dt-bindings/interrupt-controller/irq.h>
8bbd6e6d7SKever Yang#include <dt-bindings/interrupt-controller/arm-gic.h>
9bbd6e6d7SKever Yang#include <dt-bindings/pinctrl/rockchip.h>
10bbd6e6d7SKever Yang#include <dt-bindings/clock/rk3128-cru.h>
11bbd6e6d7SKever Yang#include "skeleton.dtsi"
12bbd6e6d7SKever Yang
13bbd6e6d7SKever Yang/ {
14bbd6e6d7SKever Yang	compatible = "rockchip,rk3128";
15bbd6e6d7SKever Yang	rockchip,sram = <&sram>;
16bbd6e6d7SKever Yang	interrupt-parent = <&gic>;
17bbd6e6d7SKever Yang	#address-cells = <1>;
18bbd6e6d7SKever Yang	#size-cells = <1>;
19bbd6e6d7SKever Yang
20bbd6e6d7SKever Yang	aliases {
21bbd6e6d7SKever Yang		gpio0 = &gpio0;
22bbd6e6d7SKever Yang		gpio1 = &gpio1;
23bbd6e6d7SKever Yang		gpio2 = &gpio2;
24bbd6e6d7SKever Yang		gpio3 = &gpio3;
25bbd6e6d7SKever Yang		i2c0 = &i2c0;
26bbd6e6d7SKever Yang		i2c1 = &i2c1;
27bbd6e6d7SKever Yang		i2c2 = &i2c2;
28bbd6e6d7SKever Yang		i2c3 = &i2c3;
29bbd6e6d7SKever Yang		spi0 = &spi0;
30bbd6e6d7SKever Yang		serial0 = &uart0;
31bbd6e6d7SKever Yang		serial1 = &uart1;
32bbd6e6d7SKever Yang		serial2 = &uart2;
33bbd6e6d7SKever Yang		mmc0 = &emmc;
34bbd6e6d7SKever Yang		mmc1 = &sdmmc;
35bbd6e6d7SKever Yang	};
36bbd6e6d7SKever Yang
37bbd6e6d7SKever Yang	memory {
38bbd6e6d7SKever Yang		device_type = "memory";
39bbd6e6d7SKever Yang		reg = <0x60000000 0x40000000>;
40bbd6e6d7SKever Yang	};
41bbd6e6d7SKever Yang
42bbd6e6d7SKever Yang	arm-pmu {
43bbd6e6d7SKever Yang		compatible = "arm,cortex-a7-pmu";
44bbd6e6d7SKever Yang		interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>,
45bbd6e6d7SKever Yang			     <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>,
46bbd6e6d7SKever Yang			     <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>,
47bbd6e6d7SKever Yang			     <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
48bbd6e6d7SKever Yang	};
49bbd6e6d7SKever Yang
50bbd6e6d7SKever Yang	cpus {
51bbd6e6d7SKever Yang		#address-cells = <1>;
52bbd6e6d7SKever Yang		#size-cells = <0>;
53bbd6e6d7SKever Yang		enable-method = "rockchip,rk3128-smp";
54bbd6e6d7SKever Yang
55bbd6e6d7SKever Yang		cpu0:cpu@0x000 {
56bbd6e6d7SKever Yang			device_type = "cpu";
57bbd6e6d7SKever Yang			compatible = "arm,cortex-a7";
58bbd6e6d7SKever Yang			reg = <0x000>;
59bbd6e6d7SKever Yang			operating-points = <
60bbd6e6d7SKever Yang				/* KHz    uV */
61bbd6e6d7SKever Yang				 816000 1000000
62bbd6e6d7SKever Yang			>;
63bbd6e6d7SKever Yang			#cooling-cells = <2>; /* min followed by max */
64bbd6e6d7SKever Yang			clock-latency = <40000>;
65bbd6e6d7SKever Yang			clocks = <&cru ARMCLK>;
66bbd6e6d7SKever Yang		};
67bbd6e6d7SKever Yang
68bbd6e6d7SKever Yang		cpu1:cpu@0x001 {
69bbd6e6d7SKever Yang			device_type = "cpu";
70bbd6e6d7SKever Yang			compatible = "arm,cortex-a7";
71bbd6e6d7SKever Yang			reg = <0x001>;
72bbd6e6d7SKever Yang		};
73bbd6e6d7SKever Yang
74bbd6e6d7SKever Yang		cpu2:cpu@0x002 {
75bbd6e6d7SKever Yang			device_type = "cpu";
76bbd6e6d7SKever Yang			compatible = "arm,cortex-a7";
77bbd6e6d7SKever Yang			reg = <0x002>;
78bbd6e6d7SKever Yang		};
79bbd6e6d7SKever Yang
80bbd6e6d7SKever Yang		cpu3:cpu@0x003 {
81bbd6e6d7SKever Yang			device_type = "cpu";
82bbd6e6d7SKever Yang			compatible = "arm,cortex-a7";
83bbd6e6d7SKever Yang			reg = <0x003>;
84bbd6e6d7SKever Yang		};
85bbd6e6d7SKever Yang	};
86bbd6e6d7SKever Yang
87bbd6e6d7SKever Yang	cpu_axi_bus: cpu_axi_bus {
88bbd6e6d7SKever Yang		compatible = "rockchip,cpu_axi_bus";
89bbd6e6d7SKever Yang		#address-cells = <1>;
90bbd6e6d7SKever Yang		#size-cells = <1>;
91bbd6e6d7SKever Yang		ranges;
92bbd6e6d7SKever Yang
93bbd6e6d7SKever Yang		qos {
94bbd6e6d7SKever Yang			#address-cells = <1>;
95bbd6e6d7SKever Yang			#size-cells = <1>;
96bbd6e6d7SKever Yang			ranges;
97bbd6e6d7SKever Yang
98bbd6e6d7SKever Yang			crypto {
99bbd6e6d7SKever Yang				reg = <0x10128080 0x20>;
100bbd6e6d7SKever Yang			};
101bbd6e6d7SKever Yang
102bbd6e6d7SKever Yang			core {
103bbd6e6d7SKever Yang				reg = <0x1012a000 0x20>;
104bbd6e6d7SKever Yang			};
105bbd6e6d7SKever Yang
106bbd6e6d7SKever Yang			peri {
107bbd6e6d7SKever Yang				reg = <0x1012c000 0x20>;
108bbd6e6d7SKever Yang			};
109bbd6e6d7SKever Yang
110bbd6e6d7SKever Yang			gpu {
111bbd6e6d7SKever Yang				reg = <0x1012d000 0x20>;
112bbd6e6d7SKever Yang			};
113bbd6e6d7SKever Yang
114bbd6e6d7SKever Yang			vpu {
115bbd6e6d7SKever Yang				reg = <0x1012e000 0x20>;
116bbd6e6d7SKever Yang			};
117bbd6e6d7SKever Yang
118bbd6e6d7SKever Yang			rga {
119bbd6e6d7SKever Yang				reg = <0x1012f000 0x20>;
120bbd6e6d7SKever Yang			};
121bbd6e6d7SKever Yang			ebc {
122bbd6e6d7SKever Yang				reg = <0x1012f080 0x20>;
123bbd6e6d7SKever Yang			};
124bbd6e6d7SKever Yang
125bbd6e6d7SKever Yang			iep {
126bbd6e6d7SKever Yang				reg = <0x1012f100 0x20>;
127bbd6e6d7SKever Yang			};
128bbd6e6d7SKever Yang
129bbd6e6d7SKever Yang			lcdc {
130bbd6e6d7SKever Yang				reg = <0x1012f180 0x20>;
131bbd6e6d7SKever Yang				rockchip,priority = <3 3>;
132bbd6e6d7SKever Yang			};
133bbd6e6d7SKever Yang
134bbd6e6d7SKever Yang			vip {
135bbd6e6d7SKever Yang				reg = <0x1012f200 0x20>;
136bbd6e6d7SKever Yang				rockchip,priority = <3 3>;
137bbd6e6d7SKever Yang			};
138bbd6e6d7SKever Yang		};
139bbd6e6d7SKever Yang
140bbd6e6d7SKever Yang		msch {
141bbd6e6d7SKever Yang			#address-cells = <1>;
142bbd6e6d7SKever Yang			#size-cells = <1>;
143bbd6e6d7SKever Yang			ranges;
144bbd6e6d7SKever Yang
145bbd6e6d7SKever Yang			msch@10128000 {
146bbd6e6d7SKever Yang				reg = <0x10128000 0x20>;
147bbd6e6d7SKever Yang				rockchip,read-latency = <0x3f>;
148bbd6e6d7SKever Yang			};
149bbd6e6d7SKever Yang		};
150bbd6e6d7SKever Yang	};
151bbd6e6d7SKever Yang
152bbd6e6d7SKever Yang	psci {
153bbd6e6d7SKever Yang		compatible      = "arm,psci";
154bbd6e6d7SKever Yang		method          = "smc";
155bbd6e6d7SKever Yang		cpu_suspend     = <0x84000001>;
156bbd6e6d7SKever Yang		cpu_off         = <0x84000002>;
157bbd6e6d7SKever Yang		cpu_on          = <0x84000003>;
158bbd6e6d7SKever Yang		migrate         = <0x84000005>;
159bbd6e6d7SKever Yang	};
160bbd6e6d7SKever Yang
161bbd6e6d7SKever Yang	amba {
162bbd6e6d7SKever Yang		compatible = "arm,amba-bus";
163bbd6e6d7SKever Yang		#address-cells = <1>;
164bbd6e6d7SKever Yang		#size-cells = <1>;
165bbd6e6d7SKever Yang		interrupt-parent = <&gic>;
166bbd6e6d7SKever Yang		ranges;
167bbd6e6d7SKever Yang
168bbd6e6d7SKever Yang		pdma: pdma@20078000 {
169bbd6e6d7SKever Yang			compatible = "arm,pl330", "arm,primecell";
170bbd6e6d7SKever Yang			reg = <0x20078000 0x4000>;
171bbd6e6d7SKever Yang			arm,pl330-broken-no-flushp;//2
172bbd6e6d7SKever Yang			interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
173bbd6e6d7SKever Yang				     <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
174bbd6e6d7SKever Yang			#dma-cells = <1>;
175bbd6e6d7SKever Yang			clocks = <&cru ACLK_DMAC2>;
176bbd6e6d7SKever Yang			clock-names = "apb_pclk";
177bbd6e6d7SKever Yang		};
178bbd6e6d7SKever Yang	};
179bbd6e6d7SKever Yang
180bbd6e6d7SKever Yang	xin24m: xin24m {
181bbd6e6d7SKever Yang		compatible = "fixed-clock";
182bbd6e6d7SKever Yang		clock-frequency = <24000000>;
183bbd6e6d7SKever Yang		clock-output-names = "xin24m";
184bbd6e6d7SKever Yang		#clock-cells = <0>;
185bbd6e6d7SKever Yang	};
186bbd6e6d7SKever Yang
187bbd6e6d7SKever Yang	xin12m: xin12m {
188bbd6e6d7SKever Yang		compatible = "fixed-clock";
189bbd6e6d7SKever Yang		clocks = <&xin24m>;
190bbd6e6d7SKever Yang		clock-frequency = <12000000>;
191bbd6e6d7SKever Yang		clock-output-names = "xin12m";
192bbd6e6d7SKever Yang		#clock-cells = <0>;
193bbd6e6d7SKever Yang	};
194bbd6e6d7SKever Yang
195bbd6e6d7SKever Yang	timer {
196bbd6e6d7SKever Yang		compatible = "arm,armv7-timer";
197bbd6e6d7SKever Yang		arm,cpu-registers-not-fw-configured;
198bbd6e6d7SKever Yang		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
199bbd6e6d7SKever Yang			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
200bbd6e6d7SKever Yang		clock-frequency = <24000000>;
201bbd6e6d7SKever Yang	};
202bbd6e6d7SKever Yang
203bbd6e6d7SKever Yang	timer@20044000 {
204bbd6e6d7SKever Yang		compatible = "arm,armv7-timer";
205bbd6e6d7SKever Yang		reg = <0x20044000 0xb8>;
206bbd6e6d7SKever Yang		interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
207bbd6e6d7SKever Yang		rockchip,broadcast = <1>;
208bbd6e6d7SKever Yang	};
209bbd6e6d7SKever Yang
210bbd6e6d7SKever Yang	watchdog: wdt@2004c000 {
211bbd6e6d7SKever Yang		compatible = "rockchip,watch dog";
212bbd6e6d7SKever Yang		reg = <0x2004c000 0x100>;
213bbd6e6d7SKever Yang		clock-names = "pclk_wdt";
214bbd6e6d7SKever Yang		interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
215bbd6e6d7SKever Yang		rockchip,irq = <1>;
216bbd6e6d7SKever Yang		rockchip,timeout = <60>;
217bbd6e6d7SKever Yang		rockchip,atboot = <1>;
218bbd6e6d7SKever Yang		rockchip,debug = <0>;
219bbd6e6d7SKever Yang	};
220bbd6e6d7SKever Yang
221bbd6e6d7SKever Yang	reset: reset@20000110 {
222bbd6e6d7SKever Yang		compatible = "rockchip,reset";
223bbd6e6d7SKever Yang		reg = <0x20000110 0x24>;
224bbd6e6d7SKever Yang		#reset-cells = <1>;
225bbd6e6d7SKever Yang	};
226bbd6e6d7SKever Yang
227bbd6e6d7SKever Yang	nandc: nandc@10500000 {
228bbd6e6d7SKever Yang		compatible = "rockchip,rk-nandc";
229bbd6e6d7SKever Yang		reg = <0x10500000 0x4000>;
230bbd6e6d7SKever Yang		interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>;
231bbd6e6d7SKever Yang		pinctrl-names = "default";
232bbd6e6d7SKever Yang		pinctrl-0 = <&nandc_ale &nandc_cle &nandc_wrn &nandc_rdn &nandc_rdy &nandc_cs0 &nandc_data>;
233bbd6e6d7SKever Yang		nandc_id = <0>;
234bbd6e6d7SKever Yang		clocks = <&cru SCLK_NANDC>,
235bbd6e6d7SKever Yang			 <&cru HCLK_NANDC>,
236bbd6e6d7SKever Yang			 <&cru SRST_NANDC>;
237bbd6e6d7SKever Yang		clock-names = "clk_nandc", "g_clk_nandc", "hclk_nandc";
238bbd6e6d7SKever Yang	};
239bbd6e6d7SKever Yang
240bbd6e6d7SKever Yang	dmc: dmc@20004000 {
241bbd6e6d7SKever Yang		u-boot,dm-pre-reloc;
242bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-dmc", "syscon";
243bbd6e6d7SKever Yang		reg = <0x0 0x20004000 0x0 0x1000>;
244bbd6e6d7SKever Yang	};
245bbd6e6d7SKever Yang
246bbd6e6d7SKever Yang	cru: clock-controller@20000000 {
247bbd6e6d7SKever Yang		u-boot,dm-pre-reloc;
248bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-cru";
249bbd6e6d7SKever Yang		reg = <0x20000000 0x1000>;
250bbd6e6d7SKever Yang		rockchip,grf = <&grf>;
251bbd6e6d7SKever Yang		#clock-cells = <1>;
252bbd6e6d7SKever Yang		#reset-cells = <1>;
253bbd6e6d7SKever Yang		assigned-clocks = <&cru PLL_GPLL>;
254bbd6e6d7SKever Yang		assigned-clock-rates = <594000000>;
255bbd6e6d7SKever Yang	};
256bbd6e6d7SKever Yang
257bbd6e6d7SKever Yang	uart0: serial0@20060000 {
258bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-uart", "snps,dw-apb-uart";
259bbd6e6d7SKever Yang		reg = <0x20060000 0x100>;
260bbd6e6d7SKever Yang		interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
261bbd6e6d7SKever Yang		reg-shift = <2>;
262bbd6e6d7SKever Yang		reg-io-width = <4>;
263bbd6e6d7SKever Yang		clock-frequency = <24000000>;
264bbd6e6d7SKever Yang		clocks = <&cru SCLK_UART0>, <&cru PCLK_UART0>;
265bbd6e6d7SKever Yang		clock-names = "baudclk", "apb_pclk";
266bbd6e6d7SKever Yang		pinctrl-names = "default";
267bbd6e6d7SKever Yang		pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
268bbd6e6d7SKever Yang		dmas = <&pdma 2>, <&pdma 3>;
269bbd6e6d7SKever Yang		#dma-cells = <2>;
270bbd6e6d7SKever Yang	};
271bbd6e6d7SKever Yang
272bbd6e6d7SKever Yang	uart1: serial1@20064000 {
273bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-uart", "snps,dw-apb-uart";
274bbd6e6d7SKever Yang		reg = <0x20064000 0x100>;
275bbd6e6d7SKever Yang		interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
276bbd6e6d7SKever Yang		reg-shift = <2>;
277bbd6e6d7SKever Yang		reg-io-width = <4>;
278bbd6e6d7SKever Yang		clock-frequency = <24000000>;
279bbd6e6d7SKever Yang		clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>;
280bbd6e6d7SKever Yang		clock-names = "baudclk", "apb_pclk";
281bbd6e6d7SKever Yang		pinctrl-names = "default";
282bbd6e6d7SKever Yang		pinctrl-0 = <&uart1_xfer>;
283bbd6e6d7SKever Yang		dmas = <&pdma 4>, <&pdma 5>;
284bbd6e6d7SKever Yang		#dma-cells = <2>;
285bbd6e6d7SKever Yang	};
286bbd6e6d7SKever Yang
287bbd6e6d7SKever Yang	uart2: serial2@20068000 {
288bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-uart", "snps,dw-apb-uart";
289bbd6e6d7SKever Yang		reg = <0x20068000 0x100>;
290bbd6e6d7SKever Yang		interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
291bbd6e6d7SKever Yang		reg-shift = <2>;
292bbd6e6d7SKever Yang		reg-io-width = <4>;
293bbd6e6d7SKever Yang		clock-frequency = <24000000>;
294bbd6e6d7SKever Yang		clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>;
295bbd6e6d7SKever Yang		clock-names = "baudclk", "apb_pclk";
296bbd6e6d7SKever Yang		pinctrl-names = "default";
297bbd6e6d7SKever Yang		pinctrl-0 = <&uart2_xfer>;
298bbd6e6d7SKever Yang		dmas = <&pdma 6>, <&pdma 7>;
299bbd6e6d7SKever Yang		#dma-cells = <2>;
300bbd6e6d7SKever Yang	};
301bbd6e6d7SKever Yang
302bbd6e6d7SKever Yang	saradc: saradc@2006c000 {
303bbd6e6d7SKever Yang		compatible = "rockchip,saradc";
304bbd6e6d7SKever Yang		reg = <0x2006c000 0x100>;
305bbd6e6d7SKever Yang		interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
306bbd6e6d7SKever Yang		#io-channel-cells = <1>;
307bbd6e6d7SKever Yang		clocks = <&cru SCLK_SARADC>, <&cru PCLK_SARADC>;
308bbd6e6d7SKever Yang		clock-names = "saradc", "apb_pclk";
309bbd6e6d7SKever Yang		resets = <&cru SRST_SARADC>;
310bbd6e6d7SKever Yang		reset-names = "saradc-apb";
311bbd6e6d7SKever Yang		status = "disabled";
312bbd6e6d7SKever Yang	};
313bbd6e6d7SKever Yang
314bbd6e6d7SKever Yang	pwm0: pwm0@20050000 {
315bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-pwm", "rockchip,rk3288-pwm";
316bbd6e6d7SKever Yang		reg = <0x20050000 0x10>;
3172147c0d2SKever Yang		#pwm-cells = <3>;
318bbd6e6d7SKever Yang		pinctrl-names = "default";
319bbd6e6d7SKever Yang		pinctrl-0 = <&pwm0_pin>;
320bbd6e6d7SKever Yang		clocks = <&cru PCLK_PWM>;
321bbd6e6d7SKever Yang		clock-names = "pwm";
322bbd6e6d7SKever Yang	};
323bbd6e6d7SKever Yang
324bbd6e6d7SKever Yang	pwm1: pwm1@20050010 {
325bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-pwm", "rockchip,rk3288-pwm";
326bbd6e6d7SKever Yang		reg = <0x20050010 0x10>;
3272147c0d2SKever Yang		#pwm-cells = <3>;
328bbd6e6d7SKever Yang		pinctrl-names = "default";
329bbd6e6d7SKever Yang		pinctrl-0 = <&pwm1_pin>;
330bbd6e6d7SKever Yang		clocks = <&cru PCLK_PWM>;
331bbd6e6d7SKever Yang		clock-names = "pwm";
332bbd6e6d7SKever Yang	};
333bbd6e6d7SKever Yang
334bbd6e6d7SKever Yang	pwm2: pwm2@20050020 {
335bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-pwm", "rockchip,rk3288-pwm";
336bbd6e6d7SKever Yang		reg = <0x20050020 0x10>;
3372147c0d2SKever Yang		#pwm-cells = <3>;
338bbd6e6d7SKever Yang		pinctrl-names = "default";
339bbd6e6d7SKever Yang		pinctrl-0 = <&pwm2_pin>;
340bbd6e6d7SKever Yang		clocks = <&cru PCLK_PWM>;
341bbd6e6d7SKever Yang		clock-names = "pwm";
342bbd6e6d7SKever Yang	};
343bbd6e6d7SKever Yang
344bbd6e6d7SKever Yang	pwm3: pwm3@20050030 {
345bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-pwm", "rockchip,rk3288-pwm";
346bbd6e6d7SKever Yang		reg = <0x20050030 0x10>;
3472147c0d2SKever Yang		#pwm-cells = <3>;
348bbd6e6d7SKever Yang		pinctrl-names = "default";
349bbd6e6d7SKever Yang		pinctrl-0 = <&pwm3_pin>;
350bbd6e6d7SKever Yang		clocks = <&cru PCLK_PWM>;
351bbd6e6d7SKever Yang		clock-names = "pwm";
352bbd6e6d7SKever Yang	};
353bbd6e6d7SKever Yang
354bbd6e6d7SKever Yang	sram: sram@10080400 {
355bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-smp-sram", "mmio-sram";
356bbd6e6d7SKever Yang		reg = <0x10080400 0x1C00>;
357bbd6e6d7SKever Yang		map-exec;
358bbd6e6d7SKever Yang		map-cacheable;
359bbd6e6d7SKever Yang	};
360bbd6e6d7SKever Yang
361bbd6e6d7SKever Yang	pmu: syscon@100a0000 {
362bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-pmu", "syscon", "simple-mfd";
363bbd6e6d7SKever Yang		reg = <0x100a0000 0x1000>;
364bbd6e6d7SKever Yang		#address-cells = <1>;
365bbd6e6d7SKever Yang		#size-cells = <1>;
366bbd6e6d7SKever Yang	};
367bbd6e6d7SKever Yang
368bbd6e6d7SKever Yang	gic: interrupt-controller@10139000 {
369bbd6e6d7SKever Yang		compatible = "arm,gic-400";
370bbd6e6d7SKever Yang		interrupt-controller;
371bbd6e6d7SKever Yang		#interrupt-cells = <3>;
372bbd6e6d7SKever Yang		#address-cells = <0>;
373bbd6e6d7SKever Yang		reg = <0x10139000 0x1000>,
374bbd6e6d7SKever Yang		      <0x1013a000 0x1000>,
375bbd6e6d7SKever Yang		      <0x1013c000 0x2000>,
376bbd6e6d7SKever Yang		      <0x1013e000 0x2000>;
377bbd6e6d7SKever Yang		interrupts = <GIC_PPI 9 0xf04>;
378bbd6e6d7SKever Yang	};
379bbd6e6d7SKever Yang
380bbd6e6d7SKever Yang	u2phy: usb2-phy {
381bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-usb2phy";
382bbd6e6d7SKever Yang		reg = <0x017c 0x0c>;
383bbd6e6d7SKever Yang		rockchip,grf = <&grf>;
384bbd6e6d7SKever Yang		clocks = <&cru SCLK_OTGPHY0>;
385bbd6e6d7SKever Yang		clock-names = "phyclk";
386bbd6e6d7SKever Yang		#clock-cells = <0>;
387bbd6e6d7SKever Yang		clock-output-names = "usb480m_phy";
388bbd6e6d7SKever Yang		#phy-cells = <1>;
389bbd6e6d7SKever Yang		status = "disabled";
390bbd6e6d7SKever Yang
391bbd6e6d7SKever Yang		u2phy_otg: otg-port {
392bbd6e6d7SKever Yang			#phy-cells = <0>;
393bbd6e6d7SKever Yang			interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
394bbd6e6d7SKever Yang				     <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>,
395bbd6e6d7SKever Yang				     <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
396bbd6e6d7SKever Yang			interrupt-names = "otg-bvalid", "otg-id",
397bbd6e6d7SKever Yang					  "linestate";
398bbd6e6d7SKever Yang			status = "disabled";
399bbd6e6d7SKever Yang		};
400bbd6e6d7SKever Yang
401bbd6e6d7SKever Yang		u2phy_host: host-port {
402bbd6e6d7SKever Yang			#phy-cells = <0>;
403bbd6e6d7SKever Yang			interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
404bbd6e6d7SKever Yang			interrupt-names = "linestate";
405bbd6e6d7SKever Yang			status = "disabled";
406bbd6e6d7SKever Yang		};
407bbd6e6d7SKever Yang	};
408bbd6e6d7SKever Yang
409bbd6e6d7SKever Yang	usb_otg: usb@10180000 {
410bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-usb", "rockchip,rk3288-usb",
411bbd6e6d7SKever Yang			     "snps,dwc2";
412bbd6e6d7SKever Yang		reg = <0x10180000 0x40000>;
413bbd6e6d7SKever Yang		interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
414bbd6e6d7SKever Yang		dr_mode = "otg";
415bbd6e6d7SKever Yang		g-use-dma;
416bbd6e6d7SKever Yang		hnp-srp-disable;
417bbd6e6d7SKever Yang		phys = <&u2phy 0>;
418bbd6e6d7SKever Yang		phy-names = "usb";
419bbd6e6d7SKever Yang		status = "disabled";
420bbd6e6d7SKever Yang	};
421bbd6e6d7SKever Yang
422bbd6e6d7SKever Yang	usb_host_ehci: usb@101c0000 {
423bbd6e6d7SKever Yang		compatible = "generic-ehci";
424bbd6e6d7SKever Yang		reg = <0x101c0000 0x20000>;
425bbd6e6d7SKever Yang		interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
426bbd6e6d7SKever Yang		phys = <&u2phy 1>;
427bbd6e6d7SKever Yang		phy-names = "usb";
428bbd6e6d7SKever Yang		status = "disabled";
429bbd6e6d7SKever Yang	};
430bbd6e6d7SKever Yang
431bbd6e6d7SKever Yang	usb_host_ohci: usb@101e0000 {
432bbd6e6d7SKever Yang		compatible = "generic-ohci";
433bbd6e6d7SKever Yang		reg = <0x101e0000 0x20000>;
434bbd6e6d7SKever Yang		interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
435bbd6e6d7SKever Yang		phys = <&u2phy 1>;
436bbd6e6d7SKever Yang		phy-names = "usb";
437bbd6e6d7SKever Yang		status = "disabled";
438bbd6e6d7SKever Yang	};
439bbd6e6d7SKever Yang
440bbd6e6d7SKever Yang	sdmmc: dwmmc@10214000 {
441bbd6e6d7SKever Yang		compatible = "rockchip,rk312x-dw-mshc", "rockchip,rk3288-dw-mshc";
442bbd6e6d7SKever Yang		reg = <0x10214000 0x4000>;
443bbd6e6d7SKever Yang		max-frequency = <150000000>;
444bbd6e6d7SKever Yang		interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
445bbd6e6d7SKever Yang		clocks = <&cru HCLK_SDMMC>, <&cru SCLK_SDMMC>,
446bbd6e6d7SKever Yang			 <&cru SCLK_SDMMC_DRV>, <&cru SCLK_SDMMC_SAMPLE>;
447bbd6e6d7SKever Yang		clock-names = "biu", "ciu", "ciu_drv", "ciu_sample";
448bbd6e6d7SKever Yang		fifo-depth = <0x100>;
449bbd6e6d7SKever Yang		pinctrl-names = "default";
450bbd6e6d7SKever Yang		pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_bus4>;
451bbd6e6d7SKever Yang		bus-width = <4>;
452bbd6e6d7SKever Yang		status = "disabled";
453bbd6e6d7SKever Yang	};
454bbd6e6d7SKever Yang
455bbd6e6d7SKever Yang	emmc: dwmmc@1021c000 {
456bbd6e6d7SKever Yang		u-boot,dm-pre-reloc;
457bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-dw-mshc", "rockchip,rk3288-dw-mshc";
458bbd6e6d7SKever Yang		reg = <0x1021c000 0x4000>;
459bbd6e6d7SKever Yang		max-frequency = <150000000>;
460bbd6e6d7SKever Yang		interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
461bbd6e6d7SKever Yang		clocks = <&cru HCLK_EMMC>, <&cru SCLK_EMMC>,
462bbd6e6d7SKever Yang			 <&cru SCLK_EMMC_DRV>, <&cru SCLK_EMMC_SAMPLE>;
463bbd6e6d7SKever Yang		clock-names = "biu", "ciu", "ciu_drv", "ciu_sample";
464bbd6e6d7SKever Yang		bus-width = <8>;
465bbd6e6d7SKever Yang		default-sample-phase = <158>;
466bbd6e6d7SKever Yang		num-slots = <1>;
467bbd6e6d7SKever Yang		fifo-depth = <0x100>;
468bbd6e6d7SKever Yang		pinctrl-names = "default";
469bbd6e6d7SKever Yang		pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>;
470bbd6e6d7SKever Yang		resets = <&cru SRST_EMMC>;
471bbd6e6d7SKever Yang		reset-names = "reset";
472bbd6e6d7SKever Yang		status = "disabled";
473bbd6e6d7SKever Yang	};
474bbd6e6d7SKever Yang
475bbd6e6d7SKever Yang	i2c0: i2c0@20072000 {
476bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-i2c", "rockchip,rk3288-i2c";
477bbd6e6d7SKever Yang		reg = <20072000 0x1000>;
478bbd6e6d7SKever Yang		interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
479bbd6e6d7SKever Yang		#address-cells = <1>;
480bbd6e6d7SKever Yang		#size-cells = <0>;
481bbd6e6d7SKever Yang		clock-names = "i2c";
482bbd6e6d7SKever Yang		clocks = <&cru PCLK_I2C0>;
483bbd6e6d7SKever Yang		pinctrl-names = "default";
484bbd6e6d7SKever Yang		pinctrl-0 = <&i2c0_xfer>;
485bbd6e6d7SKever Yang	};
486bbd6e6d7SKever Yang
487bbd6e6d7SKever Yang	i2c1: i2c1@20056000 {
488bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-i2c", "rockchip,rk3288-i2c";
489bbd6e6d7SKever Yang		reg = <0x20056000 0x1000>;
490bbd6e6d7SKever Yang		interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
491bbd6e6d7SKever Yang		#address-cells = <1>;
492bbd6e6d7SKever Yang		#size-cells = <0>;
493bbd6e6d7SKever Yang		clock-names = "i2c";
494bbd6e6d7SKever Yang		clocks = <&cru PCLK_I2C1>;
495bbd6e6d7SKever Yang		pinctrl-names = "default";
496bbd6e6d7SKever Yang		pinctrl-0 = <&i2c1_xfer>;
497bbd6e6d7SKever Yang	};
498bbd6e6d7SKever Yang
499bbd6e6d7SKever Yang	i2c2: i2c2@2005a000 {
500bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-i2c", "rockchip,rk3288-i2c";
501bbd6e6d7SKever Yang		reg = <0x2005a000 0x1000>;
502bbd6e6d7SKever Yang		interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
503bbd6e6d7SKever Yang		#address-cells = <1>;
504bbd6e6d7SKever Yang		#size-cells = <0>;
505bbd6e6d7SKever Yang		clock-names = "i2c";
506bbd6e6d7SKever Yang		clocks = <&cru PCLK_I2C2>;
507bbd6e6d7SKever Yang		pinctrl-names = "default";
508bbd6e6d7SKever Yang		pinctrl-0 = <&i2c2_xfer>;
509bbd6e6d7SKever Yang	};
510bbd6e6d7SKever Yang
511bbd6e6d7SKever Yang	i2c3: i2c3@2005e000 {
512bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-i2c", "rockchip,rk3288-i2c";
513bbd6e6d7SKever Yang		reg = <0x2005e000 0x1000>;
514bbd6e6d7SKever Yang		interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
515bbd6e6d7SKever Yang		#address-cells = <1>;
516bbd6e6d7SKever Yang		#size-cells = <0>;
517bbd6e6d7SKever Yang		clock-names = "i2c";
518bbd6e6d7SKever Yang		clocks = <&cru PCLK_I2C3>;
519bbd6e6d7SKever Yang		pinctrl-names = "default";
520bbd6e6d7SKever Yang		pinctrl-0 = <&i2c3_xfer>;
521bbd6e6d7SKever Yang	};
522bbd6e6d7SKever Yang
523bbd6e6d7SKever Yang	spi0: spi@20074000 {
524bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-spi", "rockchip,rk3288-spi";
525bbd6e6d7SKever Yang		reg = <0x20074000 0x1000>;
526bbd6e6d7SKever Yang		interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
527bbd6e6d7SKever Yang		#address-cells = <1>;
528bbd6e6d7SKever Yang		#size-cells = <0>;
529bbd6e6d7SKever Yang		pinctrl-names = "default";
530bbd6e6d7SKever Yang		pinctrl-0 = <&spi0_txd_mux0 &spi0_rxd_mux0 &spi0_clk_mux0 &spi0_cs0_mux0 &spi0_cs1_mux0>;
531bbd6e6d7SKever Yang		rockchip,spi-src-clk = <0>;
532bbd6e6d7SKever Yang		num-cs = <2>;
533bbd6e6d7SKever Yang		clocks =<&cru SCLK_SPI>, <&cru PCLK_SPI>;
534bbd6e6d7SKever Yang		clock-names = "spi","pclk_spi0";
535bbd6e6d7SKever Yang		dmas = <&pdma 8>, <&pdma 9>;
536bbd6e6d7SKever Yang		#dma-cells = <2>;
537bbd6e6d7SKever Yang		dma-names = "tx", "rx";
538bbd6e6d7SKever Yang	};
539bbd6e6d7SKever Yang
540bbd6e6d7SKever Yang	grf: syscon@20008000 {
541bbd6e6d7SKever Yang		u-boot,dm-pre-reloc;
542bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-grf", "syscon";
543bbd6e6d7SKever Yang		reg = <0x20008000 0x1000>;
544bbd6e6d7SKever Yang	};
545bbd6e6d7SKever Yang
546bbd6e6d7SKever Yang	pinctrl: pinctrl@20008000 {
547bbd6e6d7SKever Yang		compatible = "rockchip,rk3128-pinctrl";
548bbd6e6d7SKever Yang		reg = <0x20008000 0xA8>,
549bbd6e6d7SKever Yang		      <0x200080A8 0x4C>,
550bbd6e6d7SKever Yang		      <0x20008118 0x20>,
551bbd6e6d7SKever Yang		      <0x20008100 0x04>;
552bbd6e6d7SKever Yang		reg-names = "base", "mux", "pull", "drv";
553bbd6e6d7SKever Yang		rockchip,grf = <&grf>;
554bbd6e6d7SKever Yang		#address-cells = <1>;
555bbd6e6d7SKever Yang		#size-cells = <1>;
556bbd6e6d7SKever Yang		ranges;
557bbd6e6d7SKever Yang
558bbd6e6d7SKever Yang		gpio0: gpio0@2007c000 {
559bbd6e6d7SKever Yang			compatible = "rockchip,gpio-bank";
560bbd6e6d7SKever Yang			reg = <0x2007c000 0x100>;
561bbd6e6d7SKever Yang			interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
562bbd6e6d7SKever Yang			clocks = <&cru PCLK_GPIO0>;
563bbd6e6d7SKever Yang			gpio-controller;
564bbd6e6d7SKever Yang			#gpio-cells = <2>;
565bbd6e6d7SKever Yang			interrupt-controller;
566bbd6e6d7SKever Yang			#interrupt-cells = <2>;
567bbd6e6d7SKever Yang		};
568bbd6e6d7SKever Yang
569bbd6e6d7SKever Yang		gpio1: gpio1@20080000 {
570bbd6e6d7SKever Yang			compatible = "rockchip,gpio-bank";
571bbd6e6d7SKever Yang			reg = <0x20080000 0x100>;
572bbd6e6d7SKever Yang			interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
573bbd6e6d7SKever Yang			clocks = <&cru PCLK_GPIO1>;
574bbd6e6d7SKever Yang			gpio-controller;
575bbd6e6d7SKever Yang			#gpio-cells = <2>;
576bbd6e6d7SKever Yang			interrupt-controller;
577bbd6e6d7SKever Yang			#interrupt-cells = <2>;
578bbd6e6d7SKever Yang		};
579bbd6e6d7SKever Yang
580bbd6e6d7SKever Yang		gpio2: gpio2@20084000 {
581bbd6e6d7SKever Yang			compatible = "rockchip,gpio-bank";
582bbd6e6d7SKever Yang			reg = <0x20084000 0x100>;
583bbd6e6d7SKever Yang			interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
584bbd6e6d7SKever Yang			clocks = <&cru PCLK_GPIO2>;
585bbd6e6d7SKever Yang			gpio-controller;
586bbd6e6d7SKever Yang			#gpio-cells = <2>;
587bbd6e6d7SKever Yang			interrupt-controller;
588bbd6e6d7SKever Yang			#interrupt-cells = <2>;
589bbd6e6d7SKever Yang		};
590bbd6e6d7SKever Yang
591bbd6e6d7SKever Yang		gpio3: gpio2@20088000 {
592bbd6e6d7SKever Yang			compatible = "rockchip,gpio-bank";
593bbd6e6d7SKever Yang			reg = <0x20088000 0x100>;
594bbd6e6d7SKever Yang			interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
595bbd6e6d7SKever Yang			clocks = <&cru PCLK_GPIO3>;
596bbd6e6d7SKever Yang			gpio-controller;
597bbd6e6d7SKever Yang			#gpio-cells = <2>;
598bbd6e6d7SKever Yang			interrupt-controller;
599bbd6e6d7SKever Yang			#interrupt-cells = <2>;
600bbd6e6d7SKever Yang		};
601bbd6e6d7SKever Yang
602bbd6e6d7SKever Yang		pcfg_pull_up: pcfg-pull-up {
603bbd6e6d7SKever Yang			bias-pull-up;
604bbd6e6d7SKever Yang		};
605bbd6e6d7SKever Yang
606bbd6e6d7SKever Yang		pcfg_pull_down: pcfg-pull-down {
607bbd6e6d7SKever Yang			bias-pull-down;
608bbd6e6d7SKever Yang		};
609bbd6e6d7SKever Yang
610bbd6e6d7SKever Yang		pcfg_pull_none: pcfg-pull-none {
611bbd6e6d7SKever Yang			bias-disable;
612bbd6e6d7SKever Yang		};
613bbd6e6d7SKever Yang
614bbd6e6d7SKever Yang		emmc {
615bbd6e6d7SKever Yang			/*
616bbd6e6d7SKever Yang			 * We run eMMC at max speed; bump up drive strength.
617bbd6e6d7SKever Yang			 * We also have external pulls, so disable the internal ones.
618bbd6e6d7SKever Yang			 */
619bbd6e6d7SKever Yang
620bbd6e6d7SKever Yang			emmc_clk: emmc-clk {
621bbd6e6d7SKever Yang				rockchip,pins = <2 7 RK_FUNC_2 &pcfg_pull_none>;
622bbd6e6d7SKever Yang			};
623bbd6e6d7SKever Yang
624bbd6e6d7SKever Yang			emmc_cmd: emmc-cmd {
625bbd6e6d7SKever Yang				rockchip,pins = <2 4 RK_FUNC_2 &pcfg_pull_none>;
626bbd6e6d7SKever Yang			};
627bbd6e6d7SKever Yang
628bbd6e6d7SKever Yang			emmc_pwren: emmc-pwren {
629bbd6e6d7SKever Yang				rockchip,pins = <2 5 RK_FUNC_2 &pcfg_pull_none>;
630bbd6e6d7SKever Yang			};
631bbd6e6d7SKever Yang
632bbd6e6d7SKever Yang			emmc_bus8: emmc-bus8 {
633bbd6e6d7SKever Yang				rockchip,pins = <1 24 RK_FUNC_2 &pcfg_pull_none>,
634bbd6e6d7SKever Yang						<1 25 RK_FUNC_2 &pcfg_pull_none>,
635bbd6e6d7SKever Yang						<1 26 RK_FUNC_2 &pcfg_pull_none>,
636bbd6e6d7SKever Yang						<1 27 RK_FUNC_2 &pcfg_pull_none>,
637bbd6e6d7SKever Yang						<1 28 RK_FUNC_2 &pcfg_pull_none>,
638bbd6e6d7SKever Yang						<1 29 RK_FUNC_2 &pcfg_pull_none>,
639bbd6e6d7SKever Yang						<1 30 RK_FUNC_2 &pcfg_pull_none>,
640bbd6e6d7SKever Yang						<1 31 RK_FUNC_2 &pcfg_pull_none>;
641bbd6e6d7SKever Yang			};
642bbd6e6d7SKever Yang		};
643bbd6e6d7SKever Yang
644bbd6e6d7SKever Yang		nandc{
645bbd6e6d7SKever Yang			nandc_ale:nandc-ale {
646bbd6e6d7SKever Yang				rockchip,pins = <0 18 RK_FUNC_1 &pcfg_pull_none>;
647bbd6e6d7SKever Yang			};
648bbd6e6d7SKever Yang
649bbd6e6d7SKever Yang			nandc_cle:nandc-cle {
650bbd6e6d7SKever Yang				rockchip,pins = <0 18 RK_FUNC_1 &pcfg_pull_none>;
651bbd6e6d7SKever Yang			};
652bbd6e6d7SKever Yang
653bbd6e6d7SKever Yang			nandc_wrn:nandc-wrn {
654bbd6e6d7SKever Yang				rockchip,pins = <0 18 RK_FUNC_1 &pcfg_pull_none>;
655bbd6e6d7SKever Yang			};
656bbd6e6d7SKever Yang
657bbd6e6d7SKever Yang			nandc_rdn:nandc-rdn {
658bbd6e6d7SKever Yang				rockchip,pins = <0 18 RK_FUNC_1 &pcfg_pull_none>;
659bbd6e6d7SKever Yang			};
660bbd6e6d7SKever Yang
661bbd6e6d7SKever Yang			nandc_rdy:nandc-rdy {
662bbd6e6d7SKever Yang				rockchip,pins = <0 18 RK_FUNC_1 &pcfg_pull_none>;
663bbd6e6d7SKever Yang			};
664bbd6e6d7SKever Yang
665bbd6e6d7SKever Yang			nandc_cs0:nandc-cs0 {
666bbd6e6d7SKever Yang				rockchip,pins = <0 18 RK_FUNC_1 &pcfg_pull_none>;
667bbd6e6d7SKever Yang			};
668bbd6e6d7SKever Yang
669bbd6e6d7SKever Yang			nandc_data: nandc-data {
670bbd6e6d7SKever Yang				rockchip,pins = <0 18 RK_FUNC_1 &pcfg_pull_none>;
671bbd6e6d7SKever Yang			};
672bbd6e6d7SKever Yang		};
673bbd6e6d7SKever Yang
674bbd6e6d7SKever Yang		uart0 {
675bbd6e6d7SKever Yang			uart0_xfer: uart0-xfer {
676bbd6e6d7SKever Yang				rockchip,pins = <0 16 RK_FUNC_1 &pcfg_pull_none>,
677bbd6e6d7SKever Yang						<0 17 RK_FUNC_1 &pcfg_pull_none>;
678bbd6e6d7SKever Yang			};
679bbd6e6d7SKever Yang
680bbd6e6d7SKever Yang			uart0_cts: uart0-cts {
681bbd6e6d7SKever Yang				rockchip,pins = <0 18 RK_FUNC_1 &pcfg_pull_none>;
682bbd6e6d7SKever Yang			};
683bbd6e6d7SKever Yang
684bbd6e6d7SKever Yang			uart0_rts: uart0-rts {
685bbd6e6d7SKever Yang				rockchip,pins = <0 19 RK_FUNC_1 &pcfg_pull_none>;
686bbd6e6d7SKever Yang			};
687bbd6e6d7SKever Yang		};
688bbd6e6d7SKever Yang
689bbd6e6d7SKever Yang		uart1 {
690bbd6e6d7SKever Yang			uart1_xfer: uart1-xfer {
691bbd6e6d7SKever Yang				rockchip,pins = <2 22 RK_FUNC_1 &pcfg_pull_none>,
692bbd6e6d7SKever Yang						<2 23 RK_FUNC_1 &pcfg_pull_none>;
693bbd6e6d7SKever Yang			};
694bbd6e6d7SKever Yang		};
695bbd6e6d7SKever Yang
696bbd6e6d7SKever Yang		uart2 {
697bbd6e6d7SKever Yang			uart2_xfer: uart2-xfer {
698bbd6e6d7SKever Yang				rockchip,pins = <1 18 RK_FUNC_2 &pcfg_pull_none>,
699bbd6e6d7SKever Yang				<1 19 RK_FUNC_2 &pcfg_pull_none>;
700bbd6e6d7SKever Yang			};
701bbd6e6d7SKever Yang		};
702bbd6e6d7SKever Yang
703bbd6e6d7SKever Yang		sdmmc {
704bbd6e6d7SKever Yang			sdmmc_clk: sdmmc-clk {
705bbd6e6d7SKever Yang				rockchip,pins = <1 RK_PC0 1 &pcfg_pull_none>;
706bbd6e6d7SKever Yang			};
707bbd6e6d7SKever Yang
708bbd6e6d7SKever Yang			sdmmc_cmd: sdmmc-cmd {
709bbd6e6d7SKever Yang				rockchip,pins = <1 RK_PC1 1 &pcfg_pull_up>;
710bbd6e6d7SKever Yang			};
711bbd6e6d7SKever Yang
712bbd6e6d7SKever Yang			sdmmc_wp: sdmmc-wp {
713bbd6e6d7SKever Yang				rockchip,pins = <1 RK_PA7 1 &pcfg_pull_up>;
714bbd6e6d7SKever Yang			};
715bbd6e6d7SKever Yang
716bbd6e6d7SKever Yang			sdmmc_pwren: sdmmc-pwren {
717bbd6e6d7SKever Yang				rockchip,pins = <1 RK_PB6 1 &pcfg_pull_up>;
718bbd6e6d7SKever Yang			};
719bbd6e6d7SKever Yang
720bbd6e6d7SKever Yang			sdmmc_bus4: sdmmc-bus4 {
721bbd6e6d7SKever Yang				rockchip,pins = <1 RK_PC2 1 &pcfg_pull_up>,
722bbd6e6d7SKever Yang						<1 RK_PC3 1 &pcfg_pull_up>,
723bbd6e6d7SKever Yang						<1 RK_PC4 1 &pcfg_pull_up>,
724bbd6e6d7SKever Yang						<1 RK_PC5 1 &pcfg_pull_up>;
725bbd6e6d7SKever Yang			};
726bbd6e6d7SKever Yang		};
727bbd6e6d7SKever Yang
728bbd6e6d7SKever Yang		pwm0 {
729bbd6e6d7SKever Yang			pwm0_pin: pwm0-pin {
730bbd6e6d7SKever Yang				rockchip,pins = <0 0 RK_FUNC_2 &pcfg_pull_none>;
731bbd6e6d7SKever Yang			};
732bbd6e6d7SKever Yang		};
733bbd6e6d7SKever Yang
734bbd6e6d7SKever Yang		pwm1 {
735bbd6e6d7SKever Yang			pwm1_pin: pwm1-pin {
736bbd6e6d7SKever Yang				rockchip,pins = <0 1 RK_FUNC_2 &pcfg_pull_none>;
737bbd6e6d7SKever Yang			};
738bbd6e6d7SKever Yang		};
739bbd6e6d7SKever Yang
740bbd6e6d7SKever Yang		pwm2 {
741bbd6e6d7SKever Yang			pwm2_pin: pwm2-pin {
742bbd6e6d7SKever Yang				rockchip,pins = <0 1 2 &pcfg_pull_none>;
743bbd6e6d7SKever Yang			};
744bbd6e6d7SKever Yang		};
745bbd6e6d7SKever Yang
746bbd6e6d7SKever Yang		pwm3 {
747bbd6e6d7SKever Yang			pwm3_pin: pwm3-pin {
748bbd6e6d7SKever Yang				rockchip,pins = <0 27 1 &pcfg_pull_none>;
749bbd6e6d7SKever Yang			};
750bbd6e6d7SKever Yang		};
751bbd6e6d7SKever Yang
752bbd6e6d7SKever Yang		i2c0 {
753bbd6e6d7SKever Yang			i2c0_xfer: i2c0-xfer {
754bbd6e6d7SKever Yang				rockchip,pins = <0 0 RK_FUNC_1 &pcfg_pull_none>,
755bbd6e6d7SKever Yang						<0 1 RK_FUNC_1 &pcfg_pull_none>;
756bbd6e6d7SKever Yang			};
757bbd6e6d7SKever Yang		};
758bbd6e6d7SKever Yang
759bbd6e6d7SKever Yang		i2c1 {
760bbd6e6d7SKever Yang			i2c1_xfer: i2c1-xfer {
761bbd6e6d7SKever Yang				rockchip,pins = <0 2 RK_FUNC_1 &pcfg_pull_none>,
762bbd6e6d7SKever Yang						<0 3 RK_FUNC_1 &pcfg_pull_none>;
763bbd6e6d7SKever Yang			};
764bbd6e6d7SKever Yang		};
765bbd6e6d7SKever Yang
766bbd6e6d7SKever Yang		i2c2 {
767bbd6e6d7SKever Yang			i2c2_xfer: i2c2-xfer {
768bbd6e6d7SKever Yang				rockchip,pins = <2 20 3 &pcfg_pull_none>,
769bbd6e6d7SKever Yang						<2 21 3 &pcfg_pull_none>;
770bbd6e6d7SKever Yang			};
771bbd6e6d7SKever Yang		};
772bbd6e6d7SKever Yang
773bbd6e6d7SKever Yang		i2c3 {
774bbd6e6d7SKever Yang			i2c3_xfer: i2c3-xfer {
775bbd6e6d7SKever Yang				rockchip,pins = <0 6 RK_FUNC_1 &pcfg_pull_none>,
776bbd6e6d7SKever Yang						<0 7 RK_FUNC_1 &pcfg_pull_none>;
777bbd6e6d7SKever Yang			};
778bbd6e6d7SKever Yang		};
779bbd6e6d7SKever Yang
780bbd6e6d7SKever Yang		spi0 {
781bbd6e6d7SKever Yang			spi0_txd_mux0:spi0-txd-mux0 {
782bbd6e6d7SKever Yang				rockchip,pins = <2 4 RK_FUNC_2 &pcfg_pull_none>;
783bbd6e6d7SKever Yang			};
784bbd6e6d7SKever Yang
785bbd6e6d7SKever Yang			spi0_rxd_mux0:spi0-rxd-mux0 {
786bbd6e6d7SKever Yang				rockchip,pins = <2 4 RK_FUNC_2 &pcfg_pull_none>;
787bbd6e6d7SKever Yang			};
788bbd6e6d7SKever Yang
789bbd6e6d7SKever Yang			spi0_clk_mux0:spi0-clk-mux0 {
790bbd6e6d7SKever Yang				rockchip,pins = <2 4 RK_FUNC_2 &pcfg_pull_none>;
791bbd6e6d7SKever Yang			};
792bbd6e6d7SKever Yang
793bbd6e6d7SKever Yang			spi0_cs0_mux0:spi0-cs0-mux0 {
794bbd6e6d7SKever Yang				rockchip,pins = <2 4 RK_FUNC_2 &pcfg_pull_none>;
795bbd6e6d7SKever Yang			};
796bbd6e6d7SKever Yang
797bbd6e6d7SKever Yang			spi0_cs1_mux0:spi0-cs1-mux0 {
798bbd6e6d7SKever Yang				rockchip,pins = <2 4 RK_FUNC_2 &pcfg_pull_none>;
799bbd6e6d7SKever Yang			};
800bbd6e6d7SKever Yang		};
801bbd6e6d7SKever Yang
802bbd6e6d7SKever Yang	};
803bbd6e6d7SKever Yang};
804