xref: /linux/arch/arm/boot/dts/rockchip/rk3128.dtsi (revision 3d880c31d40d30328cb550523adadf1466e7c686)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0+
2724ba675SRob Herring/*
3724ba675SRob Herring * (C) Copyright 2017 Rockchip Electronics Co., Ltd
4724ba675SRob Herring */
5724ba675SRob Herring
6724ba675SRob Herring#include <dt-bindings/clock/rk3128-cru.h>
7724ba675SRob Herring#include <dt-bindings/gpio/gpio.h>
8724ba675SRob Herring#include <dt-bindings/interrupt-controller/arm-gic.h>
9724ba675SRob Herring#include <dt-bindings/interrupt-controller/irq.h>
10724ba675SRob Herring#include <dt-bindings/pinctrl/rockchip.h>
11724ba675SRob Herring
12724ba675SRob Herring/ {
13724ba675SRob Herring	compatible = "rockchip,rk3128";
14724ba675SRob Herring	interrupt-parent = <&gic>;
15724ba675SRob Herring	#address-cells = <1>;
16724ba675SRob Herring	#size-cells = <1>;
17724ba675SRob Herring
18724ba675SRob Herring	arm-pmu {
19724ba675SRob Herring		compatible = "arm,cortex-a7-pmu";
20724ba675SRob Herring		interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>,
21724ba675SRob Herring			     <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>,
22724ba675SRob Herring			     <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>,
23724ba675SRob Herring			     <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
24724ba675SRob Herring		interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
25724ba675SRob Herring	};
26724ba675SRob Herring
27724ba675SRob Herring	cpus {
28724ba675SRob Herring		#address-cells = <1>;
29724ba675SRob Herring		#size-cells = <0>;
30da8b9739SAlex Bee		enable-method = "rockchip,rk3036-smp";
31724ba675SRob Herring
32724ba675SRob Herring		cpu0: cpu@f00 {
33724ba675SRob Herring			device_type = "cpu";
34724ba675SRob Herring			compatible = "arm,cortex-a7";
35724ba675SRob Herring			reg = <0xf00>;
36724ba675SRob Herring			clock-latency = <40000>;
37724ba675SRob Herring			clocks = <&cru ARMCLK>;
3802941bc2SAlex Bee			resets = <&cru SRST_CORE0>;
39c96b13d7SAlex Bee			operating-points-v2 = <&cpu_opp_table>;
40724ba675SRob Herring			#cooling-cells = <2>; /* min followed by max */
41724ba675SRob Herring		};
42724ba675SRob Herring
43724ba675SRob Herring		cpu1: cpu@f01 {
44724ba675SRob Herring			device_type = "cpu";
45724ba675SRob Herring			compatible = "arm,cortex-a7";
46724ba675SRob Herring			reg = <0xf01>;
4702941bc2SAlex Bee			resets = <&cru SRST_CORE1>;
48c96b13d7SAlex Bee			operating-points-v2 = <&cpu_opp_table>;
49724ba675SRob Herring		};
50724ba675SRob Herring
51724ba675SRob Herring		cpu2: cpu@f02 {
52724ba675SRob Herring			device_type = "cpu";
53724ba675SRob Herring			compatible = "arm,cortex-a7";
54724ba675SRob Herring			reg = <0xf02>;
5502941bc2SAlex Bee			resets = <&cru SRST_CORE2>;
56c96b13d7SAlex Bee			operating-points-v2 = <&cpu_opp_table>;
57724ba675SRob Herring		};
58724ba675SRob Herring
59724ba675SRob Herring		cpu3: cpu@f03 {
60724ba675SRob Herring			device_type = "cpu";
61724ba675SRob Herring			compatible = "arm,cortex-a7";
62724ba675SRob Herring			reg = <0xf03>;
6302941bc2SAlex Bee			resets = <&cru SRST_CORE3>;
64c96b13d7SAlex Bee			operating-points-v2 = <&cpu_opp_table>;
65c96b13d7SAlex Bee		};
66c96b13d7SAlex Bee	};
67c96b13d7SAlex Bee
68c96b13d7SAlex Bee	cpu_opp_table: opp-table-0 {
69c96b13d7SAlex Bee		compatible = "operating-points-v2";
70c96b13d7SAlex Bee		opp-shared;
71c96b13d7SAlex Bee
72c96b13d7SAlex Bee		opp-216000000 {
73c96b13d7SAlex Bee			opp-hz = /bits/ 64 <216000000>;
74c96b13d7SAlex Bee			opp-microvolt = <950000 950000 1325000>;
75c96b13d7SAlex Bee		};
76c96b13d7SAlex Bee		opp-408000000 {
77c96b13d7SAlex Bee			opp-hz = /bits/ 64 <408000000>;
78c96b13d7SAlex Bee			opp-microvolt = <950000 950000 1325000>;
79c96b13d7SAlex Bee		};
80c96b13d7SAlex Bee		opp-600000000 {
81c96b13d7SAlex Bee			opp-hz = /bits/ 64 <600000000>;
82c96b13d7SAlex Bee			opp-microvolt = <950000 950000 1325000>;
83c96b13d7SAlex Bee		};
84c96b13d7SAlex Bee		opp-696000000 {
85c96b13d7SAlex Bee			opp-hz = /bits/ 64 <696000000>;
86c96b13d7SAlex Bee			opp-microvolt = <975000 975000 1325000>;
87c96b13d7SAlex Bee		};
88c96b13d7SAlex Bee		opp-816000000 {
89c96b13d7SAlex Bee			opp-hz = /bits/ 64 <816000000>;
90c96b13d7SAlex Bee			opp-microvolt = <1075000 1075000 1325000>;
91c96b13d7SAlex Bee			opp-suspend;
92c96b13d7SAlex Bee		};
93c96b13d7SAlex Bee		opp-1008000000 {
94c96b13d7SAlex Bee			opp-hz = /bits/ 64 <1008000000>;
95c96b13d7SAlex Bee			opp-microvolt = <1200000 1200000 1325000>;
96c96b13d7SAlex Bee		};
97c96b13d7SAlex Bee		opp-1200000000 {
98c96b13d7SAlex Bee			opp-hz = /bits/ 64 <1200000000>;
99c96b13d7SAlex Bee			opp-microvolt = <1325000 1325000 1325000>;
100724ba675SRob Herring		};
101724ba675SRob Herring	};
102724ba675SRob Herring
103724ba675SRob Herring	timer {
104724ba675SRob Herring		compatible = "arm,armv7-timer";
105724ba675SRob Herring		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
106724ba675SRob Herring			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
1077e3be9eaSAlex Bee			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
1087e3be9eaSAlex Bee			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
109724ba675SRob Herring		arm,cpu-registers-not-fw-configured;
110724ba675SRob Herring		clock-frequency = <24000000>;
111724ba675SRob Herring	};
112724ba675SRob Herring
113724ba675SRob Herring	xin24m: oscillator {
114724ba675SRob Herring		compatible = "fixed-clock";
115724ba675SRob Herring		clock-frequency = <24000000>;
116724ba675SRob Herring		clock-output-names = "xin24m";
117724ba675SRob Herring		#clock-cells = <0>;
118724ba675SRob Herring	};
119724ba675SRob Herring
1209107283bSAlex Bee	imem: sram@10080000 {
1219107283bSAlex Bee		compatible = "mmio-sram";
1229107283bSAlex Bee		reg = <0x10080000 0x2000>;
1239107283bSAlex Bee		#address-cells = <1>;
1249107283bSAlex Bee		#size-cells = <1>;
1259107283bSAlex Bee		ranges = <0 0x10080000 0x2000>;
126da8b9739SAlex Bee
127da8b9739SAlex Bee		smp-sram@0 {
128da8b9739SAlex Bee			compatible = "rockchip,rk3066-smp-sram";
129da8b9739SAlex Bee			reg = <0x00 0x10>;
130da8b9739SAlex Bee		};
1319107283bSAlex Bee	};
1329107283bSAlex Bee
133724ba675SRob Herring	pmu: syscon@100a0000 {
134724ba675SRob Herring		compatible = "rockchip,rk3128-pmu", "syscon", "simple-mfd";
135724ba675SRob Herring		reg = <0x100a0000 0x1000>;
136724ba675SRob Herring	};
137724ba675SRob Herring
138724ba675SRob Herring	gic: interrupt-controller@10139000 {
139724ba675SRob Herring		compatible = "arm,cortex-a7-gic";
140724ba675SRob Herring		reg = <0x10139000 0x1000>,
141724ba675SRob Herring		      <0x1013a000 0x1000>,
142724ba675SRob Herring		      <0x1013c000 0x2000>,
143724ba675SRob Herring		      <0x1013e000 0x2000>;
144724ba675SRob Herring		interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
145724ba675SRob Herring		interrupt-controller;
146724ba675SRob Herring		#interrupt-cells = <3>;
147724ba675SRob Herring		#address-cells = <0>;
148724ba675SRob Herring	};
149724ba675SRob Herring
150724ba675SRob Herring	usb_otg: usb@10180000 {
151724ba675SRob Herring		compatible = "rockchip,rk3128-usb", "rockchip,rk3066-usb", "snps,dwc2";
152724ba675SRob Herring		reg = <0x10180000 0x40000>;
153724ba675SRob Herring		interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
154724ba675SRob Herring		clocks = <&cru HCLK_OTG>;
155724ba675SRob Herring		clock-names = "otg";
156724ba675SRob Herring		dr_mode = "otg";
1574b12245eSAlex Bee		g-np-tx-fifo-size = <16>;
1584b12245eSAlex Bee		g-rx-fifo-size = <280>;
1594b12245eSAlex Bee		g-tx-fifo-size = <256 128 128 64 32 16>;
160724ba675SRob Herring		phys = <&usb2phy_otg>;
161724ba675SRob Herring		phy-names = "usb2-phy";
162724ba675SRob Herring		status = "disabled";
163724ba675SRob Herring	};
164724ba675SRob Herring
165724ba675SRob Herring	usb_host_ehci: usb@101c0000 {
166724ba675SRob Herring		compatible = "generic-ehci";
167724ba675SRob Herring		reg = <0x101c0000 0x20000>;
168724ba675SRob Herring		interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
169759d6bd9SAlex Bee		clocks = <&cru HCLK_HOST2>;
170724ba675SRob Herring		phys = <&usb2phy_host>;
171724ba675SRob Herring		phy-names = "usb";
172724ba675SRob Herring		status = "disabled";
173724ba675SRob Herring	};
174724ba675SRob Herring
175724ba675SRob Herring	usb_host_ohci: usb@101e0000 {
176724ba675SRob Herring		compatible = "generic-ohci";
177724ba675SRob Herring		reg = <0x101e0000 0x20000>;
178724ba675SRob Herring		interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
179759d6bd9SAlex Bee		clocks = <&cru HCLK_HOST2>;
180724ba675SRob Herring		phys = <&usb2phy_host>;
181724ba675SRob Herring		phy-names = "usb";
182724ba675SRob Herring		status = "disabled";
183724ba675SRob Herring	};
184724ba675SRob Herring
185724ba675SRob Herring	sdmmc: mmc@10214000 {
186724ba675SRob Herring		compatible = "rockchip,rk3128-dw-mshc", "rockchip,rk3288-dw-mshc";
187724ba675SRob Herring		reg = <0x10214000 0x4000>;
188724ba675SRob Herring		interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
189724ba675SRob Herring		clocks = <&cru HCLK_SDMMC>, <&cru SCLK_SDMMC>,
190724ba675SRob Herring			 <&cru SCLK_SDMMC_DRV>, <&cru SCLK_SDMMC_SAMPLE>;
191724ba675SRob Herring		clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
192724ba675SRob Herring		dmas = <&pdma 10>;
193724ba675SRob Herring		dma-names = "rx-tx";
194724ba675SRob Herring		fifo-depth = <256>;
195724ba675SRob Herring		max-frequency = <150000000>;
196724ba675SRob Herring		resets = <&cru SRST_SDMMC>;
197724ba675SRob Herring		reset-names = "reset";
198724ba675SRob Herring		status = "disabled";
199724ba675SRob Herring	};
200724ba675SRob Herring
201724ba675SRob Herring	sdio: mmc@10218000 {
202724ba675SRob Herring		compatible = "rockchip,rk3128-dw-mshc", "rockchip,rk3288-dw-mshc";
203724ba675SRob Herring		reg = <0x10218000 0x4000>;
204724ba675SRob Herring		interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
205724ba675SRob Herring		clocks = <&cru HCLK_SDIO>, <&cru SCLK_SDIO>,
206724ba675SRob Herring			 <&cru SCLK_SDIO_DRV>, <&cru SCLK_SDIO_SAMPLE>;
207724ba675SRob Herring		clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
208724ba675SRob Herring		dmas = <&pdma 11>;
209724ba675SRob Herring		dma-names = "rx-tx";
210724ba675SRob Herring		fifo-depth = <256>;
211724ba675SRob Herring		max-frequency = <150000000>;
212724ba675SRob Herring		resets = <&cru SRST_SDIO>;
213724ba675SRob Herring		reset-names = "reset";
214724ba675SRob Herring		status = "disabled";
215724ba675SRob Herring	};
216724ba675SRob Herring
217724ba675SRob Herring	emmc: mmc@1021c000 {
218724ba675SRob Herring		compatible = "rockchip,rk3128-dw-mshc", "rockchip,rk3288-dw-mshc";
219724ba675SRob Herring		reg = <0x1021c000 0x4000>;
220724ba675SRob Herring		interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
221724ba675SRob Herring		clocks = <&cru HCLK_EMMC>, <&cru SCLK_EMMC>,
222724ba675SRob Herring			 <&cru SCLK_EMMC_DRV>, <&cru SCLK_EMMC_SAMPLE>;
223724ba675SRob Herring		clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
224724ba675SRob Herring		dmas = <&pdma 12>;
225724ba675SRob Herring		dma-names = "rx-tx";
226724ba675SRob Herring		fifo-depth = <256>;
227724ba675SRob Herring		max-frequency = <150000000>;
228724ba675SRob Herring		resets = <&cru SRST_EMMC>;
229724ba675SRob Herring		reset-names = "reset";
230724ba675SRob Herring		status = "disabled";
231724ba675SRob Herring	};
232724ba675SRob Herring
233724ba675SRob Herring	nfc: nand-controller@10500000 {
234724ba675SRob Herring		compatible = "rockchip,rk3128-nfc", "rockchip,rk2928-nfc";
235724ba675SRob Herring		reg = <0x10500000 0x4000>;
236724ba675SRob Herring		interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>;
237724ba675SRob Herring		clocks = <&cru HCLK_NANDC>, <&cru SCLK_NANDC>;
238724ba675SRob Herring		clock-names = "ahb", "nfc";
239724ba675SRob Herring		pinctrl-names = "default";
240724ba675SRob Herring		pinctrl-0 = <&flash_ale &flash_bus8 &flash_cle &flash_cs0
241724ba675SRob Herring			     &flash_dqs &flash_rdn &flash_rdy &flash_wrn>;
242724ba675SRob Herring		status = "disabled";
243724ba675SRob Herring	};
244724ba675SRob Herring
245724ba675SRob Herring	cru: clock-controller@20000000 {
246724ba675SRob Herring		compatible = "rockchip,rk3128-cru";
247724ba675SRob Herring		reg = <0x20000000 0x1000>;
248724ba675SRob Herring		clocks = <&xin24m>;
249724ba675SRob Herring		clock-names = "xin24m";
250724ba675SRob Herring		rockchip,grf = <&grf>;
251724ba675SRob Herring		#clock-cells = <1>;
252724ba675SRob Herring		#reset-cells = <1>;
253724ba675SRob Herring		assigned-clocks = <&cru PLL_GPLL>;
254724ba675SRob Herring		assigned-clock-rates = <594000000>;
255724ba675SRob Herring	};
256724ba675SRob Herring
257724ba675SRob Herring	grf: syscon@20008000 {
258724ba675SRob Herring		compatible = "rockchip,rk3128-grf", "syscon", "simple-mfd";
259724ba675SRob Herring		reg = <0x20008000 0x1000>;
260724ba675SRob Herring		#address-cells = <1>;
261724ba675SRob Herring		#size-cells = <1>;
262724ba675SRob Herring
263724ba675SRob Herring		usb2phy: usb2phy@17c {
264724ba675SRob Herring			compatible = "rockchip,rk3128-usb2phy";
265724ba675SRob Herring			reg = <0x017c 0x0c>;
266724ba675SRob Herring			clocks = <&cru SCLK_OTGPHY0>;
267724ba675SRob Herring			clock-names = "phyclk";
268724ba675SRob Herring			clock-output-names = "usb480m_phy";
269fd610e60SAlex Bee			assigned-clocks = <&cru SCLK_USB480M>;
270fd610e60SAlex Bee			assigned-clock-parents = <&usb2phy>;
271724ba675SRob Herring			#clock-cells = <0>;
272724ba675SRob Herring			status = "disabled";
273724ba675SRob Herring
274724ba675SRob Herring			usb2phy_host: host-port {
275724ba675SRob Herring				interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
276724ba675SRob Herring				interrupt-names = "linestate";
277724ba675SRob Herring				#phy-cells = <0>;
278724ba675SRob Herring				status = "disabled";
279724ba675SRob Herring			};
280724ba675SRob Herring
281724ba675SRob Herring			usb2phy_otg: otg-port {
282724ba675SRob Herring				interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
283724ba675SRob Herring					     <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>,
284724ba675SRob Herring					     <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
285724ba675SRob Herring				interrupt-names = "otg-bvalid", "otg-id",
286724ba675SRob Herring						  "linestate";
287724ba675SRob Herring				#phy-cells = <0>;
288724ba675SRob Herring				status = "disabled";
289724ba675SRob Herring			};
290724ba675SRob Herring		};
291724ba675SRob Herring	};
292724ba675SRob Herring
293724ba675SRob Herring	timer0: timer@20044000 {
294724ba675SRob Herring		compatible = "rockchip,rk3128-timer", "rockchip,rk3288-timer";
295724ba675SRob Herring		reg = <0x20044000 0x20>;
296724ba675SRob Herring		interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
2972c68d26fSAlex Bee		clocks = <&cru PCLK_TIMER>, <&cru SCLK_TIMER0>;
298724ba675SRob Herring		clock-names = "pclk", "timer";
299724ba675SRob Herring	};
300724ba675SRob Herring
301724ba675SRob Herring	timer1: timer@20044020 {
302724ba675SRob Herring		compatible = "rockchip,rk3128-timer", "rockchip,rk3288-timer";
303724ba675SRob Herring		reg = <0x20044020 0x20>;
304724ba675SRob Herring		interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
3052c68d26fSAlex Bee		clocks = <&cru PCLK_TIMER>, <&cru SCLK_TIMER1>;
306724ba675SRob Herring		clock-names = "pclk", "timer";
307724ba675SRob Herring	};
308724ba675SRob Herring
309724ba675SRob Herring	timer2: timer@20044040 {
310724ba675SRob Herring		compatible = "rockchip,rk3128-timer", "rockchip,rk3288-timer";
311724ba675SRob Herring		reg = <0x20044040 0x20>;
312724ba675SRob Herring		interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
3132c68d26fSAlex Bee		clocks = <&cru PCLK_TIMER>, <&cru SCLK_TIMER2>;
314724ba675SRob Herring		clock-names = "pclk", "timer";
315724ba675SRob Herring	};
316724ba675SRob Herring
317724ba675SRob Herring	timer3: timer@20044060 {
318724ba675SRob Herring		compatible = "rockchip,rk3128-timer", "rockchip,rk3288-timer";
319724ba675SRob Herring		reg = <0x20044060 0x20>;
320724ba675SRob Herring		interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
3212c68d26fSAlex Bee		clocks = <&cru PCLK_TIMER>, <&cru SCLK_TIMER3>;
322724ba675SRob Herring		clock-names = "pclk", "timer";
323724ba675SRob Herring	};
324724ba675SRob Herring
325724ba675SRob Herring	timer4: timer@20044080 {
326724ba675SRob Herring		compatible = "rockchip,rk3128-timer", "rockchip,rk3288-timer";
327724ba675SRob Herring		reg = <0x20044080 0x20>;
328724ba675SRob Herring		interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
3292c68d26fSAlex Bee		clocks = <&cru PCLK_TIMER>, <&cru SCLK_TIMER4>;
330724ba675SRob Herring		clock-names = "pclk", "timer";
331724ba675SRob Herring	};
332724ba675SRob Herring
333724ba675SRob Herring	timer5: timer@200440a0 {
334724ba675SRob Herring		compatible = "rockchip,rk3128-timer", "rockchip,rk3288-timer";
335724ba675SRob Herring		reg = <0x200440a0 0x20>;
336724ba675SRob Herring		interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
3372c68d26fSAlex Bee		clocks = <&cru PCLK_TIMER>, <&cru SCLK_TIMER5>;
338724ba675SRob Herring		clock-names = "pclk", "timer";
339724ba675SRob Herring	};
340724ba675SRob Herring
341724ba675SRob Herring	watchdog: watchdog@2004c000 {
342724ba675SRob Herring		compatible = "rockchip,rk3128-wdt", "snps,dw-wdt";
343724ba675SRob Herring		reg = <0x2004c000 0x100>;
344724ba675SRob Herring		interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
345724ba675SRob Herring		clocks = <&cru PCLK_WDT>;
346724ba675SRob Herring		status = "disabled";
347724ba675SRob Herring	};
348724ba675SRob Herring
349724ba675SRob Herring	pwm0: pwm@20050000 {
350724ba675SRob Herring		compatible = "rockchip,rk3128-pwm", "rockchip,rk3288-pwm";
351724ba675SRob Herring		reg = <0x20050000 0x10>;
352724ba675SRob Herring		clocks = <&cru PCLK_PWM>;
353724ba675SRob Herring		pinctrl-names = "default";
354724ba675SRob Herring		pinctrl-0 = <&pwm0_pin>;
355724ba675SRob Herring		#pwm-cells = <3>;
356724ba675SRob Herring		status = "disabled";
357724ba675SRob Herring	};
358724ba675SRob Herring
359724ba675SRob Herring	pwm1: pwm@20050010 {
360724ba675SRob Herring		compatible = "rockchip,rk3128-pwm", "rockchip,rk3288-pwm";
361724ba675SRob Herring		reg = <0x20050010 0x10>;
362724ba675SRob Herring		clocks = <&cru PCLK_PWM>;
363724ba675SRob Herring		pinctrl-names = "default";
364724ba675SRob Herring		pinctrl-0 = <&pwm1_pin>;
365724ba675SRob Herring		#pwm-cells = <3>;
366724ba675SRob Herring		status = "disabled";
367724ba675SRob Herring	};
368724ba675SRob Herring
369724ba675SRob Herring	pwm2: pwm@20050020 {
370724ba675SRob Herring		compatible = "rockchip,rk3128-pwm", "rockchip,rk3288-pwm";
371724ba675SRob Herring		reg = <0x20050020 0x10>;
372724ba675SRob Herring		clocks = <&cru PCLK_PWM>;
373724ba675SRob Herring		pinctrl-names = "default";
374724ba675SRob Herring		pinctrl-0 = <&pwm2_pin>;
375724ba675SRob Herring		#pwm-cells = <3>;
376724ba675SRob Herring		status = "disabled";
377724ba675SRob Herring	};
378724ba675SRob Herring
379724ba675SRob Herring	pwm3: pwm@20050030 {
380724ba675SRob Herring		compatible = "rockchip,rk3128-pwm", "rockchip,rk3288-pwm";
381724ba675SRob Herring		reg = <0x20050030 0x10>;
382724ba675SRob Herring		clocks = <&cru PCLK_PWM>;
383724ba675SRob Herring		pinctrl-names = "default";
384724ba675SRob Herring		pinctrl-0 = <&pwm3_pin>;
385724ba675SRob Herring		#pwm-cells = <3>;
386724ba675SRob Herring		status = "disabled";
387724ba675SRob Herring	};
388724ba675SRob Herring
389724ba675SRob Herring	i2c1: i2c@20056000 {
390724ba675SRob Herring		compatible = "rockchip,rk3128-i2c", "rockchip,rk3288-i2c";
391724ba675SRob Herring		reg = <0x20056000 0x1000>;
392724ba675SRob Herring		interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
393724ba675SRob Herring		clock-names = "i2c";
394724ba675SRob Herring		clocks = <&cru PCLK_I2C1>;
395724ba675SRob Herring		pinctrl-names = "default";
396724ba675SRob Herring		pinctrl-0 = <&i2c1_xfer>;
397724ba675SRob Herring		#address-cells = <1>;
398724ba675SRob Herring		#size-cells = <0>;
399724ba675SRob Herring		status = "disabled";
400724ba675SRob Herring	};
401724ba675SRob Herring
402724ba675SRob Herring	i2c2: i2c@2005a000 {
403724ba675SRob Herring		compatible = "rockchip,rk3128-i2c", "rockchip,rk3288-i2c";
404724ba675SRob Herring		reg = <0x2005a000 0x1000>;
405724ba675SRob Herring		interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
406724ba675SRob Herring		clock-names = "i2c";
407724ba675SRob Herring		clocks = <&cru PCLK_I2C2>;
408724ba675SRob Herring		pinctrl-names = "default";
409724ba675SRob Herring		pinctrl-0 = <&i2c2_xfer>;
410724ba675SRob Herring		#address-cells = <1>;
411724ba675SRob Herring		#size-cells = <0>;
412724ba675SRob Herring		status = "disabled";
413724ba675SRob Herring	};
414724ba675SRob Herring
415724ba675SRob Herring	i2c3: i2c@2005e000 {
416724ba675SRob Herring		compatible = "rockchip,rk3128-i2c", "rockchip,rk3288-i2c";
417724ba675SRob Herring		reg = <0x2005e000 0x1000>;
418724ba675SRob Herring		interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
419724ba675SRob Herring		clock-names = "i2c";
420724ba675SRob Herring		clocks = <&cru PCLK_I2C3>;
421724ba675SRob Herring		pinctrl-names = "default";
422724ba675SRob Herring		pinctrl-0 = <&i2c3_xfer>;
423724ba675SRob Herring		#address-cells = <1>;
424724ba675SRob Herring		#size-cells = <0>;
425724ba675SRob Herring		status = "disabled";
426724ba675SRob Herring	};
427724ba675SRob Herring
428724ba675SRob Herring	uart0: serial@20060000 {
429724ba675SRob Herring		compatible = "rockchip,rk3128-uart", "snps,dw-apb-uart";
430724ba675SRob Herring		reg = <0x20060000 0x100>;
431724ba675SRob Herring		interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
432724ba675SRob Herring		clock-frequency = <24000000>;
433724ba675SRob Herring		clocks = <&cru SCLK_UART0>, <&cru PCLK_UART0>;
434724ba675SRob Herring		clock-names = "baudclk", "apb_pclk";
435724ba675SRob Herring		dmas = <&pdma 2>, <&pdma 3>;
436724ba675SRob Herring		dma-names = "tx", "rx";
437724ba675SRob Herring		pinctrl-names = "default";
438724ba675SRob Herring		pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
439724ba675SRob Herring		reg-io-width = <4>;
440724ba675SRob Herring		reg-shift = <2>;
441724ba675SRob Herring		status = "disabled";
442724ba675SRob Herring	};
443724ba675SRob Herring
444724ba675SRob Herring	uart1: serial@20064000 {
445724ba675SRob Herring		compatible = "rockchip,rk3128-uart", "snps,dw-apb-uart";
446724ba675SRob Herring		reg = <0x20064000 0x100>;
447724ba675SRob Herring		interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
448724ba675SRob Herring		clock-frequency = <24000000>;
449724ba675SRob Herring		clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>;
450724ba675SRob Herring		clock-names = "baudclk", "apb_pclk";
451724ba675SRob Herring		dmas = <&pdma 4>, <&pdma 5>;
452724ba675SRob Herring		dma-names = "tx", "rx";
453724ba675SRob Herring		pinctrl-names = "default";
454724ba675SRob Herring		pinctrl-0 = <&uart1_xfer>;
455724ba675SRob Herring		reg-io-width = <4>;
456724ba675SRob Herring		reg-shift = <2>;
457724ba675SRob Herring		status = "disabled";
458724ba675SRob Herring	};
459724ba675SRob Herring
460724ba675SRob Herring	uart2: serial@20068000 {
461724ba675SRob Herring		compatible = "rockchip,rk3128-uart", "snps,dw-apb-uart";
462724ba675SRob Herring		reg = <0x20068000 0x100>;
463724ba675SRob Herring		interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
464724ba675SRob Herring		clock-frequency = <24000000>;
465724ba675SRob Herring		clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>;
466724ba675SRob Herring		clock-names = "baudclk", "apb_pclk";
467724ba675SRob Herring		dmas = <&pdma 6>, <&pdma 7>;
468724ba675SRob Herring		dma-names = "tx", "rx";
469724ba675SRob Herring		pinctrl-names = "default";
470724ba675SRob Herring		pinctrl-0 = <&uart2_xfer>;
471724ba675SRob Herring		reg-io-width = <4>;
472724ba675SRob Herring		reg-shift = <2>;
473724ba675SRob Herring		status = "disabled";
474724ba675SRob Herring	};
475724ba675SRob Herring
476724ba675SRob Herring	saradc: saradc@2006c000 {
477724ba675SRob Herring		compatible = "rockchip,saradc";
478724ba675SRob Herring		reg = <0x2006c000 0x100>;
479724ba675SRob Herring		interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
480724ba675SRob Herring		clocks = <&cru SCLK_SARADC>, <&cru PCLK_SARADC>;
481724ba675SRob Herring		clock-names = "saradc", "apb_pclk";
482724ba675SRob Herring		resets = <&cru SRST_SARADC>;
483724ba675SRob Herring		reset-names = "saradc-apb";
484724ba675SRob Herring		#io-channel-cells = <1>;
485724ba675SRob Herring		status = "disabled";
486724ba675SRob Herring	};
487724ba675SRob Herring
488724ba675SRob Herring	i2c0: i2c@20072000 {
489724ba675SRob Herring		compatible = "rockchip,rk3128-i2c", "rockchip,rk3288-i2c";
4902e9cbc41SAlex Bee		reg = <0x20072000 0x1000>;
491724ba675SRob Herring		interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
492724ba675SRob Herring		clock-names = "i2c";
493724ba675SRob Herring		clocks = <&cru PCLK_I2C0>;
494724ba675SRob Herring		pinctrl-names = "default";
495724ba675SRob Herring		pinctrl-0 = <&i2c0_xfer>;
496724ba675SRob Herring		#address-cells = <1>;
497724ba675SRob Herring		#size-cells = <0>;
498724ba675SRob Herring		status = "disabled";
499724ba675SRob Herring	};
500724ba675SRob Herring
501724ba675SRob Herring	spi0: spi@20074000 {
502724ba675SRob Herring		compatible = "rockchip,rk3128-spi", "rockchip,rk3066-spi";
503724ba675SRob Herring		reg = <0x20074000 0x1000>;
504724ba675SRob Herring		interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
505724ba675SRob Herring		clocks = <&cru SCLK_SPI0>, <&cru PCLK_SPI0>;
506724ba675SRob Herring		clock-names = "spiclk", "apb_pclk";
507724ba675SRob Herring		dmas = <&pdma 8>, <&pdma 9>;
508724ba675SRob Herring		dma-names = "tx", "rx";
509724ba675SRob Herring		pinctrl-names = "default";
510724ba675SRob Herring		pinctrl-0 = <&spi0_tx &spi0_rx &spi0_clk &spi0_cs0 &spi0_cs1>;
511724ba675SRob Herring		#address-cells = <1>;
512724ba675SRob Herring		#size-cells = <0>;
513724ba675SRob Herring		status = "disabled";
514724ba675SRob Herring	};
515724ba675SRob Herring
516724ba675SRob Herring	pdma: dma-controller@20078000 {
517724ba675SRob Herring		compatible = "arm,pl330", "arm,primecell";
518724ba675SRob Herring		reg = <0x20078000 0x4000>;
519724ba675SRob Herring		interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
520724ba675SRob Herring			     <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
521724ba675SRob Herring		arm,pl330-broken-no-flushp;
522b0b4e978SAlex Bee		arm,pl330-periph-burst;
523724ba675SRob Herring		clocks = <&cru ACLK_DMAC>;
524724ba675SRob Herring		clock-names = "apb_pclk";
525724ba675SRob Herring		#dma-cells = <1>;
526724ba675SRob Herring	};
527724ba675SRob Herring
528*3d880c31SAlex Bee	gmac: ethernet@2008c000 {
529*3d880c31SAlex Bee		compatible = "rockchip,rk3128-gmac";
530*3d880c31SAlex Bee		reg = <0x2008c000 0x4000>;
531*3d880c31SAlex Bee		interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>,
532*3d880c31SAlex Bee			     <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
533*3d880c31SAlex Bee		interrupt-names = "macirq", "eth_wake_irq";
534*3d880c31SAlex Bee		clocks = <&cru SCLK_MAC>,
535*3d880c31SAlex Bee			 <&cru SCLK_MAC_RX>, <&cru SCLK_MAC_TX>,
536*3d880c31SAlex Bee			 <&cru SCLK_MAC_REF>, <&cru SCLK_MAC_REFOUT>,
537*3d880c31SAlex Bee			 <&cru ACLK_GMAC>, <&cru PCLK_GMAC>;
538*3d880c31SAlex Bee		clock-names = "stmmaceth",
539*3d880c31SAlex Bee			      "mac_clk_rx", "mac_clk_tx",
540*3d880c31SAlex Bee			      "clk_mac_ref", "clk_mac_refout",
541*3d880c31SAlex Bee			      "aclk_mac", "pclk_mac";
542*3d880c31SAlex Bee		resets = <&cru SRST_GMAC>;
543*3d880c31SAlex Bee		reset-names = "stmmaceth";
544*3d880c31SAlex Bee		rockchip,grf = <&grf>;
545*3d880c31SAlex Bee		rx-fifo-depth = <4096>;
546*3d880c31SAlex Bee		tx-fifo-depth = <2048>;
547*3d880c31SAlex Bee		status = "disabled";
548*3d880c31SAlex Bee
549*3d880c31SAlex Bee		mdio: mdio {
550*3d880c31SAlex Bee			compatible = "snps,dwmac-mdio";
551*3d880c31SAlex Bee			#address-cells = <0x1>;
552*3d880c31SAlex Bee			#size-cells = <0x0>;
553*3d880c31SAlex Bee		};
554*3d880c31SAlex Bee	};
555*3d880c31SAlex Bee
556724ba675SRob Herring	pinctrl: pinctrl {
557724ba675SRob Herring		compatible = "rockchip,rk3128-pinctrl";
558724ba675SRob Herring		rockchip,grf = <&grf>;
559724ba675SRob Herring		#address-cells = <1>;
560724ba675SRob Herring		#size-cells = <1>;
561724ba675SRob Herring		ranges;
562724ba675SRob Herring
563724ba675SRob Herring		gpio0: gpio@2007c000 {
564724ba675SRob Herring			compatible = "rockchip,gpio-bank";
565724ba675SRob Herring			reg = <0x2007c000 0x100>;
566724ba675SRob Herring			interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
567724ba675SRob Herring			clocks = <&cru PCLK_GPIO0>;
568724ba675SRob Herring			gpio-controller;
569724ba675SRob Herring			#gpio-cells = <2>;
570724ba675SRob Herring			interrupt-controller;
571724ba675SRob Herring			#interrupt-cells = <2>;
572724ba675SRob Herring		};
573724ba675SRob Herring
574724ba675SRob Herring		gpio1: gpio@20080000 {
575724ba675SRob Herring			compatible = "rockchip,gpio-bank";
576724ba675SRob Herring			reg = <0x20080000 0x100>;
577724ba675SRob Herring			interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
578724ba675SRob Herring			clocks = <&cru PCLK_GPIO1>;
579724ba675SRob Herring			gpio-controller;
580724ba675SRob Herring			#gpio-cells = <2>;
581724ba675SRob Herring			interrupt-controller;
582724ba675SRob Herring			#interrupt-cells = <2>;
583724ba675SRob Herring		};
584724ba675SRob Herring
585724ba675SRob Herring		gpio2: gpio@20084000 {
586724ba675SRob Herring			compatible = "rockchip,gpio-bank";
587724ba675SRob Herring			reg = <0x20084000 0x100>;
588724ba675SRob Herring			interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
589724ba675SRob Herring			clocks = <&cru PCLK_GPIO2>;
590724ba675SRob Herring			gpio-controller;
591724ba675SRob Herring			#gpio-cells = <2>;
592724ba675SRob Herring			interrupt-controller;
593724ba675SRob Herring			#interrupt-cells = <2>;
594724ba675SRob Herring		};
595724ba675SRob Herring
596724ba675SRob Herring		gpio3: gpio@20088000 {
597724ba675SRob Herring			compatible = "rockchip,gpio-bank";
598724ba675SRob Herring			reg = <0x20088000 0x100>;
599724ba675SRob Herring			interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
600724ba675SRob Herring			clocks = <&cru PCLK_GPIO3>;
601724ba675SRob Herring			gpio-controller;
602724ba675SRob Herring			#gpio-cells = <2>;
603724ba675SRob Herring			interrupt-controller;
604724ba675SRob Herring			#interrupt-cells = <2>;
605724ba675SRob Herring		};
606724ba675SRob Herring
607724ba675SRob Herring		pcfg_pull_default: pcfg-pull-default {
608724ba675SRob Herring			bias-pull-pin-default;
609724ba675SRob Herring		};
610724ba675SRob Herring
611724ba675SRob Herring		pcfg_pull_none: pcfg-pull-none {
612724ba675SRob Herring			bias-disable;
613724ba675SRob Herring		};
614724ba675SRob Herring
615724ba675SRob Herring		emmc {
616724ba675SRob Herring			emmc_clk: emmc-clk {
617724ba675SRob Herring				rockchip,pins = <2 RK_PA7 2 &pcfg_pull_none>;
618724ba675SRob Herring			};
619724ba675SRob Herring
620724ba675SRob Herring			emmc_cmd: emmc-cmd {
621724ba675SRob Herring				rockchip,pins = <1 RK_PC6 2 &pcfg_pull_default>;
622724ba675SRob Herring			};
623724ba675SRob Herring
624724ba675SRob Herring			emmc_cmd1: emmc-cmd1 {
625724ba675SRob Herring				rockchip,pins = <2 RK_PA4 2 &pcfg_pull_default>;
626724ba675SRob Herring			};
627724ba675SRob Herring
628724ba675SRob Herring			emmc_pwr: emmc-pwr {
629724ba675SRob Herring				rockchip,pins = <2 RK_PA5 2 &pcfg_pull_default>;
630724ba675SRob Herring			};
631724ba675SRob Herring
632724ba675SRob Herring			emmc_bus1: emmc-bus1 {
633724ba675SRob Herring				rockchip,pins = <1 RK_PD0 2 &pcfg_pull_default>;
634724ba675SRob Herring			};
635724ba675SRob Herring
636724ba675SRob Herring			emmc_bus4: emmc-bus4 {
637724ba675SRob Herring				rockchip,pins = <1 RK_PD0 2 &pcfg_pull_default>,
638724ba675SRob Herring						<1 RK_PD1 2 &pcfg_pull_default>,
639724ba675SRob Herring						<1 RK_PD2 2 &pcfg_pull_default>,
640724ba675SRob Herring						<1 RK_PD3 2 &pcfg_pull_default>;
641724ba675SRob Herring			};
642724ba675SRob Herring
643724ba675SRob Herring			emmc_bus8: emmc-bus8 {
644724ba675SRob Herring				rockchip,pins = <1 RK_PD0 2 &pcfg_pull_default>,
645724ba675SRob Herring						<1 RK_PD1 2 &pcfg_pull_default>,
646724ba675SRob Herring						<1 RK_PD2 2 &pcfg_pull_default>,
647724ba675SRob Herring						<1 RK_PD3 2 &pcfg_pull_default>,
648724ba675SRob Herring						<1 RK_PD4 2 &pcfg_pull_default>,
649724ba675SRob Herring						<1 RK_PD5 2 &pcfg_pull_default>,
650724ba675SRob Herring						<1 RK_PD6 2 &pcfg_pull_default>,
651724ba675SRob Herring						<1 RK_PD7 2 &pcfg_pull_default>;
652724ba675SRob Herring			};
653724ba675SRob Herring		};
654724ba675SRob Herring
655724ba675SRob Herring		gmac {
656724ba675SRob Herring			rgmii_pins: rgmii-pins {
657724ba675SRob Herring				rockchip,pins = <2 RK_PB0 3 &pcfg_pull_default>,
658724ba675SRob Herring						<2 RK_PB1 3 &pcfg_pull_default>,
659724ba675SRob Herring						<2 RK_PB3 3 &pcfg_pull_default>,
660724ba675SRob Herring						<2 RK_PB4 3 &pcfg_pull_default>,
661724ba675SRob Herring						<2 RK_PB5 3 &pcfg_pull_default>,
662724ba675SRob Herring						<2 RK_PB6 3 &pcfg_pull_default>,
663724ba675SRob Herring						<2 RK_PC0 3 &pcfg_pull_default>,
664724ba675SRob Herring						<2 RK_PC1 3 &pcfg_pull_default>,
665724ba675SRob Herring						<2 RK_PC2 3 &pcfg_pull_default>,
666724ba675SRob Herring						<2 RK_PC3 3 &pcfg_pull_default>,
667724ba675SRob Herring						<2 RK_PD1 3 &pcfg_pull_default>,
668724ba675SRob Herring						<2 RK_PC4 4 &pcfg_pull_default>,
669724ba675SRob Herring						<2 RK_PC5 4 &pcfg_pull_default>,
670724ba675SRob Herring						<2 RK_PC6 4 &pcfg_pull_default>,
671724ba675SRob Herring						<2 RK_PC7 4 &pcfg_pull_default>;
672724ba675SRob Herring			};
673724ba675SRob Herring
674724ba675SRob Herring			rmii_pins: rmii-pins {
675724ba675SRob Herring				rockchip,pins = <2 RK_PB0 3 &pcfg_pull_default>,
676724ba675SRob Herring						<2 RK_PB4 3 &pcfg_pull_default>,
677724ba675SRob Herring						<2 RK_PB5 3 &pcfg_pull_default>,
678724ba675SRob Herring						<2 RK_PB6 3 &pcfg_pull_default>,
679724ba675SRob Herring						<2 RK_PB7 3 &pcfg_pull_default>,
680724ba675SRob Herring						<2 RK_PC0 3 &pcfg_pull_default>,
681724ba675SRob Herring						<2 RK_PC1 3 &pcfg_pull_default>,
682724ba675SRob Herring						<2 RK_PC2 3 &pcfg_pull_default>,
683724ba675SRob Herring						<2 RK_PC3 3 &pcfg_pull_default>,
684724ba675SRob Herring						<2 RK_PD1 3 &pcfg_pull_default>;
685724ba675SRob Herring			};
686724ba675SRob Herring		};
687724ba675SRob Herring
688724ba675SRob Herring		hdmi {
689724ba675SRob Herring			hdmii2c_xfer: hdmii2c-xfer {
690724ba675SRob Herring				rockchip,pins = <0 RK_PA6 2 &pcfg_pull_none>,
691724ba675SRob Herring						<0 RK_PA7 2 &pcfg_pull_none>;
692724ba675SRob Herring			};
693724ba675SRob Herring
694724ba675SRob Herring			hdmi_hpd: hdmi-hpd {
695724ba675SRob Herring				rockchip,pins = <0 RK_PB7 1 &pcfg_pull_none>;
696724ba675SRob Herring			};
697724ba675SRob Herring
698724ba675SRob Herring			hdmi_cec: hdmi-cec {
699724ba675SRob Herring				rockchip,pins = <0 RK_PC4 1 &pcfg_pull_none>;
700724ba675SRob Herring			};
701724ba675SRob Herring		};
702724ba675SRob Herring
703724ba675SRob Herring		i2c0 {
704724ba675SRob Herring			i2c0_xfer: i2c0-xfer {
705724ba675SRob Herring				rockchip,pins = <0 RK_PA0 1 &pcfg_pull_none>,
706724ba675SRob Herring						<0 RK_PA1 1 &pcfg_pull_none>;
707724ba675SRob Herring			};
708724ba675SRob Herring		};
709724ba675SRob Herring
710724ba675SRob Herring		i2c1 {
711724ba675SRob Herring			i2c1_xfer: i2c1-xfer {
712724ba675SRob Herring				rockchip,pins = <0 RK_PA2 1 &pcfg_pull_none>,
713724ba675SRob Herring						<0 RK_PA3 1 &pcfg_pull_none>;
714724ba675SRob Herring			};
715724ba675SRob Herring		};
716724ba675SRob Herring
717724ba675SRob Herring		i2c2 {
718724ba675SRob Herring			i2c2_xfer: i2c2-xfer {
719724ba675SRob Herring				rockchip,pins = <2 RK_PC4 3 &pcfg_pull_none>,
720724ba675SRob Herring						<2 RK_PC5 3 &pcfg_pull_none>;
721724ba675SRob Herring			};
722724ba675SRob Herring		};
723724ba675SRob Herring
724724ba675SRob Herring		i2c3 {
725724ba675SRob Herring			i2c3_xfer: i2c3-xfer {
726724ba675SRob Herring				rockchip,pins = <0 RK_PA6 1 &pcfg_pull_none>,
727724ba675SRob Herring						<0 RK_PA7 1 &pcfg_pull_none>;
728724ba675SRob Herring			};
729724ba675SRob Herring		};
730724ba675SRob Herring
731724ba675SRob Herring		i2s {
732724ba675SRob Herring			i2s_bus: i2s-bus {
733724ba675SRob Herring				rockchip,pins = <0 RK_PB0 1 &pcfg_pull_none>,
734724ba675SRob Herring						<0 RK_PB1 1 &pcfg_pull_none>,
735724ba675SRob Herring						<0 RK_PB3 1 &pcfg_pull_none>,
736724ba675SRob Herring						<0 RK_PB4 1 &pcfg_pull_none>,
737724ba675SRob Herring						<0 RK_PB5 1 &pcfg_pull_none>,
738724ba675SRob Herring						<0 RK_PB6 1 &pcfg_pull_none>;
739724ba675SRob Herring			};
740724ba675SRob Herring
741724ba675SRob Herring			i2s1_bus: i2s1-bus {
742724ba675SRob Herring				rockchip,pins = <1 RK_PA0 1 &pcfg_pull_none>,
743724ba675SRob Herring						<1 RK_PA1 1 &pcfg_pull_none>,
744724ba675SRob Herring						<1 RK_PA2 1 &pcfg_pull_none>,
745724ba675SRob Herring						<1 RK_PA3 1 &pcfg_pull_none>,
746724ba675SRob Herring						<1 RK_PA4 1 &pcfg_pull_none>,
747724ba675SRob Herring						<1 RK_PA5 1 &pcfg_pull_none>;
748724ba675SRob Herring			};
749724ba675SRob Herring		};
750724ba675SRob Herring
751724ba675SRob Herring		lcdc {
752724ba675SRob Herring			lcdc_dclk: lcdc-dclk {
753724ba675SRob Herring				rockchip,pins = <2 RK_PB0 1 &pcfg_pull_none>;
754724ba675SRob Herring			};
755724ba675SRob Herring
756724ba675SRob Herring			lcdc_den: lcdc-den {
757724ba675SRob Herring				rockchip,pins = <2 RK_PB3 1 &pcfg_pull_none>;
758724ba675SRob Herring			};
759724ba675SRob Herring
760724ba675SRob Herring			lcdc_hsync: lcdc-hsync {
761724ba675SRob Herring				rockchip,pins = <2 RK_PB1 1 &pcfg_pull_none>;
762724ba675SRob Herring			};
763724ba675SRob Herring
764724ba675SRob Herring			lcdc_vsync: lcdc-vsync {
765724ba675SRob Herring				rockchip,pins = <2 RK_PB2 1 &pcfg_pull_none>;
766724ba675SRob Herring			};
767724ba675SRob Herring
768724ba675SRob Herring			lcdc_rgb24: lcdc-rgb24 {
769724ba675SRob Herring				rockchip,pins = <2 RK_PB4 1 &pcfg_pull_none>,
770724ba675SRob Herring						<2 RK_PB5 1 &pcfg_pull_none>,
771724ba675SRob Herring						<2 RK_PB6 1 &pcfg_pull_none>,
772724ba675SRob Herring						<2 RK_PB7 1 &pcfg_pull_none>,
773724ba675SRob Herring						<2 RK_PC0 1 &pcfg_pull_none>,
774724ba675SRob Herring						<2 RK_PC1 1 &pcfg_pull_none>,
775724ba675SRob Herring						<2 RK_PC2 1 &pcfg_pull_none>,
776724ba675SRob Herring						<2 RK_PC3 1 &pcfg_pull_none>,
777724ba675SRob Herring						<2 RK_PC4 1 &pcfg_pull_none>,
778724ba675SRob Herring						<2 RK_PC5 1 &pcfg_pull_none>,
779724ba675SRob Herring						<2 RK_PC6 1 &pcfg_pull_none>,
780724ba675SRob Herring						<2 RK_PC7 1 &pcfg_pull_none>,
781724ba675SRob Herring						<2 RK_PD0 1 &pcfg_pull_none>,
782724ba675SRob Herring						<2 RK_PD1 1 &pcfg_pull_none>;
783724ba675SRob Herring			};
784724ba675SRob Herring		};
785724ba675SRob Herring
786724ba675SRob Herring		nfc {
787724ba675SRob Herring			flash_ale: flash-ale {
788724ba675SRob Herring				rockchip,pins = <2 RK_PA0 1 &pcfg_pull_none>;
789724ba675SRob Herring			};
790724ba675SRob Herring
791724ba675SRob Herring			flash_cle: flash-cle {
792724ba675SRob Herring				rockchip,pins = <2 RK_PA1 1 &pcfg_pull_none>;
793724ba675SRob Herring			};
794724ba675SRob Herring
795724ba675SRob Herring			flash_wrn: flash-wrn {
796724ba675SRob Herring				rockchip,pins = <2 RK_PA2 1 &pcfg_pull_none>;
797724ba675SRob Herring			};
798724ba675SRob Herring
799724ba675SRob Herring			flash_rdn: flash-rdn {
800724ba675SRob Herring				rockchip,pins = <2 RK_PA3 1 &pcfg_pull_none>;
801724ba675SRob Herring			};
802724ba675SRob Herring
803724ba675SRob Herring			flash_rdy: flash-rdy {
804724ba675SRob Herring				rockchip,pins = <2 RK_PA4 1 &pcfg_pull_none>;
805724ba675SRob Herring			};
806724ba675SRob Herring
807724ba675SRob Herring			flash_cs0: flash-cs0 {
808724ba675SRob Herring				rockchip,pins = <2 RK_PA6 1 &pcfg_pull_none>;
809724ba675SRob Herring			};
810724ba675SRob Herring
811724ba675SRob Herring			flash_dqs: flash-dqs {
812724ba675SRob Herring				rockchip,pins = <2 RK_PA7 1 &pcfg_pull_none>;
813724ba675SRob Herring			};
814724ba675SRob Herring
815724ba675SRob Herring			flash_bus8: flash-bus8 {
816724ba675SRob Herring				rockchip,pins = <1 RK_PD0 1 &pcfg_pull_none>,
817724ba675SRob Herring						<1 RK_PD1 1 &pcfg_pull_none>,
818724ba675SRob Herring						<1 RK_PD2 1 &pcfg_pull_none>,
819724ba675SRob Herring						<1 RK_PD3 1 &pcfg_pull_none>,
820724ba675SRob Herring						<1 RK_PD4 1 &pcfg_pull_none>,
821724ba675SRob Herring						<1 RK_PD5 1 &pcfg_pull_none>,
822724ba675SRob Herring						<1 RK_PD6 1 &pcfg_pull_none>,
823724ba675SRob Herring						<1 RK_PD7 1 &pcfg_pull_none>;
824724ba675SRob Herring			};
825724ba675SRob Herring		};
826724ba675SRob Herring
827724ba675SRob Herring		pwm0 {
828724ba675SRob Herring			pwm0_pin: pwm0-pin {
829724ba675SRob Herring				rockchip,pins = <0 RK_PD2 1 &pcfg_pull_none>;
830724ba675SRob Herring			};
831724ba675SRob Herring		};
832724ba675SRob Herring
833724ba675SRob Herring		pwm1 {
834724ba675SRob Herring			pwm1_pin: pwm1-pin {
835724ba675SRob Herring				rockchip,pins = <0 RK_PD3 1 &pcfg_pull_none>;
836724ba675SRob Herring			};
837724ba675SRob Herring		};
838724ba675SRob Herring
839724ba675SRob Herring		pwm2 {
840724ba675SRob Herring			pwm2_pin: pwm2-pin {
841724ba675SRob Herring				rockchip,pins = <0 RK_PD4 1 &pcfg_pull_none>;
842724ba675SRob Herring			};
843724ba675SRob Herring		};
844724ba675SRob Herring
845724ba675SRob Herring		pwm3 {
846724ba675SRob Herring			pwm3_pin: pwm3-pin {
847724ba675SRob Herring				rockchip,pins = <3 RK_PD2 1 &pcfg_pull_none>;
848724ba675SRob Herring			};
849724ba675SRob Herring		};
850724ba675SRob Herring
851724ba675SRob Herring		sdio {
852724ba675SRob Herring			sdio_clk: sdio-clk {
853724ba675SRob Herring				rockchip,pins = <1 RK_PA0 2 &pcfg_pull_none>;
854724ba675SRob Herring			};
855724ba675SRob Herring
856724ba675SRob Herring			sdio_cmd: sdio-cmd {
857724ba675SRob Herring				rockchip,pins = <0 RK_PA3 2 &pcfg_pull_default>;
858724ba675SRob Herring			};
859724ba675SRob Herring
860724ba675SRob Herring			sdio_pwren: sdio-pwren {
861724ba675SRob Herring				rockchip,pins = <0 RK_PD6 1 &pcfg_pull_default>;
862724ba675SRob Herring			};
863724ba675SRob Herring
864724ba675SRob Herring			sdio_bus4: sdio-bus4 {
865724ba675SRob Herring				rockchip,pins = <1 RK_PA1 2 &pcfg_pull_default>,
866724ba675SRob Herring						<1 RK_PA2 2 &pcfg_pull_default>,
867724ba675SRob Herring						<1 RK_PA4 2 &pcfg_pull_default>,
868724ba675SRob Herring						<1 RK_PA5 2 &pcfg_pull_default>;
869724ba675SRob Herring			};
870724ba675SRob Herring		};
871724ba675SRob Herring
872724ba675SRob Herring		sdmmc {
873724ba675SRob Herring			sdmmc_clk: sdmmc-clk {
874724ba675SRob Herring				rockchip,pins = <1 RK_PC0 1 &pcfg_pull_none>;
875724ba675SRob Herring			};
876724ba675SRob Herring
877724ba675SRob Herring			sdmmc_cmd: sdmmc-cmd {
878724ba675SRob Herring				rockchip,pins = <1 RK_PB7 1 &pcfg_pull_default>;
879724ba675SRob Herring			};
880724ba675SRob Herring
881cdc86eeeSAlex Bee			sdmmc_det: sdmmc-det {
882cdc86eeeSAlex Bee				rockchip,pins = <1 RK_PC1 1 &pcfg_pull_default>;
883cdc86eeeSAlex Bee			};
884cdc86eeeSAlex Bee
885724ba675SRob Herring			sdmmc_wp: sdmmc-wp {
886724ba675SRob Herring				rockchip,pins = <1 RK_PA7 1 &pcfg_pull_default>;
887724ba675SRob Herring			};
888724ba675SRob Herring
889724ba675SRob Herring			sdmmc_pwren: sdmmc-pwren {
890724ba675SRob Herring				rockchip,pins = <1 RK_PB6 1 &pcfg_pull_default>;
891724ba675SRob Herring			};
892724ba675SRob Herring
893724ba675SRob Herring			sdmmc_bus4: sdmmc-bus4 {
894724ba675SRob Herring				rockchip,pins = <1 RK_PC2 1 &pcfg_pull_default>,
895724ba675SRob Herring						<1 RK_PC3 1 &pcfg_pull_default>,
896724ba675SRob Herring						<1 RK_PC4 1 &pcfg_pull_default>,
897724ba675SRob Herring						<1 RK_PC5 1 &pcfg_pull_default>;
898724ba675SRob Herring			};
899724ba675SRob Herring		};
900724ba675SRob Herring
901724ba675SRob Herring		spdif {
902724ba675SRob Herring			spdif_tx: spdif-tx {
903724ba675SRob Herring				rockchip,pins = <3 RK_PD3 1 &pcfg_pull_none>;
904724ba675SRob Herring			};
905724ba675SRob Herring		};
906724ba675SRob Herring
907724ba675SRob Herring		spi0 {
908724ba675SRob Herring			spi0_clk: spi0-clk {
909724ba675SRob Herring				rockchip,pins = <1 RK_PB0 1 &pcfg_pull_default>;
910724ba675SRob Herring			};
911724ba675SRob Herring
912724ba675SRob Herring			spi0_cs0: spi0-cs0 {
913724ba675SRob Herring				rockchip,pins = <1 RK_PB3 1 &pcfg_pull_default>;
914724ba675SRob Herring			};
915724ba675SRob Herring
916724ba675SRob Herring			spi0_tx: spi0-tx {
917724ba675SRob Herring				rockchip,pins = <1 RK_PB1 1 &pcfg_pull_default>;
918724ba675SRob Herring			};
919724ba675SRob Herring
920724ba675SRob Herring			spi0_rx: spi0-rx {
921724ba675SRob Herring				rockchip,pins = <1 RK_PB2 1 &pcfg_pull_default>;
922724ba675SRob Herring			};
923724ba675SRob Herring
924724ba675SRob Herring			spi0_cs1: spi0-cs1 {
925724ba675SRob Herring				rockchip,pins = <1 RK_PB4 1 &pcfg_pull_default>;
926724ba675SRob Herring			};
927724ba675SRob Herring
928724ba675SRob Herring			spi1_clk: spi1-clk {
929724ba675SRob Herring				rockchip,pins = <2 RK_PA0 2 &pcfg_pull_default>;
930724ba675SRob Herring			};
931724ba675SRob Herring
932724ba675SRob Herring			spi1_cs0: spi1-cs0 {
933724ba675SRob Herring				rockchip,pins = <1 RK_PD6 3 &pcfg_pull_default>;
934724ba675SRob Herring			};
935724ba675SRob Herring
936724ba675SRob Herring			spi1_tx: spi1-tx {
937724ba675SRob Herring				rockchip,pins = <1 RK_PD5 3 &pcfg_pull_default>;
938724ba675SRob Herring			};
939724ba675SRob Herring
940724ba675SRob Herring			spi1_rx: spi1-rx {
941724ba675SRob Herring				rockchip,pins = <1 RK_PD4 3 &pcfg_pull_default>;
942724ba675SRob Herring			};
943724ba675SRob Herring
944724ba675SRob Herring			spi1_cs1: spi1-cs1 {
945724ba675SRob Herring				rockchip,pins = <1 RK_PD7 3 &pcfg_pull_default>;
946724ba675SRob Herring			};
947724ba675SRob Herring
948724ba675SRob Herring			spi2_clk: spi2-clk {
949724ba675SRob Herring				rockchip,pins = <0 RK_PB1 2 &pcfg_pull_default>;
950724ba675SRob Herring			};
951724ba675SRob Herring
952724ba675SRob Herring			spi2_cs0: spi2-cs0 {
953724ba675SRob Herring				rockchip,pins = <0 RK_PB6 2 &pcfg_pull_default>;
954724ba675SRob Herring			};
955724ba675SRob Herring
956724ba675SRob Herring			spi2_tx: spi2-tx {
957724ba675SRob Herring				rockchip,pins = <0 RK_PB3 2 &pcfg_pull_default>;
958724ba675SRob Herring			};
959724ba675SRob Herring
960724ba675SRob Herring			spi2_rx: spi2-rx {
961724ba675SRob Herring				rockchip,pins = <0 RK_PB5 2 &pcfg_pull_default>;
962724ba675SRob Herring			};
963724ba675SRob Herring		};
964724ba675SRob Herring
965724ba675SRob Herring		uart0 {
966724ba675SRob Herring			uart0_xfer: uart0-xfer {
967724ba675SRob Herring				rockchip,pins = <2 RK_PD2 2 &pcfg_pull_default>,
968724ba675SRob Herring						<2 RK_PD3 2 &pcfg_pull_none>;
969724ba675SRob Herring			};
970724ba675SRob Herring
971724ba675SRob Herring			uart0_cts: uart0-cts {
972724ba675SRob Herring				rockchip,pins = <2 RK_PD5 2 &pcfg_pull_none>;
973724ba675SRob Herring			};
974724ba675SRob Herring
975724ba675SRob Herring			uart0_rts: uart0-rts {
976724ba675SRob Herring				rockchip,pins = <0 RK_PC1 2 &pcfg_pull_none>;
977724ba675SRob Herring			};
978724ba675SRob Herring		};
979724ba675SRob Herring
980724ba675SRob Herring		uart1 {
981724ba675SRob Herring			uart1_xfer: uart1-xfer {
982724ba675SRob Herring				rockchip,pins = <1 RK_PB1 2 &pcfg_pull_default>,
983724ba675SRob Herring						<1 RK_PB2 2 &pcfg_pull_default>;
984724ba675SRob Herring			};
985724ba675SRob Herring
986724ba675SRob Herring			uart1_cts: uart1-cts {
987724ba675SRob Herring				rockchip,pins = <1 RK_PB0 2 &pcfg_pull_none>;
988724ba675SRob Herring			};
989724ba675SRob Herring
990724ba675SRob Herring			uart1_rts: uart1-rts {
991724ba675SRob Herring				rockchip,pins = <1 RK_PB3 2 &pcfg_pull_none>;
992724ba675SRob Herring			};
993724ba675SRob Herring		};
994724ba675SRob Herring
995724ba675SRob Herring		uart2 {
996724ba675SRob Herring			uart2_xfer: uart2-xfer {
997724ba675SRob Herring				rockchip,pins = <1 RK_PC2 2 &pcfg_pull_default>,
998724ba675SRob Herring						<1 RK_PC3 2 &pcfg_pull_none>;
999724ba675SRob Herring			};
1000724ba675SRob Herring
1001724ba675SRob Herring			uart2_cts: uart2-cts {
1002724ba675SRob Herring				rockchip,pins = <0 RK_PD1 1 &pcfg_pull_none>;
1003724ba675SRob Herring			};
1004724ba675SRob Herring
1005724ba675SRob Herring			uart2_rts: uart2-rts {
1006724ba675SRob Herring				rockchip,pins = <0 RK_PD0 1 &pcfg_pull_none>;
1007724ba675SRob Herring			};
1008724ba675SRob Herring		};
1009724ba675SRob Herring	};
1010724ba675SRob Herring};
1011