1/*
2 * This program is free software; you can redistribute it and/or modify
3 * it under the terms of the GNU General Public License as published by
4 * the Free Software Foundation; either version 2 of the License, or
5 * (at your option) any later version.
6 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
10 * GNU General Public License for more details.
11 */
12
13#include <dt-bindings/gpio/gpio.h>
14#include <dt-bindings/interrupt-controller/irq.h>
15#include <dt-bindings/interrupt-controller/arm-gic.h>
16#include <dt-bindings/pinctrl/rockchip.h>
17#include <dt-bindings/clock/rk3288-cru.h>
18#include <dt-bindings/thermal/thermal.h>
19#include "skeleton.dtsi"
20
21/ {
22	compatible = "rockchip,rk3288";
23
24	interrupt-parent = <&gic>;
25
26	aliases {
27		i2c0 = &i2c0;
28		i2c1 = &i2c1;
29		i2c2 = &i2c2;
30		i2c3 = &i2c3;
31		i2c4 = &i2c4;
32		i2c5 = &i2c5;
33		mshc0 = &emmc;
34		mshc1 = &sdmmc;
35		mshc2 = &sdio0;
36		mshc3 = &sdio1;
37		serial0 = &uart0;
38		serial1 = &uart1;
39		serial2 = &uart2;
40		serial3 = &uart3;
41		serial4 = &uart4;
42		spi0 = &spi0;
43		spi1 = &spi1;
44		spi2 = &spi2;
45	};
46
47	cpus {
48		#address-cells = <1>;
49		#size-cells = <0>;
50		enable-method = "rockchip,rk3066-smp";
51		rockchip,pmu = <&pmu>;
52
53		cpu0: cpu@500 {
54			device_type = "cpu";
55			compatible = "arm,cortex-a12";
56			reg = <0x500>;
57			resets = <&cru SRST_CORE0>;
58			operating-points = <
59				/* KHz    uV */
60				1608000 1350000
61				1512000 1300000
62				1416000 1200000
63				1200000 1100000
64				1008000 1050000
65				 816000 1000000
66				 696000  950000
67				 600000  900000
68				 408000  900000
69				 312000  900000
70				 216000  900000
71				 126000  900000
72			>;
73			#cooling-cells = <2>; /* min followed by max */
74			clock-latency = <40000>;
75			clocks = <&cru ARMCLK>;
76		};
77		cpu@501 {
78			device_type = "cpu";
79			compatible = "arm,cortex-a12";
80			reg = <0x501>;
81			resets = <&cru SRST_CORE1>;
82		};
83		cpu@502 {
84			device_type = "cpu";
85			compatible = "arm,cortex-a12";
86			reg = <0x502>;
87			resets = <&cru SRST_CORE2>;
88		};
89		cpu@503 {
90			device_type = "cpu";
91			compatible = "arm,cortex-a12";
92			reg = <0x503>;
93			resets = <&cru SRST_CORE3>;
94		};
95	};
96
97	amba {
98		compatible = "arm,amba-bus";
99		#address-cells = <1>;
100		#size-cells = <1>;
101		ranges;
102
103		dmac_peri: dma-controller@ff250000 {
104			compatible = "arm,pl330", "arm,primecell";
105			reg = <0xff250000 0x4000>;
106			interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
107				     <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
108			#dma-cells = <1>;
109			clocks = <&cru ACLK_DMAC2>;
110			clock-names = "apb_pclk";
111		};
112
113		dmac_bus_ns: dma-controller@ff600000 {
114			compatible = "arm,pl330", "arm,primecell";
115			reg = <0xff600000 0x4000>;
116			interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
117				     <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
118			#dma-cells = <1>;
119			clocks = <&cru ACLK_DMAC1>;
120			clock-names = "apb_pclk";
121			status = "disabled";
122		};
123
124		dmac_bus_s: dma-controller@ffb20000 {
125			compatible = "arm,pl330", "arm,primecell";
126			reg = <0xffb20000 0x4000>;
127			interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
128				     <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
129			#dma-cells = <1>;
130			clocks = <&cru ACLK_DMAC1>;
131			clock-names = "apb_pclk";
132		};
133	};
134
135	xin24m: oscillator {
136		compatible = "fixed-clock";
137		clock-frequency = <24000000>;
138		clock-output-names = "xin24m";
139		#clock-cells = <0>;
140	};
141
142	timer {
143		compatible = "arm,armv7-timer";
144		arm,cpu-registers-not-fw-configured;
145		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
146			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
147			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
148			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
149		clock-frequency = <24000000>;
150	};
151
152	timer: timer@ff810000 {
153		compatible = "rockchip,rk3288-timer";
154		reg = <0xff810000 0x20>;
155		interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
156		clocks = <&xin24m>, <&cru PCLK_TIMER>;
157		clock-names = "timer", "pclk";
158	};
159
160	display-subsystem {
161		compatible = "rockchip,display-subsystem";
162		ports = <&vopl_out>, <&vopb_out>;
163	};
164
165	sdmmc: dwmmc@ff0c0000 {
166		compatible = "rockchip,rk3288-dw-mshc";
167		clock-freq-min-max = <400000 150000000>;
168		clocks = <&cru HCLK_SDMMC>, <&cru SCLK_SDMMC>;
169		clock-names = "biu", "ciu";
170		fifo-depth = <0x100>;
171		interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
172		reg = <0xff0c0000 0x4000>;
173		status = "disabled";
174	};
175
176	sdio0: dwmmc@ff0d0000 {
177		compatible = "rockchip,rk3288-dw-mshc";
178		clock-freq-min-max = <400000 150000000>;
179		clocks = <&cru HCLK_SDIO0>, <&cru SCLK_SDIO0>;
180		clock-names = "biu", "ciu";
181		fifo-depth = <0x100>;
182		interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
183		reg = <0xff0d0000 0x4000>;
184		status = "disabled";
185	};
186
187	sdio1: dwmmc@ff0e0000 {
188		compatible = "rockchip,rk3288-dw-mshc";
189		clock-freq-min-max = <400000 150000000>;
190		clocks = <&cru HCLK_SDIO1>, <&cru SCLK_SDIO1>;
191		clock-names = "biu", "ciu";
192		fifo-depth = <0x100>;
193		interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
194		reg = <0xff0e0000 0x4000>;
195		status = "disabled";
196	};
197
198	emmc: dwmmc@ff0f0000 {
199		compatible = "rockchip,rk3288-dw-mshc";
200		clock-freq-min-max = <400000 150000000>;
201		clocks = <&cru HCLK_EMMC>, <&cru SCLK_EMMC>;
202		clock-names = "biu", "ciu";
203		fifo-depth = <0x100>;
204		interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
205		reg = <0xff0f0000 0x4000>;
206		status = "disabled";
207	};
208
209	saradc: saradc@ff100000 {
210		compatible = "rockchip,saradc";
211		reg = <0xff100000 0x100>;
212		interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
213		#io-channel-cells = <1>;
214		clocks = <&cru SCLK_SARADC>, <&cru PCLK_SARADC>;
215		clock-names = "saradc", "apb_pclk";
216		status = "disabled";
217	};
218
219	spi0: spi@ff110000 {
220		compatible = "rockchip,rk3288-spi", "rockchip,rk3066-spi";
221		clocks = <&cru SCLK_SPI0>, <&cru PCLK_SPI0>;
222		clock-names = "spiclk", "apb_pclk";
223		dmas = <&dmac_peri 11>, <&dmac_peri 12>;
224		dma-names = "tx", "rx";
225		interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
226		pinctrl-names = "default";
227		pinctrl-0 = <&spi0_clk &spi0_tx &spi0_rx &spi0_cs0>;
228		reg = <0xff110000 0x1000>;
229		#address-cells = <1>;
230		#size-cells = <0>;
231		status = "disabled";
232	};
233
234	spi1: spi@ff120000 {
235		compatible = "rockchip,rk3288-spi", "rockchip,rk3066-spi";
236		clocks = <&cru SCLK_SPI1>, <&cru PCLK_SPI1>;
237		clock-names = "spiclk", "apb_pclk";
238		dmas = <&dmac_peri 13>, <&dmac_peri 14>;
239		dma-names = "tx", "rx";
240		interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
241		pinctrl-names = "default";
242		pinctrl-0 = <&spi1_clk &spi1_tx &spi1_rx &spi1_cs0>;
243		reg = <0xff120000 0x1000>;
244		#address-cells = <1>;
245		#size-cells = <0>;
246		status = "disabled";
247	};
248
249	spi2: spi@ff130000 {
250		compatible = "rockchip,rk3288-spi", "rockchip,rk3066-spi";
251		clocks = <&cru SCLK_SPI2>, <&cru PCLK_SPI2>;
252		clock-names = "spiclk", "apb_pclk";
253		dmas = <&dmac_peri 15>, <&dmac_peri 16>;
254		dma-names = "tx", "rx";
255		interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
256		pinctrl-names = "default";
257		pinctrl-0 = <&spi2_clk &spi2_tx &spi2_rx &spi2_cs0>;
258		reg = <0xff130000 0x1000>;
259		#address-cells = <1>;
260		#size-cells = <0>;
261		status = "disabled";
262	};
263
264	i2c1: i2c@ff140000 {
265		compatible = "rockchip,rk3288-i2c";
266		reg = <0xff140000 0x1000>;
267		interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
268		#address-cells = <1>;
269		#size-cells = <0>;
270		clock-names = "i2c";
271		clocks = <&cru PCLK_I2C1>;
272		pinctrl-names = "default";
273		pinctrl-0 = <&i2c1_xfer>;
274		status = "disabled";
275	};
276
277	i2c3: i2c@ff150000 {
278		compatible = "rockchip,rk3288-i2c";
279		reg = <0xff150000 0x1000>;
280		interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
281		#address-cells = <1>;
282		#size-cells = <0>;
283		clock-names = "i2c";
284		clocks = <&cru PCLK_I2C3>;
285		pinctrl-names = "default";
286		pinctrl-0 = <&i2c3_xfer>;
287		status = "disabled";
288	};
289
290	i2c4: i2c@ff160000 {
291		compatible = "rockchip,rk3288-i2c";
292		reg = <0xff160000 0x1000>;
293		interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
294		#address-cells = <1>;
295		#size-cells = <0>;
296		clock-names = "i2c";
297		clocks = <&cru PCLK_I2C4>;
298		pinctrl-names = "default";
299		pinctrl-0 = <&i2c4_xfer>;
300		status = "disabled";
301	};
302
303	i2c5: i2c@ff170000 {
304		compatible = "rockchip,rk3288-i2c";
305		reg = <0xff170000 0x1000>;
306		interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
307		#address-cells = <1>;
308		#size-cells = <0>;
309		clock-names = "i2c";
310		clocks = <&cru PCLK_I2C5>;
311		pinctrl-names = "default";
312		pinctrl-0 = <&i2c5_xfer>;
313		status = "disabled";
314	};
315
316	uart0: serial@ff180000 {
317		compatible = "rockchip,rk3288-uart", "snps,dw-apb-uart";
318		reg = <0xff180000 0x100>;
319		interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
320		reg-shift = <2>;
321		reg-io-width = <4>;
322		clocks = <&cru SCLK_UART0>, <&cru PCLK_UART0>;
323		clock-names = "baudclk", "apb_pclk";
324		pinctrl-names = "default";
325		pinctrl-0 = <&uart0_xfer>;
326		status = "disabled";
327	};
328
329	uart1: serial@ff190000 {
330		compatible = "rockchip,rk3288-uart", "snps,dw-apb-uart";
331		reg = <0xff190000 0x100>;
332		interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
333		reg-shift = <2>;
334		reg-io-width = <4>;
335		clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>;
336		clock-names = "baudclk", "apb_pclk";
337		pinctrl-names = "default";
338		pinctrl-0 = <&uart1_xfer>;
339		status = "disabled";
340	};
341
342	uart2: serial@ff690000 {
343		compatible = "rockchip,rk3288-uart", "snps,dw-apb-uart";
344		reg = <0xff690000 0x100>;
345		interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
346		reg-shift = <2>;
347		reg-io-width = <4>;
348		clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>;
349		clock-names = "baudclk", "apb_pclk";
350		pinctrl-names = "default";
351		pinctrl-0 = <&uart2_xfer>;
352		status = "disabled";
353	};
354
355	uart3: serial@ff1b0000 {
356		compatible = "rockchip,rk3288-uart", "snps,dw-apb-uart";
357		reg = <0xff1b0000 0x100>;
358		interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
359		reg-shift = <2>;
360		reg-io-width = <4>;
361		clocks = <&cru SCLK_UART3>, <&cru PCLK_UART3>;
362		clock-names = "baudclk", "apb_pclk";
363		pinctrl-names = "default";
364		pinctrl-0 = <&uart3_xfer>;
365		status = "disabled";
366	};
367
368	uart4: serial@ff1c0000 {
369		compatible = "rockchip,rk3288-uart", "snps,dw-apb-uart";
370		reg = <0xff1c0000 0x100>;
371		interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
372		reg-shift = <2>;
373		reg-io-width = <4>;
374		clocks = <&cru SCLK_UART4>, <&cru PCLK_UART4>;
375		clock-names = "baudclk", "apb_pclk";
376		pinctrl-names = "default";
377		pinctrl-0 = <&uart4_xfer>;
378		status = "disabled";
379	};
380
381	thermal-zones {
382		#include "rk3288-thermal.dtsi"
383	};
384
385	tsadc: tsadc@ff280000 {
386		compatible = "rockchip,rk3288-tsadc";
387		reg = <0xff280000 0x100>;
388		interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
389		clocks = <&cru SCLK_TSADC>, <&cru PCLK_TSADC>;
390		clock-names = "tsadc", "apb_pclk";
391		resets = <&cru SRST_TSADC>;
392		reset-names = "tsadc-apb";
393		pinctrl-names = "default";
394		pinctrl-0 = <&otp_out>;
395		#thermal-sensor-cells = <1>;
396		rockchip,hw-tshut-temp = <95000>;
397		status = "disabled";
398	};
399
400	gmac: ethernet@ff290000 {
401		compatible = "rockchip,rk3288-gmac";
402		reg = <0xff290000 0x10000>;
403		interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
404		interrupt-names = "macirq";
405		rockchip,grf = <&grf>;
406		clocks = <&cru SCLK_MAC>,
407			<&cru SCLK_MAC_RX>, <&cru SCLK_MAC_TX>,
408			<&cru SCLK_MACREF>, <&cru SCLK_MACREF_OUT>,
409			<&cru ACLK_GMAC>, <&cru PCLK_GMAC>;
410		clock-names = "stmmaceth",
411			"mac_clk_rx", "mac_clk_tx",
412			"clk_mac_ref", "clk_mac_refout",
413			"aclk_mac", "pclk_mac";
414		status = "disabled";
415	};
416
417	usb_host0_ehci: usb@ff500000 {
418		compatible = "generic-ehci";
419		reg = <0xff500000 0x100>;
420		interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
421		clocks = <&cru HCLK_USBHOST0>;
422		clock-names = "usbhost";
423		phys = <&usbphy1>;
424		phy-names = "usb";
425		status = "disabled";
426	};
427
428	/* NOTE: ohci@ff520000 doesn't actually work on hardware */
429
430	usb_host1: usb@ff540000 {
431		compatible = "rockchip,rk3288-usb", "rockchip,rk3066-usb",
432				"snps,dwc2";
433		reg = <0xff540000 0x40000>;
434		interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
435		clocks = <&cru HCLK_USBHOST1>;
436		clock-names = "otg";
437		phys = <&usbphy2>;
438		phy-names = "usb2-phy";
439		status = "disabled";
440	};
441
442	usb_otg: usb@ff580000 {
443		compatible = "rockchip,rk3288-usb", "rockchip,rk3066-usb",
444				"snps,dwc2";
445		reg = <0xff580000 0x40000>;
446		interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
447		clocks = <&cru HCLK_OTG0>;
448		clock-names = "otg";
449		phys = <&usbphy0>;
450		phy-names = "usb2-phy";
451		status = "disabled";
452	};
453
454	usb_hsic: usb@ff5c0000 {
455		compatible = "generic-ehci";
456		reg = <0xff5c0000 0x100>;
457		interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
458		clocks = <&cru HCLK_HSIC>;
459		clock-names = "usbhost";
460		status = "disabled";
461	};
462
463	i2c0: i2c@ff650000 {
464		compatible = "rockchip,rk3288-i2c";
465		reg = <0xff650000 0x1000>;
466		interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
467		#address-cells = <1>;
468		#size-cells = <0>;
469		clock-names = "i2c";
470		clocks = <&cru PCLK_I2C0>;
471		pinctrl-names = "default";
472		pinctrl-0 = <&i2c0_xfer>;
473		status = "disabled";
474	};
475
476	i2c2: i2c@ff660000 {
477		compatible = "rockchip,rk3288-i2c";
478		reg = <0xff660000 0x1000>;
479		interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
480		#address-cells = <1>;
481		#size-cells = <0>;
482		clock-names = "i2c";
483		clocks = <&cru PCLK_I2C2>;
484		pinctrl-names = "default";
485		pinctrl-0 = <&i2c2_xfer>;
486		status = "disabled";
487	};
488
489	pwm0: pwm@ff680000 {
490		compatible = "rockchip,rk3288-pwm";
491		reg = <0xff680000 0x10>;
492		#pwm-cells = <3>;
493		pinctrl-names = "default";
494		pinctrl-0 = <&pwm0_pin>;
495		clocks = <&cru PCLK_PWM>;
496		clock-names = "pwm";
497		status = "disabled";
498	};
499
500	pwm1: pwm@ff680010 {
501		compatible = "rockchip,rk3288-pwm";
502		reg = <0xff680010 0x10>;
503		#pwm-cells = <3>;
504		pinctrl-names = "default";
505		pinctrl-0 = <&pwm1_pin>;
506		clocks = <&cru PCLK_PWM>;
507		clock-names = "pwm";
508		status = "disabled";
509	};
510
511	pwm2: pwm@ff680020 {
512		compatible = "rockchip,rk3288-pwm";
513		reg = <0xff680020 0x10>;
514		#pwm-cells = <3>;
515		pinctrl-names = "default";
516		pinctrl-0 = <&pwm2_pin>;
517		clocks = <&cru PCLK_PWM>;
518		clock-names = "pwm";
519		status = "disabled";
520	};
521
522	pwm3: pwm@ff680030 {
523		compatible = "rockchip,rk3288-pwm";
524		reg = <0xff680030 0x10>;
525		#pwm-cells = <2>;
526		pinctrl-names = "default";
527		pinctrl-0 = <&pwm3_pin>;
528		clocks = <&cru PCLK_PWM>;
529		clock-names = "pwm";
530		status = "disabled";
531	};
532
533	bus_intmem@ff700000 {
534		compatible = "mmio-sram";
535		reg = <0xff700000 0x18000>;
536		#address-cells = <1>;
537		#size-cells = <1>;
538		ranges = <0 0xff700000 0x18000>;
539		smp-sram@0 {
540			compatible = "rockchip,rk3066-smp-sram";
541			reg = <0x00 0x10>;
542		};
543	};
544
545	sram@ff720000 {
546		compatible = "rockchip,rk3288-pmu-sram", "mmio-sram";
547		reg = <0xff720000 0x1000>;
548	};
549
550	pmu: power-management@ff730000 {
551		compatible = "rockchip,rk3288-pmu", "syscon";
552		reg = <0xff730000 0x100>;
553	};
554
555	sgrf: syscon@ff740000 {
556		compatible = "rockchip,rk3288-sgrf", "syscon";
557		reg = <0xff740000 0x1000>;
558	};
559
560	cru: clock-controller@ff760000 {
561		compatible = "rockchip,rk3288-cru";
562		reg = <0xff760000 0x1000>;
563		rockchip,grf = <&grf>;
564		#clock-cells = <1>;
565		#reset-cells = <1>;
566		assigned-clocks = <&cru PLL_GPLL>, <&cru PLL_CPLL>,
567				  <&cru PLL_NPLL>, <&cru ACLK_CPU>,
568				  <&cru HCLK_CPU>, <&cru PCLK_CPU>,
569				  <&cru ACLK_PERI>, <&cru HCLK_PERI>,
570				  <&cru PCLK_PERI>;
571		assigned-clock-rates = <594000000>, <400000000>,
572				       <500000000>, <300000000>,
573				       <150000000>, <75000000>,
574				       <300000000>, <150000000>,
575				       <75000000>;
576	};
577
578	grf: syscon@ff770000 {
579		compatible = "rockchip,rk3288-grf", "syscon";
580		reg = <0xff770000 0x1000>;
581	};
582
583	wdt: watchdog@ff800000 {
584		compatible = "rockchip,rk3288-wdt", "snps,dw-wdt";
585		reg = <0xff800000 0x100>;
586		clocks = <&cru PCLK_WDT>;
587		interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
588		status = "disabled";
589	};
590
591	i2s: i2s@ff890000 {
592		compatible = "rockchip,rk3288-i2s", "rockchip,rk3066-i2s";
593		reg = <0xff890000 0x10000>;
594		interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
595		#address-cells = <1>;
596		#size-cells = <0>;
597		dmas = <&dmac_bus_s 0>, <&dmac_bus_s 1>;
598		dma-names = "tx", "rx";
599		clock-names = "i2s_hclk", "i2s_clk";
600		clocks = <&cru HCLK_I2S0>, <&cru SCLK_I2S0>;
601		pinctrl-names = "default";
602		pinctrl-0 = <&i2s0_bus>;
603		status = "disabled";
604	};
605
606	vopb: vop@ff930000 {
607		compatible = "rockchip,rk3288-vop";
608		reg = <0xff930000 0x19c>;
609		interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
610		clocks = <&cru ACLK_VOP0>, <&cru DCLK_VOP0>, <&cru HCLK_VOP0>;
611		clock-names = "aclk_vop", "dclk_vop", "hclk_vop";
612		resets = <&cru SRST_LCDC0_AXI>, <&cru SRST_LCDC0_AHB>, <&cru SRST_LCDC0_DCLK>;
613		reset-names = "axi", "ahb", "dclk";
614		iommus = <&vopb_mmu>;
615		status = "disabled";
616
617		vopb_out: port {
618			#address-cells = <1>;
619			#size-cells = <0>;
620
621			vopb_out_hdmi: endpoint@0 {
622				reg = <0>;
623				remote-endpoint = <&hdmi_in_vopb>;
624			};
625		};
626	};
627
628	vopb_mmu: iommu@ff930300 {
629		compatible = "rockchip,iommu";
630		reg = <0xff930300 0x100>;
631		interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
632		interrupt-names = "vopb_mmu";
633		#iommu-cells = <0>;
634		status = "disabled";
635	};
636
637	vopl: vop@ff940000 {
638		compatible = "rockchip,rk3288-vop";
639		reg = <0xff940000 0x19c>;
640		interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
641		clocks = <&cru ACLK_VOP1>, <&cru DCLK_VOP1>, <&cru HCLK_VOP1>;
642		clock-names = "aclk_vop", "dclk_vop", "hclk_vop";
643		resets = <&cru SRST_LCDC1_AXI>, <&cru SRST_LCDC1_AHB>, <&cru SRST_LCDC1_DCLK>;
644		reset-names = "axi", "ahb", "dclk";
645		iommus = <&vopl_mmu>;
646		status = "disabled";
647
648		vopl_out: port {
649			#address-cells = <1>;
650			#size-cells = <0>;
651
652			vopl_out_hdmi: endpoint@0 {
653				reg = <0>;
654				remote-endpoint = <&hdmi_in_vopl>;
655			};
656		};
657	};
658
659	vopl_mmu: iommu@ff940300 {
660		compatible = "rockchip,iommu";
661		reg = <0xff940300 0x100>;
662		interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
663		interrupt-names = "vopl_mmu";
664		#iommu-cells = <0>;
665		status = "disabled";
666	};
667
668	hdmi: hdmi@ff980000 {
669		compatible = "rockchip,rk3288-dw-hdmi";
670		reg = <0xff980000 0x20000>;
671		reg-io-width = <4>;
672		rockchip,grf = <&grf>;
673		interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
674		clocks = <&cru  PCLK_HDMI_CTRL>, <&cru SCLK_HDMI_HDCP>;
675		clock-names = "iahb", "isfr";
676		status = "disabled";
677
678		ports {
679			hdmi_in: port {
680				#address-cells = <1>;
681				#size-cells = <0>;
682				hdmi_in_vopb: endpoint@0 {
683					reg = <0>;
684					remote-endpoint = <&vopb_out_hdmi>;
685				};
686				hdmi_in_vopl: endpoint@1 {
687					reg = <1>;
688					remote-endpoint = <&vopl_out_hdmi>;
689				};
690			};
691		};
692	};
693
694	gic: interrupt-controller@ffc01000 {
695		compatible = "arm,gic-400";
696		interrupt-controller;
697		#interrupt-cells = <3>;
698		#address-cells = <0>;
699
700		reg = <0xffc01000 0x1000>,
701		      <0xffc02000 0x1000>,
702		      <0xffc04000 0x2000>,
703		      <0xffc06000 0x2000>;
704		interrupts = <GIC_PPI 9 0xf04>;
705	};
706
707	usbphy: phy {
708		compatible = "rockchip,rk3288-usb-phy";
709		rockchip,grf = <&grf>;
710		#address-cells = <1>;
711		#size-cells = <0>;
712		status = "disabled";
713
714		usbphy0: usb-phy0 {
715			#phy-cells = <0>;
716			reg = <0x320>;
717			clocks = <&cru SCLK_OTGPHY0>;
718			clock-names = "phyclk";
719		};
720
721		usbphy1: usb-phy1 {
722			#phy-cells = <0>;
723			reg = <0x334>;
724			clocks = <&cru SCLK_OTGPHY1>;
725			clock-names = "phyclk";
726		};
727
728		usbphy2: usb-phy2 {
729			#phy-cells = <0>;
730			reg = <0x348>;
731			clocks = <&cru SCLK_OTGPHY2>;
732			clock-names = "phyclk";
733		};
734	};
735
736	pinctrl: pinctrl {
737		compatible = "rockchip,rk3288-pinctrl";
738		rockchip,grf = <&grf>;
739		rockchip,pmu = <&pmu>;
740		#address-cells = <1>;
741		#size-cells = <1>;
742		ranges;
743
744		gpio0: gpio0@ff750000 {
745			compatible = "rockchip,gpio-bank";
746			reg =	<0xff750000 0x100>;
747			interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
748			clocks = <&cru PCLK_GPIO0>;
749
750			gpio-controller;
751			#gpio-cells = <2>;
752
753			interrupt-controller;
754			#interrupt-cells = <2>;
755		};
756
757		gpio1: gpio1@ff780000 {
758			compatible = "rockchip,gpio-bank";
759			reg = <0xff780000 0x100>;
760			interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
761			clocks = <&cru PCLK_GPIO1>;
762
763			gpio-controller;
764			#gpio-cells = <2>;
765
766			interrupt-controller;
767			#interrupt-cells = <2>;
768		};
769
770		gpio2: gpio2@ff790000 {
771			compatible = "rockchip,gpio-bank";
772			reg = <0xff790000 0x100>;
773			interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
774			clocks = <&cru PCLK_GPIO2>;
775
776			gpio-controller;
777			#gpio-cells = <2>;
778
779			interrupt-controller;
780			#interrupt-cells = <2>;
781		};
782
783		gpio3: gpio3@ff7a0000 {
784			compatible = "rockchip,gpio-bank";
785			reg = <0xff7a0000 0x100>;
786			interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
787			clocks = <&cru PCLK_GPIO3>;
788
789			gpio-controller;
790			#gpio-cells = <2>;
791
792			interrupt-controller;
793			#interrupt-cells = <2>;
794		};
795
796		gpio4: gpio4@ff7b0000 {
797			compatible = "rockchip,gpio-bank";
798			reg = <0xff7b0000 0x100>;
799			interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
800			clocks = <&cru PCLK_GPIO4>;
801
802			gpio-controller;
803			#gpio-cells = <2>;
804
805			interrupt-controller;
806			#interrupt-cells = <2>;
807		};
808
809		gpio5: gpio5@ff7c0000 {
810			compatible = "rockchip,gpio-bank";
811			reg = <0xff7c0000 0x100>;
812			interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
813			clocks = <&cru PCLK_GPIO5>;
814
815			gpio-controller;
816			#gpio-cells = <2>;
817
818			interrupt-controller;
819			#interrupt-cells = <2>;
820		};
821
822		gpio6: gpio6@ff7d0000 {
823			compatible = "rockchip,gpio-bank";
824			reg = <0xff7d0000 0x100>;
825			interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
826			clocks = <&cru PCLK_GPIO6>;
827
828			gpio-controller;
829			#gpio-cells = <2>;
830
831			interrupt-controller;
832			#interrupt-cells = <2>;
833		};
834
835		gpio7: gpio7@ff7e0000 {
836			compatible = "rockchip,gpio-bank";
837			reg = <0xff7e0000 0x100>;
838			interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>;
839			clocks = <&cru PCLK_GPIO7>;
840
841			gpio-controller;
842			#gpio-cells = <2>;
843
844			interrupt-controller;
845			#interrupt-cells = <2>;
846		};
847
848		gpio8: gpio8@ff7f0000 {
849			compatible = "rockchip,gpio-bank";
850			reg = <0xff7f0000 0x100>;
851			interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
852			clocks = <&cru PCLK_GPIO8>;
853
854			gpio-controller;
855			#gpio-cells = <2>;
856
857			interrupt-controller;
858			#interrupt-cells = <2>;
859		};
860
861		pcfg_pull_up: pcfg-pull-up {
862			bias-pull-up;
863		};
864
865		pcfg_pull_down: pcfg-pull-down {
866			bias-pull-down;
867		};
868
869		pcfg_pull_none: pcfg-pull-none {
870			bias-disable;
871		};
872
873		pcfg_pull_none_12ma: pcfg-pull-none-12ma {
874			bias-disable;
875			drive-strength = <12>;
876		};
877
878		sleep {
879			global_pwroff: global-pwroff {
880				rockchip,pins = <0 0 RK_FUNC_1 &pcfg_pull_none>;
881			};
882
883			ddrio_pwroff: ddrio-pwroff {
884				rockchip,pins = <0 1 RK_FUNC_1 &pcfg_pull_none>;
885			};
886
887			ddr0_retention: ddr0-retention {
888				rockchip,pins = <0 2 RK_FUNC_1 &pcfg_pull_up>;
889			};
890
891			ddr1_retention: ddr1-retention {
892				rockchip,pins = <0 3 RK_FUNC_1 &pcfg_pull_up>;
893			};
894		};
895
896		i2c0 {
897			i2c0_xfer: i2c0-xfer {
898				rockchip,pins = <0 15 RK_FUNC_1 &pcfg_pull_none>,
899						<0 16 RK_FUNC_1 &pcfg_pull_none>;
900			};
901		};
902
903		i2c1 {
904			i2c1_xfer: i2c1-xfer {
905				rockchip,pins = <8 4 RK_FUNC_1 &pcfg_pull_none>,
906						<8 5 RK_FUNC_1 &pcfg_pull_none>;
907			};
908		};
909
910		i2c2 {
911			i2c2_xfer: i2c2-xfer {
912				rockchip,pins = <6 9 RK_FUNC_1 &pcfg_pull_none>,
913						<6 10 RK_FUNC_1 &pcfg_pull_none>;
914			};
915		};
916
917		i2c3 {
918			i2c3_xfer: i2c3-xfer {
919				rockchip,pins = <2 16 RK_FUNC_1 &pcfg_pull_none>,
920						<2 17 RK_FUNC_1 &pcfg_pull_none>;
921			};
922		};
923
924		i2c4 {
925			i2c4_xfer: i2c4-xfer {
926				rockchip,pins = <7 17 RK_FUNC_1 &pcfg_pull_none>,
927						<7 18 RK_FUNC_1 &pcfg_pull_none>;
928			};
929		};
930
931		i2c5 {
932			i2c5_xfer: i2c5-xfer {
933				rockchip,pins = <7 19 RK_FUNC_1 &pcfg_pull_none>,
934						<7 20 RK_FUNC_1 &pcfg_pull_none>;
935			};
936		};
937
938		i2s0 {
939			i2s0_bus: i2s0-bus {
940				rockchip,pins = <6 0 RK_FUNC_1 &pcfg_pull_none>,
941						<6 1 RK_FUNC_1 &pcfg_pull_none>,
942						<6 2 RK_FUNC_1 &pcfg_pull_none>,
943						<6 3 RK_FUNC_1 &pcfg_pull_none>,
944						<6 4 RK_FUNC_1 &pcfg_pull_none>,
945						<6 8 RK_FUNC_1 &pcfg_pull_none>;
946			};
947		};
948
949		sdmmc {
950			sdmmc_clk: sdmmc-clk {
951				rockchip,pins = <6 20 RK_FUNC_1 &pcfg_pull_none>;
952			};
953
954			sdmmc_cmd: sdmmc-cmd {
955				rockchip,pins = <6 21 RK_FUNC_1 &pcfg_pull_up>;
956			};
957
958			sdmmc_cd: sdmcc-cd {
959				rockchip,pins = <6 22 RK_FUNC_1 &pcfg_pull_up>;
960			};
961
962			sdmmc_bus1: sdmmc-bus1 {
963				rockchip,pins = <6 16 RK_FUNC_1 &pcfg_pull_up>;
964			};
965
966			sdmmc_bus4: sdmmc-bus4 {
967				rockchip,pins = <6 16 RK_FUNC_1 &pcfg_pull_up>,
968						<6 17 RK_FUNC_1 &pcfg_pull_up>,
969						<6 18 RK_FUNC_1 &pcfg_pull_up>,
970						<6 19 RK_FUNC_1 &pcfg_pull_up>;
971			};
972		};
973
974		sdio0 {
975			sdio0_bus1: sdio0-bus1 {
976				rockchip,pins = <4 20 RK_FUNC_1 &pcfg_pull_up>;
977			};
978
979			sdio0_bus4: sdio0-bus4 {
980				rockchip,pins = <4 20 RK_FUNC_1 &pcfg_pull_up>,
981						<4 21 RK_FUNC_1 &pcfg_pull_up>,
982						<4 22 RK_FUNC_1 &pcfg_pull_up>,
983						<4 23 RK_FUNC_1 &pcfg_pull_up>;
984			};
985
986			sdio0_cmd: sdio0-cmd {
987				rockchip,pins = <4 24 RK_FUNC_1 &pcfg_pull_up>;
988			};
989
990			sdio0_clk: sdio0-clk {
991				rockchip,pins = <4 25 RK_FUNC_1 &pcfg_pull_none>;
992			};
993
994			sdio0_cd: sdio0-cd {
995				rockchip,pins = <4 26 RK_FUNC_1 &pcfg_pull_up>;
996			};
997
998			sdio0_wp: sdio0-wp {
999				rockchip,pins = <4 27 RK_FUNC_1 &pcfg_pull_up>;
1000			};
1001
1002			sdio0_pwr: sdio0-pwr {
1003				rockchip,pins = <4 28 RK_FUNC_1 &pcfg_pull_up>;
1004			};
1005
1006			sdio0_bkpwr: sdio0-bkpwr {
1007				rockchip,pins = <4 29 RK_FUNC_1 &pcfg_pull_up>;
1008			};
1009
1010			sdio0_int: sdio0-int {
1011				rockchip,pins = <4 30 RK_FUNC_1 &pcfg_pull_up>;
1012			};
1013		};
1014
1015		sdio1 {
1016			sdio1_bus1: sdio1-bus1 {
1017				rockchip,pins = <3 24 4 &pcfg_pull_up>;
1018			};
1019
1020			sdio1_bus4: sdio1-bus4 {
1021				rockchip,pins = <3 24 4 &pcfg_pull_up>,
1022						<3 25 4 &pcfg_pull_up>,
1023						<3 26 4 &pcfg_pull_up>,
1024						<3 27 4 &pcfg_pull_up>;
1025			};
1026
1027			sdio1_cd: sdio1-cd {
1028				rockchip,pins = <3 28 4 &pcfg_pull_up>;
1029			};
1030
1031			sdio1_wp: sdio1-wp {
1032				rockchip,pins = <3 29 4 &pcfg_pull_up>;
1033			};
1034
1035			sdio1_bkpwr: sdio1-bkpwr {
1036				rockchip,pins = <3 30 4 &pcfg_pull_up>;
1037			};
1038
1039			sdio1_int: sdio1-int {
1040				rockchip,pins = <3 31 4 &pcfg_pull_up>;
1041			};
1042
1043			sdio1_cmd: sdio1-cmd {
1044				rockchip,pins = <4 6 4 &pcfg_pull_up>;
1045			};
1046
1047			sdio1_clk: sdio1-clk {
1048				rockchip,pins = <4 7 4 &pcfg_pull_none>;
1049			};
1050
1051			sdio1_pwr: sdio1-pwr {
1052				rockchip,pins = <4 9 4 &pcfg_pull_up>;
1053			};
1054		};
1055
1056		emmc {
1057			emmc_clk: emmc-clk {
1058				rockchip,pins = <3 18 RK_FUNC_2 &pcfg_pull_none>;
1059			};
1060
1061			emmc_cmd: emmc-cmd {
1062				rockchip,pins = <3 16 RK_FUNC_2 &pcfg_pull_up>;
1063			};
1064
1065			emmc_pwr: emmc-pwr {
1066				rockchip,pins = <3 9 RK_FUNC_2 &pcfg_pull_up>;
1067			};
1068
1069			emmc_bus1: emmc-bus1 {
1070				rockchip,pins = <3 0 RK_FUNC_2 &pcfg_pull_up>;
1071			};
1072
1073			emmc_bus4: emmc-bus4 {
1074				rockchip,pins = <3 0 RK_FUNC_2 &pcfg_pull_up>,
1075						<3 1 RK_FUNC_2 &pcfg_pull_up>,
1076						<3 2 RK_FUNC_2 &pcfg_pull_up>,
1077						<3 3 RK_FUNC_2 &pcfg_pull_up>;
1078			};
1079
1080			emmc_bus8: emmc-bus8 {
1081				rockchip,pins = <3 0 RK_FUNC_2 &pcfg_pull_up>,
1082						<3 1 RK_FUNC_2 &pcfg_pull_up>,
1083						<3 2 RK_FUNC_2 &pcfg_pull_up>,
1084						<3 3 RK_FUNC_2 &pcfg_pull_up>,
1085						<3 4 RK_FUNC_2 &pcfg_pull_up>,
1086						<3 5 RK_FUNC_2 &pcfg_pull_up>,
1087						<3 6 RK_FUNC_2 &pcfg_pull_up>,
1088						<3 7 RK_FUNC_2 &pcfg_pull_up>;
1089			};
1090		};
1091
1092		spi0 {
1093			spi0_clk: spi0-clk {
1094				rockchip,pins = <5 12 RK_FUNC_1 &pcfg_pull_up>;
1095			};
1096			spi0_cs0: spi0-cs0 {
1097				rockchip,pins = <5 13 RK_FUNC_1 &pcfg_pull_up>;
1098			};
1099			spi0_tx: spi0-tx {
1100				rockchip,pins = <5 14 RK_FUNC_1 &pcfg_pull_up>;
1101			};
1102			spi0_rx: spi0-rx {
1103				rockchip,pins = <5 15 RK_FUNC_1 &pcfg_pull_up>;
1104			};
1105			spi0_cs1: spi0-cs1 {
1106				rockchip,pins = <5 16 RK_FUNC_1 &pcfg_pull_up>;
1107			};
1108		};
1109		spi1 {
1110			spi1_clk: spi1-clk {
1111				rockchip,pins = <7 12 RK_FUNC_2 &pcfg_pull_up>;
1112			};
1113			spi1_cs0: spi1-cs0 {
1114				rockchip,pins = <7 13 RK_FUNC_2 &pcfg_pull_up>;
1115			};
1116			spi1_rx: spi1-rx {
1117				rockchip,pins = <7 14 RK_FUNC_2 &pcfg_pull_up>;
1118			};
1119			spi1_tx: spi1-tx {
1120				rockchip,pins = <7 15 RK_FUNC_2 &pcfg_pull_up>;
1121			};
1122		};
1123
1124		spi2 {
1125			spi2_cs1: spi2-cs1 {
1126				rockchip,pins = <8 3 RK_FUNC_1 &pcfg_pull_up>;
1127			};
1128			spi2_clk: spi2-clk {
1129				rockchip,pins = <8 6 RK_FUNC_1 &pcfg_pull_up>;
1130			};
1131			spi2_cs0: spi2-cs0 {
1132				rockchip,pins = <8 7 RK_FUNC_1 &pcfg_pull_up>;
1133			};
1134			spi2_rx: spi2-rx {
1135				rockchip,pins = <8 8 RK_FUNC_1 &pcfg_pull_up>;
1136			};
1137			spi2_tx: spi2-tx {
1138				rockchip,pins = <8 9 RK_FUNC_1 &pcfg_pull_up>;
1139			};
1140		};
1141
1142		uart0 {
1143			uart0_xfer: uart0-xfer {
1144				rockchip,pins = <4 16 RK_FUNC_1 &pcfg_pull_up>,
1145						<4 17 RK_FUNC_1 &pcfg_pull_none>;
1146			};
1147
1148			uart0_cts: uart0-cts {
1149				rockchip,pins = <4 18 RK_FUNC_1 &pcfg_pull_none>;
1150			};
1151
1152			uart0_rts: uart0-rts {
1153				rockchip,pins = <4 19 RK_FUNC_1 &pcfg_pull_none>;
1154			};
1155		};
1156
1157		uart1 {
1158			uart1_xfer: uart1-xfer {
1159				rockchip,pins = <5 8 RK_FUNC_1 &pcfg_pull_up>,
1160						<5 9 RK_FUNC_1 &pcfg_pull_none>;
1161			};
1162
1163			uart1_cts: uart1-cts {
1164				rockchip,pins = <5 10 RK_FUNC_1 &pcfg_pull_none>;
1165			};
1166
1167			uart1_rts: uart1-rts {
1168				rockchip,pins = <5 11 RK_FUNC_1 &pcfg_pull_none>;
1169			};
1170		};
1171
1172		uart2 {
1173			uart2_xfer: uart2-xfer {
1174				rockchip,pins = <7 22 RK_FUNC_1 &pcfg_pull_up>,
1175						<7 23 RK_FUNC_1 &pcfg_pull_none>;
1176			};
1177			/* no rts / cts for uart2 */
1178		};
1179
1180		uart3 {
1181			uart3_xfer: uart3-xfer {
1182				rockchip,pins = <7 7 RK_FUNC_1 &pcfg_pull_up>,
1183						<7 8 RK_FUNC_1 &pcfg_pull_none>;
1184			};
1185
1186			uart3_cts: uart3-cts {
1187				rockchip,pins = <7 9 RK_FUNC_1 &pcfg_pull_none>;
1188			};
1189
1190			uart3_rts: uart3-rts {
1191				rockchip,pins = <7 10 RK_FUNC_1 &pcfg_pull_none>;
1192			};
1193		};
1194
1195		uart4 {
1196			uart4_xfer: uart4-xfer {
1197				rockchip,pins = <5 12 3 &pcfg_pull_up>,
1198						<5 13 3 &pcfg_pull_none>;
1199			};
1200
1201			uart4_cts: uart4-cts {
1202				rockchip,pins = <5 14 3 &pcfg_pull_none>;
1203			};
1204
1205			uart4_rts: uart4-rts {
1206				rockchip,pins = <5 15 3 &pcfg_pull_none>;
1207			};
1208		};
1209
1210		tsadc {
1211			otp_out: otp-out {
1212				rockchip,pins = <0 10 RK_FUNC_1 &pcfg_pull_none>;
1213			};
1214		};
1215
1216		pwm0 {
1217			pwm0_pin: pwm0-pin {
1218				rockchip,pins = <7 0 RK_FUNC_1 &pcfg_pull_none>;
1219			};
1220		};
1221
1222		pwm1 {
1223			pwm1_pin: pwm1-pin {
1224				rockchip,pins = <7 1 RK_FUNC_1 &pcfg_pull_none>;
1225			};
1226		};
1227
1228		pwm2 {
1229			pwm2_pin: pwm2-pin {
1230				rockchip,pins = <7 22 3 &pcfg_pull_none>;
1231			};
1232		};
1233
1234		pwm3 {
1235			pwm3_pin: pwm3-pin {
1236				rockchip,pins = <7 23 3 &pcfg_pull_none>;
1237			};
1238		};
1239
1240		gmac {
1241			rgmii_pins: rgmii-pins {
1242				rockchip,pins = <3 30 3 &pcfg_pull_none>,
1243						<3 31 3 &pcfg_pull_none>,
1244						<3 26 3 &pcfg_pull_none>,
1245						<3 27 3 &pcfg_pull_none>,
1246						<3 28 3 &pcfg_pull_none_12ma>,
1247						<3 29 3 &pcfg_pull_none_12ma>,
1248						<3 24 3 &pcfg_pull_none_12ma>,
1249						<3 25 3 &pcfg_pull_none_12ma>,
1250						<4 0 3 &pcfg_pull_none>,
1251						<4 5 3 &pcfg_pull_none>,
1252						<4 6 3 &pcfg_pull_none>,
1253						<4 9 3 &pcfg_pull_none_12ma>,
1254						<4 4 3 &pcfg_pull_none_12ma>,
1255						<4 1 3 &pcfg_pull_none>,
1256						<4 3 3 &pcfg_pull_none>;
1257			};
1258
1259			rmii_pins: rmii-pins {
1260				rockchip,pins = <3 30 3 &pcfg_pull_none>,
1261						<3 31 3 &pcfg_pull_none>,
1262						<3 28 3 &pcfg_pull_none>,
1263						<3 29 3 &pcfg_pull_none>,
1264						<4 0 3 &pcfg_pull_none>,
1265						<4 5 3 &pcfg_pull_none>,
1266						<4 4 3 &pcfg_pull_none>,
1267						<4 1 3 &pcfg_pull_none>,
1268						<4 2 3 &pcfg_pull_none>,
1269						<4 3 3 &pcfg_pull_none>;
1270			};
1271		};
1272	};
1273};
1274