xref: /rk3399_rockchip-uboot/arch/arm/dts/rk3288.dtsi (revision c7e7e384237f95901be315a8c00219115a15c712)
1344c8376SSimon Glass/*
2344c8376SSimon Glass * SPDX-License-Identifier:	GPL-2.0+
3344c8376SSimon Glass */
4344c8376SSimon Glass
5344c8376SSimon Glass#include <dt-bindings/gpio/gpio.h>
6344c8376SSimon Glass#include <dt-bindings/interrupt-controller/irq.h>
7344c8376SSimon Glass#include <dt-bindings/interrupt-controller/arm-gic.h>
8344c8376SSimon Glass#include <dt-bindings/pinctrl/rockchip.h>
9344c8376SSimon Glass#include <dt-bindings/clock/rk3288-cru.h>
10344c8376SSimon Glass#include <dt-bindings/power-domain/rk3288.h>
11344c8376SSimon Glass#include <dt-bindings/thermal/thermal.h>
12cfd97941SJacob Chen#include <dt-bindings/video/rk3288.h>
13344c8376SSimon Glass#include "skeleton.dtsi"
14344c8376SSimon Glass
15344c8376SSimon Glass/ {
16344c8376SSimon Glass	compatible = "rockchip,rk3288";
17344c8376SSimon Glass
18344c8376SSimon Glass	interrupt-parent = <&gic>;
19344c8376SSimon Glass	aliases {
2073a88d0eSSimon Glass		gpio0 = &gpio0;
2173a88d0eSSimon Glass		gpio1 = &gpio1;
2273a88d0eSSimon Glass		gpio2 = &gpio2;
2373a88d0eSSimon Glass		gpio3 = &gpio3;
2473a88d0eSSimon Glass		gpio4 = &gpio4;
2573a88d0eSSimon Glass		gpio5 = &gpio5;
2673a88d0eSSimon Glass		gpio6 = &gpio6;
2773a88d0eSSimon Glass		gpio7 = &gpio7;
2873a88d0eSSimon Glass		gpio8 = &gpio8;
29344c8376SSimon Glass		i2c0 = &i2c0;
30344c8376SSimon Glass		i2c1 = &i2c1;
31344c8376SSimon Glass		i2c2 = &i2c2;
32344c8376SSimon Glass		i2c3 = &i2c3;
33344c8376SSimon Glass		i2c4 = &i2c4;
34344c8376SSimon Glass		i2c5 = &i2c5;
35344c8376SSimon Glass		mmc0 = &emmc;
36344c8376SSimon Glass		mmc1 = &sdmmc;
37344c8376SSimon Glass		mmc2 = &sdio0;
38344c8376SSimon Glass		mmc3 = &sdio1;
39344c8376SSimon Glass		mshc0 = &emmc;
40344c8376SSimon Glass		mshc1 = &sdmmc;
41344c8376SSimon Glass		mshc2 = &sdio0;
42344c8376SSimon Glass		mshc3 = &sdio1;
43344c8376SSimon Glass		serial0 = &uart0;
44344c8376SSimon Glass		serial1 = &uart1;
45344c8376SSimon Glass		serial2 = &uart2;
46344c8376SSimon Glass		serial3 = &uart3;
47344c8376SSimon Glass		serial4 = &uart4;
48344c8376SSimon Glass		spi0 = &spi0;
49344c8376SSimon Glass		spi1 = &spi1;
50344c8376SSimon Glass		spi2 = &spi2;
51344c8376SSimon Glass	};
52344c8376SSimon Glass
53344c8376SSimon Glass	cpus {
54344c8376SSimon Glass		#address-cells = <1>;
55344c8376SSimon Glass		#size-cells = <0>;
56344c8376SSimon Glass		enable-method = "rockchip,rk3066-smp";
57344c8376SSimon Glass		rockchip,pmu = <&pmu>;
58344c8376SSimon Glass
59344c8376SSimon Glass		cpu0: cpu@500 {
60344c8376SSimon Glass			device_type = "cpu";
61344c8376SSimon Glass			compatible = "arm,cortex-a12";
62344c8376SSimon Glass			reg = <0x500>;
63344c8376SSimon Glass			operating-points = <
64344c8376SSimon Glass				/* KHz    uV */
65344c8376SSimon Glass				1800000 1400000
66344c8376SSimon Glass				1704000 1350000
67344c8376SSimon Glass				1608000 1300000
68344c8376SSimon Glass				1512000 1250000
69344c8376SSimon Glass				1416000 1200000
70344c8376SSimon Glass				1200000 1100000
71344c8376SSimon Glass				1008000 1050000
72344c8376SSimon Glass				 816000 1000000
73344c8376SSimon Glass				 696000  950000
74344c8376SSimon Glass				 600000  900000
75344c8376SSimon Glass				 408000  900000
76344c8376SSimon Glass				 216000  900000
77344c8376SSimon Glass				 126000  900000
78344c8376SSimon Glass			>;
79344c8376SSimon Glass			#cooling-cells = <2>; /* min followed by max */
80344c8376SSimon Glass			clock-latency = <40000>;
81344c8376SSimon Glass			clocks = <&cru ARMCLK>;
82344c8376SSimon Glass			resets = <&cru SRST_CORE0>;
83344c8376SSimon Glass		};
84344c8376SSimon Glass		cpu@501 {
85344c8376SSimon Glass			device_type = "cpu";
86344c8376SSimon Glass			compatible = "arm,cortex-a12";
87344c8376SSimon Glass			reg = <0x501>;
88344c8376SSimon Glass			resets = <&cru SRST_CORE1>;
89344c8376SSimon Glass		};
90344c8376SSimon Glass		cpu@502 {
91344c8376SSimon Glass			device_type = "cpu";
92344c8376SSimon Glass			compatible = "arm,cortex-a12";
93344c8376SSimon Glass			reg = <0x502>;
94344c8376SSimon Glass			resets = <&cru SRST_CORE2>;
95344c8376SSimon Glass		};
96344c8376SSimon Glass		cpu@503 {
97344c8376SSimon Glass			device_type = "cpu";
98344c8376SSimon Glass			compatible = "arm,cortex-a12";
99344c8376SSimon Glass			reg = <0x503>;
100344c8376SSimon Glass			resets = <&cru SRST_CORE3>;
101344c8376SSimon Glass		};
102344c8376SSimon Glass	};
103344c8376SSimon Glass
104344c8376SSimon Glass	amba {
105344c8376SSimon Glass		compatible = "arm,amba-bus";
106344c8376SSimon Glass		#address-cells = <1>;
107344c8376SSimon Glass		#size-cells = <1>;
108344c8376SSimon Glass		ranges;
109344c8376SSimon Glass
110344c8376SSimon Glass		dmac_peri: dma-controller@ff250000 {
111344c8376SSimon Glass			compatible = "arm,pl330", "arm,primecell";
112344c8376SSimon Glass			broken-no-flushp;
113344c8376SSimon Glass			reg = <0xff250000 0x4000>;
114344c8376SSimon Glass			interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
115344c8376SSimon Glass				     <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
116344c8376SSimon Glass			#dma-cells = <1>;
117344c8376SSimon Glass			clocks = <&cru ACLK_DMAC2>;
118344c8376SSimon Glass			clock-names = "apb_pclk";
119344c8376SSimon Glass		};
120344c8376SSimon Glass
121344c8376SSimon Glass		dmac_bus_ns: dma-controller@ff600000 {
122344c8376SSimon Glass			compatible = "arm,pl330", "arm,primecell";
123344c8376SSimon Glass			broken-no-flushp;
124344c8376SSimon Glass			reg = <0xff600000 0x4000>;
125344c8376SSimon Glass			interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
126344c8376SSimon Glass				     <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
127344c8376SSimon Glass			#dma-cells = <1>;
128344c8376SSimon Glass			clocks = <&cru ACLK_DMAC1>;
129344c8376SSimon Glass			clock-names = "apb_pclk";
130344c8376SSimon Glass			status = "disabled";
131344c8376SSimon Glass		};
132344c8376SSimon Glass
133344c8376SSimon Glass		dmac_bus_s: dma-controller@ffb20000 {
134344c8376SSimon Glass			compatible = "arm,pl330", "arm,primecell";
135344c8376SSimon Glass			broken-no-flushp;
136344c8376SSimon Glass			reg = <0xffb20000 0x4000>;
137344c8376SSimon Glass			interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
138344c8376SSimon Glass				     <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
139344c8376SSimon Glass			#dma-cells = <1>;
140344c8376SSimon Glass			clocks = <&cru ACLK_DMAC1>;
141344c8376SSimon Glass			clock-names = "apb_pclk";
142344c8376SSimon Glass		};
143344c8376SSimon Glass	};
144344c8376SSimon Glass
145344c8376SSimon Glass	xin24m: oscillator {
146344c8376SSimon Glass		compatible = "fixed-clock";
147344c8376SSimon Glass		clock-frequency = <24000000>;
148344c8376SSimon Glass		clock-output-names = "xin24m";
149344c8376SSimon Glass		#clock-cells = <0>;
150344c8376SSimon Glass	};
151344c8376SSimon Glass
152fbf3603bSJoseph Chen	psci: psci {
153fbf3603bSJoseph Chen		compatible      = "arm,psci-1.0";
154fbf3603bSJoseph Chen		method          = "smc";
155fbf3603bSJoseph Chen	};
156fbf3603bSJoseph Chen
157344c8376SSimon Glass	timer {
158344c8376SSimon Glass	        arm,use-physical-timer;
159344c8376SSimon Glass		compatible = "arm,armv7-timer";
160344c8376SSimon Glass		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
161344c8376SSimon Glass			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
162344c8376SSimon Glass			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
163344c8376SSimon Glass			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
164344c8376SSimon Glass		clock-frequency = <24000000>;
165344c8376SSimon Glass		always-on;
166344c8376SSimon Glass	};
167344c8376SSimon Glass
168e22bdefeSNickey Yang	display_subsystem: display-subsystem {
169344c8376SSimon Glass		compatible = "rockchip,display-subsystem";
170344c8376SSimon Glass		ports = <&vopl_out>, <&vopb_out>;
171e22bdefeSNickey Yang		status = "disabled";
172e22bdefeSNickey Yang
173e22bdefeSNickey Yang		route {
174e22bdefeSNickey Yang			route_hdmi: route-hdmi {
175e22bdefeSNickey Yang				status = "disabled";
176e22bdefeSNickey Yang				logo,uboot = "logo.bmp";
177e22bdefeSNickey Yang				logo,kernel = "logo_kernel.bmp";
178e22bdefeSNickey Yang				logo,mode = "center";
179e22bdefeSNickey Yang				charge_logo,mode = "center";
180e22bdefeSNickey Yang				connect = <&vopb_out_hdmi>;
181e22bdefeSNickey Yang			};
182e22bdefeSNickey Yang
183e22bdefeSNickey Yang			route_edp: route-edp {
184e22bdefeSNickey Yang				status = "disabled";
185e22bdefeSNickey Yang				logo,uboot = "logo.bmp";
186e22bdefeSNickey Yang				logo,kernel = "logo_kernel.bmp";
187e22bdefeSNickey Yang				logo,mode = "center";
188e22bdefeSNickey Yang				charge_logo,mode = "center";
189e22bdefeSNickey Yang				connect = <&vopl_out_edp>;
190e22bdefeSNickey Yang			};
19103773c15SNickey Yang
19203773c15SNickey Yang			route_dsi0: route-dsi0 {
19303773c15SNickey Yang				status = "disabled";
19403773c15SNickey Yang				logo,uboot = "logo.bmp";
19503773c15SNickey Yang				logo,kernel = "logo_kernel.bmp";
19603773c15SNickey Yang				logo,mode = "center";
19703773c15SNickey Yang				charge_logo,mode = "center";
19803773c15SNickey Yang				connect = <&vopl_out_dsi0>;
19903773c15SNickey Yang			};
20003773c15SNickey Yang
20103773c15SNickey Yang			route_lvds: route-lvds {
20203773c15SNickey Yang				status = "disabled";
20303773c15SNickey Yang				logo,uboot = "logo.bmp";
20403773c15SNickey Yang				logo,kernel = "logo_kernel.bmp";
20503773c15SNickey Yang				logo,mode = "center";
20603773c15SNickey Yang				charge_logo,mode = "center";
20703773c15SNickey Yang				connect = <&vopl_out_lvds>;
20803773c15SNickey Yang			};
209e22bdefeSNickey Yang		};
210344c8376SSimon Glass	};
211344c8376SSimon Glass
212344c8376SSimon Glass	sdmmc: dwmmc@ff0c0000 {
213344c8376SSimon Glass		compatible = "rockchip,rk3288-dw-mshc";
21416e358acSKever Yang		max-frequency = <150000000>;
215344c8376SSimon Glass		clocks = <&cru HCLK_SDMMC>, <&cru SCLK_SDMMC>,
216344c8376SSimon Glass			 <&cru SCLK_SDMMC_DRV>, <&cru SCLK_SDMMC_SAMPLE>;
217c5c7b477SKever Yang		clock-names = "biu", "ciu", "ciu-drv", "ciu-sample";
218344c8376SSimon Glass		fifo-depth = <0x100>;
219b73a7629SJason Zhu		cd-gpios = <&gpio6 RK_PC6 GPIO_ACTIVE_HIGH>;
220344c8376SSimon Glass		interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
221344c8376SSimon Glass		reg = <0xff0c0000 0x4000>;
222344c8376SSimon Glass		status = "disabled";
223344c8376SSimon Glass	};
224344c8376SSimon Glass
225344c8376SSimon Glass	sdio0: dwmmc@ff0d0000 {
226344c8376SSimon Glass		compatible = "rockchip,rk3288-dw-mshc";
22716e358acSKever Yang		max-frequency = <150000000>;
228344c8376SSimon Glass		clocks = <&cru HCLK_SDIO0>, <&cru SCLK_SDIO0>,
229344c8376SSimon Glass			 <&cru SCLK_SDIO0_DRV>, <&cru SCLK_SDIO0_SAMPLE>;
230c5c7b477SKever Yang		clock-names = "biu", "ciu", "ciu-drv", "ciu-sample";
231344c8376SSimon Glass		fifo-depth = <0x100>;
232344c8376SSimon Glass		interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
233344c8376SSimon Glass		reg = <0xff0d0000 0x4000>;
234344c8376SSimon Glass		status = "disabled";
235344c8376SSimon Glass	};
236344c8376SSimon Glass
237344c8376SSimon Glass	sdio1: dwmmc@ff0e0000 {
238344c8376SSimon Glass		compatible = "rockchip,rk3288-dw-mshc";
23916e358acSKever Yang		max-frequency = <150000000>;
240344c8376SSimon Glass		clocks = <&cru HCLK_SDIO1>, <&cru SCLK_SDIO1>,
241344c8376SSimon Glass			 <&cru SCLK_SDIO1_DRV>, <&cru SCLK_SDIO1_SAMPLE>;
242c5c7b477SKever Yang		clock-names = "biu", "ciu", "ciu-drv", "ciu-sample";
243344c8376SSimon Glass		fifo-depth = <0x100>;
244344c8376SSimon Glass		interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
245344c8376SSimon Glass		reg = <0xff0e0000 0x4000>;
246344c8376SSimon Glass		status = "disabled";
247344c8376SSimon Glass	};
248344c8376SSimon Glass
249344c8376SSimon Glass	emmc: dwmmc@ff0f0000 {
250344c8376SSimon Glass		compatible = "rockchip,rk3288-dw-mshc";
25116e358acSKever Yang		max-frequency = <150000000>;
252344c8376SSimon Glass		clocks = <&cru HCLK_EMMC>, <&cru SCLK_EMMC>,
253344c8376SSimon Glass			 <&cru SCLK_EMMC_DRV>, <&cru SCLK_EMMC_SAMPLE>;
254c5c7b477SKever Yang		clock-names = "biu", "ciu", "ciu-drv", "ciu-sample";
255344c8376SSimon Glass		fifo-depth = <0x100>;
256344c8376SSimon Glass		interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
257344c8376SSimon Glass		reg = <0xff0f0000 0x4000>;
258344c8376SSimon Glass		status = "disabled";
259344c8376SSimon Glass	};
260344c8376SSimon Glass
261344c8376SSimon Glass	saradc: saradc@ff100000 {
262344c8376SSimon Glass		compatible = "rockchip,saradc";
263344c8376SSimon Glass		reg = <0xff100000 0x100>;
264344c8376SSimon Glass		interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
265344c8376SSimon Glass		#io-channel-cells = <1>;
266344c8376SSimon Glass		clocks = <&cru SCLK_SARADC>, <&cru PCLK_SARADC>;
267344c8376SSimon Glass		clock-names = "saradc", "apb_pclk";
268344c8376SSimon Glass		status = "disabled";
269344c8376SSimon Glass	};
270344c8376SSimon Glass
271344c8376SSimon Glass	spi0: spi@ff110000 {
272344c8376SSimon Glass		compatible = "rockchip,rk3288-spi", "rockchip,rk3066-spi";
273344c8376SSimon Glass		clocks = <&cru SCLK_SPI0>, <&cru PCLK_SPI0>;
274344c8376SSimon Glass		clock-names = "spiclk", "apb_pclk";
275344c8376SSimon Glass		dmas = <&dmac_peri 11>, <&dmac_peri 12>;
276344c8376SSimon Glass		dma-names = "tx", "rx";
277344c8376SSimon Glass		interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
278344c8376SSimon Glass		pinctrl-names = "default";
279344c8376SSimon Glass		pinctrl-0 = <&spi0_clk &spi0_tx &spi0_rx &spi0_cs0>;
280344c8376SSimon Glass		reg = <0xff110000 0x1000>;
281344c8376SSimon Glass		#address-cells = <1>;
282344c8376SSimon Glass		#size-cells = <0>;
283344c8376SSimon Glass		status = "disabled";
284344c8376SSimon Glass	};
285344c8376SSimon Glass
286344c8376SSimon Glass	spi1: spi@ff120000 {
287344c8376SSimon Glass		compatible = "rockchip,rk3288-spi", "rockchip,rk3066-spi";
288344c8376SSimon Glass		clocks = <&cru SCLK_SPI1>, <&cru PCLK_SPI1>;
289344c8376SSimon Glass		clock-names = "spiclk", "apb_pclk";
290344c8376SSimon Glass		dmas = <&dmac_peri 13>, <&dmac_peri 14>;
291344c8376SSimon Glass		dma-names = "tx", "rx";
292344c8376SSimon Glass		interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
293344c8376SSimon Glass		pinctrl-names = "default";
294344c8376SSimon Glass		pinctrl-0 = <&spi1_clk &spi1_tx &spi1_rx &spi1_cs0>;
295344c8376SSimon Glass		reg = <0xff120000 0x1000>;
296344c8376SSimon Glass		#address-cells = <1>;
297344c8376SSimon Glass		#size-cells = <0>;
298344c8376SSimon Glass		status = "disabled";
299344c8376SSimon Glass	};
300344c8376SSimon Glass
301344c8376SSimon Glass	spi2: spi@ff130000 {
302344c8376SSimon Glass		compatible = "rockchip,rk3288-spi", "rockchip,rk3066-spi";
303344c8376SSimon Glass		clocks = <&cru SCLK_SPI2>, <&cru PCLK_SPI2>;
304344c8376SSimon Glass		clock-names = "spiclk", "apb_pclk";
305344c8376SSimon Glass		dmas = <&dmac_peri 15>, <&dmac_peri 16>;
306344c8376SSimon Glass		dma-names = "tx", "rx";
307344c8376SSimon Glass		interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
308344c8376SSimon Glass		pinctrl-names = "default";
309344c8376SSimon Glass		pinctrl-0 = <&spi2_clk &spi2_tx &spi2_rx &spi2_cs0>;
310344c8376SSimon Glass		reg = <0xff130000 0x1000>;
311344c8376SSimon Glass		#address-cells = <1>;
312344c8376SSimon Glass		#size-cells = <0>;
313344c8376SSimon Glass		status = "disabled";
314344c8376SSimon Glass	};
315344c8376SSimon Glass
316344c8376SSimon Glass	i2c1: i2c@ff140000 {
317344c8376SSimon Glass		compatible = "rockchip,rk3288-i2c";
318344c8376SSimon Glass		reg = <0xff140000 0x1000>;
319344c8376SSimon Glass		interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
320344c8376SSimon Glass		#address-cells = <1>;
321344c8376SSimon Glass		#size-cells = <0>;
322344c8376SSimon Glass		clock-names = "i2c";
323344c8376SSimon Glass		clocks = <&cru PCLK_I2C1>;
324344c8376SSimon Glass		pinctrl-names = "default";
325344c8376SSimon Glass		pinctrl-0 = <&i2c1_xfer>;
326344c8376SSimon Glass		status = "disabled";
327344c8376SSimon Glass	};
328344c8376SSimon Glass
329344c8376SSimon Glass	i2c3: i2c@ff150000 {
330344c8376SSimon Glass		compatible = "rockchip,rk3288-i2c";
331344c8376SSimon Glass		reg = <0xff150000 0x1000>;
332344c8376SSimon Glass		interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
333344c8376SSimon Glass		#address-cells = <1>;
334344c8376SSimon Glass		#size-cells = <0>;
335344c8376SSimon Glass		clock-names = "i2c";
336344c8376SSimon Glass		clocks = <&cru PCLK_I2C3>;
337344c8376SSimon Glass		pinctrl-names = "default";
338344c8376SSimon Glass		pinctrl-0 = <&i2c3_xfer>;
339344c8376SSimon Glass		status = "disabled";
340344c8376SSimon Glass	};
341344c8376SSimon Glass
342344c8376SSimon Glass	i2c4: i2c@ff160000 {
343344c8376SSimon Glass		compatible = "rockchip,rk3288-i2c";
344344c8376SSimon Glass		reg = <0xff160000 0x1000>;
345344c8376SSimon Glass		interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
346344c8376SSimon Glass		#address-cells = <1>;
347344c8376SSimon Glass		#size-cells = <0>;
348344c8376SSimon Glass		clock-names = "i2c";
349344c8376SSimon Glass		clocks = <&cru PCLK_I2C4>;
350344c8376SSimon Glass		pinctrl-names = "default";
351344c8376SSimon Glass		pinctrl-0 = <&i2c4_xfer>;
352344c8376SSimon Glass		status = "disabled";
353344c8376SSimon Glass	};
354344c8376SSimon Glass
355344c8376SSimon Glass	i2c5: i2c@ff170000 {
356344c8376SSimon Glass		compatible = "rockchip,rk3288-i2c";
357344c8376SSimon Glass		reg = <0xff170000 0x1000>;
358344c8376SSimon Glass		interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
359344c8376SSimon Glass		#address-cells = <1>;
360344c8376SSimon Glass		#size-cells = <0>;
361344c8376SSimon Glass		clock-names = "i2c";
362344c8376SSimon Glass		clocks = <&cru PCLK_I2C5>;
363344c8376SSimon Glass		pinctrl-names = "default";
364344c8376SSimon Glass		pinctrl-0 = <&i2c5_xfer>;
365344c8376SSimon Glass		status = "disabled";
366344c8376SSimon Glass	};
36703773c15SNickey Yang
368344c8376SSimon Glass	uart0: serial@ff180000 {
369344c8376SSimon Glass		compatible = "rockchip,rk3288-uart", "snps,dw-apb-uart";
370344c8376SSimon Glass		reg = <0xff180000 0x100>;
371344c8376SSimon Glass		interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
372344c8376SSimon Glass		reg-shift = <2>;
373344c8376SSimon Glass		reg-io-width = <4>;
37498a51fc3SThomas Chou		clock-frequency = <24000000>;
375344c8376SSimon Glass		clocks = <&cru SCLK_UART0>, <&cru PCLK_UART0>;
376344c8376SSimon Glass		clock-names = "baudclk", "apb_pclk";
377344c8376SSimon Glass		pinctrl-names = "default";
378344c8376SSimon Glass		pinctrl-0 = <&uart0_xfer>;
379344c8376SSimon Glass		status = "disabled";
380344c8376SSimon Glass	};
381344c8376SSimon Glass
382344c8376SSimon Glass	uart1: serial@ff190000 {
383344c8376SSimon Glass		compatible = "rockchip,rk3288-uart", "snps,dw-apb-uart";
384344c8376SSimon Glass		reg = <0xff190000 0x100>;
385344c8376SSimon Glass		interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
386344c8376SSimon Glass		reg-shift = <2>;
387344c8376SSimon Glass		reg-io-width = <4>;
38898a51fc3SThomas Chou		clock-frequency = <24000000>;
389344c8376SSimon Glass		clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>;
390344c8376SSimon Glass		clock-names = "baudclk", "apb_pclk";
391344c8376SSimon Glass		pinctrl-names = "default";
392344c8376SSimon Glass		pinctrl-0 = <&uart1_xfer>;
393344c8376SSimon Glass		status = "disabled";
394344c8376SSimon Glass	};
395344c8376SSimon Glass
396344c8376SSimon Glass	uart2: serial@ff690000 {
397344c8376SSimon Glass		compatible = "rockchip,rk3288-uart", "snps,dw-apb-uart";
398344c8376SSimon Glass		reg = <0xff690000 0x100>;
399344c8376SSimon Glass		interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
400344c8376SSimon Glass		reg-shift = <2>;
401344c8376SSimon Glass		reg-io-width = <4>;
40298a51fc3SThomas Chou		clock-frequency = <24000000>;
403344c8376SSimon Glass		clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>;
404344c8376SSimon Glass		clock-names = "baudclk", "apb_pclk";
405344c8376SSimon Glass		pinctrl-names = "default";
406344c8376SSimon Glass		pinctrl-0 = <&uart2_xfer>;
407344c8376SSimon Glass		status = "disabled";
408344c8376SSimon Glass	};
409344c8376SSimon Glass	uart3: serial@ff1b0000 {
410344c8376SSimon Glass		compatible = "rockchip,rk3288-uart", "snps,dw-apb-uart";
411344c8376SSimon Glass		reg = <0xff1b0000 0x100>;
412344c8376SSimon Glass		interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
413344c8376SSimon Glass		reg-shift = <2>;
414344c8376SSimon Glass		reg-io-width = <4>;
41598a51fc3SThomas Chou		clock-frequency = <24000000>;
416344c8376SSimon Glass		clocks = <&cru SCLK_UART3>, <&cru PCLK_UART3>;
417344c8376SSimon Glass		clock-names = "baudclk", "apb_pclk";
418344c8376SSimon Glass		pinctrl-names = "default";
419344c8376SSimon Glass		pinctrl-0 = <&uart3_xfer>;
420344c8376SSimon Glass		status = "disabled";
421344c8376SSimon Glass	};
422344c8376SSimon Glass
423344c8376SSimon Glass	uart4: serial@ff1c0000 {
424344c8376SSimon Glass		compatible = "rockchip,rk3288-uart", "snps,dw-apb-uart";
425344c8376SSimon Glass		reg = <0xff1c0000 0x100>;
426344c8376SSimon Glass		interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
427344c8376SSimon Glass		reg-shift = <2>;
428344c8376SSimon Glass		reg-io-width = <4>;
42998a51fc3SThomas Chou		clock-frequency = <24000000>;
430344c8376SSimon Glass		clocks = <&cru SCLK_UART4>, <&cru PCLK_UART4>;
431344c8376SSimon Glass		clock-names = "baudclk", "apb_pclk";
432344c8376SSimon Glass		pinctrl-names = "default";
433344c8376SSimon Glass		pinctrl-0 = <&uart4_xfer>;
434344c8376SSimon Glass		status = "disabled";
435344c8376SSimon Glass	};
43603773c15SNickey Yang
437344c8376SSimon Glass	thermal: thermal-zones {
438344c8376SSimon Glass		#include "rk3288-thermal.dtsi"
439344c8376SSimon Glass	};
440344c8376SSimon Glass
441344c8376SSimon Glass	tsadc: tsadc@ff280000 {
442344c8376SSimon Glass		compatible = "rockchip,rk3288-tsadc";
443344c8376SSimon Glass		reg = <0xff280000 0x100>;
444344c8376SSimon Glass		interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
445344c8376SSimon Glass		clocks = <&cru SCLK_TSADC>, <&cru PCLK_TSADC>;
446344c8376SSimon Glass		clock-names = "tsadc", "apb_pclk";
447344c8376SSimon Glass		resets = <&cru SRST_TSADC>;
448344c8376SSimon Glass		reset-names = "tsadc-apb";
449344c8376SSimon Glass		pinctrl-names = "otp_out";
450344c8376SSimon Glass		pinctrl-0 = <&otp_out>;
451344c8376SSimon Glass		#thermal-sensor-cells = <1>;
452344c8376SSimon Glass		hw-shut-temp = <125000>;
453344c8376SSimon Glass		status = "disabled";
454344c8376SSimon Glass	};
455344c8376SSimon Glass
456344c8376SSimon Glass	gmac: ethernet@ff290000 {
457344c8376SSimon Glass		compatible = "rockchip,rk3288-gmac";
458344c8376SSimon Glass		reg = <0xff290000 0x10000>;
459344c8376SSimon Glass		interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
460344c8376SSimon Glass		interrupt-names = "macirq";
461344c8376SSimon Glass		rockchip,grf = <&grf>;
462344c8376SSimon Glass		clocks = <&cru SCLK_MAC>,
463344c8376SSimon Glass			<&cru SCLK_MAC_RX>, <&cru SCLK_MAC_TX>,
464344c8376SSimon Glass			<&cru SCLK_MACREF>, <&cru SCLK_MACREF_OUT>,
465344c8376SSimon Glass			<&cru ACLK_GMAC>, <&cru PCLK_GMAC>;
466344c8376SSimon Glass		clock-names = "stmmaceth",
467344c8376SSimon Glass			"mac_clk_rx", "mac_clk_tx",
468344c8376SSimon Glass			"clk_mac_ref", "clk_mac_refout",
469344c8376SSimon Glass			"aclk_mac", "pclk_mac";
470344c8376SSimon Glass	};
471344c8376SSimon Glass
472344c8376SSimon Glass	usb_host0_ehci: usb@ff500000 {
473344c8376SSimon Glass		compatible = "generic-ehci";
474344c8376SSimon Glass		reg = <0xff500000 0x100>;
475344c8376SSimon Glass		interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
476344c8376SSimon Glass		clocks = <&cru HCLK_USBHOST0>;
477344c8376SSimon Glass		clock-names = "usbhost";
478344c8376SSimon Glass		phys = <&usbphy1>;
479344c8376SSimon Glass		phy-names = "usb";
480344c8376SSimon Glass		status = "disabled";
481344c8376SSimon Glass	};
482344c8376SSimon Glass
483344c8376SSimon Glass	/* NOTE: ohci@ff520000 doesn't actually work on hardware */
484344c8376SSimon Glass
485344c8376SSimon Glass	usb_host1: usb@ff540000 {
486344c8376SSimon Glass		compatible = "rockchip,rk3288-usb", "rockchip,rk3066-usb",
487344c8376SSimon Glass				"snps,dwc2";
488344c8376SSimon Glass		reg = <0xff540000 0x40000>;
489344c8376SSimon Glass		interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
490344c8376SSimon Glass		clocks = <&cru HCLK_USBHOST1>;
491344c8376SSimon Glass		clock-names = "otg";
492344c8376SSimon Glass		phys = <&usbphy2>;
493344c8376SSimon Glass		phy-names = "usb2-phy";
494344c8376SSimon Glass		status = "disabled";
495344c8376SSimon Glass	};
496344c8376SSimon Glass
497344c8376SSimon Glass	usb_otg: usb@ff580000 {
498344c8376SSimon Glass		compatible = "rockchip,rk3288-usb", "rockchip,rk3066-usb",
499344c8376SSimon Glass				"snps,dwc2";
500344c8376SSimon Glass		reg = <0xff580000 0x40000>;
501344c8376SSimon Glass		interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
502344c8376SSimon Glass		clocks = <&cru HCLK_OTG0>;
503344c8376SSimon Glass		clock-names = "otg";
504266c8fadSXu Ziyuan		dr_mode = "otg";
505344c8376SSimon Glass		phys = <&usbphy0>;
506344c8376SSimon Glass		phy-names = "usb2-phy";
507344c8376SSimon Glass		status = "disabled";
508344c8376SSimon Glass	};
509344c8376SSimon Glass
510344c8376SSimon Glass	usb_hsic: usb@ff5c0000 {
511344c8376SSimon Glass		compatible = "generic-ehci";
512344c8376SSimon Glass		reg = <0xff5c0000 0x100>;
513344c8376SSimon Glass		interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
514344c8376SSimon Glass		clocks = <&cru HCLK_HSIC>;
515344c8376SSimon Glass		clock-names = "usbhost";
516344c8376SSimon Glass		status = "disabled";
517344c8376SSimon Glass	};
518344c8376SSimon Glass
519344c8376SSimon Glass	dmc: dmc@ff610000 {
520344c8376SSimon Glass		compatible = "rockchip,rk3288-dmc", "syscon";
521344c8376SSimon Glass		rockchip,cru = <&cru>;
522344c8376SSimon Glass		rockchip,grf = <&grf>;
523344c8376SSimon Glass		rockchip,pmu = <&pmu>;
524344c8376SSimon Glass		rockchip,sgrf = <&sgrf>;
525344c8376SSimon Glass		rockchip,noc = <&noc>;
526344c8376SSimon Glass		reg = <0xff610000 0x3fc
527344c8376SSimon Glass		       0xff620000 0x294
528344c8376SSimon Glass		       0xff630000 0x3fc
529344c8376SSimon Glass		       0xff640000 0x294>;
530344c8376SSimon Glass		rockchip,sram = <&ddr_sram>;
531344c8376SSimon Glass		clocks = <&cru PCLK_DDRUPCTL0>, <&cru PCLK_PUBL0>,
532344c8376SSimon Glass			 <&cru PCLK_DDRUPCTL1>, <&cru PCLK_PUBL1>,
533344c8376SSimon Glass			 <&cru ARMCLK>;
534344c8376SSimon Glass		clock-names = "pclk_ddrupctl0", "pclk_publ0",
535344c8376SSimon Glass			      "pclk_ddrupctl1", "pclk_publ1",
536344c8376SSimon Glass			      "arm_clk";
537344c8376SSimon Glass	};
538344c8376SSimon Glass
539344c8376SSimon Glass	i2c0: i2c@ff650000 {
540344c8376SSimon Glass		compatible = "rockchip,rk3288-i2c";
541344c8376SSimon Glass		reg = <0xff650000 0x1000>;
542344c8376SSimon Glass		interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
543344c8376SSimon Glass		#address-cells = <1>;
544344c8376SSimon Glass		#size-cells = <0>;
545344c8376SSimon Glass		clock-names = "i2c";
546344c8376SSimon Glass		clocks = <&cru PCLK_I2C0>;
547344c8376SSimon Glass		pinctrl-names = "default";
548344c8376SSimon Glass		pinctrl-0 = <&i2c0_xfer>;
549344c8376SSimon Glass		status = "disabled";
550344c8376SSimon Glass	};
551344c8376SSimon Glass
552344c8376SSimon Glass	i2c2: i2c@ff660000 {
553344c8376SSimon Glass		compatible = "rockchip,rk3288-i2c";
554344c8376SSimon Glass		reg = <0xff660000 0x1000>;
555344c8376SSimon Glass		interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
556344c8376SSimon Glass		#address-cells = <1>;
557344c8376SSimon Glass		#size-cells = <0>;
558344c8376SSimon Glass		clock-names = "i2c";
559344c8376SSimon Glass		clocks = <&cru PCLK_I2C2>;
560344c8376SSimon Glass		pinctrl-names = "default";
561344c8376SSimon Glass		pinctrl-0 = <&i2c2_xfer>;
562344c8376SSimon Glass		status = "disabled";
563344c8376SSimon Glass	};
564344c8376SSimon Glass
565344c8376SSimon Glass	pwm0: pwm@ff680000 {
566344c8376SSimon Glass		compatible = "rockchip,rk3288-pwm";
567344c8376SSimon Glass		reg = <0xff680000 0x10>;
568344c8376SSimon Glass		#pwm-cells = <3>;
569bab0c55cSDavid Wu		pinctrl-names = "active";
570344c8376SSimon Glass		pinctrl-0 = <&pwm0_pin>;
571344c8376SSimon Glass		clocks = <&cru PCLK_PWM>;
572344c8376SSimon Glass		clock-names = "pwm";
573344c8376SSimon Glass		rockchip,grf = <&grf>;
574344c8376SSimon Glass		status = "disabled";
575344c8376SSimon Glass	};
576344c8376SSimon Glass
577344c8376SSimon Glass	pwm1: pwm@ff680010 {
578344c8376SSimon Glass		compatible = "rockchip,rk3288-pwm";
579344c8376SSimon Glass		reg = <0xff680010 0x10>;
580344c8376SSimon Glass		#pwm-cells = <3>;
581bab0c55cSDavid Wu		pinctrl-names = "active";
582344c8376SSimon Glass		pinctrl-0 = <&pwm1_pin>;
583344c8376SSimon Glass		clocks = <&cru PCLK_PWM>;
584344c8376SSimon Glass		clock-names = "pwm";
585344c8376SSimon Glass		rockchip,grf = <&grf>;
586344c8376SSimon Glass		status = "disabled";
587344c8376SSimon Glass	};
588344c8376SSimon Glass
589344c8376SSimon Glass	pwm2: pwm@ff680020 {
590344c8376SSimon Glass		compatible = "rockchip,rk3288-pwm";
591344c8376SSimon Glass		reg = <0xff680020 0x10>;
592344c8376SSimon Glass		#pwm-cells = <3>;
593bab0c55cSDavid Wu		pinctrl-names = "active";
594344c8376SSimon Glass		pinctrl-0 = <&pwm2_pin>;
595344c8376SSimon Glass		clocks = <&cru PCLK_PWM>;
596344c8376SSimon Glass		clock-names = "pwm";
597344c8376SSimon Glass		rockchip,grf = <&grf>;
598344c8376SSimon Glass		status = "disabled";
599344c8376SSimon Glass	};
600344c8376SSimon Glass
601344c8376SSimon Glass	pwm3: pwm@ff680030 {
602344c8376SSimon Glass		compatible = "rockchip,rk3288-pwm";
603344c8376SSimon Glass		reg = <0xff680030 0x10>;
604344c8376SSimon Glass		#pwm-cells = <2>;
605bab0c55cSDavid Wu		pinctrl-names = "active";
606344c8376SSimon Glass		pinctrl-0 = <&pwm3_pin>;
607344c8376SSimon Glass		clocks = <&cru PCLK_PWM>;
608344c8376SSimon Glass		clock-names = "pwm";
609344c8376SSimon Glass		rockchip,grf = <&grf>;
610344c8376SSimon Glass		status = "disabled";
611344c8376SSimon Glass	};
612344c8376SSimon Glass
613344c8376SSimon Glass	bus_intmem@ff700000 {
614344c8376SSimon Glass		compatible = "mmio-sram";
615344c8376SSimon Glass		reg = <0xff700000 0x18000>;
616344c8376SSimon Glass		#address-cells = <1>;
617344c8376SSimon Glass		#size-cells = <1>;
618344c8376SSimon Glass		ranges = <0 0xff700000 0x18000>;
619344c8376SSimon Glass		smp-sram@0 {
620344c8376SSimon Glass			compatible = "rockchip,rk3066-smp-sram";
621344c8376SSimon Glass			reg = <0x00 0x10>;
622344c8376SSimon Glass		};
623344c8376SSimon Glass		ddr_sram: ddr-sram@1000 {
624344c8376SSimon Glass			compatible = "rockchip,rk3288-ddr-sram";
625344c8376SSimon Glass			reg = <0x1000 0x4000>;
626344c8376SSimon Glass		};
627344c8376SSimon Glass	};
628344c8376SSimon Glass
629344c8376SSimon Glass	sram@ff720000 {
630344c8376SSimon Glass		compatible = "rockchip,rk3288-pmu-sram", "mmio-sram";
631344c8376SSimon Glass		reg = <0xff720000 0x1000>;
632344c8376SSimon Glass	};
633344c8376SSimon Glass
634344c8376SSimon Glass	pmu: power-management@ff730000 {
635344c8376SSimon Glass		compatible = "rockchip,rk3288-pmu", "syscon";
636344c8376SSimon Glass		reg = <0xff730000 0x100>;
637344c8376SSimon Glass	};
638344c8376SSimon Glass
639344c8376SSimon Glass	sgrf: syscon@ff740000 {
640344c8376SSimon Glass		compatible = "rockchip,rk3288-sgrf", "syscon";
641344c8376SSimon Glass		reg = <0xff740000 0x1000>;
642344c8376SSimon Glass	};
643344c8376SSimon Glass
644344c8376SSimon Glass	cru: clock-controller@ff760000 {
645344c8376SSimon Glass		compatible = "rockchip,rk3288-cru";
646344c8376SSimon Glass		reg = <0xff760000 0x1000>;
647344c8376SSimon Glass		rockchip,grf = <&grf>;
648344c8376SSimon Glass		#clock-cells = <1>;
649344c8376SSimon Glass		#reset-cells = <1>;
650506b2ea9SDavid Wu		assigned-clocks = <&cru PLL_GPLL>, <&cru PLL_CPLL>,
651344c8376SSimon Glass				  <&cru PLL_NPLL>, <&cru ACLK_CPU>,
652344c8376SSimon Glass				  <&cru HCLK_CPU>, <&cru PCLK_CPU>,
653344c8376SSimon Glass				  <&cru ACLK_PERI>, <&cru HCLK_PERI>,
654344c8376SSimon Glass				  <&cru PCLK_PERI>;
655506b2ea9SDavid Wu		assigned-clock-rates = <594000000>, <400000000>,
656344c8376SSimon Glass				       <500000000>, <300000000>,
657344c8376SSimon Glass				       <150000000>, <75000000>,
658344c8376SSimon Glass				       <300000000>, <150000000>,
659344c8376SSimon Glass				       <75000000>;
660344c8376SSimon Glass	};
661344c8376SSimon Glass
662344c8376SSimon Glass	grf: syscon@ff770000 {
663344c8376SSimon Glass		compatible = "rockchip,rk3288-grf", "syscon";
664344c8376SSimon Glass		reg = <0xff770000 0x1000>;
665344c8376SSimon Glass	};
666344c8376SSimon Glass
667344c8376SSimon Glass	wdt: watchdog@ff800000 {
668344c8376SSimon Glass		compatible = "rockchip,rk3288-wdt", "snps,dw-wdt";
669344c8376SSimon Glass		reg = <0xff800000 0x100>;
670344c8376SSimon Glass		clocks = <&cru PCLK_WDT>;
671344c8376SSimon Glass		interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
672344c8376SSimon Glass		status = "disabled";
673344c8376SSimon Glass	};
674344c8376SSimon Glass
6756406f453SSimon Glass	spdif: sound@ff88b0000 {
6766406f453SSimon Glass		compatible = "rockchip,rk3288-spdif", "rockchip,rk3066-spdif";
6776406f453SSimon Glass		reg = <0xff8b0000 0x10000>;
6786406f453SSimon Glass		#sound-dai-cells = <0>;
6796406f453SSimon Glass		clock-names = "hclk", "mclk";
6806406f453SSimon Glass		clocks = <&cru HCLK_SPDIF8CH>, <&cru SCLK_SPDIF8CH>;
6816406f453SSimon Glass		dmas = <&dmac_bus_s 3>;
6826406f453SSimon Glass		dma-names = "tx";
6836406f453SSimon Glass		interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
6846406f453SSimon Glass		pinctrl-names = "default";
6856406f453SSimon Glass		pinctrl-0 = <&spdif_tx>;
6866406f453SSimon Glass		rockchip,grf = <&grf>;
6876406f453SSimon Glass		status = "disabled";
6886406f453SSimon Glass	};
6896406f453SSimon Glass
690344c8376SSimon Glass	i2s: i2s@ff890000 {
691344c8376SSimon Glass		compatible = "rockchip,rk3288-i2s", "rockchip,rk3066-i2s";
692344c8376SSimon Glass		reg = <0xff890000 0x10000>;
693344c8376SSimon Glass		interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
694344c8376SSimon Glass		#address-cells = <1>;
695344c8376SSimon Glass		#size-cells = <0>;
696344c8376SSimon Glass		dmas = <&dmac_bus_s 0>, <&dmac_bus_s 1>;
697344c8376SSimon Glass		dma-names = "tx", "rx";
698344c8376SSimon Glass		clock-names = "i2s_hclk", "i2s_clk";
699344c8376SSimon Glass		clocks = <&cru HCLK_I2S0>, <&cru SCLK_I2S0>;
700344c8376SSimon Glass		pinctrl-names = "default";
701344c8376SSimon Glass		pinctrl-0 = <&i2s0_bus>;
702344c8376SSimon Glass		status = "disabled";
703344c8376SSimon Glass	};
704344c8376SSimon Glass
705064a6fd5SJason Zhu	crypto: crypto@ff8a0000 {
706064a6fd5SJason Zhu		compatible = "rockchip,rk3288-crypto";
707064a6fd5SJason Zhu		reg = <0xff8a0000 0x10000>;
708064a6fd5SJason Zhu		clock-names = "sclk_crypto";
709064a6fd5SJason Zhu		clocks = <&cru SCLK_CRYPTO>;
710*c7e7e384SLin Jinhan		resets = <&cru SRST_CRYPTO>;
711*c7e7e384SLin Jinhan		reset-names = "reset";
712064a6fd5SJason Zhu		status = "disabled";
713064a6fd5SJason Zhu	};
714064a6fd5SJason Zhu
715344c8376SSimon Glass	vopb: vop@ff930000 {
716e22bdefeSNickey Yang		compatible = "rockchip,rk3288-vop-big";
717344c8376SSimon Glass		reg = <0xff930000 0x19c>;
718344c8376SSimon Glass		interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
719344c8376SSimon Glass		clocks = <&cru ACLK_VOP0>, <&cru DCLK_VOP0>, <&cru HCLK_VOP0>;
720344c8376SSimon Glass		clock-names = "aclk_vop", "dclk_vop", "hclk_vop";
721344c8376SSimon Glass		resets = <&cru SRST_LCDC0_AXI>, <&cru SRST_LCDC0_AHB>, <&cru SRST_LCDC0_DCLK>;
722344c8376SSimon Glass		reset-names = "axi", "ahb", "dclk";
723344c8376SSimon Glass		iommus = <&vopb_mmu>;
724344c8376SSimon Glass		power-domains = <&power RK3288_PD_VIO>;
725344c8376SSimon Glass		status = "disabled";
726344c8376SSimon Glass		vopb_out: port {
727344c8376SSimon Glass			#address-cells = <1>;
728344c8376SSimon Glass			#size-cells = <0>;
729344c8376SSimon Glass			vopb_out_edp: endpoint@0 {
730344c8376SSimon Glass				reg = <0>;
731344c8376SSimon Glass				remote-endpoint = <&edp_in_vopb>;
732344c8376SSimon Glass			};
733344c8376SSimon Glass			vopb_out_hdmi: endpoint@1 {
734344c8376SSimon Glass				reg = <1>;
735344c8376SSimon Glass				remote-endpoint = <&hdmi_in_vopb>;
736344c8376SSimon Glass			};
737cfd97941SJacob Chen			vopb_out_lvds: endpoint@2 {
738cfd97941SJacob Chen				reg = <2>;
739cfd97941SJacob Chen				remote-endpoint = <&lvds_in_vopb>;
740cfd97941SJacob Chen			};
74103773c15SNickey Yang			vopb_out_dsi0: endpoint@3 {
7422085de57SEric Gao				reg = <3>;
74303773c15SNickey Yang				remote-endpoint = <&dsi0_in_vopb>;
7442085de57SEric Gao			};
7452085de57SEric Gao
746344c8376SSimon Glass		};
747344c8376SSimon Glass	};
748344c8376SSimon Glass
749344c8376SSimon Glass	vopb_mmu: iommu@ff930300 {
750344c8376SSimon Glass		compatible = "rockchip,iommu";
751344c8376SSimon Glass		reg = <0xff930300 0x100>;
752344c8376SSimon Glass		interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
753344c8376SSimon Glass		interrupt-names = "vopb_mmu";
754344c8376SSimon Glass		power-domains = <&power RK3288_PD_VIO>;
755344c8376SSimon Glass		#iommu-cells = <0>;
756344c8376SSimon Glass		status = "disabled";
757344c8376SSimon Glass	};
758344c8376SSimon Glass
759344c8376SSimon Glass	vopl: vop@ff940000 {
760e22bdefeSNickey Yang		compatible = "rockchip,rk3288-vop-lit";
761344c8376SSimon Glass		reg = <0xff940000 0x19c>;
762344c8376SSimon Glass		interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
763344c8376SSimon Glass		clocks = <&cru ACLK_VOP1>, <&cru DCLK_VOP1>, <&cru HCLK_VOP1>;
764344c8376SSimon Glass		clock-names = "aclk_vop", "dclk_vop", "hclk_vop";
765344c8376SSimon Glass		resets = <&cru SRST_LCDC1_AXI>, <&cru SRST_LCDC1_AHB>, <&cru SRST_LCDC1_DCLK>;
766344c8376SSimon Glass		reset-names = "axi", "ahb", "dclk";
767344c8376SSimon Glass		iommus = <&vopl_mmu>;
768344c8376SSimon Glass		power-domains = <&power RK3288_PD_VIO>;
769344c8376SSimon Glass		status = "disabled";
770344c8376SSimon Glass		vopl_out: port {
771344c8376SSimon Glass			#address-cells = <1>;
772344c8376SSimon Glass			#size-cells = <0>;
773344c8376SSimon Glass			vopl_out_edp: endpoint@0 {
774344c8376SSimon Glass				reg = <0>;
775344c8376SSimon Glass				remote-endpoint = <&edp_in_vopl>;
776344c8376SSimon Glass			};
777344c8376SSimon Glass			vopl_out_hdmi: endpoint@1 {
778344c8376SSimon Glass				reg = <1>;
779344c8376SSimon Glass				remote-endpoint = <&hdmi_in_vopl>;
780344c8376SSimon Glass			};
781cfd97941SJacob Chen			vopl_out_lvds: endpoint@2 {
782cfd97941SJacob Chen				reg = <2>;
783cfd97941SJacob Chen				remote-endpoint = <&lvds_in_vopl>;
784cfd97941SJacob Chen			};
78503773c15SNickey Yang			vopl_out_dsi0: endpoint@3 {
7862085de57SEric Gao				reg = <3>;
78703773c15SNickey Yang				remote-endpoint = <&dsi0_in_vopl>;
7882085de57SEric Gao			};
7892085de57SEric Gao
790344c8376SSimon Glass		};
791344c8376SSimon Glass	};
792344c8376SSimon Glass
793344c8376SSimon Glass	vopl_mmu: iommu@ff940300 {
794344c8376SSimon Glass		compatible = "rockchip,iommu";
795344c8376SSimon Glass		reg = <0xff940300 0x100>;
796344c8376SSimon Glass		interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
797344c8376SSimon Glass		interrupt-names = "vopl_mmu";
798344c8376SSimon Glass		power-domains = <&power RK3288_PD_VIO>;
799344c8376SSimon Glass		#iommu-cells = <0>;
800344c8376SSimon Glass		status = "disabled";
801344c8376SSimon Glass	};
802344c8376SSimon Glass
803344c8376SSimon Glass	edp: edp@ff970000 {
804e22bdefeSNickey Yang		compatible = "rockchip,rk3288-dp";
805344c8376SSimon Glass		reg = <0xff970000 0x4000>;
806344c8376SSimon Glass		interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
807344c8376SSimon Glass		clocks = <&cru SCLK_EDP>, <&cru SCLK_EDP_24M>, <&cru PCLK_EDP_CTRL>;
808344c8376SSimon Glass		rockchip,grf = <&grf>;
809344c8376SSimon Glass		clock-names = "clk_edp", "clk_edp_24m", "pclk_edp";
810344c8376SSimon Glass		resets = <&cru 111>;
811344c8376SSimon Glass		reset-names = "edp";
812344c8376SSimon Glass		power-domains = <&power RK3288_PD_VIO>;
813344c8376SSimon Glass		status = "disabled";
814344c8376SSimon Glass		ports {
815e22bdefeSNickey Yang			#address-cells = <1>;
816e22bdefeSNickey Yang			#size-cells = <0>;
817e22bdefeSNickey Yang
818344c8376SSimon Glass			edp_in: port {
819344c8376SSimon Glass				#address-cells = <1>;
820344c8376SSimon Glass				#size-cells = <0>;
821344c8376SSimon Glass				edp_in_vopb: endpoint@0 {
822344c8376SSimon Glass					reg = <0>;
823344c8376SSimon Glass					remote-endpoint = <&vopb_out_edp>;
824344c8376SSimon Glass				};
825344c8376SSimon Glass				edp_in_vopl: endpoint@1 {
826344c8376SSimon Glass					reg = <1>;
827344c8376SSimon Glass					remote-endpoint = <&vopl_out_edp>;
828344c8376SSimon Glass				};
829344c8376SSimon Glass			};
830344c8376SSimon Glass		};
831344c8376SSimon Glass	};
832344c8376SSimon Glass
833344c8376SSimon Glass	hdmi: hdmi@ff980000 {
834344c8376SSimon Glass		compatible = "rockchip,rk3288-dw-hdmi";
835344c8376SSimon Glass		reg = <0xff980000 0x20000>;
836344c8376SSimon Glass		reg-io-width = <4>;
837344c8376SSimon Glass		rockchip,grf = <&grf>;
838344c8376SSimon Glass		interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
839344c8376SSimon Glass		clocks = <&cru  PCLK_HDMI_CTRL>, <&cru SCLK_HDMI_HDCP>;
840344c8376SSimon Glass		clock-names = "iahb", "isfr";
84180cc3907SNickey Yang		pinctrl-names = "default";
84280cc3907SNickey Yang		pinctrl-0 = <&hdmi_ddc>;
843344c8376SSimon Glass		status = "disabled";
844344c8376SSimon Glass		ports {
845344c8376SSimon Glass			hdmi_in: port {
846344c8376SSimon Glass				#address-cells = <1>;
847344c8376SSimon Glass				#size-cells = <0>;
848344c8376SSimon Glass				hdmi_in_vopb: endpoint@0 {
849344c8376SSimon Glass					reg = <0>;
850344c8376SSimon Glass					remote-endpoint = <&vopb_out_hdmi>;
851344c8376SSimon Glass				};
852344c8376SSimon Glass				hdmi_in_vopl: endpoint@1 {
853344c8376SSimon Glass					reg = <1>;
854344c8376SSimon Glass					remote-endpoint = <&vopl_out_hdmi>;
855344c8376SSimon Glass				};
856344c8376SSimon Glass			};
857344c8376SSimon Glass		};
858344c8376SSimon Glass	};
859344c8376SSimon Glass
860cfd97941SJacob Chen	lvds: lvds@ff96c000 {
861cfd97941SJacob Chen		compatible = "rockchip,rk3288-lvds";
862cfd97941SJacob Chen		reg = <0xff96c000 0x4000>;
863cfd97941SJacob Chen		clocks = <&cru PCLK_LVDS_PHY>;
864cfd97941SJacob Chen		clock-names = "pclk_lvds";
865cfd97941SJacob Chen		pinctrl-names = "default";
866cfd97941SJacob Chen		pinctrl-0 = <&lcdc0_ctl>;
867cfd97941SJacob Chen		rockchip,grf = <&grf>;
868cfd97941SJacob Chen		status = "disabled";
869cfd97941SJacob Chen		ports {
870cfd97941SJacob Chen			#address-cells = <1>;
871cfd97941SJacob Chen			#size-cells = <0>;
872cfd97941SJacob Chen			lvds_in: port@0 {
873cfd97941SJacob Chen				reg = <0>;
874cfd97941SJacob Chen				#address-cells = <1>;
875cfd97941SJacob Chen				#size-cells = <0>;
876cfd97941SJacob Chen				lvds_in_vopb: endpoint@0 {
877cfd97941SJacob Chen					reg = <0>;
878cfd97941SJacob Chen					remote-endpoint = <&vopb_out_lvds>;
879cfd97941SJacob Chen				};
880cfd97941SJacob Chen				lvds_in_vopl: endpoint@1 {
881cfd97941SJacob Chen					reg = <1>;
882cfd97941SJacob Chen					remote-endpoint = <&vopl_out_lvds>;
883cfd97941SJacob Chen				};
884cfd97941SJacob Chen			};
885cfd97941SJacob Chen		};
886cfd97941SJacob Chen	};
887cfd97941SJacob Chen
888048ac2b7SNickey Yang	dsi0: mipi@ff960000 {
889048ac2b7SNickey Yang		compatible = "rockchip,rk3288-mipi-dsi", "snps,dw-mipi-dsi";
8902085de57SEric Gao		reg = <0xff960000 0x4000>;
891048ac2b7SNickey Yang		interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
892048ac2b7SNickey Yang		clocks = <&cru SCLK_MIPIDSI_24M>, <&cru PCLK_MIPI_DSI0>;
893048ac2b7SNickey Yang		clock-names = "ref", "pclk";
894048ac2b7SNickey Yang		resets = <&cru SRST_MIPIDSI0>;
895048ac2b7SNickey Yang		reset-names = "apb";
896048ac2b7SNickey Yang		power-domains = <&power RK3288_PD_VIO>;
8972085de57SEric Gao		rockchip,grf = <&grf>;
8982085de57SEric Gao		#address-cells = <1>;
8992085de57SEric Gao		#size-cells = <0>;
9002085de57SEric Gao		status = "disabled";
9012085de57SEric Gao		ports {
9022085de57SEric Gao			#address-cells = <1>;
9032085de57SEric Gao			#size-cells = <0>;
9042085de57SEric Gao			reg = <1>;
9052085de57SEric Gao			mipi_in: port {
9062085de57SEric Gao				#address-cells = <1>;
9072085de57SEric Gao				#size-cells = <0>;
90803773c15SNickey Yang				dsi0_in_vopb: endpoint@0 {
9092085de57SEric Gao					reg = <0>;
91003773c15SNickey Yang					remote-endpoint = <&vopb_out_dsi0>;
9112085de57SEric Gao				};
91203773c15SNickey Yang				dsi0_in_vopl: endpoint@1 {
9132085de57SEric Gao					reg = <1>;
91403773c15SNickey Yang					remote-endpoint = <&vopl_out_dsi0>;
9152085de57SEric Gao				};
9162085de57SEric Gao			};
9172085de57SEric Gao		};
9182085de57SEric Gao	};
9192085de57SEric Gao
920344c8376SSimon Glass	hdmi_audio: hdmi_audio {
921344c8376SSimon Glass		compatible = "rockchip,rk3288-hdmi-audio";
922344c8376SSimon Glass		i2s-controller = <&i2s>;
923344c8376SSimon Glass		status = "disable";
924344c8376SSimon Glass	};
925344c8376SSimon Glass
926344c8376SSimon Glass	vpu: video-codec@ff9a0000 {
927344c8376SSimon Glass		compatible = "rockchip,rk3288-vpu";
928344c8376SSimon Glass		reg = <0xff9a0000 0x800>;
929344c8376SSimon Glass		interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
930344c8376SSimon Glass				<GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
931344c8376SSimon Glass		interrupt-names = "vepu", "vdpu";
932344c8376SSimon Glass		clocks = <&cru ACLK_VCODEC>, <&cru HCLK_VCODEC>;
933344c8376SSimon Glass		clock-names = "aclk_vcodec", "hclk_vcodec";
934344c8376SSimon Glass		power-domains = <&power RK3288_PD_VIDEO>;
935344c8376SSimon Glass		iommus = <&vpu_mmu>;
936344c8376SSimon Glass	};
937344c8376SSimon Glass
938344c8376SSimon Glass	vpu_mmu: iommu@ff9a0800 {
939344c8376SSimon Glass		compatible = "rockchip,iommu";
940344c8376SSimon Glass		reg = <0xff9a0800 0x100>;
941344c8376SSimon Glass		interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
942344c8376SSimon Glass		interrupt-names = "vpu_mmu";
943344c8376SSimon Glass		power-domains = <&power RK3288_PD_VIDEO>;
944344c8376SSimon Glass		#iommu-cells = <0>;
945344c8376SSimon Glass	};
946344c8376SSimon Glass
947344c8376SSimon Glass	gpu: gpu@ffa30000 {
948344c8376SSimon Glass		compatible = "arm,malit764",
949344c8376SSimon Glass			     "arm,malit76x",
950344c8376SSimon Glass			     "arm,malit7xx",
951344c8376SSimon Glass			     "arm,mali-midgard";
952344c8376SSimon Glass		reg = <0xffa30000 0x10000>;
953344c8376SSimon Glass		interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
954344c8376SSimon Glass			     <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>,
955344c8376SSimon Glass			     <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
956344c8376SSimon Glass		interrupt-names = "JOB", "MMU", "GPU";
957344c8376SSimon Glass		clocks = <&cru ACLK_GPU>;
958344c8376SSimon Glass		clock-names = "aclk_gpu";
959344c8376SSimon Glass		operating-points = <
960344c8376SSimon Glass			/* KHz uV */
961344c8376SSimon Glass			100000 950000
962344c8376SSimon Glass			200000 950000
963344c8376SSimon Glass			300000 1000000
964344c8376SSimon Glass			400000 1100000
965344c8376SSimon Glass			/* 500000 1200000 - See crosbug.com/p/33857 */
966344c8376SSimon Glass			600000 1250000
967344c8376SSimon Glass		>;
968344c8376SSimon Glass		power-domains = <&power RK3288_PD_GPU>;
969344c8376SSimon Glass		status = "disabled";
970344c8376SSimon Glass	};
971344c8376SSimon Glass
972344c8376SSimon Glass	noc: syscon@ffac0000 {
973344c8376SSimon Glass		compatible = "rockchip,rk3288-noc", "syscon";
974344c8376SSimon Glass		reg = <0xffac0000 0x2000>;
975344c8376SSimon Glass	};
976344c8376SSimon Glass
977344c8376SSimon Glass	efuse: efuse@ffb40000 {
978344c8376SSimon Glass		compatible = "rockchip,rk3288-efuse";
979344c8376SSimon Glass		reg = <0xffb40000 0x10000>;
980344c8376SSimon Glass		status = "disabled";
981344c8376SSimon Glass	};
982344c8376SSimon Glass
983344c8376SSimon Glass	gic: interrupt-controller@ffc01000 {
984344c8376SSimon Glass		compatible = "arm,gic-400";
985344c8376SSimon Glass		interrupt-controller;
986344c8376SSimon Glass		#interrupt-cells = <3>;
987344c8376SSimon Glass		#address-cells = <0>;
988344c8376SSimon Glass
989344c8376SSimon Glass		reg = <0xffc01000 0x1000>,
990344c8376SSimon Glass		      <0xffc02000 0x1000>,
991344c8376SSimon Glass		      <0xffc04000 0x2000>,
992344c8376SSimon Glass		      <0xffc06000 0x2000>;
993344c8376SSimon Glass		interrupts = <GIC_PPI 9 0xf04>;
994344c8376SSimon Glass	};
995344c8376SSimon Glass
996344c8376SSimon Glass	cpuidle: cpuidle {
997344c8376SSimon Glass		compatible = "rockchip,rk3288-cpuidle";
998344c8376SSimon Glass	};
999344c8376SSimon Glass
1000344c8376SSimon Glass	usbphy: phy {
1001344c8376SSimon Glass		compatible = "rockchip,rk3288-usb-phy";
1002344c8376SSimon Glass		rockchip,grf = <&grf>;
1003344c8376SSimon Glass		#address-cells = <1>;
1004344c8376SSimon Glass		#size-cells = <0>;
1005344c8376SSimon Glass		status = "disabled";
1006344c8376SSimon Glass
1007344c8376SSimon Glass		usbphy0: usb-phy0 {
1008344c8376SSimon Glass			#phy-cells = <0>;
1009344c8376SSimon Glass			reg = <0x320>;
1010344c8376SSimon Glass			clocks = <&cru SCLK_OTGPHY0>;
1011344c8376SSimon Glass			clock-names = "phyclk";
1012344c8376SSimon Glass		};
1013344c8376SSimon Glass
1014344c8376SSimon Glass		usbphy1: usb-phy1 {
1015344c8376SSimon Glass			#phy-cells = <0>;
1016344c8376SSimon Glass			reg = <0x334>;
1017344c8376SSimon Glass			clocks = <&cru SCLK_OTGPHY1>;
1018344c8376SSimon Glass			clock-names = "phyclk";
1019344c8376SSimon Glass		};
1020344c8376SSimon Glass
1021344c8376SSimon Glass		usbphy2: usb-phy2 {
1022344c8376SSimon Glass			#phy-cells = <0>;
1023344c8376SSimon Glass			reg = <0x348>;
1024344c8376SSimon Glass			clocks = <&cru SCLK_OTGPHY2>;
1025344c8376SSimon Glass			clock-names = "phyclk";
1026344c8376SSimon Glass		};
1027344c8376SSimon Glass	};
1028344c8376SSimon Glass
1029344c8376SSimon Glass	pinctrl: pinctrl {
1030344c8376SSimon Glass		compatible = "rockchip,rk3288-pinctrl";
1031344c8376SSimon Glass		rockchip,grf = <&grf>;
1032344c8376SSimon Glass		rockchip,pmu = <&pmu>;
1033344c8376SSimon Glass		#address-cells = <1>;
1034344c8376SSimon Glass		#size-cells = <1>;
1035344c8376SSimon Glass		ranges;
1036344c8376SSimon Glass
1037344c8376SSimon Glass		gpio0: gpio0@ff750000 {
1038344c8376SSimon Glass			compatible = "rockchip,gpio-bank";
1039344c8376SSimon Glass			reg =	<0xff750000 0x100>;
1040344c8376SSimon Glass			interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
1041344c8376SSimon Glass			clocks = <&cru PCLK_GPIO0>;
1042344c8376SSimon Glass
1043344c8376SSimon Glass			gpio-controller;
1044344c8376SSimon Glass			#gpio-cells = <2>;
1045344c8376SSimon Glass
1046344c8376SSimon Glass			interrupt-controller;
1047344c8376SSimon Glass			#interrupt-cells = <2>;
1048344c8376SSimon Glass		};
1049344c8376SSimon Glass
1050344c8376SSimon Glass		gpio1: gpio1@ff780000 {
1051344c8376SSimon Glass			compatible = "rockchip,gpio-bank";
1052344c8376SSimon Glass			reg = <0xff780000 0x100>;
1053344c8376SSimon Glass			interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
1054344c8376SSimon Glass			clocks = <&cru PCLK_GPIO1>;
1055344c8376SSimon Glass
1056344c8376SSimon Glass			gpio-controller;
1057344c8376SSimon Glass			#gpio-cells = <2>;
1058344c8376SSimon Glass
1059344c8376SSimon Glass			interrupt-controller;
1060344c8376SSimon Glass			#interrupt-cells = <2>;
1061344c8376SSimon Glass		};
1062344c8376SSimon Glass
1063344c8376SSimon Glass		gpio2: gpio2@ff790000 {
1064344c8376SSimon Glass			compatible = "rockchip,gpio-bank";
1065344c8376SSimon Glass			reg = <0xff790000 0x100>;
1066344c8376SSimon Glass			interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
1067344c8376SSimon Glass			clocks = <&cru PCLK_GPIO2>;
1068344c8376SSimon Glass
1069344c8376SSimon Glass			gpio-controller;
1070344c8376SSimon Glass			#gpio-cells = <2>;
1071344c8376SSimon Glass
1072344c8376SSimon Glass			interrupt-controller;
1073344c8376SSimon Glass			#interrupt-cells = <2>;
1074344c8376SSimon Glass		};
1075344c8376SSimon Glass
1076344c8376SSimon Glass		gpio3: gpio3@ff7a0000 {
1077344c8376SSimon Glass			compatible = "rockchip,gpio-bank";
1078344c8376SSimon Glass			reg = <0xff7a0000 0x100>;
1079344c8376SSimon Glass			interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
1080344c8376SSimon Glass			clocks = <&cru PCLK_GPIO3>;
1081344c8376SSimon Glass
1082344c8376SSimon Glass			gpio-controller;
1083344c8376SSimon Glass			#gpio-cells = <2>;
1084344c8376SSimon Glass
1085344c8376SSimon Glass			interrupt-controller;
1086344c8376SSimon Glass			#interrupt-cells = <2>;
1087344c8376SSimon Glass		};
1088344c8376SSimon Glass
1089344c8376SSimon Glass		gpio4: gpio4@ff7b0000 {
1090344c8376SSimon Glass			compatible = "rockchip,gpio-bank";
1091344c8376SSimon Glass			reg = <0xff7b0000 0x100>;
1092344c8376SSimon Glass			interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
1093344c8376SSimon Glass			clocks = <&cru PCLK_GPIO4>;
1094344c8376SSimon Glass
1095344c8376SSimon Glass			gpio-controller;
1096344c8376SSimon Glass			#gpio-cells = <2>;
1097344c8376SSimon Glass
1098344c8376SSimon Glass			interrupt-controller;
1099344c8376SSimon Glass			#interrupt-cells = <2>;
1100344c8376SSimon Glass		};
1101344c8376SSimon Glass
1102344c8376SSimon Glass		gpio5: gpio5@ff7c0000 {
1103344c8376SSimon Glass			compatible = "rockchip,gpio-bank";
1104344c8376SSimon Glass			reg = <0xff7c0000 0x100>;
1105344c8376SSimon Glass			interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
1106344c8376SSimon Glass			clocks = <&cru PCLK_GPIO5>;
1107344c8376SSimon Glass
1108344c8376SSimon Glass			gpio-controller;
1109344c8376SSimon Glass			#gpio-cells = <2>;
1110344c8376SSimon Glass
1111344c8376SSimon Glass			interrupt-controller;
1112344c8376SSimon Glass			#interrupt-cells = <2>;
1113344c8376SSimon Glass		};
1114344c8376SSimon Glass
1115344c8376SSimon Glass		gpio6: gpio6@ff7d0000 {
1116344c8376SSimon Glass			compatible = "rockchip,gpio-bank";
1117344c8376SSimon Glass			reg = <0xff7d0000 0x100>;
1118344c8376SSimon Glass			interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
1119344c8376SSimon Glass			clocks = <&cru PCLK_GPIO6>;
1120344c8376SSimon Glass
1121344c8376SSimon Glass			gpio-controller;
1122344c8376SSimon Glass			#gpio-cells = <2>;
1123344c8376SSimon Glass
1124344c8376SSimon Glass			interrupt-controller;
1125344c8376SSimon Glass			#interrupt-cells = <2>;
1126344c8376SSimon Glass		};
1127344c8376SSimon Glass
1128344c8376SSimon Glass		gpio7: gpio7@ff7e0000 {
1129344c8376SSimon Glass			compatible = "rockchip,gpio-bank";
1130344c8376SSimon Glass			reg = <0xff7e0000 0x100>;
1131344c8376SSimon Glass			interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>;
1132344c8376SSimon Glass			clocks = <&cru PCLK_GPIO7>;
1133344c8376SSimon Glass
1134344c8376SSimon Glass			gpio-controller;
1135344c8376SSimon Glass			#gpio-cells = <2>;
1136344c8376SSimon Glass
1137344c8376SSimon Glass			interrupt-controller;
1138344c8376SSimon Glass			#interrupt-cells = <2>;
1139344c8376SSimon Glass		};
1140344c8376SSimon Glass
1141344c8376SSimon Glass		gpio8: gpio8@ff7f0000 {
1142344c8376SSimon Glass			compatible = "rockchip,gpio-bank";
1143344c8376SSimon Glass			reg = <0xff7f0000 0x100>;
1144344c8376SSimon Glass			interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
1145344c8376SSimon Glass			clocks = <&cru PCLK_GPIO8>;
1146344c8376SSimon Glass
1147344c8376SSimon Glass			gpio-controller;
1148344c8376SSimon Glass			#gpio-cells = <2>;
1149344c8376SSimon Glass
1150344c8376SSimon Glass			interrupt-controller;
1151344c8376SSimon Glass			#interrupt-cells = <2>;
1152344c8376SSimon Glass		};
1153344c8376SSimon Glass
115480cc3907SNickey Yang		hdmi {
115580cc3907SNickey Yang			hdmi_ddc: hdmi-ddc {
115680cc3907SNickey Yang				rockchip,pins = <7 19 RK_FUNC_2 &pcfg_pull_none>,
115780cc3907SNickey Yang						<7 20 RK_FUNC_2 &pcfg_pull_none>;
115880cc3907SNickey Yang			};
115980cc3907SNickey Yang		};
116080cc3907SNickey Yang
1161344c8376SSimon Glass		pcfg_pull_up: pcfg-pull-up {
1162344c8376SSimon Glass			bias-pull-up;
1163344c8376SSimon Glass		};
1164344c8376SSimon Glass
1165344c8376SSimon Glass		pcfg_pull_down: pcfg-pull-down {
1166344c8376SSimon Glass			bias-pull-down;
1167344c8376SSimon Glass		};
1168344c8376SSimon Glass
1169344c8376SSimon Glass		pcfg_pull_none: pcfg-pull-none {
1170344c8376SSimon Glass			bias-disable;
1171344c8376SSimon Glass		};
1172344c8376SSimon Glass
1173344c8376SSimon Glass		pcfg_pull_none_12ma: pcfg-pull-none-12ma {
1174344c8376SSimon Glass			bias-disable;
1175344c8376SSimon Glass			drive-strength = <12>;
1176344c8376SSimon Glass		};
1177344c8376SSimon Glass
1178344c8376SSimon Glass		sleep {
1179344c8376SSimon Glass			global_pwroff: global-pwroff {
1180344c8376SSimon Glass				rockchip,pins = <0 0 RK_FUNC_1 &pcfg_pull_none>;
1181344c8376SSimon Glass			};
1182344c8376SSimon Glass
1183344c8376SSimon Glass			ddrio_pwroff: ddrio-pwroff {
1184344c8376SSimon Glass				rockchip,pins = <0 1 RK_FUNC_1 &pcfg_pull_none>;
1185344c8376SSimon Glass			};
1186344c8376SSimon Glass
1187344c8376SSimon Glass			ddr0_retention: ddr0-retention {
1188344c8376SSimon Glass				rockchip,pins = <0 2 RK_FUNC_1 &pcfg_pull_up>;
1189344c8376SSimon Glass			};
1190344c8376SSimon Glass
1191344c8376SSimon Glass			ddr1_retention: ddr1-retention {
1192344c8376SSimon Glass				rockchip,pins = <0 3 RK_FUNC_1 &pcfg_pull_up>;
1193344c8376SSimon Glass			};
1194344c8376SSimon Glass		};
1195344c8376SSimon Glass
1196344c8376SSimon Glass		i2c0 {
1197344c8376SSimon Glass			i2c0_xfer: i2c0-xfer {
1198344c8376SSimon Glass				rockchip,pins = <0 15 RK_FUNC_1 &pcfg_pull_none>,
1199344c8376SSimon Glass						<0 16 RK_FUNC_1 &pcfg_pull_none>;
1200344c8376SSimon Glass			};
1201344c8376SSimon Glass		};
1202344c8376SSimon Glass
1203344c8376SSimon Glass		i2c1 {
1204344c8376SSimon Glass			i2c1_xfer: i2c1-xfer {
1205344c8376SSimon Glass				rockchip,pins = <8 4 RK_FUNC_1 &pcfg_pull_none>,
1206344c8376SSimon Glass						<8 5 RK_FUNC_1 &pcfg_pull_none>;
1207344c8376SSimon Glass			};
1208344c8376SSimon Glass		};
1209344c8376SSimon Glass
1210344c8376SSimon Glass		i2c2 {
1211344c8376SSimon Glass			i2c2_xfer: i2c2-xfer {
1212344c8376SSimon Glass				rockchip,pins = <6 9 RK_FUNC_1 &pcfg_pull_none>,
1213344c8376SSimon Glass						<6 10 RK_FUNC_1 &pcfg_pull_none>;
1214344c8376SSimon Glass			};
1215344c8376SSimon Glass		};
1216344c8376SSimon Glass
1217344c8376SSimon Glass		i2c3 {
1218344c8376SSimon Glass			i2c3_xfer: i2c3-xfer {
1219344c8376SSimon Glass				rockchip,pins = <2 16 RK_FUNC_1 &pcfg_pull_none>,
1220344c8376SSimon Glass						<2 17 RK_FUNC_1 &pcfg_pull_none>;
1221344c8376SSimon Glass			};
1222344c8376SSimon Glass		};
1223344c8376SSimon Glass
1224344c8376SSimon Glass		i2c4 {
1225344c8376SSimon Glass			i2c4_xfer: i2c4-xfer {
1226344c8376SSimon Glass				rockchip,pins = <7 17 RK_FUNC_1 &pcfg_pull_none>,
1227344c8376SSimon Glass						<7 18 RK_FUNC_1 &pcfg_pull_none>;
1228344c8376SSimon Glass			};
1229344c8376SSimon Glass		};
1230344c8376SSimon Glass
1231344c8376SSimon Glass		i2c5 {
1232344c8376SSimon Glass			i2c5_xfer: i2c5-xfer {
1233344c8376SSimon Glass				rockchip,pins = <7 19 RK_FUNC_1 &pcfg_pull_none>,
1234344c8376SSimon Glass						<7 20 RK_FUNC_1 &pcfg_pull_none>;
1235344c8376SSimon Glass			};
1236344c8376SSimon Glass		};
1237344c8376SSimon Glass
1238344c8376SSimon Glass		i2s0 {
1239344c8376SSimon Glass			i2s0_bus: i2s0-bus {
1240344c8376SSimon Glass				rockchip,pins = <6 0 RK_FUNC_1 &pcfg_pull_none>,
1241344c8376SSimon Glass						<6 1 RK_FUNC_1 &pcfg_pull_none>,
1242344c8376SSimon Glass						<6 2 RK_FUNC_1 &pcfg_pull_none>,
1243344c8376SSimon Glass						<6 3 RK_FUNC_1 &pcfg_pull_none>,
1244344c8376SSimon Glass						<6 4 RK_FUNC_1 &pcfg_pull_none>,
1245344c8376SSimon Glass						<6 8 RK_FUNC_1 &pcfg_pull_none>;
1246344c8376SSimon Glass			};
1247344c8376SSimon Glass		};
1248344c8376SSimon Glass
1249cfd97941SJacob Chen		lcdc0 {
1250cfd97941SJacob Chen			lcdc0_ctl: lcdc0-ctl {
1251cfd97941SJacob Chen				rockchip,pins = <1 24 RK_FUNC_1 &pcfg_pull_none>,
1252cfd97941SJacob Chen						<1 25 RK_FUNC_1 &pcfg_pull_none>,
1253cfd97941SJacob Chen						<1 26 RK_FUNC_1 &pcfg_pull_none>,
1254cfd97941SJacob Chen						<1 27 RK_FUNC_1 &pcfg_pull_none>;
1255cfd97941SJacob Chen			};
1256cfd97941SJacob Chen		};
1257cfd97941SJacob Chen
1258344c8376SSimon Glass		sdmmc {
1259344c8376SSimon Glass			sdmmc_clk: sdmmc-clk {
1260344c8376SSimon Glass				rockchip,pins = <6 20 RK_FUNC_1 &pcfg_pull_none>;
1261344c8376SSimon Glass			};
1262344c8376SSimon Glass
1263344c8376SSimon Glass			sdmmc_cmd: sdmmc-cmd {
1264344c8376SSimon Glass				rockchip,pins = <6 21 RK_FUNC_1 &pcfg_pull_up>;
1265344c8376SSimon Glass			};
1266344c8376SSimon Glass
1267344c8376SSimon Glass			sdmmc_cd: sdmcc-cd {
1268344c8376SSimon Glass				rockchip,pins = <6 22 RK_FUNC_1 &pcfg_pull_up>;
1269344c8376SSimon Glass			};
1270344c8376SSimon Glass
1271344c8376SSimon Glass			sdmmc_bus1: sdmmc-bus1 {
1272344c8376SSimon Glass				rockchip,pins = <6 16 RK_FUNC_1 &pcfg_pull_up>;
1273344c8376SSimon Glass			};
1274344c8376SSimon Glass
1275344c8376SSimon Glass			sdmmc_bus4: sdmmc-bus4 {
1276344c8376SSimon Glass				rockchip,pins = <6 16 RK_FUNC_1 &pcfg_pull_up>,
1277344c8376SSimon Glass						<6 17 RK_FUNC_1 &pcfg_pull_up>,
1278344c8376SSimon Glass						<6 18 RK_FUNC_1 &pcfg_pull_up>,
1279344c8376SSimon Glass						<6 19 RK_FUNC_1 &pcfg_pull_up>;
1280344c8376SSimon Glass			};
1281344c8376SSimon Glass		};
1282344c8376SSimon Glass
1283344c8376SSimon Glass		sdio0 {
1284344c8376SSimon Glass			sdio0_bus1: sdio0-bus1 {
1285344c8376SSimon Glass				rockchip,pins = <4 20 RK_FUNC_1 &pcfg_pull_up>;
1286344c8376SSimon Glass			};
1287344c8376SSimon Glass
1288344c8376SSimon Glass			sdio0_bus4: sdio0-bus4 {
1289344c8376SSimon Glass				rockchip,pins = <4 20 RK_FUNC_1 &pcfg_pull_up>,
1290344c8376SSimon Glass						<4 21 RK_FUNC_1 &pcfg_pull_up>,
1291344c8376SSimon Glass						<4 22 RK_FUNC_1 &pcfg_pull_up>,
1292344c8376SSimon Glass						<4 23 RK_FUNC_1 &pcfg_pull_up>;
1293344c8376SSimon Glass			};
1294344c8376SSimon Glass
1295344c8376SSimon Glass			sdio0_cmd: sdio0-cmd {
1296344c8376SSimon Glass				rockchip,pins = <4 24 RK_FUNC_1 &pcfg_pull_up>;
1297344c8376SSimon Glass			};
1298344c8376SSimon Glass
1299344c8376SSimon Glass			sdio0_clk: sdio0-clk {
1300344c8376SSimon Glass				rockchip,pins = <4 25 RK_FUNC_1 &pcfg_pull_none>;
1301344c8376SSimon Glass			};
1302344c8376SSimon Glass
1303344c8376SSimon Glass			sdio0_cd: sdio0-cd {
1304344c8376SSimon Glass				rockchip,pins = <4 26 RK_FUNC_1 &pcfg_pull_up>;
1305344c8376SSimon Glass			};
1306344c8376SSimon Glass
1307344c8376SSimon Glass			sdio0_wp: sdio0-wp {
1308344c8376SSimon Glass				rockchip,pins = <4 27 RK_FUNC_1 &pcfg_pull_up>;
1309344c8376SSimon Glass			};
1310344c8376SSimon Glass
1311344c8376SSimon Glass			sdio0_pwr: sdio0-pwr {
1312344c8376SSimon Glass				rockchip,pins = <4 28 RK_FUNC_1 &pcfg_pull_up>;
1313344c8376SSimon Glass			};
1314344c8376SSimon Glass
1315344c8376SSimon Glass			sdio0_bkpwr: sdio0-bkpwr {
1316344c8376SSimon Glass				rockchip,pins = <4 29 RK_FUNC_1 &pcfg_pull_up>;
1317344c8376SSimon Glass			};
1318344c8376SSimon Glass
1319344c8376SSimon Glass			sdio0_int: sdio0-int {
1320344c8376SSimon Glass				rockchip,pins = <4 30 RK_FUNC_1 &pcfg_pull_up>;
1321344c8376SSimon Glass			};
1322344c8376SSimon Glass		};
1323344c8376SSimon Glass
1324344c8376SSimon Glass		sdio1 {
1325344c8376SSimon Glass			sdio1_bus1: sdio1-bus1 {
1326344c8376SSimon Glass				rockchip,pins = <3 24 RK_FUNC_4 &pcfg_pull_up>;
1327344c8376SSimon Glass			};
1328344c8376SSimon Glass
1329344c8376SSimon Glass			sdio1_bus4: sdio1-bus4 {
1330344c8376SSimon Glass				rockchip,pins = <3 24 RK_FUNC_4 &pcfg_pull_up>,
1331344c8376SSimon Glass						<3 25 RK_FUNC_4 &pcfg_pull_up>,
1332344c8376SSimon Glass						<3 26 RK_FUNC_4 &pcfg_pull_up>,
1333344c8376SSimon Glass						<3 27 RK_FUNC_4 &pcfg_pull_up>;
1334344c8376SSimon Glass			};
1335344c8376SSimon Glass
1336344c8376SSimon Glass			sdio1_cd: sdio1-cd {
1337344c8376SSimon Glass				rockchip,pins = <3 28 RK_FUNC_4 &pcfg_pull_up>;
1338344c8376SSimon Glass			};
1339344c8376SSimon Glass
1340344c8376SSimon Glass			sdio1_wp: sdio1-wp {
1341344c8376SSimon Glass				rockchip,pins = <3 29 RK_FUNC_4 &pcfg_pull_up>;
1342344c8376SSimon Glass			};
1343344c8376SSimon Glass
1344344c8376SSimon Glass			sdio1_bkpwr: sdio1-bkpwr {
1345344c8376SSimon Glass				rockchip,pins = <3 30 RK_FUNC_4 &pcfg_pull_up>;
1346344c8376SSimon Glass			};
1347344c8376SSimon Glass
1348344c8376SSimon Glass			sdio1_int: sdio1-int {
1349344c8376SSimon Glass				rockchip,pins = <3 31 RK_FUNC_4 &pcfg_pull_up>;
1350344c8376SSimon Glass			};
1351344c8376SSimon Glass
1352344c8376SSimon Glass			sdio1_cmd: sdio1-cmd {
1353344c8376SSimon Glass				rockchip,pins = <4 6 RK_FUNC_4 &pcfg_pull_up>;
1354344c8376SSimon Glass			};
1355344c8376SSimon Glass
1356344c8376SSimon Glass			sdio1_clk: sdio1-clk {
1357344c8376SSimon Glass				rockchip,pins = <4 7 RK_FUNC_4 &pcfg_pull_none>;
1358344c8376SSimon Glass			};
1359344c8376SSimon Glass
1360344c8376SSimon Glass			sdio1_pwr: sdio1-pwr {
1361344c8376SSimon Glass				rockchip,pins = <4 9 RK_FUNC_4 &pcfg_pull_up>;
1362344c8376SSimon Glass			};
1363344c8376SSimon Glass		};
1364344c8376SSimon Glass
1365344c8376SSimon Glass		emmc {
1366344c8376SSimon Glass			emmc_clk: emmc-clk {
1367344c8376SSimon Glass				rockchip,pins = <3 18 RK_FUNC_2 &pcfg_pull_none>;
1368344c8376SSimon Glass			};
1369344c8376SSimon Glass
1370344c8376SSimon Glass			emmc_cmd: emmc-cmd {
1371344c8376SSimon Glass				rockchip,pins = <3 16 RK_FUNC_2 &pcfg_pull_up>;
1372344c8376SSimon Glass			};
1373344c8376SSimon Glass
1374344c8376SSimon Glass			emmc_pwr: emmc-pwr {
1375344c8376SSimon Glass				rockchip,pins = <3 9 RK_FUNC_2 &pcfg_pull_up>;
1376344c8376SSimon Glass			};
1377344c8376SSimon Glass
1378344c8376SSimon Glass			emmc_bus1: emmc-bus1 {
1379344c8376SSimon Glass				rockchip,pins = <3 0 RK_FUNC_2 &pcfg_pull_up>;
1380344c8376SSimon Glass			};
1381344c8376SSimon Glass
1382344c8376SSimon Glass			emmc_bus4: emmc-bus4 {
1383344c8376SSimon Glass				rockchip,pins = <3 0 RK_FUNC_2 &pcfg_pull_up>,
1384344c8376SSimon Glass						<3 1 RK_FUNC_2 &pcfg_pull_up>,
1385344c8376SSimon Glass						<3 2 RK_FUNC_2 &pcfg_pull_up>,
1386344c8376SSimon Glass						<3 3 RK_FUNC_2 &pcfg_pull_up>;
1387344c8376SSimon Glass			};
1388344c8376SSimon Glass
1389344c8376SSimon Glass			emmc_bus8: emmc-bus8 {
1390344c8376SSimon Glass				rockchip,pins = <3 0 RK_FUNC_2 &pcfg_pull_up>,
1391344c8376SSimon Glass						<3 1 RK_FUNC_2 &pcfg_pull_up>,
1392344c8376SSimon Glass						<3 2 RK_FUNC_2 &pcfg_pull_up>,
1393344c8376SSimon Glass						<3 3 RK_FUNC_2 &pcfg_pull_up>,
1394344c8376SSimon Glass						<3 4 RK_FUNC_2 &pcfg_pull_up>,
1395344c8376SSimon Glass						<3 5 RK_FUNC_2 &pcfg_pull_up>,
1396344c8376SSimon Glass						<3 6 RK_FUNC_2 &pcfg_pull_up>,
1397344c8376SSimon Glass						<3 7 RK_FUNC_2 &pcfg_pull_up>;
1398344c8376SSimon Glass			};
1399344c8376SSimon Glass		};
1400344c8376SSimon Glass
1401344c8376SSimon Glass		spi0 {
1402344c8376SSimon Glass			spi0_clk: spi0-clk {
1403344c8376SSimon Glass				rockchip,pins = <5 12 RK_FUNC_1 &pcfg_pull_up>;
1404344c8376SSimon Glass			};
1405344c8376SSimon Glass			spi0_cs0: spi0-cs0 {
1406344c8376SSimon Glass				rockchip,pins = <5 13 RK_FUNC_1 &pcfg_pull_up>;
1407344c8376SSimon Glass			};
1408344c8376SSimon Glass			spi0_tx: spi0-tx {
1409344c8376SSimon Glass				rockchip,pins = <5 14 RK_FUNC_1 &pcfg_pull_up>;
1410344c8376SSimon Glass			};
1411344c8376SSimon Glass			spi0_rx: spi0-rx {
1412344c8376SSimon Glass				rockchip,pins = <5 15 RK_FUNC_1 &pcfg_pull_up>;
1413344c8376SSimon Glass			};
1414344c8376SSimon Glass			spi0_cs1: spi0-cs1 {
1415344c8376SSimon Glass				rockchip,pins = <5 16 RK_FUNC_1 &pcfg_pull_up>;
1416344c8376SSimon Glass			};
1417344c8376SSimon Glass		};
1418344c8376SSimon Glass		spi1 {
1419344c8376SSimon Glass			spi1_clk: spi1-clk {
1420344c8376SSimon Glass				rockchip,pins = <7 12 RK_FUNC_2 &pcfg_pull_up>;
1421344c8376SSimon Glass			};
1422344c8376SSimon Glass			spi1_cs0: spi1-cs0 {
1423344c8376SSimon Glass				rockchip,pins = <7 13 RK_FUNC_2 &pcfg_pull_up>;
1424344c8376SSimon Glass			};
1425344c8376SSimon Glass			spi1_rx: spi1-rx {
1426344c8376SSimon Glass				rockchip,pins = <7 14 RK_FUNC_2 &pcfg_pull_up>;
1427344c8376SSimon Glass			};
1428344c8376SSimon Glass			spi1_tx: spi1-tx {
1429344c8376SSimon Glass				rockchip,pins = <7 15 RK_FUNC_2 &pcfg_pull_up>;
1430344c8376SSimon Glass			};
1431344c8376SSimon Glass		};
1432344c8376SSimon Glass
1433344c8376SSimon Glass		spi2 {
1434344c8376SSimon Glass			spi2_cs1: spi2-cs1 {
1435344c8376SSimon Glass				rockchip,pins = <8 3 RK_FUNC_1 &pcfg_pull_up>;
1436344c8376SSimon Glass			};
1437344c8376SSimon Glass			spi2_clk: spi2-clk {
1438344c8376SSimon Glass				rockchip,pins = <8 6 RK_FUNC_1 &pcfg_pull_up>;
1439344c8376SSimon Glass			};
1440344c8376SSimon Glass			spi2_cs0: spi2-cs0 {
1441344c8376SSimon Glass				rockchip,pins = <8 7 RK_FUNC_1 &pcfg_pull_up>;
1442344c8376SSimon Glass			};
1443344c8376SSimon Glass			spi2_rx: spi2-rx {
1444344c8376SSimon Glass				rockchip,pins = <8 8 RK_FUNC_1 &pcfg_pull_up>;
1445344c8376SSimon Glass			};
1446344c8376SSimon Glass			spi2_tx: spi2-tx {
1447344c8376SSimon Glass				rockchip,pins = <8 9 RK_FUNC_1 &pcfg_pull_up>;
1448344c8376SSimon Glass			};
1449344c8376SSimon Glass		};
1450344c8376SSimon Glass
1451344c8376SSimon Glass		uart0 {
1452344c8376SSimon Glass			uart0_xfer: uart0-xfer {
1453344c8376SSimon Glass				rockchip,pins = <4 16 RK_FUNC_1 &pcfg_pull_up>,
1454344c8376SSimon Glass						<4 17 RK_FUNC_1 &pcfg_pull_none>;
1455344c8376SSimon Glass			};
1456344c8376SSimon Glass
1457344c8376SSimon Glass			uart0_cts: uart0-cts {
1458344c8376SSimon Glass				rockchip,pins = <4 18 RK_FUNC_1 &pcfg_pull_none>;
1459344c8376SSimon Glass			};
1460344c8376SSimon Glass
1461344c8376SSimon Glass			uart0_rts: uart0-rts {
1462344c8376SSimon Glass				rockchip,pins = <4 19 RK_FUNC_1 &pcfg_pull_none>;
1463344c8376SSimon Glass			};
1464344c8376SSimon Glass		};
1465344c8376SSimon Glass
1466344c8376SSimon Glass		uart1 {
1467344c8376SSimon Glass			uart1_xfer: uart1-xfer {
1468344c8376SSimon Glass				rockchip,pins = <5 8 RK_FUNC_1 &pcfg_pull_up>,
1469344c8376SSimon Glass						<5 9 RK_FUNC_1 &pcfg_pull_none>;
1470344c8376SSimon Glass			};
1471344c8376SSimon Glass
1472344c8376SSimon Glass			uart1_cts: uart1-cts {
1473344c8376SSimon Glass				rockchip,pins = <5 10 RK_FUNC_1 &pcfg_pull_none>;
1474344c8376SSimon Glass			};
1475344c8376SSimon Glass
1476344c8376SSimon Glass			uart1_rts: uart1-rts {
1477344c8376SSimon Glass				rockchip,pins = <5 11 RK_FUNC_1 &pcfg_pull_none>;
1478344c8376SSimon Glass			};
1479344c8376SSimon Glass		};
1480344c8376SSimon Glass
1481344c8376SSimon Glass		uart2 {
1482344c8376SSimon Glass			uart2_xfer: uart2-xfer {
1483344c8376SSimon Glass				rockchip,pins = <7 22 RK_FUNC_1 &pcfg_pull_up>,
1484344c8376SSimon Glass						<7 23 RK_FUNC_1 &pcfg_pull_none>;
1485344c8376SSimon Glass			};
1486344c8376SSimon Glass			/* no rts / cts for uart2 */
1487344c8376SSimon Glass		};
1488344c8376SSimon Glass
1489344c8376SSimon Glass		uart3 {
1490344c8376SSimon Glass			uart3_xfer: uart3-xfer {
1491344c8376SSimon Glass				rockchip,pins = <7 7 RK_FUNC_1 &pcfg_pull_up>,
1492344c8376SSimon Glass						<7 8 RK_FUNC_1 &pcfg_pull_none>;
1493344c8376SSimon Glass			};
1494344c8376SSimon Glass
1495344c8376SSimon Glass			uart3_cts: uart3-cts {
1496344c8376SSimon Glass				rockchip,pins = <7 9 RK_FUNC_1 &pcfg_pull_none>;
1497344c8376SSimon Glass			};
1498344c8376SSimon Glass
1499344c8376SSimon Glass			uart3_rts: uart3-rts {
1500344c8376SSimon Glass				rockchip,pins = <7 10 RK_FUNC_1 &pcfg_pull_none>;
1501344c8376SSimon Glass			};
1502344c8376SSimon Glass		};
1503344c8376SSimon Glass
1504344c8376SSimon Glass		uart4 {
1505344c8376SSimon Glass			uart4_xfer: uart4-xfer {
1506344c8376SSimon Glass				rockchip,pins = <5 12 3 &pcfg_pull_up>,
1507344c8376SSimon Glass						<5 13 3 &pcfg_pull_none>;
1508344c8376SSimon Glass			};
1509344c8376SSimon Glass
1510344c8376SSimon Glass			uart4_cts: uart4-cts {
1511344c8376SSimon Glass				rockchip,pins = <5 14 3 &pcfg_pull_none>;
1512344c8376SSimon Glass			};
1513344c8376SSimon Glass
1514344c8376SSimon Glass			uart4_rts: uart4-rts {
1515344c8376SSimon Glass				rockchip,pins = <5 15 3 &pcfg_pull_none>;
1516344c8376SSimon Glass			};
1517344c8376SSimon Glass		};
1518344c8376SSimon Glass
1519344c8376SSimon Glass		tsadc {
1520344c8376SSimon Glass			otp_out: otp-out {
1521344c8376SSimon Glass				rockchip,pins = <0 10 RK_FUNC_1 &pcfg_pull_none>;
1522344c8376SSimon Glass			};
1523344c8376SSimon Glass		};
1524344c8376SSimon Glass
1525344c8376SSimon Glass		pwm0 {
1526344c8376SSimon Glass			pwm0_pin: pwm0-pin {
1527344c8376SSimon Glass				rockchip,pins = <7 0 RK_FUNC_1 &pcfg_pull_none>;
1528344c8376SSimon Glass			};
1529344c8376SSimon Glass		};
1530344c8376SSimon Glass
1531344c8376SSimon Glass		pwm1 {
1532344c8376SSimon Glass			pwm1_pin: pwm1-pin {
1533344c8376SSimon Glass				rockchip,pins = <7 1 RK_FUNC_1 &pcfg_pull_none>;
1534344c8376SSimon Glass			};
1535344c8376SSimon Glass		};
1536344c8376SSimon Glass
1537344c8376SSimon Glass		pwm2 {
1538344c8376SSimon Glass			pwm2_pin: pwm2-pin {
1539344c8376SSimon Glass				rockchip,pins = <7 22 RK_FUNC_3 &pcfg_pull_none>;
1540344c8376SSimon Glass			};
1541344c8376SSimon Glass		};
1542344c8376SSimon Glass
1543344c8376SSimon Glass		pwm3 {
1544344c8376SSimon Glass			pwm3_pin: pwm3-pin {
1545344c8376SSimon Glass				rockchip,pins = <7 23 RK_FUNC_3 &pcfg_pull_none>;
1546344c8376SSimon Glass			};
1547344c8376SSimon Glass		};
1548344c8376SSimon Glass
1549344c8376SSimon Glass		gmac {
1550344c8376SSimon Glass			rgmii_pins: rgmii-pins {
1551344c8376SSimon Glass				rockchip,pins = <3 30 3 &pcfg_pull_none>,
1552344c8376SSimon Glass						<3 31 3 &pcfg_pull_none>,
1553344c8376SSimon Glass						<3 26 3 &pcfg_pull_none>,
1554344c8376SSimon Glass						<3 27 3 &pcfg_pull_none>,
1555344c8376SSimon Glass						<3 28 3 &pcfg_pull_none_12ma>,
1556344c8376SSimon Glass						<3 29 3 &pcfg_pull_none_12ma>,
1557344c8376SSimon Glass						<3 24 3 &pcfg_pull_none_12ma>,
1558344c8376SSimon Glass						<3 25 3 &pcfg_pull_none_12ma>,
1559344c8376SSimon Glass						<4 0 3 &pcfg_pull_none>,
1560344c8376SSimon Glass						<4 5 3 &pcfg_pull_none>,
1561344c8376SSimon Glass						<4 6 3 &pcfg_pull_none>,
1562344c8376SSimon Glass						<4 9 3 &pcfg_pull_none_12ma>,
1563344c8376SSimon Glass						<4 4 3 &pcfg_pull_none_12ma>,
1564344c8376SSimon Glass						<4 1 3 &pcfg_pull_none>,
1565344c8376SSimon Glass						<4 3 3 &pcfg_pull_none>;
1566344c8376SSimon Glass			};
1567344c8376SSimon Glass
1568344c8376SSimon Glass			rmii_pins: rmii-pins {
1569344c8376SSimon Glass				rockchip,pins = <3 30 3 &pcfg_pull_none>,
1570344c8376SSimon Glass						<3 31 3 &pcfg_pull_none>,
1571344c8376SSimon Glass						<3 28 3 &pcfg_pull_none>,
1572344c8376SSimon Glass						<3 29 3 &pcfg_pull_none>,
1573344c8376SSimon Glass						<4 0 3 &pcfg_pull_none>,
1574344c8376SSimon Glass						<4 5 3 &pcfg_pull_none>,
1575344c8376SSimon Glass						<4 4 3 &pcfg_pull_none>,
1576344c8376SSimon Glass						<4 1 3 &pcfg_pull_none>,
1577344c8376SSimon Glass						<4 2 3 &pcfg_pull_none>,
1578344c8376SSimon Glass						<4 3 3 &pcfg_pull_none>;
1579344c8376SSimon Glass			};
1580344c8376SSimon Glass		};
15816406f453SSimon Glass
15826406f453SSimon Glass		spdif {
15836406f453SSimon Glass			spdif_tx: spdif-tx {
15846406f453SSimon Glass				rockchip,pins = <RK_GPIO6 11 RK_FUNC_1 &pcfg_pull_none>;
15856406f453SSimon Glass			};
15866406f453SSimon Glass		};
1587344c8376SSimon Glass	};
1588344c8376SSimon Glass
1589344c8376SSimon Glass	power: power-controller {
1590344c8376SSimon Glass		compatible = "rockchip,rk3288-power-controller";
1591344c8376SSimon Glass		#power-domain-cells = <1>;
1592344c8376SSimon Glass		rockchip,pmu = <&pmu>;
1593344c8376SSimon Glass		#address-cells = <1>;
1594344c8376SSimon Glass		#size-cells = <0>;
1595344c8376SSimon Glass
1596344c8376SSimon Glass		pd_gpu {
1597344c8376SSimon Glass			reg = <RK3288_PD_GPU>;
1598344c8376SSimon Glass			clocks = <&cru ACLK_GPU>;
1599344c8376SSimon Glass		};
1600344c8376SSimon Glass
1601344c8376SSimon Glass		pd_hevc {
1602344c8376SSimon Glass			reg = <RK3288_PD_HEVC>;
1603344c8376SSimon Glass			clocks = <&cru ACLK_HEVC>,
1604344c8376SSimon Glass				 <&cru SCLK_HEVC_CABAC>,
1605344c8376SSimon Glass				 <&cru SCLK_HEVC_CORE>,
1606344c8376SSimon Glass				 <&cru HCLK_HEVC>;
1607344c8376SSimon Glass		};
1608344c8376SSimon Glass
1609344c8376SSimon Glass		pd_vio {
1610344c8376SSimon Glass			reg = <RK3288_PD_VIO>;
1611344c8376SSimon Glass			clocks = <&cru ACLK_IEP>,
1612344c8376SSimon Glass				 <&cru ACLK_ISP>,
1613344c8376SSimon Glass				 <&cru ACLK_RGA>,
1614344c8376SSimon Glass				 <&cru ACLK_VIP>,
1615344c8376SSimon Glass				 <&cru ACLK_VOP0>,
1616344c8376SSimon Glass				 <&cru ACLK_VOP1>,
1617344c8376SSimon Glass				 <&cru DCLK_VOP0>,
1618344c8376SSimon Glass				 <&cru DCLK_VOP1>,
1619344c8376SSimon Glass				 <&cru HCLK_IEP>,
1620344c8376SSimon Glass				 <&cru HCLK_ISP>,
1621344c8376SSimon Glass				 <&cru HCLK_RGA>,
1622344c8376SSimon Glass				 <&cru HCLK_VIP>,
1623344c8376SSimon Glass				 <&cru HCLK_VOP0>,
1624344c8376SSimon Glass				 <&cru HCLK_VOP1>,
1625344c8376SSimon Glass				 <&cru PCLK_EDP_CTRL>,
1626344c8376SSimon Glass				 <&cru PCLK_HDMI_CTRL>,
1627344c8376SSimon Glass				 <&cru PCLK_LVDS_PHY>,
1628344c8376SSimon Glass				 <&cru PCLK_MIPI_CSI>,
1629344c8376SSimon Glass				 <&cru PCLK_MIPI_DSI0>,
1630344c8376SSimon Glass				 <&cru PCLK_MIPI_DSI1>,
1631344c8376SSimon Glass				 <&cru SCLK_EDP_24M>,
1632344c8376SSimon Glass				 <&cru SCLK_EDP>,
1633344c8376SSimon Glass				 <&cru SCLK_HDMI_CEC>,
1634344c8376SSimon Glass				 <&cru SCLK_HDMI_HDCP>,
1635344c8376SSimon Glass				 <&cru SCLK_ISP_JPE>,
1636344c8376SSimon Glass				 <&cru SCLK_ISP>,
1637344c8376SSimon Glass				 <&cru SCLK_RGA>;
1638344c8376SSimon Glass		};
1639344c8376SSimon Glass
1640344c8376SSimon Glass		pd_video {
1641344c8376SSimon Glass			reg = <RK3288_PD_VIDEO>;
1642344c8376SSimon Glass			clocks = <&cru ACLK_VCODEC>,
1643344c8376SSimon Glass				 <&cru HCLK_VCODEC>;
1644344c8376SSimon Glass		};
1645344c8376SSimon Glass	};
1646344c8376SSimon Glass};
1647