ARM: dts: sun4i: gemei-g9: Add accelerometer (bma250) IRQ
[deliverable/linux.git] / arch / arm / boot / dts / am335x-baltos-ir5221.dts
1 /*
2 * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 */
8
9 /*
10 * VScom OnRISC
11 * http://www.vscom.de
12 */
13
14 /dts-v1/;
15
16 #include "am33xx.dtsi"
17 #include <dt-bindings/pwm/pwm.h>
18 #include <dt-bindings/interrupt-controller/irq.h>
19
20 / {
21 model = "OnRISC Baltos iR 5221";
22 compatible = "vscom,onrisc", "ti,am33xx";
23
24 cpus {
25 cpu@0 {
26 cpu0-supply = <&vdd1_reg>;
27 };
28 };
29
30 memory {
31 device_type = "memory";
32 reg = <0x80000000 0x10000000>; /* 256 MB */
33 };
34
35 vbat: fixedregulator@0 {
36 compatible = "regulator-fixed";
37 regulator-name = "vbat";
38 regulator-min-microvolt = <5000000>;
39 regulator-max-microvolt = <5000000>;
40 regulator-boot-on;
41 };
42
43 wl12xx_vmmc: fixedregulator@2 {
44 pinctrl-names = "default";
45 pinctrl-0 = <&wl12xx_gpio>;
46 compatible = "regulator-fixed";
47 regulator-name = "vwl1271";
48 regulator-min-microvolt = <3300000>;
49 regulator-max-microvolt = <3300000>;
50 gpio = <&gpio3 8 0>;
51 startup-delay-us = <70000>;
52 enable-active-high;
53 };
54 };
55
56 &am33xx_pinmux {
57 mmc2_pins: pinmux_mmc2_pins {
58 pinctrl-single,pins = <
59 0x020 (PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_ad8.mmc1_dat0_mux0 */
60 0x024 (PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_ad9.mmc1_dat1_mux0 */
61 0x028 (PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_ad10.mmc1_dat2_mux0 */
62 0x02c (PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_ad11.mmc1_dat3_mux0 */
63 0x080 (PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn1.mmc1_clk_mux0 */
64 0x084 (PIN_INPUT_PULLUP | MUX_MODE2) /* gpmc_csn2.mmc1_cmd_mux0 */
65 0x1e4 (PIN_INPUT_PULLUP | MUX_MODE7) /* emu0.gpio3[7] */
66 >;
67 };
68
69 wl12xx_gpio: pinmux_wl12xx_gpio {
70 pinctrl-single,pins = <
71 0x1e8 (PIN_OUTPUT_PULLUP | MUX_MODE7) /* emu1.gpio3[8] */
72 >;
73 };
74
75 tps65910_pins: pinmux_tps65910_pins {
76 pinctrl-single,pins = <
77 0x078 (PIN_INPUT_PULLUP | MUX_MODE7) /* gpmc_ben1.gpio1[28] */
78 >;
79 };
80
81 tca6416_pins: pinmux_tca6416_pins {
82 pinctrl-single,pins = <
83 0x1b4 (PIN_INPUT_PULLUP | MUX_MODE7) /* xdma_event_intr1.gpio0[20] tca6416 stuff */
84 >;
85 };
86
87 i2c1_pins: pinmux_i2c1_pins {
88 pinctrl-single,pins = <
89 0x158 0x2a /* spi0_d1.i2c1_sda_mux3, INPUT | MODE2 */
90 0x15c 0x2a /* spi0_cs0.i2c1_scl_mux3, INPUT | MODE2 */
91 >;
92 };
93
94 dcan1_pins: pinmux_dcan1_pins {
95 pinctrl-single,pins = <
96 0x168 0x0a /* uart0_ctsn.dcan1_tx_mux0, OUTPUT | MODE2 */
97 0x16c 0x2a /* uart0_rtsn.dcan1_rx_mux0, INPUT | MODE2 */
98 >;
99 };
100
101 uart0_pins: pinmux_uart0_pins {
102 pinctrl-single,pins = <
103 0x170 (PIN_INPUT_PULLUP | MUX_MODE0) /* uart0_rxd.uart0_rxd */
104 0x174 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart0_txd.uart0_txd */
105 >;
106 };
107
108 uart1_pins: pinmux_uart1_pins {
109 pinctrl-single,pins = <
110 0x180 0x28 /* uart1_rxd, INPUT | MODE0 */
111 0x184 0x28 /* uart1_txd, INPUT | MODE0 */
112 /*0x178 0x28*/ /* uart1_ctsn, INPUT | MODE0 */
113 /*0x17c 0x08*/ /* uart1_rtsn, OUTPUT | MODE0 */
114 0x178 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* uart1_ctsn, INPUT | MODE0 */
115 0x17c (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* uart1_rtsn, OUTPUT | MODE0 */
116 0x0e0 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* lcd_vsync.gpio2[22] DTR */
117 0x0e4 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* lcd_hsync.gpio2[23] DSR */
118 0x0e8 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* lcd_pclk.gpio2[24] DCD */
119 0x0ec (PIN_INPUT_PULLDOWN | MUX_MODE7) /* lcd_ac_bias_en.gpio2[25] RI */
120 >;
121 };
122
123 uart2_pins: pinmux_uart2_pins {
124 pinctrl-single,pins = <
125 0x150 0x29 /* spi0_sclk.uart2_rxd_mux3, INPUT | MODE1 */
126 0x154 0x09 /* spi0_d0.uart2_txd_mux3, OUTPUT | MODE1 */
127 /*0x188 0x2a*/ /* i2c0_sda.uart2_ctsn_mux0, INPUT | MODE2 */
128 /*0x18c 0x2a*/ /* i2c0_scl.uart2_rtsn_mux0, INPUT | MODE2 */
129 0x188 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* i2c0_sda.uart2_ctsn_mux0 */
130 0x18c (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* i2c0_scl.uart2_rtsn_mux0 */
131 0x030 (PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad12.gpio1[12] DTR */
132 0x034 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad13.gpio1[13] DSR */
133 0x038 (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad14.gpio1[14] DCD */
134 0x03c (PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_ad15.gpio1[15] RI */
135
136 0x1a0 (PIN_INPUT_PULLUP | MUX_MODE7) /* mcasp0_aclkr.gpio3[18], INPUT_PULLDOWN | MODE7 */
137 >;
138 };
139
140 cpsw_default: cpsw_default {
141 pinctrl-single,pins = <
142 /* Slave 1 */
143 0x10c (PIN_INPUT_PULLDOWN | MUX_MODE1) /* mii1_crs.rmii1_crs_dv */
144 0x114 (PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* mii1_tx_en.rmii1_txen */
145 0x124 (PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* mii1_txd1.rmii1_txd1 */
146 0x128 (PIN_OUTPUT_PULLDOWN | MUX_MODE1) /* mii1_txd0.rmii1_txd0 */
147 0x13c (PIN_INPUT_PULLDOWN | MUX_MODE1) /* mii1_rxd1.rmii1_rxd1 */
148 0x140 (PIN_INPUT_PULLDOWN | MUX_MODE1) /* mii1_rxd0.rmii1_rxd0 */
149 0x144 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* rmii1_ref_clk.rmii1_refclk */
150
151
152 /* Slave 2 */
153 0x40 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a0.rgmii2_tctl */
154 0x44 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a1.rgmii2_rctl */
155 0x48 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a2.rgmii2_td3 */
156 0x4c (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a3.rgmii2_td2 */
157 0x50 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a4.rgmii2_td1 */
158 0x54 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a5.rgmii2_td0 */
159 0x58 (PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* gpmc_a6.rgmii2_tclk */
160 0x5c (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a7.rgmii2_rclk */
161 0x60 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a8.rgmii2_rd3 */
162 0x64 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a9.rgmii2_rd2 */
163 0x68 (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a10.rgmii2_rd1 */
164 0x6c (PIN_INPUT_PULLDOWN | MUX_MODE2) /* gpmc_a11.rgmii2_rd0 */
165 >;
166 };
167
168 cpsw_sleep: cpsw_sleep {
169 pinctrl-single,pins = <
170 /* Slave 1 reset value */
171 0x10c (PIN_INPUT_PULLDOWN | MUX_MODE7)
172 0x114 (PIN_INPUT_PULLDOWN | MUX_MODE7)
173 0x124 (PIN_INPUT_PULLDOWN | MUX_MODE7)
174 0x128 (PIN_INPUT_PULLDOWN | MUX_MODE7)
175 0x13c (PIN_INPUT_PULLDOWN | MUX_MODE7)
176 0x140 (PIN_INPUT_PULLDOWN | MUX_MODE7)
177 0x144 (PIN_INPUT_PULLDOWN | MUX_MODE7)
178
179 /* Slave 2 reset value*/
180 0x40 (PIN_INPUT_PULLDOWN | MUX_MODE7)
181 0x44 (PIN_INPUT_PULLDOWN | MUX_MODE7)
182 0x48 (PIN_INPUT_PULLDOWN | MUX_MODE7)
183 0x4c (PIN_INPUT_PULLDOWN | MUX_MODE7)
184 0x50 (PIN_INPUT_PULLDOWN | MUX_MODE7)
185 0x54 (PIN_INPUT_PULLDOWN | MUX_MODE7)
186 0x58 (PIN_INPUT_PULLDOWN | MUX_MODE7)
187 0x5c (PIN_INPUT_PULLDOWN | MUX_MODE7)
188 0x60 (PIN_INPUT_PULLDOWN | MUX_MODE7)
189 0x64 (PIN_INPUT_PULLDOWN | MUX_MODE7)
190 0x68 (PIN_INPUT_PULLDOWN | MUX_MODE7)
191 0x6c (PIN_INPUT_PULLDOWN | MUX_MODE7)
192 >;
193 };
194
195 davinci_mdio_default: davinci_mdio_default {
196 pinctrl-single,pins = <
197 /* MDIO */
198 0x148 (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* mdio_data.mdio_data */
199 0x14c (PIN_OUTPUT_PULLUP | MUX_MODE0) /* mdio_clk.mdio_clk */
200 >;
201 };
202
203 davinci_mdio_sleep: davinci_mdio_sleep {
204 pinctrl-single,pins = <
205 /* MDIO reset value */
206 0x148 (PIN_INPUT_PULLDOWN | MUX_MODE7)
207 0x14c (PIN_INPUT_PULLDOWN | MUX_MODE7)
208 >;
209 };
210
211 nandflash_pins_s0: nandflash_pins_s0 {
212 pinctrl-single,pins = <
213 0x0 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad0.gpmc_ad0 */
214 0x4 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad1.gpmc_ad1 */
215 0x8 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad2.gpmc_ad2 */
216 0xc (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad3.gpmc_ad3 */
217 0x10 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad4.gpmc_ad4 */
218 0x14 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad5.gpmc_ad5 */
219 0x18 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad6.gpmc_ad6 */
220 0x1c (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad7.gpmc_ad7 */
221 0x70 (PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_wait0.gpmc_wait0 */
222 0x74 (PIN_INPUT_PULLUP | MUX_MODE7) /* gpmc_wpn.gpio0_30 */
223 0x7c (PIN_OUTPUT | MUX_MODE0) /* gpmc_csn0.gpmc_csn0 */
224 0x90 (PIN_OUTPUT | MUX_MODE0) /* gpmc_advn_ale.gpmc_advn_ale */
225 0x94 (PIN_OUTPUT | MUX_MODE0) /* gpmc_oen_ren.gpmc_oen_ren */
226 0x98 (PIN_OUTPUT | MUX_MODE0) /* gpmc_wen.gpmc_wen */
227 0x9c (PIN_OUTPUT | MUX_MODE0) /* gpmc_be0n_cle.gpmc_be0n_cle */
228 >;
229 };
230 };
231
232 &elm {
233 status = "okay";
234 };
235
236 &gpmc {
237 pinctrl-names = "default";
238 pinctrl-0 = <&nandflash_pins_s0>;
239 ranges = <0 0 0x08000000 0x10000000>; /* CS0: NAND */
240 status = "okay";
241
242 nand@0,0 {
243 reg = <0 0 0>; /* CS0, offset 0 */
244 nand-bus-width = <8>;
245 ti,nand-ecc-opt = "bch8";
246 ti,nand-xfer-type = "polled";
247
248 gpmc,device-nand = "true";
249 gpmc,device-width = <1>;
250 gpmc,sync-clk-ps = <0>;
251 gpmc,cs-on-ns = <0>;
252 gpmc,cs-rd-off-ns = <44>;
253 gpmc,cs-wr-off-ns = <44>;
254 gpmc,adv-on-ns = <6>;
255 gpmc,adv-rd-off-ns = <34>;
256 gpmc,adv-wr-off-ns = <44>;
257 gpmc,we-on-ns = <0>;
258 gpmc,we-off-ns = <40>;
259 gpmc,oe-on-ns = <0>;
260 gpmc,oe-off-ns = <54>;
261 gpmc,access-ns = <64>;
262 gpmc,rd-cycle-ns = <82>;
263 gpmc,wr-cycle-ns = <82>;
264 gpmc,wait-on-read = "true";
265 gpmc,wait-on-write = "true";
266 gpmc,bus-turnaround-ns = <0>;
267 gpmc,cycle2cycle-delay-ns = <0>;
268 gpmc,clk-activation-ns = <0>;
269 gpmc,wait-monitoring-ns = <0>;
270 gpmc,wr-access-ns = <40>;
271 gpmc,wr-data-mux-bus-ns = <0>;
272
273 #address-cells = <1>;
274 #size-cells = <1>;
275 elm_id = <&elm>;
276 };
277 };
278
279 &uart0 {
280 pinctrl-names = "default";
281 pinctrl-0 = <&uart0_pins>;
282
283 status = "okay";
284 };
285
286 &uart1 {
287 pinctrl-names = "default";
288 pinctrl-0 = <&uart1_pins>;
289 dtr-gpios = <&gpio2 22 GPIO_ACTIVE_LOW>;
290 dsr-gpios = <&gpio2 23 GPIO_ACTIVE_LOW>;
291 dcd-gpios = <&gpio2 24 GPIO_ACTIVE_LOW>;
292 rng-gpios = <&gpio2 25 GPIO_ACTIVE_LOW>;
293 cts-gpios = <&gpio0 12 GPIO_ACTIVE_LOW>;
294 rts-gpios = <&gpio0 13 GPIO_ACTIVE_LOW>;
295
296 status = "okay";
297 };
298
299 &uart2 {
300 pinctrl-names = "default";
301 pinctrl-0 = <&uart2_pins>;
302 dtr-gpios = <&gpio1 12 GPIO_ACTIVE_LOW>;
303 dsr-gpios = <&gpio1 13 GPIO_ACTIVE_LOW>;
304 dcd-gpios = <&gpio1 14 GPIO_ACTIVE_LOW>;
305 rng-gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
306 cts-gpios = <&gpio3 5 GPIO_ACTIVE_LOW>;
307 rts-gpios = <&gpio3 6 GPIO_ACTIVE_LOW>;
308
309 status = "okay";
310 };
311
312 &i2c1 {
313 pinctrl-names = "default";
314 pinctrl-0 = <&i2c1_pins>;
315
316 status = "okay";
317 clock-frequency = <400000>;
318
319 tps: tps@2d {
320 reg = <0x2d>;
321 gpio-controller;
322 #gpio-cells = <2>;
323 interrupt-parent = <&gpio1>;
324 interrupts = <28 GPIO_ACTIVE_LOW>;
325 pinctrl-names = "default";
326 pinctrl-0 = <&tps65910_pins>;
327 };
328
329 at24@50 {
330 compatible = "at24,24c02";
331 pagesize = <8>;
332 reg = <0x50>;
333 };
334
335 tca6416: gpio@20 {
336 compatible = "ti,tca6416";
337 reg = <0x20>;
338 gpio-controller;
339 #gpio-cells = <2>;
340 interrupt-parent = <&gpio0>;
341 interrupts = <20 GPIO_ACTIVE_LOW>;
342 pinctrl-names = "default";
343 pinctrl-0 = <&tca6416_pins>;
344 };
345 };
346
347 &usb {
348 status = "okay";
349 };
350
351 &usb_ctrl_mod {
352 status = "okay";
353 };
354
355 &usb0_phy {
356 status = "okay";
357 };
358
359 &usb1_phy {
360 status = "okay";
361 };
362
363 &usb0 {
364 status = "okay";
365 dr_mode = "host";
366 };
367
368 &usb1 {
369 status = "okay";
370 dr_mode = "otg";
371 };
372
373 &cppi41dma {
374 status = "okay";
375 };
376
377 #include "tps65910.dtsi"
378
379 &tps {
380 vcc1-supply = <&vbat>;
381 vcc2-supply = <&vbat>;
382 vcc3-supply = <&vbat>;
383 vcc4-supply = <&vbat>;
384 vcc5-supply = <&vbat>;
385 vcc6-supply = <&vbat>;
386 vcc7-supply = <&vbat>;
387 vccio-supply = <&vbat>;
388
389 ti,en-ck32k-xtal = <1>;
390
391 regulators {
392 vrtc_reg: regulator@0 {
393 regulator-always-on;
394 };
395
396 vio_reg: regulator@1 {
397 regulator-always-on;
398 };
399
400 vdd1_reg: regulator@2 {
401 /* VDD_MPU voltage limits 0.95V - 1.26V with +/-4% tolerance */
402 regulator-name = "vdd_mpu";
403 regulator-min-microvolt = <912500>;
404 regulator-max-microvolt = <1312500>;
405 regulator-boot-on;
406 regulator-always-on;
407 };
408
409 vdd2_reg: regulator@3 {
410 /* VDD_CORE voltage limits 0.95V - 1.1V with +/-4% tolerance */
411 regulator-name = "vdd_core";
412 regulator-min-microvolt = <912500>;
413 regulator-max-microvolt = <1150000>;
414 regulator-boot-on;
415 regulator-always-on;
416 };
417
418 vdd3_reg: regulator@4 {
419 regulator-always-on;
420 };
421
422 vdig1_reg: regulator@5 {
423 regulator-always-on;
424 };
425
426 vdig2_reg: regulator@6 {
427 regulator-always-on;
428 };
429
430 vpll_reg: regulator@7 {
431 regulator-always-on;
432 };
433
434 vdac_reg: regulator@8 {
435 regulator-always-on;
436 };
437
438 vaux1_reg: regulator@9 {
439 regulator-always-on;
440 };
441
442 vaux2_reg: regulator@10 {
443 regulator-always-on;
444 };
445
446 vaux33_reg: regulator@11 {
447 regulator-always-on;
448 };
449
450 vmmc_reg: regulator@12 {
451 regulator-min-microvolt = <1800000>;
452 regulator-max-microvolt = <3300000>;
453 regulator-always-on;
454 };
455 };
456 };
457
458 &mac {
459 pinctrl-names = "default", "sleep";
460 pinctrl-0 = <&cpsw_default>;
461 pinctrl-1 = <&cpsw_sleep>;
462 dual_emac = <1>;
463
464 status = "okay";
465 };
466
467 &davinci_mdio {
468 pinctrl-names = "default", "sleep";
469 pinctrl-0 = <&davinci_mdio_default>;
470 pinctrl-1 = <&davinci_mdio_sleep>;
471
472 status = "okay";
473 };
474
475 &cpsw_emac0 {
476 phy_id = <&davinci_mdio>, <0>;
477 phy-mode = "rmii";
478 dual_emac_res_vlan = <1>;
479 };
480
481 &cpsw_emac1 {
482 phy_id = <&davinci_mdio>, <7>;
483 phy-mode = "rgmii-txid";
484 dual_emac_res_vlan = <2>;
485 };
486
487 &phy_sel {
488 rmii-clock-ext = <1>;
489 };
490
491 &mmc1 {
492 vmmc-supply = <&vmmc_reg>;
493 status = "okay";
494 };
495
496 &mmc2 {
497 status = "okay";
498 vmmc-supply = <&wl12xx_vmmc>;
499 ti,non-removable;
500 bus-width = <4>;
501 cap-power-off-card;
502 pinctrl-names = "default";
503 pinctrl-0 = <&mmc2_pins>;
504
505 #address-cells = <1>;
506 #size-cells = <0>;
507 wlcore: wlcore@2 {
508 compatible = "ti,wl1835";
509 reg = <2>;
510 interrupt-parent = <&gpio3>;
511 interrupts = <7 IRQ_TYPE_LEVEL_HIGH>;
512 };
513 };
514
515 &sham {
516 status = "okay";
517 };
518
519 &aes {
520 status = "okay";
521 };
522
523 &gpio0 {
524 ti,no-reset-on-init;
525 };
526
527 &dcan1 {
528 pinctrl-names = "default";
529 pinctrl-0 = <&dcan1_pins>;
530
531 status = "okay";
532 };
This page took 0.053919 seconds and 5 git commands to generate.