2 * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
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.
9 #include <dt-bindings/gpio/gpio.h>
10 #include <dt-bindings/interrupt-controller/arm-gic.h>
11 #include <dt-bindings/pinctrl/omap.h>
13 #include "skeleton.dtsi"
16 compatible = "ti,omap4430", "ti,omap4";
17 interrupt-parent = <&gic>;
31 compatible = "arm,cortex-a9";
33 next-level-cache = <&L2>;
37 compatible = "arm,cortex-a9";
39 next-level-cache = <&L2>;
44 gic: interrupt-controller@48241000 {
45 compatible = "arm,cortex-a9-gic";
47 #interrupt-cells = <3>;
48 reg = <0x48241000 0x1000>,
52 L2: l2-cache-controller@48242000 {
53 compatible = "arm,pl310-cache";
54 reg = <0x48242000 0x1000>;
59 local-timer@48240600 {
60 compatible = "arm,cortex-a9-twd-timer";
61 reg = <0x48240600 0x20>;
62 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_HIGH)>;
66 * The soc node represents the soc top level view. It is uses for IPs
67 * that are not memory mapped in the MPU view or for the MPU itself.
70 compatible = "ti,omap-infra";
72 compatible = "ti,omap4-mpu";
77 compatible = "ti,omap3-c64";
82 compatible = "ti,ivahd";
88 * XXX: Use a flat representation of the OMAP4 interconnect.
89 * The real OMAP interconnect network is quite complex.
90 * Since that will not bring real advantage to represent that in DT for
91 * the moment, just use a fake OCP bus entry to represent the whole bus
95 compatible = "ti,omap4-l3-noc", "simple-bus";
99 ti,hwmods = "l3_main_1", "l3_main_2", "l3_main_3";
100 reg = <0x44000000 0x1000>,
103 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
104 <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
106 counter32k: counter@4a304000 {
107 compatible = "ti,omap-counter32k";
108 reg = <0x4a304000 0x20>;
109 ti,hwmods = "counter_32k";
112 omap4_pmx_core: pinmux@4a100040 {
113 compatible = "ti,omap4-padconf", "pinctrl-single";
114 reg = <0x4a100040 0x0196>;
115 #address-cells = <1>;
117 pinctrl-single,register-width = <16>;
118 pinctrl-single,function-mask = <0x7fff>;
120 omap4_pmx_wkup: pinmux@4a31e040 {
121 compatible = "ti,omap4-padconf", "pinctrl-single";
122 reg = <0x4a31e040 0x0038>;
123 #address-cells = <1>;
125 pinctrl-single,register-width = <16>;
126 pinctrl-single,function-mask = <0x7fff>;
129 sdma: dma-controller@4a056000 {
130 compatible = "ti,omap4430-sdma";
131 reg = <0x4a056000 0x1000>;
132 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
133 <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
134 <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
135 <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
137 #dma-channels = <32>;
138 #dma-requests = <127>;
141 gpio1: gpio@4a310000 {
142 compatible = "ti,omap4-gpio";
143 reg = <0x4a310000 0x200>;
144 interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
149 interrupt-controller;
150 #interrupt-cells = <2>;
153 gpio2: gpio@48055000 {
154 compatible = "ti,omap4-gpio";
155 reg = <0x48055000 0x200>;
156 interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
160 interrupt-controller;
161 #interrupt-cells = <2>;
164 gpio3: gpio@48057000 {
165 compatible = "ti,omap4-gpio";
166 reg = <0x48057000 0x200>;
167 interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
171 interrupt-controller;
172 #interrupt-cells = <2>;
175 gpio4: gpio@48059000 {
176 compatible = "ti,omap4-gpio";
177 reg = <0x48059000 0x200>;
178 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
182 interrupt-controller;
183 #interrupt-cells = <2>;
186 gpio5: gpio@4805b000 {
187 compatible = "ti,omap4-gpio";
188 reg = <0x4805b000 0x200>;
189 interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
193 interrupt-controller;
194 #interrupt-cells = <2>;
197 gpio6: gpio@4805d000 {
198 compatible = "ti,omap4-gpio";
199 reg = <0x4805d000 0x200>;
200 interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
204 interrupt-controller;
205 #interrupt-cells = <2>;
208 gpmc: gpmc@50000000 {
209 compatible = "ti,omap4430-gpmc";
210 reg = <0x50000000 0x1000>;
211 #address-cells = <2>;
213 interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
215 gpmc,num-waitpins = <4>;
219 uart1: serial@4806a000 {
220 compatible = "ti,omap4-uart";
221 reg = <0x4806a000 0x100>;
222 interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
224 clock-frequency = <48000000>;
227 uart2: serial@4806c000 {
228 compatible = "ti,omap4-uart";
229 reg = <0x4806c000 0x100>;
230 interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
232 clock-frequency = <48000000>;
235 uart3: serial@48020000 {
236 compatible = "ti,omap4-uart";
237 reg = <0x48020000 0x100>;
238 interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
240 clock-frequency = <48000000>;
243 uart4: serial@4806e000 {
244 compatible = "ti,omap4-uart";
245 reg = <0x4806e000 0x100>;
246 interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
248 clock-frequency = <48000000>;
252 compatible = "ti,omap4-i2c";
253 reg = <0x48070000 0x100>;
254 interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
255 #address-cells = <1>;
261 compatible = "ti,omap4-i2c";
262 reg = <0x48072000 0x100>;
263 interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
264 #address-cells = <1>;
270 compatible = "ti,omap4-i2c";
271 reg = <0x48060000 0x100>;
272 interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
273 #address-cells = <1>;
279 compatible = "ti,omap4-i2c";
280 reg = <0x48350000 0x100>;
281 interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
282 #address-cells = <1>;
287 mcspi1: spi@48098000 {
288 compatible = "ti,omap4-mcspi";
289 reg = <0x48098000 0x200>;
290 interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
291 #address-cells = <1>;
293 ti,hwmods = "mcspi1";
303 dma-names = "tx0", "rx0", "tx1", "rx1",
304 "tx2", "rx2", "tx3", "rx3";
307 mcspi2: spi@4809a000 {
308 compatible = "ti,omap4-mcspi";
309 reg = <0x4809a000 0x200>;
310 interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
311 #address-cells = <1>;
313 ti,hwmods = "mcspi2";
319 dma-names = "tx0", "rx0", "tx1", "rx1";
322 mcspi3: spi@480b8000 {
323 compatible = "ti,omap4-mcspi";
324 reg = <0x480b8000 0x200>;
325 interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
326 #address-cells = <1>;
328 ti,hwmods = "mcspi3";
330 dmas = <&sdma 15>, <&sdma 16>;
331 dma-names = "tx0", "rx0";
334 mcspi4: spi@480ba000 {
335 compatible = "ti,omap4-mcspi";
336 reg = <0x480ba000 0x200>;
337 interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
338 #address-cells = <1>;
340 ti,hwmods = "mcspi4";
342 dmas = <&sdma 70>, <&sdma 71>;
343 dma-names = "tx0", "rx0";
347 compatible = "ti,omap4-hsmmc";
348 reg = <0x4809c000 0x400>;
349 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
352 ti,needs-special-reset;
353 dmas = <&sdma 61>, <&sdma 62>;
354 dma-names = "tx", "rx";
358 compatible = "ti,omap4-hsmmc";
359 reg = <0x480b4000 0x400>;
360 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
362 ti,needs-special-reset;
363 dmas = <&sdma 47>, <&sdma 48>;
364 dma-names = "tx", "rx";
368 compatible = "ti,omap4-hsmmc";
369 reg = <0x480ad000 0x400>;
370 interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
372 ti,needs-special-reset;
373 dmas = <&sdma 77>, <&sdma 78>;
374 dma-names = "tx", "rx";
378 compatible = "ti,omap4-hsmmc";
379 reg = <0x480d1000 0x400>;
380 interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
382 ti,needs-special-reset;
383 dmas = <&sdma 57>, <&sdma 58>;
384 dma-names = "tx", "rx";
388 compatible = "ti,omap4-hsmmc";
389 reg = <0x480d5000 0x400>;
390 interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
392 ti,needs-special-reset;
393 dmas = <&sdma 59>, <&sdma 60>;
394 dma-names = "tx", "rx";
398 compatible = "ti,omap4-wdt", "ti,omap3-wdt";
399 reg = <0x4a314000 0x80>;
400 interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
401 ti,hwmods = "wd_timer2";
404 mcpdm: mcpdm@40132000 {
405 compatible = "ti,omap4-mcpdm";
406 reg = <0x40132000 0x7f>, /* MPU private access */
407 <0x49032000 0x7f>; /* L3 Interconnect */
408 reg-names = "mpu", "dma";
409 interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
413 dma-names = "up_link", "dn_link";
416 dmic: dmic@4012e000 {
417 compatible = "ti,omap4-dmic";
418 reg = <0x4012e000 0x7f>, /* MPU private access */
419 <0x4902e000 0x7f>; /* L3 Interconnect */
420 reg-names = "mpu", "dma";
421 interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
424 dma-names = "up_link";
427 mcbsp1: mcbsp@40122000 {
428 compatible = "ti,omap4-mcbsp";
429 reg = <0x40122000 0xff>, /* MPU private access */
430 <0x49022000 0xff>; /* L3 Interconnect */
431 reg-names = "mpu", "dma";
432 interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
433 interrupt-names = "common";
434 ti,buffer-size = <128>;
435 ti,hwmods = "mcbsp1";
438 dma-names = "tx", "rx";
441 mcbsp2: mcbsp@40124000 {
442 compatible = "ti,omap4-mcbsp";
443 reg = <0x40124000 0xff>, /* MPU private access */
444 <0x49024000 0xff>; /* L3 Interconnect */
445 reg-names = "mpu", "dma";
446 interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
447 interrupt-names = "common";
448 ti,buffer-size = <128>;
449 ti,hwmods = "mcbsp2";
452 dma-names = "tx", "rx";
455 mcbsp3: mcbsp@40126000 {
456 compatible = "ti,omap4-mcbsp";
457 reg = <0x40126000 0xff>, /* MPU private access */
458 <0x49026000 0xff>; /* L3 Interconnect */
459 reg-names = "mpu", "dma";
460 interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
461 interrupt-names = "common";
462 ti,buffer-size = <128>;
463 ti,hwmods = "mcbsp3";
466 dma-names = "tx", "rx";
469 mcbsp4: mcbsp@48096000 {
470 compatible = "ti,omap4-mcbsp";
471 reg = <0x48096000 0xff>; /* L4 Interconnect */
473 interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
474 interrupt-names = "common";
475 ti,buffer-size = <128>;
476 ti,hwmods = "mcbsp4";
479 dma-names = "tx", "rx";
482 keypad: keypad@4a31c000 {
483 compatible = "ti,omap4-keypad";
484 reg = <0x4a31c000 0x80>;
485 interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
490 emif1: emif@4c000000 {
491 compatible = "ti,emif-4d";
492 reg = <0x4c000000 0x100>;
493 interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
496 hw-caps-read-idle-ctrl;
497 hw-caps-ll-interface;
501 emif2: emif@4d000000 {
502 compatible = "ti,emif-4d";
503 reg = <0x4d000000 0x100>;
504 interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
507 hw-caps-read-idle-ctrl;
508 hw-caps-ll-interface;
513 compatible = "ti,omap-ocp2scp";
514 reg = <0x4a0ad000 0x1f>;
515 #address-cells = <1>;
518 ti,hwmods = "ocp2scp_usb_phy";
519 usb2_phy: usb2phy@4a0ad080 {
520 compatible = "ti,omap-usb2";
521 reg = <0x4a0ad080 0x58>;
522 ctrl-module = <&omap_control_usb>;
526 timer1: timer@4a318000 {
527 compatible = "ti,omap3430-timer";
528 reg = <0x4a318000 0x80>;
529 interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
530 ti,hwmods = "timer1";
534 timer2: timer@48032000 {
535 compatible = "ti,omap3430-timer";
536 reg = <0x48032000 0x80>;
537 interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
538 ti,hwmods = "timer2";
541 timer3: timer@48034000 {
542 compatible = "ti,omap4430-timer";
543 reg = <0x48034000 0x80>;
544 interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
545 ti,hwmods = "timer3";
548 timer4: timer@48036000 {
549 compatible = "ti,omap4430-timer";
550 reg = <0x48036000 0x80>;
551 interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
552 ti,hwmods = "timer4";
555 timer5: timer@40138000 {
556 compatible = "ti,omap4430-timer";
557 reg = <0x40138000 0x80>,
559 interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
560 ti,hwmods = "timer5";
564 timer6: timer@4013a000 {
565 compatible = "ti,omap4430-timer";
566 reg = <0x4013a000 0x80>,
568 interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
569 ti,hwmods = "timer6";
573 timer7: timer@4013c000 {
574 compatible = "ti,omap4430-timer";
575 reg = <0x4013c000 0x80>,
577 interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
578 ti,hwmods = "timer7";
582 timer8: timer@4013e000 {
583 compatible = "ti,omap4430-timer";
584 reg = <0x4013e000 0x80>,
586 interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
587 ti,hwmods = "timer8";
592 timer9: timer@4803e000 {
593 compatible = "ti,omap4430-timer";
594 reg = <0x4803e000 0x80>;
595 interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
596 ti,hwmods = "timer9";
600 timer10: timer@48086000 {
601 compatible = "ti,omap3430-timer";
602 reg = <0x48086000 0x80>;
603 interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
604 ti,hwmods = "timer10";
608 timer11: timer@48088000 {
609 compatible = "ti,omap4430-timer";
610 reg = <0x48088000 0x80>;
611 interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
612 ti,hwmods = "timer11";
616 usbhstll: usbhstll@4a062000 {
617 compatible = "ti,usbhs-tll";
618 reg = <0x4a062000 0x1000>;
619 interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
620 ti,hwmods = "usb_tll_hs";
623 usbhshost: usbhshost@4a064000 {
624 compatible = "ti,usbhs-host";
625 reg = <0x4a064000 0x800>;
626 ti,hwmods = "usb_host_hs";
627 #address-cells = <1>;
631 usbhsohci: ohci@4a064800 {
632 compatible = "ti,ohci-omap3", "usb-ohci";
633 reg = <0x4a064800 0x400>;
634 interrupt-parent = <&gic>;
635 interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
638 usbhsehci: ehci@4a064c00 {
639 compatible = "ti,ehci-omap", "usb-ehci";
640 reg = <0x4a064c00 0x400>;
641 interrupt-parent = <&gic>;
642 interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
646 omap_control_usb: omap-control-usb@4a002300 {
647 compatible = "ti,omap-control-usb";
648 reg = <0x4a002300 0x4>,
650 reg-names = "control_dev_conf", "otghs_control";
654 usb_otg_hs: usb_otg_hs@4a0ab000 {
655 compatible = "ti,omap4-musb";
656 reg = <0x4a0ab000 0x7ff>;
657 interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
658 interrupt-names = "mc", "dma";
659 ti,hwmods = "usb_otg_hs";
660 usb-phy = <&usb2_phy>;
668 compatible = "ti,omap4-aes";
670 reg = <0x4b501000 0xa0>;
671 interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
672 dmas = <&sdma 111>, <&sdma 110>;
673 dma-names = "tx", "rx";
677 compatible = "ti,omap4-des";
679 reg = <0x480a5000 0xa0>;
680 interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
681 dmas = <&sdma 117>, <&sdma 116>;
682 dma-names = "tx", "rx";