xref: /freebsd/sys/contrib/device-tree/src/arm/rockchip/rk3xxx.dtsi (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1f126890aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2f126890aSEmmanuel Vadot/*
3f126890aSEmmanuel Vadot * Copyright (c) 2013 MundoReader S.L.
4f126890aSEmmanuel Vadot * Author: Heiko Stuebner <heiko@sntech.de>
5f126890aSEmmanuel Vadot */
6f126890aSEmmanuel Vadot
7f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h>
8f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h>
9f126890aSEmmanuel Vadot#include <dt-bindings/soc/rockchip,boot-mode.h>
10f126890aSEmmanuel Vadot
11f126890aSEmmanuel Vadot/ {
12f126890aSEmmanuel Vadot	#address-cells = <1>;
13f126890aSEmmanuel Vadot	#size-cells = <1>;
14f126890aSEmmanuel Vadot
15f126890aSEmmanuel Vadot	interrupt-parent = <&gic>;
16f126890aSEmmanuel Vadot
17f126890aSEmmanuel Vadot	aliases {
18f126890aSEmmanuel Vadot		ethernet0 = &emac;
198d13bc63SEmmanuel Vadot		gpio0 = &gpio0;
208d13bc63SEmmanuel Vadot		gpio1 = &gpio1;
218d13bc63SEmmanuel Vadot		gpio2 = &gpio2;
228d13bc63SEmmanuel Vadot		gpio3 = &gpio3;
23f126890aSEmmanuel Vadot		i2c0 = &i2c0;
24f126890aSEmmanuel Vadot		i2c1 = &i2c1;
25f126890aSEmmanuel Vadot		i2c2 = &i2c2;
26f126890aSEmmanuel Vadot		i2c3 = &i2c3;
27f126890aSEmmanuel Vadot		i2c4 = &i2c4;
28f126890aSEmmanuel Vadot		serial0 = &uart0;
29f126890aSEmmanuel Vadot		serial1 = &uart1;
30f126890aSEmmanuel Vadot		serial2 = &uart2;
31f126890aSEmmanuel Vadot		serial3 = &uart3;
32f126890aSEmmanuel Vadot		spi0 = &spi0;
33f126890aSEmmanuel Vadot		spi1 = &spi1;
34f126890aSEmmanuel Vadot	};
35f126890aSEmmanuel Vadot
36f126890aSEmmanuel Vadot	xin24m: oscillator {
37f126890aSEmmanuel Vadot		compatible = "fixed-clock";
38f126890aSEmmanuel Vadot		clock-frequency = <24000000>;
39f126890aSEmmanuel Vadot		#clock-cells = <0>;
40f126890aSEmmanuel Vadot		clock-output-names = "xin24m";
41f126890aSEmmanuel Vadot	};
42f126890aSEmmanuel Vadot
43f126890aSEmmanuel Vadot	gpu: gpu@10090000 {
44f126890aSEmmanuel Vadot		compatible = "arm,mali-400";
45f126890aSEmmanuel Vadot		reg = <0x10090000 0x10000>;
46f126890aSEmmanuel Vadot		clocks = <&cru ACLK_GPU>, <&cru ACLK_GPU>;
47f126890aSEmmanuel Vadot		clock-names = "bus", "core";
48f126890aSEmmanuel Vadot		assigned-clocks = <&cru ACLK_GPU>;
49f126890aSEmmanuel Vadot		assigned-clock-rates = <100000000>;
50f126890aSEmmanuel Vadot		resets = <&cru SRST_GPU>;
51f126890aSEmmanuel Vadot		status = "disabled";
52f126890aSEmmanuel Vadot	};
53f126890aSEmmanuel Vadot
54f126890aSEmmanuel Vadot	vpu: video-codec@10104000 {
55f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-vpu";
56f126890aSEmmanuel Vadot		reg = <0x10104000 0x800>;
57f126890aSEmmanuel Vadot		interrupts = <GIC_SPI  9 IRQ_TYPE_LEVEL_HIGH>,
58f126890aSEmmanuel Vadot			     <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
59f126890aSEmmanuel Vadot		interrupt-names = "vepu", "vdpu";
60f126890aSEmmanuel Vadot		clocks = <&cru ACLK_VDPU>, <&cru HCLK_VDPU>,
61f126890aSEmmanuel Vadot			 <&cru ACLK_VEPU>, <&cru HCLK_VEPU>;
62f126890aSEmmanuel Vadot		clock-names = "aclk_vdpu", "hclk_vdpu",
63f126890aSEmmanuel Vadot			      "aclk_vepu", "hclk_vepu";
64f126890aSEmmanuel Vadot	};
65f126890aSEmmanuel Vadot
66f126890aSEmmanuel Vadot	L2: cache-controller@10138000 {
67f126890aSEmmanuel Vadot		compatible = "arm,pl310-cache";
68f126890aSEmmanuel Vadot		reg = <0x10138000 0x1000>;
69f126890aSEmmanuel Vadot		cache-unified;
70f126890aSEmmanuel Vadot		cache-level = <2>;
71f126890aSEmmanuel Vadot	};
72f126890aSEmmanuel Vadot
73f126890aSEmmanuel Vadot	scu@1013c000 {
74f126890aSEmmanuel Vadot		compatible = "arm,cortex-a9-scu";
75f126890aSEmmanuel Vadot		reg = <0x1013c000 0x100>;
76f126890aSEmmanuel Vadot	};
77f126890aSEmmanuel Vadot
78f126890aSEmmanuel Vadot	global_timer: global-timer@1013c200 {
79f126890aSEmmanuel Vadot		compatible = "arm,cortex-a9-global-timer";
80f126890aSEmmanuel Vadot		reg = <0x1013c200 0x20>;
81f126890aSEmmanuel Vadot		interrupts = <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>;
82f126890aSEmmanuel Vadot		clocks = <&cru CORE_PERI>;
83f126890aSEmmanuel Vadot		status = "disabled";
84f126890aSEmmanuel Vadot		/* The clock source and the sched_clock provided by the arm_global_timer
85f126890aSEmmanuel Vadot		 * on Rockchip rk3066a/rk3188 are quite unstable because their rates
86f126890aSEmmanuel Vadot		 * depend on the CPU frequency.
87f126890aSEmmanuel Vadot		 * Keep the arm_global_timer disabled in order to have the
88f126890aSEmmanuel Vadot		 * DW_APB_TIMER (rk3066a) or ROCKCHIP_TIMER (rk3188) selected by default.
89f126890aSEmmanuel Vadot		 */
90f126890aSEmmanuel Vadot	};
91f126890aSEmmanuel Vadot
92f126890aSEmmanuel Vadot	local_timer: local-timer@1013c600 {
93f126890aSEmmanuel Vadot		compatible = "arm,cortex-a9-twd-timer";
94f126890aSEmmanuel Vadot		reg = <0x1013c600 0x20>;
95f126890aSEmmanuel Vadot		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>;
96f126890aSEmmanuel Vadot		clocks = <&cru CORE_PERI>;
97f126890aSEmmanuel Vadot	};
98f126890aSEmmanuel Vadot
99f126890aSEmmanuel Vadot	gic: interrupt-controller@1013d000 {
100f126890aSEmmanuel Vadot		compatible = "arm,cortex-a9-gic";
101f126890aSEmmanuel Vadot		interrupt-controller;
102f126890aSEmmanuel Vadot		#interrupt-cells = <3>;
103f126890aSEmmanuel Vadot		reg = <0x1013d000 0x1000>,
104f126890aSEmmanuel Vadot		      <0x1013c100 0x0100>;
105f126890aSEmmanuel Vadot	};
106f126890aSEmmanuel Vadot
107f126890aSEmmanuel Vadot	uart0: serial@10124000 {
108f126890aSEmmanuel Vadot		compatible = "snps,dw-apb-uart";
109f126890aSEmmanuel Vadot		reg = <0x10124000 0x400>;
110f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
111f126890aSEmmanuel Vadot		reg-shift = <2>;
112f126890aSEmmanuel Vadot		reg-io-width = <1>;
113f126890aSEmmanuel Vadot		clock-names = "baudclk", "apb_pclk";
114f126890aSEmmanuel Vadot		clocks = <&cru SCLK_UART0>, <&cru PCLK_UART0>;
115f126890aSEmmanuel Vadot		status = "disabled";
116f126890aSEmmanuel Vadot	};
117f126890aSEmmanuel Vadot
118f126890aSEmmanuel Vadot	uart1: serial@10126000 {
119f126890aSEmmanuel Vadot		compatible = "snps,dw-apb-uart";
120f126890aSEmmanuel Vadot		reg = <0x10126000 0x400>;
121f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
122f126890aSEmmanuel Vadot		reg-shift = <2>;
123f126890aSEmmanuel Vadot		reg-io-width = <1>;
124f126890aSEmmanuel Vadot		clock-names = "baudclk", "apb_pclk";
125f126890aSEmmanuel Vadot		clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>;
126f126890aSEmmanuel Vadot		status = "disabled";
127f126890aSEmmanuel Vadot	};
128f126890aSEmmanuel Vadot
129f126890aSEmmanuel Vadot	qos_gpu: qos@1012d000 {
130f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-qos", "syscon";
131f126890aSEmmanuel Vadot		reg = <0x1012d000 0x20>;
132f126890aSEmmanuel Vadot	};
133f126890aSEmmanuel Vadot
134f126890aSEmmanuel Vadot	qos_vpu: qos@1012e000 {
135f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-qos", "syscon";
136f126890aSEmmanuel Vadot		reg = <0x1012e000 0x20>;
137f126890aSEmmanuel Vadot	};
138f126890aSEmmanuel Vadot
139f126890aSEmmanuel Vadot	qos_lcdc0: qos@1012f000 {
140f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-qos", "syscon";
141f126890aSEmmanuel Vadot		reg = <0x1012f000 0x20>;
142f126890aSEmmanuel Vadot	};
143f126890aSEmmanuel Vadot
144f126890aSEmmanuel Vadot	qos_cif0: qos@1012f080 {
145f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-qos", "syscon";
146f126890aSEmmanuel Vadot		reg = <0x1012f080 0x20>;
147f126890aSEmmanuel Vadot	};
148f126890aSEmmanuel Vadot
149f126890aSEmmanuel Vadot	qos_ipp: qos@1012f100 {
150f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-qos", "syscon";
151f126890aSEmmanuel Vadot		reg = <0x1012f100 0x20>;
152f126890aSEmmanuel Vadot	};
153f126890aSEmmanuel Vadot
154f126890aSEmmanuel Vadot	qos_lcdc1: qos@1012f180 {
155f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-qos", "syscon";
156f126890aSEmmanuel Vadot		reg = <0x1012f180 0x20>;
157f126890aSEmmanuel Vadot	};
158f126890aSEmmanuel Vadot
159f126890aSEmmanuel Vadot	qos_cif1: qos@1012f200 {
160f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-qos", "syscon";
161f126890aSEmmanuel Vadot		reg = <0x1012f200 0x20>;
162f126890aSEmmanuel Vadot	};
163f126890aSEmmanuel Vadot
164f126890aSEmmanuel Vadot	qos_rga: qos@1012f280 {
165f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-qos", "syscon";
166f126890aSEmmanuel Vadot		reg = <0x1012f280 0x20>;
167f126890aSEmmanuel Vadot	};
168f126890aSEmmanuel Vadot
169f126890aSEmmanuel Vadot	usb_otg: usb@10180000 {
170f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-usb", "snps,dwc2";
171f126890aSEmmanuel Vadot		reg = <0x10180000 0x40000>;
172f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
173f126890aSEmmanuel Vadot		clocks = <&cru HCLK_OTG0>;
174f126890aSEmmanuel Vadot		clock-names = "otg";
175f126890aSEmmanuel Vadot		dr_mode = "otg";
176f126890aSEmmanuel Vadot		g-np-tx-fifo-size = <16>;
177f126890aSEmmanuel Vadot		g-rx-fifo-size = <275>;
178f126890aSEmmanuel Vadot		g-tx-fifo-size = <256 128 128 64 64 32>;
179f126890aSEmmanuel Vadot		phys = <&usbphy0>;
180f126890aSEmmanuel Vadot		phy-names = "usb2-phy";
181f126890aSEmmanuel Vadot		status = "disabled";
182f126890aSEmmanuel Vadot	};
183f126890aSEmmanuel Vadot
184f126890aSEmmanuel Vadot	usb_host: usb@101c0000 {
185f126890aSEmmanuel Vadot		compatible = "snps,dwc2";
186f126890aSEmmanuel Vadot		reg = <0x101c0000 0x40000>;
187f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
188f126890aSEmmanuel Vadot		clocks = <&cru HCLK_OTG1>;
189f126890aSEmmanuel Vadot		clock-names = "otg";
190f126890aSEmmanuel Vadot		dr_mode = "host";
191f126890aSEmmanuel Vadot		phys = <&usbphy1>;
192f126890aSEmmanuel Vadot		phy-names = "usb2-phy";
193f126890aSEmmanuel Vadot		status = "disabled";
194f126890aSEmmanuel Vadot	};
195f126890aSEmmanuel Vadot
196f126890aSEmmanuel Vadot	emac: ethernet@10204000 {
197*0e8011faSEmmanuel Vadot		compatible = "rockchip,rk3066-emac";
198f126890aSEmmanuel Vadot		reg = <0x10204000 0x3c>;
199f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
200f126890aSEmmanuel Vadot		clocks = <&cru HCLK_EMAC>, <&cru SCLK_MAC>;
201f126890aSEmmanuel Vadot		clock-names = "hclk", "macref";
202f126890aSEmmanuel Vadot		max-speed = <100>;
203f126890aSEmmanuel Vadot		phy-mode = "rmii";
204*0e8011faSEmmanuel Vadot		rockchip,grf = <&grf>;
205f126890aSEmmanuel Vadot		status = "disabled";
206f126890aSEmmanuel Vadot	};
207f126890aSEmmanuel Vadot
208f126890aSEmmanuel Vadot	mmc0: mmc@10214000 {
209f126890aSEmmanuel Vadot		compatible = "rockchip,rk2928-dw-mshc";
210f126890aSEmmanuel Vadot		reg = <0x10214000 0x1000>;
211f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
212f126890aSEmmanuel Vadot		clocks = <&cru HCLK_SDMMC>, <&cru SCLK_SDMMC>;
213f126890aSEmmanuel Vadot		clock-names = "biu", "ciu";
214f126890aSEmmanuel Vadot		dmas = <&dmac2 1>;
215f126890aSEmmanuel Vadot		dma-names = "rx-tx";
216f126890aSEmmanuel Vadot		fifo-depth = <256>;
217f126890aSEmmanuel Vadot		resets = <&cru SRST_SDMMC>;
218f126890aSEmmanuel Vadot		reset-names = "reset";
219f126890aSEmmanuel Vadot		status = "disabled";
220f126890aSEmmanuel Vadot	};
221f126890aSEmmanuel Vadot
222f126890aSEmmanuel Vadot	mmc1: mmc@10218000 {
223f126890aSEmmanuel Vadot		compatible = "rockchip,rk2928-dw-mshc";
224f126890aSEmmanuel Vadot		reg = <0x10218000 0x1000>;
225f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
226f126890aSEmmanuel Vadot		clocks = <&cru HCLK_SDIO>, <&cru SCLK_SDIO>;
227f126890aSEmmanuel Vadot		clock-names = "biu", "ciu";
228f126890aSEmmanuel Vadot		dmas = <&dmac2 3>;
229f126890aSEmmanuel Vadot		dma-names = "rx-tx";
230f126890aSEmmanuel Vadot		fifo-depth = <256>;
231f126890aSEmmanuel Vadot		resets = <&cru SRST_SDIO>;
232f126890aSEmmanuel Vadot		reset-names = "reset";
233f126890aSEmmanuel Vadot		status = "disabled";
234f126890aSEmmanuel Vadot	};
235f126890aSEmmanuel Vadot
236f126890aSEmmanuel Vadot	emmc: mmc@1021c000 {
237f126890aSEmmanuel Vadot		compatible = "rockchip,rk2928-dw-mshc";
238f126890aSEmmanuel Vadot		reg = <0x1021c000 0x1000>;
239f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
240f126890aSEmmanuel Vadot		clocks = <&cru HCLK_EMMC>, <&cru SCLK_EMMC>;
241f126890aSEmmanuel Vadot		clock-names = "biu", "ciu";
242f126890aSEmmanuel Vadot		dmas = <&dmac2 4>;
243f126890aSEmmanuel Vadot		dma-names = "rx-tx";
244f126890aSEmmanuel Vadot		fifo-depth = <256>;
245f126890aSEmmanuel Vadot		resets = <&cru SRST_EMMC>;
246f126890aSEmmanuel Vadot		reset-names = "reset";
247f126890aSEmmanuel Vadot		status = "disabled";
248f126890aSEmmanuel Vadot	};
249f126890aSEmmanuel Vadot
250f126890aSEmmanuel Vadot	nfc: nand-controller@10500000 {
251f126890aSEmmanuel Vadot		compatible = "rockchip,rk2928-nfc";
252f126890aSEmmanuel Vadot		reg = <0x10500000 0x4000>;
253f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
254f126890aSEmmanuel Vadot		clocks = <&cru HCLK_NANDC0>;
255f126890aSEmmanuel Vadot		clock-names = "ahb";
256f126890aSEmmanuel Vadot		status = "disabled";
257f126890aSEmmanuel Vadot	};
258f126890aSEmmanuel Vadot
259f126890aSEmmanuel Vadot	pmu: pmu@20004000 {
260f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-pmu", "syscon", "simple-mfd";
261f126890aSEmmanuel Vadot		reg = <0x20004000 0x100>;
262f126890aSEmmanuel Vadot
263f126890aSEmmanuel Vadot		reboot-mode {
264f126890aSEmmanuel Vadot			compatible = "syscon-reboot-mode";
265f126890aSEmmanuel Vadot			offset = <0x40>;
266f126890aSEmmanuel Vadot			mode-normal = <BOOT_NORMAL>;
267f126890aSEmmanuel Vadot			mode-recovery = <BOOT_RECOVERY>;
268f126890aSEmmanuel Vadot			mode-bootloader = <BOOT_FASTBOOT>;
269f126890aSEmmanuel Vadot			mode-loader = <BOOT_BL_DOWNLOAD>;
270f126890aSEmmanuel Vadot		};
271f126890aSEmmanuel Vadot	};
272f126890aSEmmanuel Vadot
273f126890aSEmmanuel Vadot	grf: grf@20008000 {
274f126890aSEmmanuel Vadot		compatible = "syscon", "simple-mfd";
275f126890aSEmmanuel Vadot		reg = <0x20008000 0x200>;
276f126890aSEmmanuel Vadot	};
277f126890aSEmmanuel Vadot
278f126890aSEmmanuel Vadot	dmac1_s: dma-controller@20018000 {
279f126890aSEmmanuel Vadot		compatible = "arm,pl330", "arm,primecell";
280f126890aSEmmanuel Vadot		reg = <0x20018000 0x4000>;
281f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
282f126890aSEmmanuel Vadot			     <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
283f126890aSEmmanuel Vadot		#dma-cells = <1>;
284f126890aSEmmanuel Vadot		arm,pl330-broken-no-flushp;
285f126890aSEmmanuel Vadot		arm,pl330-periph-burst;
286f126890aSEmmanuel Vadot		clocks = <&cru ACLK_DMA1>;
287f126890aSEmmanuel Vadot		clock-names = "apb_pclk";
288f126890aSEmmanuel Vadot	};
289f126890aSEmmanuel Vadot
290f126890aSEmmanuel Vadot	dmac1_ns: dma-controller@2001c000 {
291f126890aSEmmanuel Vadot		compatible = "arm,pl330", "arm,primecell";
292f126890aSEmmanuel Vadot		reg = <0x2001c000 0x4000>;
293f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
294f126890aSEmmanuel Vadot			     <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
295f126890aSEmmanuel Vadot		#dma-cells = <1>;
296f126890aSEmmanuel Vadot		arm,pl330-broken-no-flushp;
297f126890aSEmmanuel Vadot		arm,pl330-periph-burst;
298f126890aSEmmanuel Vadot		clocks = <&cru ACLK_DMA1>;
299f126890aSEmmanuel Vadot		clock-names = "apb_pclk";
300f126890aSEmmanuel Vadot		status = "disabled";
301f126890aSEmmanuel Vadot	};
302f126890aSEmmanuel Vadot
303f126890aSEmmanuel Vadot	i2c0: i2c@2002d000 {
304f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-i2c";
305f126890aSEmmanuel Vadot		reg = <0x2002d000 0x1000>;
306f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
307f126890aSEmmanuel Vadot		#address-cells = <1>;
308f126890aSEmmanuel Vadot		#size-cells = <0>;
309f126890aSEmmanuel Vadot
310f126890aSEmmanuel Vadot		rockchip,grf = <&grf>;
311f126890aSEmmanuel Vadot
312f126890aSEmmanuel Vadot		clock-names = "i2c";
313f126890aSEmmanuel Vadot		clocks = <&cru PCLK_I2C0>;
314f126890aSEmmanuel Vadot
315f126890aSEmmanuel Vadot		status = "disabled";
316f126890aSEmmanuel Vadot	};
317f126890aSEmmanuel Vadot
318f126890aSEmmanuel Vadot	i2c1: i2c@2002f000 {
319f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-i2c";
320f126890aSEmmanuel Vadot		reg = <0x2002f000 0x1000>;
321f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
322f126890aSEmmanuel Vadot		#address-cells = <1>;
323f126890aSEmmanuel Vadot		#size-cells = <0>;
324f126890aSEmmanuel Vadot
325f126890aSEmmanuel Vadot		rockchip,grf = <&grf>;
326f126890aSEmmanuel Vadot
327f126890aSEmmanuel Vadot		clocks = <&cru PCLK_I2C1>;
328f126890aSEmmanuel Vadot		clock-names = "i2c";
329f126890aSEmmanuel Vadot
330f126890aSEmmanuel Vadot		status = "disabled";
331f126890aSEmmanuel Vadot	};
332f126890aSEmmanuel Vadot
333f126890aSEmmanuel Vadot	pwm0: pwm@20030000 {
334f126890aSEmmanuel Vadot		compatible = "rockchip,rk2928-pwm";
335f126890aSEmmanuel Vadot		reg = <0x20030000 0x10>;
336f126890aSEmmanuel Vadot		#pwm-cells = <2>;
337f126890aSEmmanuel Vadot		clocks = <&cru PCLK_PWM01>;
338f126890aSEmmanuel Vadot		status = "disabled";
339f126890aSEmmanuel Vadot	};
340f126890aSEmmanuel Vadot
341f126890aSEmmanuel Vadot	pwm1: pwm@20030010 {
342f126890aSEmmanuel Vadot		compatible = "rockchip,rk2928-pwm";
343f126890aSEmmanuel Vadot		reg = <0x20030010 0x10>;
344f126890aSEmmanuel Vadot		#pwm-cells = <2>;
345f126890aSEmmanuel Vadot		clocks = <&cru PCLK_PWM01>;
346f126890aSEmmanuel Vadot		status = "disabled";
347f126890aSEmmanuel Vadot	};
348f126890aSEmmanuel Vadot
349f126890aSEmmanuel Vadot	wdt: watchdog@2004c000 {
350f126890aSEmmanuel Vadot		compatible = "snps,dw-wdt";
351f126890aSEmmanuel Vadot		reg = <0x2004c000 0x100>;
352f126890aSEmmanuel Vadot		clocks = <&cru PCLK_WDT>;
353f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
354f126890aSEmmanuel Vadot		status = "disabled";
355f126890aSEmmanuel Vadot	};
356f126890aSEmmanuel Vadot
357f126890aSEmmanuel Vadot	pwm2: pwm@20050020 {
358f126890aSEmmanuel Vadot		compatible = "rockchip,rk2928-pwm";
359f126890aSEmmanuel Vadot		reg = <0x20050020 0x10>;
360f126890aSEmmanuel Vadot		#pwm-cells = <2>;
361f126890aSEmmanuel Vadot		clocks = <&cru PCLK_PWM23>;
362f126890aSEmmanuel Vadot		status = "disabled";
363f126890aSEmmanuel Vadot	};
364f126890aSEmmanuel Vadot
365f126890aSEmmanuel Vadot	pwm3: pwm@20050030 {
366f126890aSEmmanuel Vadot		compatible = "rockchip,rk2928-pwm";
367f126890aSEmmanuel Vadot		reg = <0x20050030 0x10>;
368f126890aSEmmanuel Vadot		#pwm-cells = <2>;
369f126890aSEmmanuel Vadot		clocks = <&cru PCLK_PWM23>;
370f126890aSEmmanuel Vadot		status = "disabled";
371f126890aSEmmanuel Vadot	};
372f126890aSEmmanuel Vadot
373f126890aSEmmanuel Vadot	i2c2: i2c@20056000 {
374f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-i2c";
375f126890aSEmmanuel Vadot		reg = <0x20056000 0x1000>;
376f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
377f126890aSEmmanuel Vadot		#address-cells = <1>;
378f126890aSEmmanuel Vadot		#size-cells = <0>;
379f126890aSEmmanuel Vadot
380f126890aSEmmanuel Vadot		rockchip,grf = <&grf>;
381f126890aSEmmanuel Vadot
382f126890aSEmmanuel Vadot		clocks = <&cru PCLK_I2C2>;
383f126890aSEmmanuel Vadot		clock-names = "i2c";
384f126890aSEmmanuel Vadot
385f126890aSEmmanuel Vadot		status = "disabled";
386f126890aSEmmanuel Vadot	};
387f126890aSEmmanuel Vadot
388f126890aSEmmanuel Vadot	i2c3: i2c@2005a000 {
389f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-i2c";
390f126890aSEmmanuel Vadot		reg = <0x2005a000 0x1000>;
391f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
392f126890aSEmmanuel Vadot		#address-cells = <1>;
393f126890aSEmmanuel Vadot		#size-cells = <0>;
394f126890aSEmmanuel Vadot
395f126890aSEmmanuel Vadot		rockchip,grf = <&grf>;
396f126890aSEmmanuel Vadot
397f126890aSEmmanuel Vadot		clocks = <&cru PCLK_I2C3>;
398f126890aSEmmanuel Vadot		clock-names = "i2c";
399f126890aSEmmanuel Vadot
400f126890aSEmmanuel Vadot		status = "disabled";
401f126890aSEmmanuel Vadot	};
402f126890aSEmmanuel Vadot
403f126890aSEmmanuel Vadot	i2c4: i2c@2005e000 {
404f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-i2c";
405f126890aSEmmanuel Vadot		reg = <0x2005e000 0x1000>;
406f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
407f126890aSEmmanuel Vadot		#address-cells = <1>;
408f126890aSEmmanuel Vadot		#size-cells = <0>;
409f126890aSEmmanuel Vadot
410f126890aSEmmanuel Vadot		rockchip,grf = <&grf>;
411f126890aSEmmanuel Vadot
412f126890aSEmmanuel Vadot		clocks = <&cru PCLK_I2C4>;
413f126890aSEmmanuel Vadot		clock-names = "i2c";
414f126890aSEmmanuel Vadot
415f126890aSEmmanuel Vadot		status = "disabled";
416f126890aSEmmanuel Vadot	};
417f126890aSEmmanuel Vadot
418f126890aSEmmanuel Vadot	uart2: serial@20064000 {
419f126890aSEmmanuel Vadot		compatible = "snps,dw-apb-uart";
420f126890aSEmmanuel Vadot		reg = <0x20064000 0x400>;
421f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
422f126890aSEmmanuel Vadot		reg-shift = <2>;
423f126890aSEmmanuel Vadot		reg-io-width = <1>;
424f126890aSEmmanuel Vadot		clock-names = "baudclk", "apb_pclk";
425f126890aSEmmanuel Vadot		clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>;
426f126890aSEmmanuel Vadot		status = "disabled";
427f126890aSEmmanuel Vadot	};
428f126890aSEmmanuel Vadot
429f126890aSEmmanuel Vadot	uart3: serial@20068000 {
430f126890aSEmmanuel Vadot		compatible = "snps,dw-apb-uart";
431f126890aSEmmanuel Vadot		reg = <0x20068000 0x400>;
432f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
433f126890aSEmmanuel Vadot		reg-shift = <2>;
434f126890aSEmmanuel Vadot		reg-io-width = <1>;
435f126890aSEmmanuel Vadot		clock-names = "baudclk", "apb_pclk";
436f126890aSEmmanuel Vadot		clocks = <&cru SCLK_UART3>, <&cru PCLK_UART3>;
437f126890aSEmmanuel Vadot		status = "disabled";
438f126890aSEmmanuel Vadot	};
439f126890aSEmmanuel Vadot
440f126890aSEmmanuel Vadot	saradc: saradc@2006c000 {
441f126890aSEmmanuel Vadot		compatible = "rockchip,saradc";
442f126890aSEmmanuel Vadot		reg = <0x2006c000 0x100>;
443f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
444f126890aSEmmanuel Vadot		#io-channel-cells = <1>;
445f126890aSEmmanuel Vadot		clocks = <&cru SCLK_SARADC>, <&cru PCLK_SARADC>;
446f126890aSEmmanuel Vadot		clock-names = "saradc", "apb_pclk";
447f126890aSEmmanuel Vadot		resets = <&cru SRST_SARADC>;
448f126890aSEmmanuel Vadot		reset-names = "saradc-apb";
449f126890aSEmmanuel Vadot		status = "disabled";
450f126890aSEmmanuel Vadot	};
451f126890aSEmmanuel Vadot
452f126890aSEmmanuel Vadot	spi0: spi@20070000 {
453f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-spi";
454f126890aSEmmanuel Vadot		clocks = <&cru SCLK_SPI0>, <&cru PCLK_SPI0>;
455f126890aSEmmanuel Vadot		clock-names = "spiclk", "apb_pclk";
456f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
457f126890aSEmmanuel Vadot		reg = <0x20070000 0x1000>;
458f126890aSEmmanuel Vadot		#address-cells = <1>;
459f126890aSEmmanuel Vadot		#size-cells = <0>;
460f126890aSEmmanuel Vadot		dmas = <&dmac2 10>, <&dmac2 11>;
461f126890aSEmmanuel Vadot		dma-names = "tx", "rx";
462f126890aSEmmanuel Vadot		status = "disabled";
463f126890aSEmmanuel Vadot	};
464f126890aSEmmanuel Vadot
465f126890aSEmmanuel Vadot	spi1: spi@20074000 {
466f126890aSEmmanuel Vadot		compatible = "rockchip,rk3066-spi";
467f126890aSEmmanuel Vadot		clocks = <&cru SCLK_SPI1>, <&cru PCLK_SPI1>;
468f126890aSEmmanuel Vadot		clock-names = "spiclk", "apb_pclk";
469f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
470f126890aSEmmanuel Vadot		reg = <0x20074000 0x1000>;
471f126890aSEmmanuel Vadot		#address-cells = <1>;
472f126890aSEmmanuel Vadot		#size-cells = <0>;
473f126890aSEmmanuel Vadot		dmas = <&dmac2 12>, <&dmac2 13>;
474f126890aSEmmanuel Vadot		dma-names = "tx", "rx";
475f126890aSEmmanuel Vadot		status = "disabled";
476f126890aSEmmanuel Vadot	};
477f126890aSEmmanuel Vadot
478f126890aSEmmanuel Vadot	dmac2: dma-controller@20078000 {
479f126890aSEmmanuel Vadot		compatible = "arm,pl330", "arm,primecell";
480f126890aSEmmanuel Vadot		reg = <0x20078000 0x4000>;
481f126890aSEmmanuel Vadot		interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
482f126890aSEmmanuel Vadot			     <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
483f126890aSEmmanuel Vadot		#dma-cells = <1>;
484f126890aSEmmanuel Vadot		arm,pl330-broken-no-flushp;
485f126890aSEmmanuel Vadot		arm,pl330-periph-burst;
486f126890aSEmmanuel Vadot		clocks = <&cru ACLK_DMA2>;
487f126890aSEmmanuel Vadot		clock-names = "apb_pclk";
488f126890aSEmmanuel Vadot	};
489f126890aSEmmanuel Vadot};
490