]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blame - arch/arm/boot/dts/rk3066a-rayeager.dts
Merge branches 'for-4.4/upstream-fixes', 'for-4.5/async-suspend', 'for-4.5/container...
[mirror_ubuntu-artful-kernel.git] / arch / arm / boot / dts / rk3066a-rayeager.dts
CommitLineData
11ff8c86
FN
1/*
2 * Copyright (c) 2014, 2015 FUKAUMI Naoki <naobsd@gmail.com>
3 *
4 * This file is dual-licensed: you can use it either under the terms
5 * of the GPL or the X11 license, at your option. Note that this dual
6 * licensing only applies to this file, and not this project as a
7 * whole.
8 *
9 * a) This file is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU General Public License as
11 * published by the Free Software Foundation; either version 2 of the
12 * License, or (at your option) any later version.
13 *
14 * This file is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * Or, alternatively,
20 *
21 * b) Permission is hereby granted, free of charge, to any person
22 * obtaining a copy of this software and associated documentation
23 * files (the "Software"), to deal in the Software without
24 * restriction, including without limitation the rights to use,
25 * copy, modify, merge, publish, distribute, sublicense, and/or
26 * sell copies of the Software, and to permit persons to whom the
27 * Software is furnished to do so, subject to the following
28 * conditions:
29 *
30 * The above copyright notice and this permission notice shall be
31 * included in all copies or substantial portions of the Software.
32 *
33 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
34 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
35 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
36 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
37 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
38 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
39 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
40 * OTHER DEALINGS IN THE SOFTWARE.
41 */
42
43/dts-v1/;
44#include "rk3066a.dtsi"
45
46/ {
47 model = "Rayeager PX2";
48 compatible = "chipspark,rayeager-px2", "rockchip,rk3066a";
49
50 memory {
6158e6d0 51 device_type = "memory";
11ff8c86
FN
52 reg = <0x60000000 0x40000000>;
53 };
54
55 ir: ir-receiver {
56 compatible = "gpio-ir-receiver";
57 gpios = <&gpio6 1 GPIO_ACTIVE_LOW>;
58 pinctrl-names = "default";
59 pinctrl-0 = <&ir_int>;
60 };
61
62 keys: gpio-keys {
63 compatible = "gpio-keys";
64 #address-cells = <1>;
65 #size-cells = <0>;
66
67 button@0 {
68 gpio-key,wakeup = <1>;
69 gpios = <&gpio6 2 GPIO_ACTIVE_LOW>;
70 label = "GPIO Power";
71 linux,code = <116>;
72 pinctrl-names = "default";
73 pinctrl-0 = <&pwr_key>;
74 };
75 };
76
77 vsys: vsys-regulator {
78 compatible = "regulator-fixed";
79 regulator-name = "vsys";
80 regulator-min-microvolt = <5000000>;
81 regulator-max-microvolt = <5000000>;
82 regulator-always-on;
83 regulator-boot-on;
84 };
85
86 /* input for 5V_STDBY is VSYS or DC5V, selectable by jumper J4 */
87 vcc_stdby: 5v-stdby-regulator {
88 compatible = "regulator-fixed";
89 regulator-name = "5v_stdby";
90 regulator-min-microvolt = <5000000>;
91 regulator-max-microvolt = <5000000>;
92 regulator-always-on;
93 regulator-boot-on;
94 };
95
96 vcc_emmc: emmc-regulator {
97 compatible = "regulator-fixed";
98 regulator-name = "emmc_vccq";
99 regulator-min-microvolt = <3000000>;
100 regulator-max-microvolt = <3000000>;
101 vin-supply = <&vsys>;
102 };
103
104 vcc_sata: sata-regulator {
105 compatible = "regulator-fixed";
106 enable-active-high;
107 gpio = <&gpio4 22 GPIO_ACTIVE_HIGH>;
108 pinctrl-names = "default";
109 pinctrl-0 = <&sata_pwr>;
110 regulator-name = "usb_5v";
111 regulator-min-microvolt = <5000000>;
112 regulator-max-microvolt = <5000000>;
113 regulator-always-on;
114 vin-supply = <&vcc_stdby>;
115 };
116
117 vcc_sd: sdmmc-regulator {
118 compatible = "regulator-fixed";
119 gpio = <&gpio3 7 GPIO_ACTIVE_LOW>;
120 pinctrl-names = "default";
121 pinctrl-0 = <&sdmmc_pwr>;
122 regulator-name = "vcc_sd";
123 regulator-min-microvolt = <3300000>;
124 regulator-max-microvolt = <3300000>;
125 startup-delay-us = <100000>;
126 vin-supply = <&vcc_io>;
127 };
128
129 vcc_host: usb-host-regulator {
130 compatible = "regulator-fixed";
131 enable-active-high;
132 gpio = <&gpio0 6 GPIO_ACTIVE_HIGH>;
133 pinctrl-names = "default";
134 pinctrl-0 = <&host_drv>;
135 regulator-name = "host-pwr";
136 regulator-min-microvolt = <5000000>;
137 regulator-max-microvolt = <5000000>;
138 regulator-always-on;
139 vin-supply = <&vcc_stdby>;
140 };
141
142 vcc_otg: usb-otg-regulator {
143 compatible = "regulator-fixed";
144 enable-active-high;
145 gpio = <&gpio0 5 GPIO_ACTIVE_HIGH>;
146 pinctrl-names = "default";
147 pinctrl-0 = <&otg_drv>;
148 regulator-name = "vcc_otg";
149 regulator-min-microvolt = <5000000>;
150 regulator-max-microvolt = <5000000>;
151 regulator-always-on;
152 vin-supply = <&vcc_stdby>;
153 };
154};
155
156&cpu0 {
157 cpu0-supply = <&vdd_arm>;
158};
159
160&emac {
161 pinctrl-names = "default";
162 pinctrl-0 = <&emac_xfer>, <&emac_mdio>, <&rmii_rst>;
163 phy = <&phy0>;
164 phy-supply = <&vcc_rmii>;
165 status = "okay";
166
167 phy0: ethernet-phy@0 {
168 reg = <0>;
169 };
170};
171
172&emmc {
173 broken-cd;
174 bus-width = <8>;
175 cap-mmc-highspeed;
176 disable-wp;
177 non-removable;
178 num-slots = <1>;
179 pinctrl-names = "default";
180 pinctrl-0 = <&emmc_clk>, <&emmc_cmd>, <&emmc_rst>;
181 vmmc-supply = <&vcc_emmc>;
182 vqmmc-supply = <&vcc_emmc>;
183 status = "okay";
184};
185
186&i2c0 {
187 clock-frequency = <400000>;
188 status = "okay";
189
190 ak8963: ak8963@0d {
191 compatible = "asahi-kasei,ak8975";
192 reg = <0x0d>;
193 interrupt-parent = <&gpio4>;
194 interrupts = <17 IRQ_TYPE_EDGE_RISING>;
195 pinctrl-names = "default";
196 pinctrl-0 = <&comp_int>;
197 };
198
199 mma8452: mma8452@1d {
200 compatible = "fsl,mma8452";
201 reg = <0x1d>;
202 interrupt-parent = <&gpio4>;
203 interrupts = <16 IRQ_TYPE_EDGE_RISING>;
204 pinctrl-names = "default";
205 pinctrl-0 = <&gsensor_int>;
206 };
207};
208
209&i2c1 {
210 clock-frequency = <400000>;
211 status = "okay";
212
213 tps: tps@2d {
214 reg = <0x2d>;
215 interrupt-parent = <&gpio6>;
216 interrupts = <4 IRQ_TYPE_EDGE_RISING>;
217 pinctrl-names = "default";
218 pinctrl-0 = <&pmic_int>, <&pwr_hold>;
219
220 vcc1-supply = <&vsys>;
221 vcc2-supply = <&vsys>;
222 vcc3-supply = <&vsys>;
223 vcc4-supply = <&vsys>;
224 vcc5-supply = <&vcc_io>;
225 vcc6-supply = <&vcc_io>;
226 vcc7-supply = <&vsys>;
227 vccio-supply = <&vsys>;
228
229 regulators {
230 vcc_rtc: regulator@0 {
231 regulator-name = "vcc_rtc";
232 regulator-always-on;
233 };
234
235 vcc_io: regulator@1 {
236 regulator-name = "vcc_io";
237 regulator-min-microvolt = <3300000>;
238 regulator-max-microvolt = <3300000>;
239 regulator-always-on;
240 };
241
242 vdd_arm: regulator@2 {
243 regulator-name = "vdd_arm";
244 regulator-min-microvolt = <600000>;
245 regulator-max-microvolt = <1500000>;
246 regulator-always-on;
247 regulator-boot-on;
248 };
249
250 vcc_ddr: regulator@3 {
251 regulator-name = "vcc_ddr";
252 regulator-min-microvolt = <600000>;
253 regulator-max-microvolt = <1500000>;
254 regulator-always-on;
255 regulator-boot-on;
256 };
257
258 vcc18: regulator@5 {
259 regulator-name = "vcc18";
260 regulator-min-microvolt = <1800000>;
261 regulator-max-microvolt = <1800000>;
262 regulator-always-on;
263 };
264
265 vdd_11: regulator@6 {
266 regulator-name = "vdd_11";
267 regulator-min-microvolt = <1100000>;
268 regulator-max-microvolt = <1100000>;
269 regulator-always-on;
270 };
271
272 vcc_25: regulator@7 {
273 regulator-name = "vcc_25";
274 regulator-min-microvolt = <2500000>;
275 regulator-max-microvolt = <2500000>;
276 regulator-always-on;
277 };
278
279 vccio_wl: regulator@8 {
280 regulator-name = "vccio_wl";
281 regulator-min-microvolt = <1800000>;
282 regulator-max-microvolt = <1800000>;
283 };
284
285 vcc25_hdmi: regulator@9 {
286 regulator-name = "vcc25_hdmi";
287 regulator-min-microvolt = <2500000>;
288 regulator-max-microvolt = <2500000>;
289 };
290
291 vcca_33: regulator@10 {
292 regulator-name = "vcca_33";
293 regulator-min-microvolt = <3300000>;
294 regulator-max-microvolt = <3300000>;
295 };
296
297 vcc_rmii: regulator@11 {
298 regulator-name = "vcc_rmii";
299 regulator-min-microvolt = <3300000>;
300 regulator-max-microvolt = <3300000>;
301 };
302
303 vcc28_cif: regulator@12 {
304 regulator-name = "vcc28_cif";
305 regulator-min-microvolt = <2800000>;
306 regulator-max-microvolt = <2800000>;
307 };
308 };
309 };
310};
311
312#include "tps65910.dtsi"
313
314&i2c2 {
315 status = "okay";
316};
317
318&i2c3 {
319 status = "okay";
320};
321
322&i2c4 {
323 status = "okay";
324};
325
326&mmc0 {
327 bus-width = <4>;
328 disable-wp;
329 num-slots = <1>;
330 pinctrl-names = "default";
331 pinctrl-0 = <&sd0_clk>, <&sd0_cmd>, <&sd0_cd>, <&sd0_bus4>;
332 vmmc-supply = <&vcc_sd>;
1d727ec9
SL
333 cap-mmc-highspeed;
334 cap-sd-highspeed;
11ff8c86
FN
335 status = "okay";
336};
337
338&mmc1 {
339 broken-cd;
340 bus-width = <4>;
341 disable-wp;
342 non-removable;
343 num-slots = <1>;
344 pinctrl-names = "default";
345 pinctrl-0 = <&sd1_clk>, <&sd1_cmd>, <&sd1_bus4>;
346 vmmc-supply = <&vccio_wl>;
347 status = "okay";
348};
349
350&pinctrl {
351 pcfg_output_high: pcfg-output-high {
352 output-high;
353 };
354
355 ak8963 {
356 comp_int: comp-int {
357 rockchip,pins = <4 17 RK_FUNC_GPIO &pcfg_pull_default>;
358 };
359 };
360
361 emac {
362 rmii_rst: rmii-rst {
363 rockchip,pins = <1 30 RK_FUNC_GPIO &pcfg_output_high>;
364 };
365 };
366
367 ir {
368 ir_int: ir-int {
369 rockchip,pins = <6 1 RK_FUNC_GPIO &pcfg_pull_default>;
370 };
371 };
372
373 keys {
374 pwr_key: pwr-key {
375 rockchip,pins = <6 2 RK_FUNC_GPIO &pcfg_pull_default>;
376 };
377 };
378
379 mma8452 {
380 gsensor_int: gsensor-int {
381 rockchip,pins = <4 16 RK_FUNC_GPIO &pcfg_pull_default>;
382 };
383 };
384
385 mmc {
386 sdmmc_pwr: sdmmc-pwr {
387 rockchip,pins = <3 7 RK_FUNC_GPIO &pcfg_pull_default>;
388 };
389 };
390
391 usb_host {
392 host_drv: host-drv {
393 rockchip,pins = <0 6 RK_FUNC_GPIO &pcfg_pull_default>;
394 };
395
396 hub_rst: hub-rst {
397 rockchip,pins = <1 31 RK_FUNC_GPIO &pcfg_output_high>;
398 };
399
400 sata_pwr: sata-pwr {
401 rockchip,pins = <4 22 RK_FUNC_GPIO &pcfg_pull_default>;
402 };
403
404 sata_reset: sata-reset {
405 rockchip,pins = <0 13 RK_FUNC_GPIO &pcfg_output_high>;
406 };
407 };
408
409 usb_otg {
410 otg_drv: otg-drv {
411 rockchip,pins = <0 5 RK_FUNC_GPIO &pcfg_pull_default>;
412 };
413 };
414
415 tps {
416 pmic_int: pmic-int {
417 rockchip,pins = <6 4 RK_FUNC_GPIO &pcfg_pull_default>;
418 };
419
420 pwr_hold: pwr-hold {
421 rockchip,pins = <6 8 RK_FUNC_GPIO &pcfg_output_high>;
422 };
423 };
424};
425
426&pwm1 {
427 status = "okay";
428};
429
430&pwm2 {
431 status = "okay";
432};
433
434&saradc {
435 vref-supply = <&vcc_25>;
436 status = "okay";
437};
438
439&spi0 {
440 status = "okay";
441};
442
443&uart0 {
444 pinctrl-names = "default";
445 pinctrl-0 = <&uart0_xfer>, <&uart0_cts>, <&uart0_rts>;
446 status = "okay";
447};
448
449&uart2 {
450 status = "okay";
451};
452
453&uart3 {
454 pinctrl-names = "default";
455 pinctrl-0 = <&uart3_xfer>, <&uart3_cts>, <&uart3_rts>;
456 status = "okay";
457};
458
459&usb_host {
460 pinctrl-names = "default";
461 pinctrl-0 = <&hub_rst>, <&sata_reset>;
462 status = "okay";
463};
464
760bb977
HS
465&usbphy {
466 status = "okay";
467};
468
11ff8c86
FN
469&usb_otg {
470 status = "okay";
471};
472
473&wdt {
474 status = "okay";
475};