]>
Commit | Line | Data |
---|---|---|
47197682 HS |
1 | /* |
2 | * Copyright (c) 2013 Heiko Stuebner <heiko@sntech.de> | |
3 | * | |
4 | * SPDX-License-Identifier: GPL-2.0+ or X11 | |
5 | */ | |
6 | ||
7 | /dts-v1/; | |
8 | #include <dt-bindings/input/input.h> | |
9 | #include "rk3188.dtsi" | |
10 | ||
11 | / { | |
12 | model = "Radxa Rock"; | |
13 | compatible = "radxa,rock", "rockchip,rk3188"; | |
14 | ||
15 | chosen { | |
16 | /* stdout-path = &uart2; */ | |
17 | stdout-path = "serial2:115200n8"; | |
18 | }; | |
19 | ||
20 | config { | |
21 | u-boot,dm-pre-reloc; | |
22 | u-boot,boot-led = "rock:red:power"; | |
23 | }; | |
24 | ||
25 | memory { | |
26 | device_type = "memory"; | |
27 | reg = <0x60000000 0x80000000>; | |
28 | }; | |
29 | ||
30 | gpio-keys { | |
31 | compatible = "gpio-keys"; | |
32 | autorepeat; | |
33 | ||
34 | power { | |
35 | gpios = <&gpio0 4 GPIO_ACTIVE_LOW>; | |
36 | linux,code = <KEY_POWER>; | |
37 | label = "GPIO Key Power"; | |
38 | linux,input-type = <1>; | |
39 | wakeup-source; | |
40 | debounce-interval = <100>; | |
41 | }; | |
42 | }; | |
43 | ||
44 | gpio-leds { | |
45 | compatible = "gpio-leds"; | |
46 | ||
47 | green { | |
48 | label = "rock:green:user1"; | |
49 | gpios = <&gpio0 12 GPIO_ACTIVE_LOW>; | |
50 | default-state = "off"; | |
51 | }; | |
52 | ||
53 | blue { | |
54 | label = "rock:blue:user2"; | |
55 | gpios = <&gpio0 14 GPIO_ACTIVE_LOW>; | |
56 | default-state = "off"; | |
57 | }; | |
58 | ||
59 | sleep { | |
60 | label = "rock:red:power"; | |
61 | gpios = <&gpio0 15 0>; | |
62 | default-state = "off"; | |
63 | }; | |
64 | }; | |
65 | ||
66 | sound { | |
67 | compatible = "simple-audio-card"; | |
68 | simple-audio-card,name = "SPDIF"; | |
69 | ||
70 | simple-audio-card,dai-link@1 { /* S/PDIF - S/PDIF */ | |
71 | cpu { sound-dai = <&spdif>; }; | |
72 | codec { sound-dai = <&spdif_out>; }; | |
73 | }; | |
74 | }; | |
75 | ||
76 | spdif_out: spdif-out { | |
77 | compatible = "linux,spdif-dit"; | |
78 | #sound-dai-cells = <0>; | |
79 | }; | |
80 | ||
81 | ir_recv: gpio-ir-receiver { | |
82 | compatible = "gpio-ir-receiver"; | |
83 | gpios = <&gpio0 10 1>; | |
84 | pinctrl-names = "default"; | |
85 | pinctrl-0 = <&ir_recv_pin>; | |
86 | }; | |
87 | ||
88 | vcc_otg: usb-otg-regulator { | |
89 | compatible = "regulator-fixed"; | |
90 | enable-active-high; | |
91 | gpio = <&gpio2 31 GPIO_ACTIVE_HIGH>; | |
92 | pinctrl-names = "default"; | |
93 | pinctrl-0 = <&otg_vbus_drv>; | |
94 | regulator-name = "otg-vbus"; | |
95 | regulator-min-microvolt = <5000000>; | |
96 | regulator-max-microvolt = <5000000>; | |
97 | regulator-always-on; | |
98 | regulator-boot-on; | |
99 | }; | |
100 | ||
101 | vcc_sd0: sdmmc-regulator { | |
102 | compatible = "regulator-fixed"; | |
103 | regulator-name = "sdmmc-supply"; | |
104 | regulator-min-microvolt = <3300000>; | |
105 | regulator-max-microvolt = <3300000>; | |
106 | gpio = <&gpio3 1 GPIO_ACTIVE_LOW>; | |
107 | startup-delay-us = <100000>; | |
108 | vin-supply = <&vcc_io>; | |
109 | }; | |
110 | ||
111 | vcc_host: usb-host-regulator { | |
112 | compatible = "regulator-fixed"; | |
113 | enable-active-high; | |
114 | gpio = <&gpio0 3 GPIO_ACTIVE_HIGH>; | |
115 | pinctrl-names = "default"; | |
116 | pinctrl-0 = <&host_vbus_drv>; | |
117 | regulator-name = "host-pwr"; | |
118 | regulator-min-microvolt = <5000000>; | |
119 | regulator-max-microvolt = <5000000>; | |
120 | regulator-always-on; | |
121 | regulator-boot-on; | |
122 | }; | |
123 | ||
124 | vsys: vsys-regulator { | |
125 | compatible = "regulator-fixed"; | |
126 | regulator-name = "vsys"; | |
127 | regulator-min-microvolt = <5000000>; | |
128 | regulator-max-microvolt = <5000000>; | |
129 | regulator-boot-on; | |
130 | }; | |
131 | }; | |
132 | ||
133 | &dmc { | |
134 | rockchip,pctl-timing = <0x12c 0xc8 0x1f4 0x1e 0x4e 0x4 0x69 0x6 | |
135 | 0x3 0x0 0x6 0x5 0xc 0x10 0x6 0x4 | |
136 | 0x4 0x5 0x4 0x200 0x3 0xa 0x40 0x0 | |
137 | 0x1 0x5 0x5 0x3 0xc 0x1e 0x100 0x0 | |
138 | 0x4 0x0>; | |
139 | rockchip,phy-timing = <0x208c6690 0x690878 0x10022a00 | |
140 | 0x220 0x40 0x0 0x0>; | |
141 | rockchip,sdram-params = <0x24716310 0 2 300000000 3 9 0>; | |
142 | }; | |
143 | ||
144 | &emac { | |
145 | status = "okay"; | |
146 | ||
147 | pinctrl-names = "default"; | |
148 | pinctrl-0 = <&emac_xfer>, <&emac_mdio>, <&phy_int>; | |
149 | ||
150 | phy = <&phy0>; | |
151 | phy-supply = <&vcc_rmii>; | |
152 | ||
153 | phy0: ethernet-phy@0 { | |
154 | reg = <0>; | |
155 | interrupt-parent = <&gpio3>; | |
156 | interrupts = <26 IRQ_TYPE_LEVEL_LOW>; | |
157 | }; | |
158 | }; | |
159 | ||
160 | &cpu0 { | |
161 | cpu0-supply = <&vdd_arm>; | |
162 | }; | |
163 | ||
164 | &i2c1 { | |
165 | status = "okay"; | |
166 | clock-frequency = <400000>; | |
167 | ||
168 | rtc@51 { | |
169 | compatible = "haoyu,hym8563"; | |
170 | reg = <0x51>; | |
171 | interrupt-parent = <&gpio0>; | |
172 | interrupts = <13 IRQ_TYPE_EDGE_FALLING>; | |
173 | pinctrl-names = "default"; | |
174 | pinctrl-0 = <&rtc_int>; | |
175 | #clock-cells = <0>; | |
176 | clock-output-names = "xin32k"; | |
177 | }; | |
178 | ||
179 | act8846: act8846@5a { | |
180 | compatible = "active-semi,act8846"; | |
181 | reg = <0x5a>; | |
182 | status = "okay"; | |
183 | system-power-controller; | |
184 | ||
185 | pinctrl-names = "default"; | |
186 | pinctrl-0 = <&act8846_dvs0_ctl>; | |
187 | ||
188 | vp1-supply = <&vsys>; | |
189 | vp2-supply = <&vsys>; | |
190 | vp3-supply = <&vsys>; | |
191 | vp4-supply = <&vsys>; | |
192 | inl1-supply = <&vcc_io>; | |
193 | inl2-supply = <&vsys>; | |
194 | inl3-supply = <&vsys>; | |
195 | ||
196 | regulators { | |
197 | vcc_ddr: REG1 { | |
198 | regulator-name = "VCC_DDR"; | |
199 | regulator-min-microvolt = <1200000>; | |
200 | regulator-max-microvolt = <1200000>; | |
201 | regulator-always-on; | |
202 | }; | |
203 | ||
204 | vdd_log: REG2 { | |
205 | regulator-name = "VDD_LOG"; | |
206 | regulator-min-microvolt = <1000000>; | |
207 | regulator-max-microvolt = <1000000>; | |
208 | regulator-always-on; | |
209 | }; | |
210 | ||
211 | vdd_arm: REG3 { | |
212 | regulator-name = "VDD_ARM"; | |
213 | regulator-min-microvolt = <875000>; | |
214 | regulator-max-microvolt = <1350000>; | |
215 | regulator-always-on; | |
216 | }; | |
217 | ||
218 | vcc_io: REG4 { | |
219 | regulator-name = "VCC_IO"; | |
220 | regulator-min-microvolt = <3300000>; | |
221 | regulator-max-microvolt = <3300000>; | |
222 | regulator-always-on; | |
223 | }; | |
224 | ||
225 | vdd_10: REG5 { | |
226 | regulator-name = "VDD_10"; | |
227 | regulator-min-microvolt = <1000000>; | |
228 | regulator-max-microvolt = <1000000>; | |
229 | regulator-always-on; | |
230 | }; | |
231 | ||
232 | vdd_hdmi: REG6 { | |
233 | regulator-name = "VDD_HDMI"; | |
234 | regulator-min-microvolt = <2500000>; | |
235 | regulator-max-microvolt = <2500000>; | |
236 | regulator-always-on; | |
237 | }; | |
238 | ||
239 | vcc18: REG7 { | |
240 | regulator-name = "VCC_18"; | |
241 | regulator-min-microvolt = <1800000>; | |
242 | regulator-max-microvolt = <1800000>; | |
243 | regulator-always-on; | |
244 | }; | |
245 | ||
246 | vcca_33: REG8 { | |
247 | regulator-name = "VCCA_33"; | |
248 | regulator-min-microvolt = <3300000>; | |
249 | regulator-max-microvolt = <3300000>; | |
250 | regulator-always-on; | |
251 | }; | |
252 | ||
253 | vcc_rmii: REG9 { | |
254 | regulator-name = "VCC_RMII"; | |
255 | regulator-min-microvolt = <3300000>; | |
256 | regulator-max-microvolt = <3300000>; | |
257 | }; | |
258 | ||
259 | vccio_wl: REG10 { | |
260 | regulator-name = "VCCIO_WL"; | |
261 | regulator-min-microvolt = <3300000>; | |
262 | regulator-max-microvolt = <3300000>; | |
263 | regulator-always-on; | |
264 | }; | |
265 | ||
266 | vcc_18: REG11 { | |
267 | regulator-name = "VCC18_IO"; | |
268 | regulator-min-microvolt = <1800000>; | |
269 | regulator-max-microvolt = <1800000>; | |
270 | regulator-always-on; | |
271 | }; | |
272 | ||
273 | vcc28: REG12 { | |
274 | regulator-name = "VCC_28"; | |
275 | regulator-min-microvolt = <2800000>; | |
276 | regulator-max-microvolt = <2800000>; | |
277 | regulator-always-on; | |
278 | }; | |
279 | }; | |
280 | }; | |
281 | }; | |
282 | ||
283 | &mmc0 { | |
284 | num-slots = <1>; | |
285 | status = "okay"; | |
286 | pinctrl-names = "default"; | |
287 | pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>; | |
288 | vmmc-supply = <&vcc_sd0>; | |
289 | ||
290 | bus-width = <4>; | |
291 | cap-mmc-highspeed; | |
292 | cap-sd-highspeed; | |
293 | disable-wp; | |
294 | }; | |
295 | ||
296 | &pwm1 { | |
297 | status = "okay"; | |
298 | }; | |
299 | ||
300 | &pwm2 { | |
301 | status = "okay"; | |
302 | }; | |
303 | ||
304 | &pwm3 { | |
305 | status = "okay"; | |
306 | }; | |
307 | ||
308 | &pinctrl { | |
309 | pcfg_output_low: pcfg-output-low { | |
310 | output-low; | |
311 | }; | |
312 | ||
313 | act8846 { | |
314 | act8846_dvs0_ctl: act8846-dvs0-ctl { | |
315 | rockchip,pins = <RK_GPIO3 27 RK_FUNC_GPIO &pcfg_output_low>; | |
316 | }; | |
317 | }; | |
318 | ||
319 | hym8563 { | |
320 | rtc_int: rtc-int { | |
321 | rockchip,pins = <RK_GPIO0 0 RK_FUNC_GPIO &pcfg_pull_up>; | |
322 | }; | |
323 | }; | |
324 | ||
325 | lan8720a { | |
326 | phy_int: phy-int { | |
327 | rockchip,pins = <RK_GPIO3 26 RK_FUNC_GPIO &pcfg_pull_up>; | |
328 | }; | |
329 | }; | |
330 | ||
331 | ir-receiver { | |
332 | ir_recv_pin: ir-recv-pin { | |
333 | rockchip,pins = <RK_GPIO0 10 RK_FUNC_GPIO &pcfg_pull_none>; | |
334 | }; | |
335 | }; | |
336 | ||
337 | usb { | |
338 | host_vbus_drv: host-vbus-drv { | |
339 | rockchip,pins = <0 3 RK_FUNC_GPIO &pcfg_pull_none>; | |
340 | }; | |
341 | otg_vbus_drv: otg-vbus-drv { | |
342 | rockchip,pins = <2 31 RK_FUNC_GPIO &pcfg_pull_none>; | |
343 | }; | |
344 | }; | |
345 | }; | |
346 | ||
347 | &spdif { | |
348 | status = "okay"; | |
349 | }; | |
350 | ||
351 | &uart0 { | |
352 | status = "okay"; | |
353 | }; | |
354 | ||
355 | &uart1 { | |
356 | status = "okay"; | |
357 | }; | |
358 | ||
359 | &uart2 { | |
360 | status = "okay"; | |
361 | u-boot,dm-spl; | |
362 | }; | |
363 | ||
364 | &uart3 { | |
365 | status = "okay"; | |
366 | }; | |
367 | ||
368 | &usbphy { | |
369 | status = "okay"; | |
370 | }; | |
371 | ||
372 | &usb_host { | |
373 | status = "okay"; | |
374 | }; | |
375 | ||
376 | &usb_otg { | |
377 | status = "okay"; | |
378 | }; | |
379 | ||
380 | &wdt { | |
381 | status = "okay"; | |
382 | }; |