xref: /openbmc/u-boot/arch/arm/dts/rk3188.dtsi (revision 4549e789c1d58a8c48e8a20f1b4bdb83e978c954)
1*4549e789STom Rini// SPDX-License-Identifier: GPL-2.0+ OR X11
2a57f2b86SHeiko Stübner/*
3a57f2b86SHeiko Stübner * Copyright (c) 2013 MundoReader S.L.
4a57f2b86SHeiko Stübner * Author: Heiko Stuebner <heiko@sntech.de>
5a57f2b86SHeiko Stübner */
6a57f2b86SHeiko Stübner
7a57f2b86SHeiko Stübner#include <dt-bindings/gpio/gpio.h>
8a57f2b86SHeiko Stübner#include <dt-bindings/pinctrl/rockchip.h>
9a57f2b86SHeiko Stübner#include <dt-bindings/clock/rk3188-cru.h>
10a57f2b86SHeiko Stübner#include "rk3xxx.dtsi"
11a57f2b86SHeiko Stübner
12a57f2b86SHeiko Stübner/ {
13a57f2b86SHeiko Stübner	compatible = "rockchip,rk3188";
14a57f2b86SHeiko Stübner
15a57f2b86SHeiko Stübner	cpus {
16a57f2b86SHeiko Stübner		#address-cells = <1>;
17a57f2b86SHeiko Stübner		#size-cells = <0>;
18a57f2b86SHeiko Stübner		enable-method = "rockchip,rk3066-smp";
19a57f2b86SHeiko Stübner
20a57f2b86SHeiko Stübner		cpu0: cpu@0 {
21a57f2b86SHeiko Stübner			device_type = "cpu";
22a57f2b86SHeiko Stübner			compatible = "arm,cortex-a9";
23a57f2b86SHeiko Stübner			next-level-cache = <&L2>;
24a57f2b86SHeiko Stübner			reg = <0x0>;
25a57f2b86SHeiko Stübner			operating-points = <
26a57f2b86SHeiko Stübner				/* kHz    uV */
27a57f2b86SHeiko Stübner				1608000 1350000
28a57f2b86SHeiko Stübner				1416000 1250000
29a57f2b86SHeiko Stübner				1200000 1150000
30a57f2b86SHeiko Stübner				1008000 1075000
31a57f2b86SHeiko Stübner				 816000  975000
32a57f2b86SHeiko Stübner				 600000  950000
33a57f2b86SHeiko Stübner				 504000  925000
34a57f2b86SHeiko Stübner				 312000  875000
35a57f2b86SHeiko Stübner			>;
36a57f2b86SHeiko Stübner			clock-latency = <40000>;
37a57f2b86SHeiko Stübner			clocks = <&cru ARMCLK>;
38a57f2b86SHeiko Stübner		};
39a57f2b86SHeiko Stübner		cpu@1 {
40a57f2b86SHeiko Stübner			device_type = "cpu";
41a57f2b86SHeiko Stübner			compatible = "arm,cortex-a9";
42a57f2b86SHeiko Stübner			next-level-cache = <&L2>;
43a57f2b86SHeiko Stübner			reg = <0x1>;
44a57f2b86SHeiko Stübner		};
45a57f2b86SHeiko Stübner		cpu@2 {
46a57f2b86SHeiko Stübner			device_type = "cpu";
47a57f2b86SHeiko Stübner			compatible = "arm,cortex-a9";
48a57f2b86SHeiko Stübner			next-level-cache = <&L2>;
49a57f2b86SHeiko Stübner			reg = <0x2>;
50a57f2b86SHeiko Stübner		};
51a57f2b86SHeiko Stübner		cpu@3 {
52a57f2b86SHeiko Stübner			device_type = "cpu";
53a57f2b86SHeiko Stübner			compatible = "arm,cortex-a9";
54a57f2b86SHeiko Stübner			next-level-cache = <&L2>;
55a57f2b86SHeiko Stübner			reg = <0x3>;
56a57f2b86SHeiko Stübner		};
57a57f2b86SHeiko Stübner	};
58a57f2b86SHeiko Stübner
59a57f2b86SHeiko Stübner	sram: sram@10080000 {
60a57f2b86SHeiko Stübner		compatible = "mmio-sram";
61a57f2b86SHeiko Stübner		reg = <0x10080000 0x8000>;
62a57f2b86SHeiko Stübner		#address-cells = <1>;
63a57f2b86SHeiko Stübner		#size-cells = <1>;
64a57f2b86SHeiko Stübner		ranges = <0 0x10080000 0x8000>;
65a57f2b86SHeiko Stübner
66a57f2b86SHeiko Stübner		smp-sram@0 {
67a57f2b86SHeiko Stübner			compatible = "rockchip,rk3066-smp-sram";
68a57f2b86SHeiko Stübner			reg = <0x0 0x50>;
69a57f2b86SHeiko Stübner		};
70a57f2b86SHeiko Stübner	};
71a57f2b86SHeiko Stübner
72a57f2b86SHeiko Stübner	i2s0: i2s@1011a000 {
73a57f2b86SHeiko Stübner		compatible = "rockchip,rk3188-i2s", "rockchip,rk3066-i2s";
74a57f2b86SHeiko Stübner		reg = <0x1011a000 0x2000>;
75a57f2b86SHeiko Stübner		interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
76a57f2b86SHeiko Stübner		#address-cells = <1>;
77a57f2b86SHeiko Stübner		#size-cells = <0>;
78a57f2b86SHeiko Stübner		pinctrl-names = "default";
79a57f2b86SHeiko Stübner		pinctrl-0 = <&i2s0_bus>;
80a57f2b86SHeiko Stübner		dmas = <&dmac1_s 6>, <&dmac1_s 7>;
81a57f2b86SHeiko Stübner		dma-names = "tx", "rx";
82a57f2b86SHeiko Stübner		clock-names = "i2s_hclk", "i2s_clk";
83a57f2b86SHeiko Stübner		clocks = <&cru HCLK_I2S0>, <&cru SCLK_I2S0>;
84a57f2b86SHeiko Stübner		rockchip,playback-channels = <2>;
85a57f2b86SHeiko Stübner		rockchip,capture-channels = <2>;
86a57f2b86SHeiko Stübner		status = "disabled";
87a57f2b86SHeiko Stübner	};
88a57f2b86SHeiko Stübner
89a57f2b86SHeiko Stübner	spdif: sound@1011e000 {
90a57f2b86SHeiko Stübner		compatible = "rockchip,rk3188-spdif", "rockchip,rk3066-spdif";
91a57f2b86SHeiko Stübner		reg = <0x1011e000 0x2000>;
92a57f2b86SHeiko Stübner		#sound-dai-cells = <0>;
93a57f2b86SHeiko Stübner		clock-names = "hclk", "mclk";
94a57f2b86SHeiko Stübner		clocks = <&cru HCLK_SPDIF>, <&cru SCLK_SPDIF>;
95a57f2b86SHeiko Stübner		dmas = <&dmac1_s 8>;
96a57f2b86SHeiko Stübner		dma-names = "tx";
97a57f2b86SHeiko Stübner		interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
98a57f2b86SHeiko Stübner		pinctrl-names = "default";
99a57f2b86SHeiko Stübner		pinctrl-0 = <&spdif_tx>;
100a57f2b86SHeiko Stübner		status = "disabled";
101a57f2b86SHeiko Stübner	};
102a57f2b86SHeiko Stübner
103a57f2b86SHeiko Stübner	cru: clock-controller@20000000 {
104a57f2b86SHeiko Stübner		compatible = "rockchip,rk3188-cru";
105a57f2b86SHeiko Stübner		reg = <0x20000000 0x1000>;
106a57f2b86SHeiko Stübner		rockchip,grf = <&grf>;
107a57f2b86SHeiko Stübner
108a57f2b86SHeiko Stübner		#clock-cells = <1>;
109a57f2b86SHeiko Stübner		#reset-cells = <1>;
110a57f2b86SHeiko Stübner	};
111a57f2b86SHeiko Stübner
112a57f2b86SHeiko Stübner	efuse: efuse@20010000 {
113a57f2b86SHeiko Stübner		compatible = "rockchip,rockchip-efuse";
114a57f2b86SHeiko Stübner		reg = <0x20010000 0x4000>;
115a57f2b86SHeiko Stübner		#address-cells = <1>;
116a57f2b86SHeiko Stübner		#size-cells = <1>;
117a57f2b86SHeiko Stübner		clocks = <&cru PCLK_EFUSE>;
118a57f2b86SHeiko Stübner		clock-names = "pclk_efuse";
119a57f2b86SHeiko Stübner
120a57f2b86SHeiko Stübner		cpu_leakage: cpu_leakage@17 {
121a57f2b86SHeiko Stübner			reg = <0x17 0x1>;
122a57f2b86SHeiko Stübner		};
123a57f2b86SHeiko Stübner	};
124a57f2b86SHeiko Stübner
125f9ef5447SKever Yang	timer3: timer@2000e000 {
126f9ef5447SKever Yang		compatible = "rockchip,rk3188-timer", "rockchip,rk3288-timer";
127f9ef5447SKever Yang		reg = <0x2000e000 0x20>;
128f9ef5447SKever Yang		interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
129f9ef5447SKever Yang	};
130f9ef5447SKever Yang
131a57f2b86SHeiko Stübner	usbphy: phy {
132a57f2b86SHeiko Stübner		compatible = "rockchip,rk3188-usb-phy", "rockchip,rk3288-usb-phy";
133a57f2b86SHeiko Stübner		rockchip,grf = <&grf>;
134a57f2b86SHeiko Stübner		#address-cells = <1>;
135a57f2b86SHeiko Stübner		#size-cells = <0>;
136a57f2b86SHeiko Stübner		status = "disabled";
137a57f2b86SHeiko Stübner
138a57f2b86SHeiko Stübner		usbphy0: usb-phy@10c {
139a57f2b86SHeiko Stübner			#phy-cells = <0>;
140a57f2b86SHeiko Stübner			reg = <0x10c>;
141a57f2b86SHeiko Stübner			clocks = <&cru SCLK_OTGPHY0>;
142a57f2b86SHeiko Stübner			clock-names = "phyclk";
143a57f2b86SHeiko Stübner			#clock-cells = <0>;
144a57f2b86SHeiko Stübner		};
145a57f2b86SHeiko Stübner
146a57f2b86SHeiko Stübner		usbphy1: usb-phy@11c {
147a57f2b86SHeiko Stübner			#phy-cells = <0>;
148a57f2b86SHeiko Stübner			reg = <0x11c>;
149a57f2b86SHeiko Stübner			clocks = <&cru SCLK_OTGPHY1>;
150a57f2b86SHeiko Stübner			clock-names = "phyclk";
151a57f2b86SHeiko Stübner			#clock-cells = <0>;
152a57f2b86SHeiko Stübner		};
153a57f2b86SHeiko Stübner	};
154a57f2b86SHeiko Stübner
155a57f2b86SHeiko Stübner	pinctrl: pinctrl {
156a57f2b86SHeiko Stübner		compatible = "rockchip,rk3188-pinctrl";
157a57f2b86SHeiko Stübner		rockchip,grf = <&grf>;
158a57f2b86SHeiko Stübner		rockchip,pmu = <&pmu>;
159a57f2b86SHeiko Stübner
160a57f2b86SHeiko Stübner		#address-cells = <1>;
161a57f2b86SHeiko Stübner		#size-cells = <1>;
162a57f2b86SHeiko Stübner		ranges;
163a57f2b86SHeiko Stübner
164a57f2b86SHeiko Stübner		gpio0: gpio0@2000a000 {
165a57f2b86SHeiko Stübner			compatible = "rockchip,gpio-bank";
166a57f2b86SHeiko Stübner			reg = <0x2000a000 0x100>;
167a57f2b86SHeiko Stübner			interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
168a57f2b86SHeiko Stübner			clocks = <&cru PCLK_GPIO0>;
169a57f2b86SHeiko Stübner
170a57f2b86SHeiko Stübner			gpio-controller;
171a57f2b86SHeiko Stübner			#gpio-cells = <2>;
172a57f2b86SHeiko Stübner
173a57f2b86SHeiko Stübner			interrupt-controller;
174a57f2b86SHeiko Stübner			#interrupt-cells = <2>;
175a57f2b86SHeiko Stübner		};
176a57f2b86SHeiko Stübner
177a57f2b86SHeiko Stübner		gpio1: gpio1@2003c000 {
178a57f2b86SHeiko Stübner			compatible = "rockchip,gpio-bank";
179a57f2b86SHeiko Stübner			reg = <0x2003c000 0x100>;
180a57f2b86SHeiko Stübner			interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
181a57f2b86SHeiko Stübner			clocks = <&cru PCLK_GPIO1>;
182a57f2b86SHeiko Stübner
183a57f2b86SHeiko Stübner			gpio-controller;
184a57f2b86SHeiko Stübner			#gpio-cells = <2>;
185a57f2b86SHeiko Stübner
186a57f2b86SHeiko Stübner			interrupt-controller;
187a57f2b86SHeiko Stübner			#interrupt-cells = <2>;
188a57f2b86SHeiko Stübner		};
189a57f2b86SHeiko Stübner
190a57f2b86SHeiko Stübner		gpio2: gpio2@2003e000 {
191a57f2b86SHeiko Stübner			compatible = "rockchip,gpio-bank";
192a57f2b86SHeiko Stübner			reg = <0x2003e000 0x100>;
193a57f2b86SHeiko Stübner			interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
194a57f2b86SHeiko Stübner			clocks = <&cru PCLK_GPIO2>;
195a57f2b86SHeiko Stübner
196a57f2b86SHeiko Stübner			gpio-controller;
197a57f2b86SHeiko Stübner			#gpio-cells = <2>;
198a57f2b86SHeiko Stübner
199a57f2b86SHeiko Stübner			interrupt-controller;
200a57f2b86SHeiko Stübner			#interrupt-cells = <2>;
201a57f2b86SHeiko Stübner		};
202a57f2b86SHeiko Stübner
203a57f2b86SHeiko Stübner		gpio3: gpio3@20080000 {
204a57f2b86SHeiko Stübner			compatible = "rockchip,gpio-bank";
205a57f2b86SHeiko Stübner			reg = <0x20080000 0x100>;
206a57f2b86SHeiko Stübner			interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
207a57f2b86SHeiko Stübner			clocks = <&cru PCLK_GPIO3>;
208a57f2b86SHeiko Stübner
209a57f2b86SHeiko Stübner			gpio-controller;
210a57f2b86SHeiko Stübner			#gpio-cells = <2>;
211a57f2b86SHeiko Stübner
212a57f2b86SHeiko Stübner			interrupt-controller;
213a57f2b86SHeiko Stübner			#interrupt-cells = <2>;
214a57f2b86SHeiko Stübner		};
215a57f2b86SHeiko Stübner
216a57f2b86SHeiko Stübner		pcfg_pull_up: pcfg_pull_up {
217a57f2b86SHeiko Stübner			bias-pull-up;
218a57f2b86SHeiko Stübner		};
219a57f2b86SHeiko Stübner
220a57f2b86SHeiko Stübner		pcfg_pull_down: pcfg_pull_down {
221a57f2b86SHeiko Stübner			bias-pull-down;
222a57f2b86SHeiko Stübner		};
223a57f2b86SHeiko Stübner
224a57f2b86SHeiko Stübner		pcfg_pull_none: pcfg_pull_none {
225a57f2b86SHeiko Stübner			bias-disable;
226a57f2b86SHeiko Stübner		};
227a57f2b86SHeiko Stübner
228a57f2b86SHeiko Stübner		emmc {
229a57f2b86SHeiko Stübner			emmc_clk: emmc-clk {
230a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO0 24 RK_FUNC_2 &pcfg_pull_none>;
231a57f2b86SHeiko Stübner			};
232a57f2b86SHeiko Stübner
233a57f2b86SHeiko Stübner			emmc_cmd: emmc-cmd {
234a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO0 26 RK_FUNC_2 &pcfg_pull_up>;
235a57f2b86SHeiko Stübner			};
236a57f2b86SHeiko Stübner
237a57f2b86SHeiko Stübner			emmc_rst: emmc-rst {
238a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO0 27 RK_FUNC_2 &pcfg_pull_none>;
239a57f2b86SHeiko Stübner			};
240a57f2b86SHeiko Stübner
241a57f2b86SHeiko Stübner			/*
242a57f2b86SHeiko Stübner			 * The data pins are shared between nandc and emmc and
243a57f2b86SHeiko Stübner			 * not accessible through pinctrl. Also they should've
244a57f2b86SHeiko Stübner			 * been already set correctly by firmware, as
245a57f2b86SHeiko Stübner			 * flash/emmc is the boot-device.
246a57f2b86SHeiko Stübner			 */
247a57f2b86SHeiko Stübner		};
248a57f2b86SHeiko Stübner
249a57f2b86SHeiko Stübner		emac {
250a57f2b86SHeiko Stübner			emac_xfer: emac-xfer {
251a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 16 RK_FUNC_2 &pcfg_pull_none>, /* tx_en */
252a57f2b86SHeiko Stübner						<RK_GPIO3 17 RK_FUNC_2 &pcfg_pull_none>, /* txd1 */
253a57f2b86SHeiko Stübner						<RK_GPIO3 18 RK_FUNC_2 &pcfg_pull_none>, /* txd0 */
254a57f2b86SHeiko Stübner						<RK_GPIO3 19 RK_FUNC_2 &pcfg_pull_none>, /* rxd0 */
255a57f2b86SHeiko Stübner						<RK_GPIO3 20 RK_FUNC_2 &pcfg_pull_none>, /* rxd1 */
256a57f2b86SHeiko Stübner						<RK_GPIO3 21 RK_FUNC_2 &pcfg_pull_none>, /* mac_clk */
257a57f2b86SHeiko Stübner						<RK_GPIO3 22 RK_FUNC_2 &pcfg_pull_none>, /* rx_err */
258a57f2b86SHeiko Stübner						<RK_GPIO3 23 RK_FUNC_2 &pcfg_pull_none>; /* crs_dvalid */
259a57f2b86SHeiko Stübner			};
260a57f2b86SHeiko Stübner
261a57f2b86SHeiko Stübner			emac_mdio: emac-mdio {
262a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 24 RK_FUNC_2 &pcfg_pull_none>,
263a57f2b86SHeiko Stübner						<RK_GPIO3 25 RK_FUNC_2 &pcfg_pull_none>;
264a57f2b86SHeiko Stübner			};
265a57f2b86SHeiko Stübner		};
266a57f2b86SHeiko Stübner
267a57f2b86SHeiko Stübner		i2c0 {
268a57f2b86SHeiko Stübner			i2c0_xfer: i2c0-xfer {
269a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 24 RK_FUNC_1 &pcfg_pull_none>,
270a57f2b86SHeiko Stübner						<RK_GPIO1 25 RK_FUNC_1 &pcfg_pull_none>;
271a57f2b86SHeiko Stübner			};
272a57f2b86SHeiko Stübner		};
273a57f2b86SHeiko Stübner
274a57f2b86SHeiko Stübner		i2c1 {
275a57f2b86SHeiko Stübner			i2c1_xfer: i2c1-xfer {
276a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 26 RK_FUNC_1 &pcfg_pull_none>,
277a57f2b86SHeiko Stübner						<RK_GPIO1 27 RK_FUNC_1 &pcfg_pull_none>;
278a57f2b86SHeiko Stübner			};
279a57f2b86SHeiko Stübner		};
280a57f2b86SHeiko Stübner
281a57f2b86SHeiko Stübner		i2c2 {
282a57f2b86SHeiko Stübner			i2c2_xfer: i2c2-xfer {
283a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 28 RK_FUNC_1 &pcfg_pull_none>,
284a57f2b86SHeiko Stübner						<RK_GPIO1 29 RK_FUNC_1 &pcfg_pull_none>;
285a57f2b86SHeiko Stübner			};
286a57f2b86SHeiko Stübner		};
287a57f2b86SHeiko Stübner
288a57f2b86SHeiko Stübner		i2c3 {
289a57f2b86SHeiko Stübner			i2c3_xfer: i2c3-xfer {
290a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 14 RK_FUNC_2 &pcfg_pull_none>,
291a57f2b86SHeiko Stübner						<RK_GPIO3 15 RK_FUNC_2 &pcfg_pull_none>;
292a57f2b86SHeiko Stübner			};
293a57f2b86SHeiko Stübner		};
294a57f2b86SHeiko Stübner
295a57f2b86SHeiko Stübner		i2c4 {
296a57f2b86SHeiko Stübner			i2c4_xfer: i2c4-xfer {
297a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 30 RK_FUNC_1 &pcfg_pull_none>,
298a57f2b86SHeiko Stübner						<RK_GPIO1 31 RK_FUNC_1 &pcfg_pull_none>;
299a57f2b86SHeiko Stübner			};
300a57f2b86SHeiko Stübner		};
301a57f2b86SHeiko Stübner
302a57f2b86SHeiko Stübner		pwm0 {
303a57f2b86SHeiko Stübner			pwm0_out: pwm0-out {
304a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 27 RK_FUNC_1 &pcfg_pull_none>;
305a57f2b86SHeiko Stübner			};
306a57f2b86SHeiko Stübner		};
307a57f2b86SHeiko Stübner
308a57f2b86SHeiko Stübner		pwm1 {
309a57f2b86SHeiko Stübner			pwm1_out: pwm1-out {
310a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 28 RK_FUNC_1 &pcfg_pull_none>;
311a57f2b86SHeiko Stübner			};
312a57f2b86SHeiko Stübner		};
313a57f2b86SHeiko Stübner
314a57f2b86SHeiko Stübner		pwm2 {
315a57f2b86SHeiko Stübner			pwm2_out: pwm2-out {
316a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 29 RK_FUNC_1 &pcfg_pull_none>;
317a57f2b86SHeiko Stübner			};
318a57f2b86SHeiko Stübner		};
319a57f2b86SHeiko Stübner
320a57f2b86SHeiko Stübner		pwm3 {
321a57f2b86SHeiko Stübner			pwm3_out: pwm3-out {
322a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 30 RK_FUNC_1 &pcfg_pull_none>;
323a57f2b86SHeiko Stübner			};
324a57f2b86SHeiko Stübner		};
325a57f2b86SHeiko Stübner
326a57f2b86SHeiko Stübner		spi0 {
327a57f2b86SHeiko Stübner			spi0_clk: spi0-clk {
328a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 6 RK_FUNC_2 &pcfg_pull_up>;
329a57f2b86SHeiko Stübner			};
330a57f2b86SHeiko Stübner			spi0_cs0: spi0-cs0 {
331a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 7 RK_FUNC_2 &pcfg_pull_up>;
332a57f2b86SHeiko Stübner			};
333a57f2b86SHeiko Stübner			spi0_tx: spi0-tx {
334a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 5 RK_FUNC_2 &pcfg_pull_up>;
335a57f2b86SHeiko Stübner			};
336a57f2b86SHeiko Stübner			spi0_rx: spi0-rx {
337a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 4 RK_FUNC_2 &pcfg_pull_up>;
338a57f2b86SHeiko Stübner			};
339a57f2b86SHeiko Stübner			spi0_cs1: spi0-cs1 {
340a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 15 RK_FUNC_1 &pcfg_pull_up>;
341a57f2b86SHeiko Stübner			};
342a57f2b86SHeiko Stübner		};
343a57f2b86SHeiko Stübner
344a57f2b86SHeiko Stübner		spi1 {
345a57f2b86SHeiko Stübner			spi1_clk: spi1-clk {
346a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO0 30 RK_FUNC_1 &pcfg_pull_up>;
347a57f2b86SHeiko Stübner			};
348a57f2b86SHeiko Stübner			spi1_cs0: spi1-cs0 {
349a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO0 31 RK_FUNC_1 &pcfg_pull_up>;
350a57f2b86SHeiko Stübner			};
351a57f2b86SHeiko Stübner			spi1_rx: spi1-rx {
352a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO0 28 RK_FUNC_1 &pcfg_pull_up>;
353a57f2b86SHeiko Stübner			};
354a57f2b86SHeiko Stübner			spi1_tx: spi1-tx {
355a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO0 29 RK_FUNC_1 &pcfg_pull_up>;
356a57f2b86SHeiko Stübner			};
357a57f2b86SHeiko Stübner			spi1_cs1: spi1-cs1 {
358a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 14 RK_FUNC_2 &pcfg_pull_up>;
359a57f2b86SHeiko Stübner			};
360a57f2b86SHeiko Stübner		};
361a57f2b86SHeiko Stübner
362a57f2b86SHeiko Stübner		uart0 {
363a57f2b86SHeiko Stübner			uart0_xfer: uart0-xfer {
364a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 0 RK_FUNC_1 &pcfg_pull_up>,
365a57f2b86SHeiko Stübner						<RK_GPIO1 1 RK_FUNC_1 &pcfg_pull_none>;
366a57f2b86SHeiko Stübner			};
367a57f2b86SHeiko Stübner
368a57f2b86SHeiko Stübner			uart0_cts: uart0-cts {
369a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 2 RK_FUNC_1 &pcfg_pull_none>;
370a57f2b86SHeiko Stübner			};
371a57f2b86SHeiko Stübner
372a57f2b86SHeiko Stübner			uart0_rts: uart0-rts {
373a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 3 RK_FUNC_1 &pcfg_pull_none>;
374a57f2b86SHeiko Stübner			};
375a57f2b86SHeiko Stübner		};
376a57f2b86SHeiko Stübner
377a57f2b86SHeiko Stübner		uart1 {
378a57f2b86SHeiko Stübner			uart1_xfer: uart1-xfer {
379a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 4 RK_FUNC_1 &pcfg_pull_up>,
380a57f2b86SHeiko Stübner						<RK_GPIO1 5 RK_FUNC_1 &pcfg_pull_none>;
381a57f2b86SHeiko Stübner			};
382a57f2b86SHeiko Stübner
383a57f2b86SHeiko Stübner			uart1_cts: uart1-cts {
384a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 6 RK_FUNC_1 &pcfg_pull_none>;
385a57f2b86SHeiko Stübner			};
386a57f2b86SHeiko Stübner
387a57f2b86SHeiko Stübner			uart1_rts: uart1-rts {
388a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 7 RK_FUNC_1 &pcfg_pull_none>;
389a57f2b86SHeiko Stübner			};
390a57f2b86SHeiko Stübner		};
391a57f2b86SHeiko Stübner
392a57f2b86SHeiko Stübner		uart2 {
393a57f2b86SHeiko Stübner			uart2_xfer: uart2-xfer {
394a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 8 RK_FUNC_1 &pcfg_pull_up>,
395a57f2b86SHeiko Stübner						<RK_GPIO1 9 RK_FUNC_1 &pcfg_pull_none>;
396a57f2b86SHeiko Stübner			};
397a57f2b86SHeiko Stübner			/* no rts / cts for uart2 */
398a57f2b86SHeiko Stübner		};
399a57f2b86SHeiko Stübner
400a57f2b86SHeiko Stübner		uart3 {
401a57f2b86SHeiko Stübner			uart3_xfer: uart3-xfer {
402a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 10 RK_FUNC_1 &pcfg_pull_up>,
403a57f2b86SHeiko Stübner						<RK_GPIO1 11 RK_FUNC_1 &pcfg_pull_none>;
404a57f2b86SHeiko Stübner			};
405a57f2b86SHeiko Stübner
406a57f2b86SHeiko Stübner			uart3_cts: uart3-cts {
407a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 12 RK_FUNC_1 &pcfg_pull_none>;
408a57f2b86SHeiko Stübner			};
409a57f2b86SHeiko Stübner
410a57f2b86SHeiko Stübner			uart3_rts: uart3-rts {
411a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 13 RK_FUNC_1 &pcfg_pull_none>;
412a57f2b86SHeiko Stübner			};
413a57f2b86SHeiko Stübner		};
414a57f2b86SHeiko Stübner
415a57f2b86SHeiko Stübner		sd0 {
416a57f2b86SHeiko Stübner			sd0_clk: sd0-clk {
417a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 2 RK_FUNC_1 &pcfg_pull_none>;
418a57f2b86SHeiko Stübner			};
419a57f2b86SHeiko Stübner
420a57f2b86SHeiko Stübner			sd0_cmd: sd0-cmd {
421a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 3 RK_FUNC_1 &pcfg_pull_none>;
422a57f2b86SHeiko Stübner			};
423a57f2b86SHeiko Stübner
424a57f2b86SHeiko Stübner			sd0_cd: sd0-cd {
425a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 8 RK_FUNC_1 &pcfg_pull_none>;
426a57f2b86SHeiko Stübner			};
427a57f2b86SHeiko Stübner
428a57f2b86SHeiko Stübner			sd0_wp: sd0-wp {
429a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 9 RK_FUNC_1 &pcfg_pull_none>;
430a57f2b86SHeiko Stübner			};
431a57f2b86SHeiko Stübner
432a57f2b86SHeiko Stübner			sd0_pwr: sd0-pwr {
433a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 1 RK_FUNC_1 &pcfg_pull_none>;
434a57f2b86SHeiko Stübner			};
435a57f2b86SHeiko Stübner
436a57f2b86SHeiko Stübner			sd0_bus1: sd0-bus-width1 {
437a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 4 RK_FUNC_1 &pcfg_pull_none>;
438a57f2b86SHeiko Stübner			};
439a57f2b86SHeiko Stübner
440a57f2b86SHeiko Stübner			sd0_bus4: sd0-bus-width4 {
441a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 4 RK_FUNC_1 &pcfg_pull_none>,
442a57f2b86SHeiko Stübner						<RK_GPIO3 5 RK_FUNC_1 &pcfg_pull_none>,
443a57f2b86SHeiko Stübner						<RK_GPIO3 6 RK_FUNC_1 &pcfg_pull_none>,
444a57f2b86SHeiko Stübner						<RK_GPIO3 7 RK_FUNC_1 &pcfg_pull_none>;
445a57f2b86SHeiko Stübner			};
446a57f2b86SHeiko Stübner		};
447a57f2b86SHeiko Stübner
448a57f2b86SHeiko Stübner		sd1 {
449a57f2b86SHeiko Stübner			sd1_clk: sd1-clk {
450a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 21 RK_FUNC_1 &pcfg_pull_none>;
451a57f2b86SHeiko Stübner			};
452a57f2b86SHeiko Stübner
453a57f2b86SHeiko Stübner			sd1_cmd: sd1-cmd {
454a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 16 RK_FUNC_1 &pcfg_pull_none>;
455a57f2b86SHeiko Stübner			};
456a57f2b86SHeiko Stübner
457a57f2b86SHeiko Stübner			sd1_cd: sd1-cd {
458a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 22 RK_FUNC_1 &pcfg_pull_none>;
459a57f2b86SHeiko Stübner			};
460a57f2b86SHeiko Stübner
461a57f2b86SHeiko Stübner			sd1_wp: sd1-wp {
462a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 23 RK_FUNC_1 &pcfg_pull_none>;
463a57f2b86SHeiko Stübner			};
464a57f2b86SHeiko Stübner
465a57f2b86SHeiko Stübner			sd1_bus1: sd1-bus-width1 {
466a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 17 RK_FUNC_1 &pcfg_pull_none>;
467a57f2b86SHeiko Stübner			};
468a57f2b86SHeiko Stübner
469a57f2b86SHeiko Stübner			sd1_bus4: sd1-bus-width4 {
470a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO3 17 RK_FUNC_1 &pcfg_pull_none>,
471a57f2b86SHeiko Stübner						<RK_GPIO3 18 RK_FUNC_1 &pcfg_pull_none>,
472a57f2b86SHeiko Stübner						<RK_GPIO3 19 RK_FUNC_1 &pcfg_pull_none>,
473a57f2b86SHeiko Stübner						<RK_GPIO3 20 RK_FUNC_1 &pcfg_pull_none>;
474a57f2b86SHeiko Stübner			};
475a57f2b86SHeiko Stübner		};
476a57f2b86SHeiko Stübner
477a57f2b86SHeiko Stübner		i2s0 {
478a57f2b86SHeiko Stübner			i2s0_bus: i2s0-bus {
479a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 16 RK_FUNC_1 &pcfg_pull_none>,
480a57f2b86SHeiko Stübner						<RK_GPIO1 17 RK_FUNC_1 &pcfg_pull_none>,
481a57f2b86SHeiko Stübner						<RK_GPIO1 18 RK_FUNC_1 &pcfg_pull_none>,
482a57f2b86SHeiko Stübner						<RK_GPIO1 19 RK_FUNC_1 &pcfg_pull_none>,
483a57f2b86SHeiko Stübner						<RK_GPIO1 20 RK_FUNC_1 &pcfg_pull_none>,
484a57f2b86SHeiko Stübner						<RK_GPIO1 21 RK_FUNC_1 &pcfg_pull_none>;
485a57f2b86SHeiko Stübner			};
486a57f2b86SHeiko Stübner		};
487a57f2b86SHeiko Stübner
488a57f2b86SHeiko Stübner		spdif {
489a57f2b86SHeiko Stübner			spdif_tx: spdif-tx {
490a57f2b86SHeiko Stübner				rockchip,pins = <RK_GPIO1 14 RK_FUNC_1 &pcfg_pull_none>;
491a57f2b86SHeiko Stübner			};
492a57f2b86SHeiko Stübner		};
493a57f2b86SHeiko Stübner	};
494a57f2b86SHeiko Stübner};
495a57f2b86SHeiko Stübner
496a57f2b86SHeiko Stübner&emac {
497a57f2b86SHeiko Stübner	compatible = "rockchip,rk3188-emac";
498a57f2b86SHeiko Stübner};
499a57f2b86SHeiko Stübner
500a57f2b86SHeiko Stübner&global_timer {
501a57f2b86SHeiko Stübner	interrupts = <GIC_PPI 11 0xf04>;
502a57f2b86SHeiko Stübner};
503a57f2b86SHeiko Stübner
504a57f2b86SHeiko Stübner&grf {
505a57f2b86SHeiko Stübner	compatible = "rockchip,rk3188-grf", "syscon";
506a57f2b86SHeiko Stübner};
507a57f2b86SHeiko Stübner
508a57f2b86SHeiko Stübner&local_timer {
509a57f2b86SHeiko Stübner	interrupts = <GIC_PPI 13 0xf04>;
510a57f2b86SHeiko Stübner};
511a57f2b86SHeiko Stübner
512a57f2b86SHeiko Stübner&i2c0 {
513a57f2b86SHeiko Stübner	compatible = "rockchip,rk3188-i2c";
514a57f2b86SHeiko Stübner	pinctrl-names = "default";
515a57f2b86SHeiko Stübner	pinctrl-0 = <&i2c0_xfer>;
516a57f2b86SHeiko Stübner};
517a57f2b86SHeiko Stübner
518a57f2b86SHeiko Stübner&i2c1 {
519a57f2b86SHeiko Stübner	compatible = "rockchip,rk3188-i2c";
520a57f2b86SHeiko Stübner	pinctrl-names = "default";
521a57f2b86SHeiko Stübner	pinctrl-0 = <&i2c1_xfer>;
522a57f2b86SHeiko Stübner};
523a57f2b86SHeiko Stübner
524a57f2b86SHeiko Stübner&i2c2 {
525a57f2b86SHeiko Stübner	compatible = "rockchip,rk3188-i2c";
526a57f2b86SHeiko Stübner	pinctrl-names = "default";
527a57f2b86SHeiko Stübner	pinctrl-0 = <&i2c2_xfer>;
528a57f2b86SHeiko Stübner};
529a57f2b86SHeiko Stübner
530a57f2b86SHeiko Stübner&i2c3 {
531a57f2b86SHeiko Stübner	compatible = "rockchip,rk3188-i2c";
532a57f2b86SHeiko Stübner	pinctrl-names = "default";
533a57f2b86SHeiko Stübner	pinctrl-0 = <&i2c3_xfer>;
534a57f2b86SHeiko Stübner};
535a57f2b86SHeiko Stübner
536a57f2b86SHeiko Stübner&i2c4 {
537a57f2b86SHeiko Stübner	compatible = "rockchip,rk3188-i2c";
538a57f2b86SHeiko Stübner	pinctrl-names = "default";
539a57f2b86SHeiko Stübner	pinctrl-0 = <&i2c4_xfer>;
540a57f2b86SHeiko Stübner};
541a57f2b86SHeiko Stübner
542a57f2b86SHeiko Stübner&pmu {
543a57f2b86SHeiko Stübner	compatible = "rockchip,rk3188-pmu", "syscon";
544a57f2b86SHeiko Stübner};
545a57f2b86SHeiko Stübner
546a57f2b86SHeiko Stübner&pwm0 {
547a57f2b86SHeiko Stübner	pinctrl-names = "default";
548a57f2b86SHeiko Stübner	pinctrl-0 = <&pwm0_out>;
549a57f2b86SHeiko Stübner};
550a57f2b86SHeiko Stübner
551a57f2b86SHeiko Stübner&pwm1 {
552a57f2b86SHeiko Stübner	pinctrl-names = "default";
553a57f2b86SHeiko Stübner	pinctrl-0 = <&pwm1_out>;
554a57f2b86SHeiko Stübner};
555a57f2b86SHeiko Stübner
556a57f2b86SHeiko Stübner&pwm2 {
557a57f2b86SHeiko Stübner	pinctrl-names = "default";
558a57f2b86SHeiko Stübner	pinctrl-0 = <&pwm2_out>;
559a57f2b86SHeiko Stübner};
560a57f2b86SHeiko Stübner
561a57f2b86SHeiko Stübner&pwm3 {
562a57f2b86SHeiko Stübner	pinctrl-names = "default";
563a57f2b86SHeiko Stübner	pinctrl-0 = <&pwm3_out>;
564a57f2b86SHeiko Stübner};
565a57f2b86SHeiko Stübner
566a57f2b86SHeiko Stübner&spi0 {
567a57f2b86SHeiko Stübner	compatible = "rockchip,rk3188-spi", "rockchip,rk3066-spi";
568a57f2b86SHeiko Stübner	pinctrl-names = "default";
569a57f2b86SHeiko Stübner	pinctrl-0 = <&spi0_clk &spi0_tx &spi0_rx &spi0_cs0>;
570a57f2b86SHeiko Stübner};
571a57f2b86SHeiko Stübner
572a57f2b86SHeiko Stübner&spi1 {
573a57f2b86SHeiko Stübner	compatible = "rockchip,rk3188-spi", "rockchip,rk3066-spi";
574a57f2b86SHeiko Stübner	pinctrl-names = "default";
575a57f2b86SHeiko Stübner	pinctrl-0 = <&spi1_clk &spi1_tx &spi1_rx &spi1_cs0>;
576a57f2b86SHeiko Stübner};
577a57f2b86SHeiko Stübner
578a57f2b86SHeiko Stübner&uart0 {
579a57f2b86SHeiko Stübner	compatible = "rockchip,rk3188-uart", "snps,dw-apb-uart";
580a57f2b86SHeiko Stübner	pinctrl-names = "default";
581a57f2b86SHeiko Stübner	pinctrl-0 = <&uart0_xfer>;
582a57f2b86SHeiko Stübner};
583a57f2b86SHeiko Stübner
584a57f2b86SHeiko Stübner&uart1 {
585a57f2b86SHeiko Stübner	compatible = "rockchip,rk3188-uart", "snps,dw-apb-uart";
586a57f2b86SHeiko Stübner	pinctrl-names = "default";
587a57f2b86SHeiko Stübner	pinctrl-0 = <&uart1_xfer>;
588a57f2b86SHeiko Stübner};
589a57f2b86SHeiko Stübner
590a57f2b86SHeiko Stübner&uart2 {
591a57f2b86SHeiko Stübner	compatible = "rockchip,rk3188-uart", "snps,dw-apb-uart";
592a57f2b86SHeiko Stübner	pinctrl-names = "default";
593a57f2b86SHeiko Stübner	pinctrl-0 = <&uart2_xfer>;
594a57f2b86SHeiko Stübner};
595a57f2b86SHeiko Stübner
596a57f2b86SHeiko Stübner&uart3 {
597a57f2b86SHeiko Stübner	compatible = "rockchip,rk3188-uart", "snps,dw-apb-uart";
598a57f2b86SHeiko Stübner	pinctrl-names = "default";
599a57f2b86SHeiko Stübner	pinctrl-0 = <&uart3_xfer>;
600a57f2b86SHeiko Stübner};
601a57f2b86SHeiko Stübner
602a57f2b86SHeiko Stübner&wdt {
603a57f2b86SHeiko Stübner	compatible = "rockchip,rk3188-wdt", "snps,dw-wdt";
604a57f2b86SHeiko Stübner};
605