2 * Device Tree Source for AM4372 SoC
4 * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/
6 * This file is licensed under the terms of the GNU General Public License
7 * version 2. This program is licensed "as is" without any warranty of any
8 * kind, whether express or implied.
11 #include <dt-bindings/gpio/gpio.h>
12 #include <dt-bindings/interrupt-controller/arm-gic.h>
14 #include "skeleton.dtsi"
17 compatible = "ti,am4372", "ti,am43";
18 interrupt-parent = <&gic>;
26 ethernet0 = &cpsw_emac0;
27 ethernet1 = &cpsw_emac1;
34 compatible = "arm,cortex-a9";
38 clocks = <&dpll_mpu_ck>;
41 clock-latency = <300000>; /* From omap-cpufreq driver */
45 gic: interrupt-controller@48241000 {
46 compatible = "arm,cortex-a9-gic";
48 #interrupt-cells = <3>;
49 reg = <0x48241000 0x1000>,
53 l2-cache-controller@48242000 {
54 compatible = "arm,pl310-cache";
55 reg = <0x48242000 0x1000>;
60 am43xx_pinmux: pinmux@44e10800 {
61 compatible = "pinctrl-single";
62 reg = <0x44e10800 0x31c>;
65 pinctrl-single,register-width = <32>;
66 pinctrl-single,function-mask = <0xffffffff>;
70 compatible = "ti,am4372-l3-noc", "simple-bus";
74 ti,hwmods = "l3_main";
75 reg = <0x44000000 0x400000
77 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
78 <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
81 compatible = "ti,am4-prcm";
82 reg = <0x44df0000 0x11000>;
89 prcm_clockdomains: clockdomains {
94 compatible = "ti,am4-scrm";
95 reg = <0x44e10000 0x2000>;
102 scrm_clockdomains: clockdomains {
106 edma: edma@49000000 {
107 compatible = "ti,edma3";
108 ti,hwmods = "tpcc", "tptc0", "tptc1", "tptc2";
109 reg = <0x49000000 0x10000>,
111 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
112 <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
113 <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
117 uart0: serial@44e09000 {
118 compatible = "ti,am4372-uart","ti,omap2-uart";
119 reg = <0x44e09000 0x2000>;
120 interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
124 uart1: serial@48022000 {
125 compatible = "ti,am4372-uart","ti,omap2-uart";
126 reg = <0x48022000 0x2000>;
127 interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
132 uart2: serial@48024000 {
133 compatible = "ti,am4372-uart","ti,omap2-uart";
134 reg = <0x48024000 0x2000>;
135 interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
140 uart3: serial@481a6000 {
141 compatible = "ti,am4372-uart","ti,omap2-uart";
142 reg = <0x481a6000 0x2000>;
143 interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
148 uart4: serial@481a8000 {
149 compatible = "ti,am4372-uart","ti,omap2-uart";
150 reg = <0x481a8000 0x2000>;
151 interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
156 uart5: serial@481aa000 {
157 compatible = "ti,am4372-uart","ti,omap2-uart";
158 reg = <0x481aa000 0x2000>;
159 interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
164 mailbox: mailbox@480C8000 {
165 compatible = "ti,omap4-mailbox";
166 reg = <0x480C8000 0x200>;
167 interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
168 ti,hwmods = "mailbox";
169 ti,mbox-num-users = <4>;
170 ti,mbox-num-fifos = <8>;
171 ti,mbox-names = "wkup_m3";
172 ti,mbox-data = <0 0 0 0>;
176 timer1: timer@44e31000 {
177 compatible = "ti,am4372-timer-1ms","ti,am335x-timer-1ms";
178 reg = <0x44e31000 0x400>;
179 interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
181 ti,hwmods = "timer1";
184 timer2: timer@48040000 {
185 compatible = "ti,am4372-timer","ti,am335x-timer";
186 reg = <0x48040000 0x400>;
187 interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
188 ti,hwmods = "timer2";
191 timer3: timer@48042000 {
192 compatible = "ti,am4372-timer","ti,am335x-timer";
193 reg = <0x48042000 0x400>;
194 interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
195 ti,hwmods = "timer3";
199 timer4: timer@48044000 {
200 compatible = "ti,am4372-timer","ti,am335x-timer";
201 reg = <0x48044000 0x400>;
202 interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
204 ti,hwmods = "timer4";
208 timer5: timer@48046000 {
209 compatible = "ti,am4372-timer","ti,am335x-timer";
210 reg = <0x48046000 0x400>;
211 interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
213 ti,hwmods = "timer5";
217 timer6: timer@48048000 {
218 compatible = "ti,am4372-timer","ti,am335x-timer";
219 reg = <0x48048000 0x400>;
220 interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
222 ti,hwmods = "timer6";
226 timer7: timer@4804a000 {
227 compatible = "ti,am4372-timer","ti,am335x-timer";
228 reg = <0x4804a000 0x400>;
229 interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
231 ti,hwmods = "timer7";
235 timer8: timer@481c1000 {
236 compatible = "ti,am4372-timer","ti,am335x-timer";
237 reg = <0x481c1000 0x400>;
238 interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
239 ti,hwmods = "timer8";
243 timer9: timer@4833d000 {
244 compatible = "ti,am4372-timer","ti,am335x-timer";
245 reg = <0x4833d000 0x400>;
246 interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>;
247 ti,hwmods = "timer9";
251 timer10: timer@4833f000 {
252 compatible = "ti,am4372-timer","ti,am335x-timer";
253 reg = <0x4833f000 0x400>;
254 interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>;
255 ti,hwmods = "timer10";
259 timer11: timer@48341000 {
260 compatible = "ti,am4372-timer","ti,am335x-timer";
261 reg = <0x48341000 0x400>;
262 interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>;
263 ti,hwmods = "timer11";
267 counter32k: counter@44e86000 {
268 compatible = "ti,am4372-counter32k","ti,omap-counter32k";
269 reg = <0x44e86000 0x40>;
270 ti,hwmods = "counter_32k";
274 compatible = "ti,am4372-rtc","ti,da830-rtc";
275 reg = <0x44e3e000 0x1000>;
276 interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH
277 GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
283 compatible = "ti,am4372-wdt","ti,omap3-wdt";
284 reg = <0x44e35000 0x1000>;
285 interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
286 ti,hwmods = "wd_timer2";
289 gpio0: gpio@44e07000 {
290 compatible = "ti,am4372-gpio","ti,omap4-gpio";
291 reg = <0x44e07000 0x1000>;
292 interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
295 interrupt-controller;
296 #interrupt-cells = <2>;
301 gpio1: gpio@4804c000 {
302 compatible = "ti,am4372-gpio","ti,omap4-gpio";
303 reg = <0x4804c000 0x1000>;
304 interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
307 interrupt-controller;
308 #interrupt-cells = <2>;
313 gpio2: gpio@481ac000 {
314 compatible = "ti,am4372-gpio","ti,omap4-gpio";
315 reg = <0x481ac000 0x1000>;
316 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
319 interrupt-controller;
320 #interrupt-cells = <2>;
325 gpio3: gpio@481ae000 {
326 compatible = "ti,am4372-gpio","ti,omap4-gpio";
327 reg = <0x481ae000 0x1000>;
328 interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
331 interrupt-controller;
332 #interrupt-cells = <2>;
337 gpio4: gpio@48320000 {
338 compatible = "ti,am4372-gpio","ti,omap4-gpio";
339 reg = <0x48320000 0x1000>;
340 interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
343 interrupt-controller;
344 #interrupt-cells = <2>;
349 gpio5: gpio@48322000 {
350 compatible = "ti,am4372-gpio","ti,omap4-gpio";
351 reg = <0x48322000 0x1000>;
352 interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
355 interrupt-controller;
356 #interrupt-cells = <2>;
361 hwspinlock: spinlock@480ca000 {
362 compatible = "ti,omap4-hwspinlock";
363 reg = <0x480ca000 0x1000>;
364 ti,hwmods = "spinlock";
369 compatible = "ti,am4372-i2c","ti,omap4-i2c";
370 reg = <0x44e0b000 0x1000>;
371 interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
373 #address-cells = <1>;
379 compatible = "ti,am4372-i2c","ti,omap4-i2c";
380 reg = <0x4802a000 0x1000>;
381 interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
383 #address-cells = <1>;
389 compatible = "ti,am4372-i2c","ti,omap4-i2c";
390 reg = <0x4819c000 0x1000>;
391 interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
393 #address-cells = <1>;
399 compatible = "ti,am4372-mcspi","ti,omap4-mcspi";
400 reg = <0x48030000 0x400>;
401 interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
403 #address-cells = <1>;
409 compatible = "ti,omap4-hsmmc";
410 reg = <0x48060000 0x1000>;
413 ti,needs-special-reset;
416 dma-names = "tx", "rx";
417 interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
422 compatible = "ti,omap4-hsmmc";
423 reg = <0x481d8000 0x1000>;
425 ti,needs-special-reset;
428 dma-names = "tx", "rx";
429 interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
434 compatible = "ti,omap4-hsmmc";
435 reg = <0x47810000 0x1000>;
437 ti,needs-special-reset;
438 interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
443 compatible = "ti,am4372-mcspi","ti,omap4-mcspi";
444 reg = <0x481a0000 0x400>;
445 interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
447 #address-cells = <1>;
453 compatible = "ti,am4372-mcspi","ti,omap4-mcspi";
454 reg = <0x481a2000 0x400>;
455 interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
457 #address-cells = <1>;
463 compatible = "ti,am4372-mcspi","ti,omap4-mcspi";
464 reg = <0x481a4000 0x400>;
465 interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>;
467 #address-cells = <1>;
473 compatible = "ti,am4372-mcspi","ti,omap4-mcspi";
474 reg = <0x48345000 0x400>;
475 interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>;
477 #address-cells = <1>;
482 mac: ethernet@4a100000 {
483 compatible = "ti,am4372-cpsw","ti,cpsw";
484 reg = <0x4a100000 0x800
486 interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH
487 GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH
488 GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH
489 GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>;
490 #address-cells = <1>;
492 ti,hwmods = "cpgmac0";
494 cpdma_channels = <8>;
495 ale_entries = <1024>;
496 bd_ram_size = <0x2000>;
499 mac_control = <0x20>;
502 cpts_clock_mult = <0x80000000>;
503 cpts_clock_shift = <29>;
506 davinci_mdio: mdio@4a101000 {
507 compatible = "ti,am4372-mdio","ti,davinci_mdio";
508 reg = <0x4a101000 0x100>;
509 #address-cells = <1>;
511 ti,hwmods = "davinci_mdio";
512 bus_freq = <1000000>;
516 cpsw_emac0: slave@4a100200 {
517 /* Filled in by U-Boot */
518 mac-address = [ 00 00 00 00 00 00 ];
521 cpsw_emac1: slave@4a100300 {
522 /* Filled in by U-Boot */
523 mac-address = [ 00 00 00 00 00 00 ];
526 phy_sel: cpsw-phy-sel@44e10650 {
527 compatible = "ti,am43xx-cpsw-phy-sel";
528 reg= <0x44e10650 0x4>;
529 reg-names = "gmii-sel";
533 epwmss0: epwmss@48300000 {
534 compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
535 reg = <0x48300000 0x10>;
536 #address-cells = <1>;
539 ti,hwmods = "epwmss0";
542 ecap0: ecap@48300100 {
543 compatible = "ti,am4372-ecap","ti,am33xx-ecap";
545 reg = <0x48300100 0x80>;
550 ehrpwm0: ehrpwm@48300200 {
551 compatible = "ti,am4372-ehrpwm","ti,am33xx-ehrpwm";
553 reg = <0x48300200 0x80>;
554 ti,hwmods = "ehrpwm0";
559 epwmss1: epwmss@48302000 {
560 compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
561 reg = <0x48302000 0x10>;
562 #address-cells = <1>;
565 ti,hwmods = "epwmss1";
568 ecap1: ecap@48302100 {
569 compatible = "ti,am4372-ecap","ti,am33xx-ecap";
571 reg = <0x48302100 0x80>;
576 ehrpwm1: ehrpwm@48302200 {
577 compatible = "ti,am4372-ehrpwm","ti,am33xx-ehrpwm";
579 reg = <0x48302200 0x80>;
580 ti,hwmods = "ehrpwm1";
585 epwmss2: epwmss@48304000 {
586 compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
587 reg = <0x48304000 0x10>;
588 #address-cells = <1>;
591 ti,hwmods = "epwmss2";
594 ecap2: ecap@48304100 {
595 compatible = "ti,am4372-ecap","ti,am33xx-ecap";
597 reg = <0x48304100 0x80>;
602 ehrpwm2: ehrpwm@48304200 {
603 compatible = "ti,am4372-ehrpwm","ti,am33xx-ehrpwm";
605 reg = <0x48304200 0x80>;
606 ti,hwmods = "ehrpwm2";
611 epwmss3: epwmss@48306000 {
612 compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
613 reg = <0x48306000 0x10>;
614 #address-cells = <1>;
617 ti,hwmods = "epwmss3";
620 ehrpwm3: ehrpwm@48306200 {
621 compatible = "ti,am4372-ehrpwm","ti,am33xx-ehrpwm";
623 reg = <0x48306200 0x80>;
624 ti,hwmods = "ehrpwm3";
629 epwmss4: epwmss@48308000 {
630 compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
631 reg = <0x48308000 0x10>;
632 #address-cells = <1>;
635 ti,hwmods = "epwmss4";
638 ehrpwm4: ehrpwm@48308200 {
639 compatible = "ti,am4372-ehrpwm","ti,am33xx-ehrpwm";
641 reg = <0x48308200 0x80>;
642 ti,hwmods = "ehrpwm4";
647 epwmss5: epwmss@4830a000 {
648 compatible = "ti,am4372-pwmss","ti,am33xx-pwmss";
649 reg = <0x4830a000 0x10>;
650 #address-cells = <1>;
653 ti,hwmods = "epwmss5";
656 ehrpwm5: ehrpwm@4830a200 {
657 compatible = "ti,am4372-ehrpwm","ti,am33xx-ehrpwm";
659 reg = <0x4830a200 0x80>;
660 ti,hwmods = "ehrpwm5";
665 sham: sham@53100000 {
666 compatible = "ti,omap5-sham";
668 reg = <0x53100000 0x300>;
671 interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
675 compatible = "ti,omap4-aes";
677 reg = <0x53501000 0xa0>;
678 interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
681 dma-names = "tx", "rx";
685 compatible = "ti,omap4-des";
687 reg = <0x53701000 0xa0>;
688 interrupts = <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>;
691 dma-names = "tx", "rx";
694 mcasp0: mcasp@48038000 {
695 compatible = "ti,am33xx-mcasp-audio";
696 ti,hwmods = "mcasp0";
697 reg = <0x48038000 0x2000>,
698 <0x46000000 0x400000>;
699 reg-names = "mpu", "dat";
700 interrupts = <80>, <81>;
701 interrupt-names = "tx", "rx";
705 dma-names = "tx", "rx";
708 mcasp1: mcasp@4803C000 {
709 compatible = "ti,am33xx-mcasp-audio";
710 ti,hwmods = "mcasp1";
711 reg = <0x4803C000 0x2000>,
712 <0x46400000 0x400000>;
713 reg-names = "mpu", "dat";
714 interrupts = <82>, <83>;
715 interrupt-names = "tx", "rx";
719 dma-names = "tx", "rx";
723 compatible = "ti,am3352-elm";
724 reg = <0x48080000 0x2000>;
725 interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
727 clocks = <&l4ls_gclk>;
732 gpmc: gpmc@50000000 {
733 compatible = "ti,am3352-gpmc";
735 clocks = <&l3s_gclk>;
737 reg = <0x50000000 0x2000>;
738 interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
740 gpmc,num-waitpins = <2>;
741 #address-cells = <2>;
746 am43xx_control_usb2phy1: control-phy@44e10620 {
747 compatible = "ti,control-phy-usb2-am437";
748 reg = <0x44e10620 0x4>;
752 am43xx_control_usb2phy2: control-phy@0x44e10628 {
753 compatible = "ti,control-phy-usb2-am437";
754 reg = <0x44e10628 0x4>;
758 ocp2scp0: ocp2scp@483a8000 {
759 compatible = "ti,omap-ocp2scp";
760 #address-cells = <1>;
763 ti,hwmods = "ocp2scp0";
765 usb2_phy1: phy@483a8000 {
766 compatible = "ti,am437x-usb2";
767 reg = <0x483a8000 0x8000>;
768 ctrl-module = <&am43xx_control_usb2phy1>;
769 clocks = <&usb_phy0_always_on_clk32k>,
770 <&usb_otg_ss0_refclk960m>;
771 clock-names = "wkupclk", "refclk";
777 ocp2scp1: ocp2scp@483e8000 {
778 compatible = "ti,omap-ocp2scp";
779 #address-cells = <1>;
782 ti,hwmods = "ocp2scp1";
784 usb2_phy2: phy@483e8000 {
785 compatible = "ti,am437x-usb2";
786 reg = <0x483e8000 0x8000>;
787 ctrl-module = <&am43xx_control_usb2phy2>;
788 clocks = <&usb_phy1_always_on_clk32k>,
789 <&usb_otg_ss1_refclk960m>;
790 clock-names = "wkupclk", "refclk";
796 dwc3_1: omap_dwc3@48380000 {
797 compatible = "ti,am437x-dwc3";
798 ti,hwmods = "usb_otg_ss0";
799 reg = <0x48380000 0x10000>;
800 interrupts = <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>;
801 #address-cells = <1>;
807 compatible = "synopsys,dwc3";
808 reg = <0x48390000 0x17000>;
809 interrupts = <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>;
811 phy-names = "usb2-phy";
812 maximum-speed = "high-speed";
818 dwc3_2: omap_dwc3@483c0000 {
819 compatible = "ti,am437x-dwc3";
820 ti,hwmods = "usb_otg_ss1";
821 reg = <0x483c0000 0x10000>;
822 interrupts = <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>;
823 #address-cells = <1>;
829 compatible = "synopsys,dwc3";
830 reg = <0x483d0000 0x17000>;
831 interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
833 phy-names = "usb2-phy";
834 maximum-speed = "high-speed";
840 qspi: qspi@47900000 {
841 compatible = "ti,am4372-qspi";
842 reg = <0x47900000 0x100>;
843 #address-cells = <1>;
846 interrupts = <0 138 0x4>;
852 compatible = "ti,am43xx-hdq";
853 reg = <0x48347000 0x1000>;
854 interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
855 clocks = <&func_12m_clk>;
862 compatible = "ti,omap3-dss";
863 reg = <0x4832a000 0x200>;
865 ti,hwmods = "dss_core";
866 clocks = <&disp_clk>;
868 #address-cells = <1>;
873 compatible = "ti,omap3-dispc";
874 reg = <0x4832a400 0x400>;
875 interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>;
876 ti,hwmods = "dss_dispc";
877 clocks = <&disp_clk>;
881 rfbi: rfbi@4832a800 {
882 compatible = "ti,omap3-rfbi";
883 reg = <0x4832a800 0x100>;
884 ti,hwmods = "dss_rfbi";
885 clocks = <&disp_clk>;
892 /include/ "am43xx-clocks.dtsi"