• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Device Tree Source for AM33XX SoC
3 *
4 * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
5 *
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.
9 */
10
11#include <dt-bindings/gpio/gpio.h>
12#include <dt-bindings/pinctrl/am33xx.h>
13
14/ {
15	compatible = "ti,am33xx";
16	interrupt-parent = <&intc>;
17	#address-cells = <1>;
18	#size-cells = <1>;
19	chosen { };
20
21	aliases {
22		i2c0 = &i2c0;
23		i2c1 = &i2c1;
24		i2c2 = &i2c2;
25		serial0 = &uart0;
26		serial1 = &uart1;
27		serial2 = &uart2;
28		serial3 = &uart3;
29		serial4 = &uart4;
30		serial5 = &uart5;
31		d_can0 = &dcan0;
32		d_can1 = &dcan1;
33		usb0 = &usb0;
34		usb1 = &usb1;
35		phy0 = &usb0_phy;
36		phy1 = &usb1_phy;
37		ethernet0 = &cpsw_emac0;
38		ethernet1 = &cpsw_emac1;
39		spi0 = &spi0;
40		spi1 = &spi1;
41	};
42
43	cpus {
44		#address-cells = <1>;
45		#size-cells = <0>;
46		cpu@0 {
47			compatible = "arm,cortex-a8";
48			device_type = "cpu";
49			reg = <0>;
50
51			operating-points-v2 = <&cpu0_opp_table>;
52
53			clocks = <&dpll_mpu_ck>;
54			clock-names = "cpu";
55
56			clock-latency = <300000>; /* From omap-cpufreq driver */
57		};
58	};
59
60	cpu0_opp_table: opp-table {
61		compatible = "operating-points-v2-ti-cpu";
62		syscon = <&scm_conf>;
63
64		/*
65		 * The three following nodes are marked with opp-suspend
66		 * because the can not be enabled simultaneously on a
67		 * single SoC.
68		 */
69		opp50-300000000 {
70			opp-hz = /bits/ 64 <300000000>;
71			opp-microvolt = <950000 931000 969000>;
72			opp-supported-hw = <0x06 0x0010>;
73			opp-suspend;
74		};
75
76		opp100-275000000 {
77			opp-hz = /bits/ 64 <275000000>;
78			opp-microvolt = <1100000 1078000 1122000>;
79			opp-supported-hw = <0x01 0x00FF>;
80			opp-suspend;
81		};
82
83		opp100-300000000 {
84			opp-hz = /bits/ 64 <300000000>;
85			opp-microvolt = <1100000 1078000 1122000>;
86			opp-supported-hw = <0x06 0x0020>;
87			opp-suspend;
88		};
89
90		opp100-500000000 {
91			opp-hz = /bits/ 64 <500000000>;
92			opp-microvolt = <1100000 1078000 1122000>;
93			opp-supported-hw = <0x01 0xFFFF>;
94		};
95
96		opp100-600000000 {
97			opp-hz = /bits/ 64 <600000000>;
98			opp-microvolt = <1100000 1078000 1122000>;
99			opp-supported-hw = <0x06 0x0040>;
100		};
101
102		opp120-600000000 {
103			opp-hz = /bits/ 64 <600000000>;
104			opp-microvolt = <1200000 1176000 1224000>;
105			opp-supported-hw = <0x01 0xFFFF>;
106		};
107
108		opp120-720000000 {
109			opp-hz = /bits/ 64 <720000000>;
110			opp-microvolt = <1200000 1176000 1224000>;
111			opp-supported-hw = <0x06 0x0080>;
112		};
113
114		oppturbo-720000000 {
115			opp-hz = /bits/ 64 <720000000>;
116			opp-microvolt = <1260000 1234800 1285200>;
117			opp-supported-hw = <0x01 0xFFFF>;
118		};
119
120		oppturbo-800000000 {
121			opp-hz = /bits/ 64 <800000000>;
122			opp-microvolt = <1260000 1234800 1285200>;
123			opp-supported-hw = <0x06 0x0100>;
124		};
125
126		oppnitro-1000000000 {
127			opp-hz = /bits/ 64 <1000000000>;
128			opp-microvolt = <1325000 1298500 1351500>;
129			opp-supported-hw = <0x04 0x0200>;
130		};
131	};
132
133	pmu {
134		compatible = "arm,cortex-a8-pmu";
135		interrupts = <3>;
136	};
137
138	/*
139	 * The soc node represents the soc top level view. It is used for IPs
140	 * that are not memory mapped in the MPU view or for the MPU itself.
141	 */
142	soc {
143		compatible = "ti,omap-infra";
144		mpu {
145			compatible = "ti,omap3-mpu";
146			ti,hwmods = "mpu";
147		};
148	};
149
150	/*
151	 * XXX: Use a flat representation of the AM33XX interconnect.
152	 * The real AM33XX interconnect network is quite complex. Since
153	 * it will not bring real advantage to represent that in DT
154	 * for the moment, just use a fake OCP bus entry to represent
155	 * the whole bus hierarchy.
156	 */
157	ocp {
158		compatible = "simple-bus";
159		#address-cells = <1>;
160		#size-cells = <1>;
161		ranges;
162		ti,hwmods = "l3_main";
163
164		l4_wkup: l4_wkup@44c00000 {
165			compatible = "ti,am3-l4-wkup", "simple-bus";
166			#address-cells = <1>;
167			#size-cells = <1>;
168			ranges = <0 0x44c00000 0x280000>;
169
170			wkup_m3: wkup_m3@100000 {
171				compatible = "ti,am3352-wkup-m3";
172				reg = <0x100000 0x4000>,
173				      <0x180000	0x2000>;
174				reg-names = "umem", "dmem";
175				ti,hwmods = "wkup_m3";
176				ti,pm-firmware = "am335x-pm-firmware.elf";
177			};
178
179			prcm: prcm@200000 {
180				compatible = "ti,am3-prcm";
181				reg = <0x200000 0x4000>;
182
183				prcm_clocks: clocks {
184					#address-cells = <1>;
185					#size-cells = <0>;
186				};
187
188				prcm_clockdomains: clockdomains {
189				};
190			};
191
192			scm: scm@210000 {
193				compatible = "ti,am3-scm", "simple-bus";
194				reg = <0x210000 0x2000>;
195				#address-cells = <1>;
196				#size-cells = <1>;
197				#pinctrl-cells = <1>;
198				ranges = <0 0x210000 0x2000>;
199
200				am33xx_pinmux: pinmux@800 {
201					compatible = "pinctrl-single";
202					reg = <0x800 0x238>;
203					#address-cells = <1>;
204					#size-cells = <0>;
205					#pinctrl-cells = <1>;
206					pinctrl-single,register-width = <32>;
207					pinctrl-single,function-mask = <0x7f>;
208				};
209
210				scm_conf: scm_conf@0 {
211					compatible = "syscon", "simple-bus";
212					reg = <0x0 0x800>;
213					#address-cells = <1>;
214					#size-cells = <1>;
215					ranges = <0 0 0x800>;
216
217					scm_clocks: clocks {
218						#address-cells = <1>;
219						#size-cells = <0>;
220					};
221				};
222
223				wkup_m3_ipc: wkup_m3_ipc@1324 {
224					compatible = "ti,am3352-wkup-m3-ipc";
225					reg = <0x1324 0x24>;
226					interrupts = <78>;
227					ti,rproc = <&wkup_m3>;
228					mboxes = <&mailbox &mbox_wkupm3>;
229				};
230
231				edma_xbar: dma-router@f90 {
232					compatible = "ti,am335x-edma-crossbar";
233					reg = <0xf90 0x40>;
234					#dma-cells = <3>;
235					dma-requests = <32>;
236					dma-masters = <&edma>;
237				};
238
239				scm_clockdomains: clockdomains {
240				};
241			};
242		};
243
244		intc: interrupt-controller@48200000 {
245			compatible = "ti,am33xx-intc";
246			interrupt-controller;
247			#interrupt-cells = <1>;
248			reg = <0x48200000 0x1000>;
249		};
250
251		edma: edma@49000000 {
252			compatible = "ti,edma3-tpcc";
253			ti,hwmods = "tpcc";
254			reg =	<0x49000000 0x10000>;
255			reg-names = "edma3_cc";
256			interrupts = <12 13 14>;
257			interrupt-names = "edma3_ccint", "edma3_mperr",
258					  "edma3_ccerrint";
259			dma-requests = <64>;
260			#dma-cells = <2>;
261
262			ti,tptcs = <&edma_tptc0 7>, <&edma_tptc1 5>,
263				   <&edma_tptc2 0>;
264
265			ti,edma-memcpy-channels = <20 21>;
266		};
267
268		edma_tptc0: tptc@49800000 {
269			compatible = "ti,edma3-tptc";
270			ti,hwmods = "tptc0";
271			reg =	<0x49800000 0x100000>;
272			interrupts = <112>;
273			interrupt-names = "edma3_tcerrint";
274		};
275
276		edma_tptc1: tptc@49900000 {
277			compatible = "ti,edma3-tptc";
278			ti,hwmods = "tptc1";
279			reg =	<0x49900000 0x100000>;
280			interrupts = <113>;
281			interrupt-names = "edma3_tcerrint";
282		};
283
284		edma_tptc2: tptc@49a00000 {
285			compatible = "ti,edma3-tptc";
286			ti,hwmods = "tptc2";
287			reg =	<0x49a00000 0x100000>;
288			interrupts = <114>;
289			interrupt-names = "edma3_tcerrint";
290		};
291
292		gpio0: gpio@44e07000 {
293			compatible = "ti,omap4-gpio";
294			ti,hwmods = "gpio1";
295			gpio-controller;
296			#gpio-cells = <2>;
297			interrupt-controller;
298			#interrupt-cells = <2>;
299			reg = <0x44e07000 0x1000>;
300			interrupts = <96>;
301		};
302
303		gpio1: gpio@4804c000 {
304			compatible = "ti,omap4-gpio";
305			ti,hwmods = "gpio2";
306			gpio-controller;
307			#gpio-cells = <2>;
308			interrupt-controller;
309			#interrupt-cells = <2>;
310			reg = <0x4804c000 0x1000>;
311			interrupts = <98>;
312		};
313
314		gpio2: gpio@481ac000 {
315			compatible = "ti,omap4-gpio";
316			ti,hwmods = "gpio3";
317			gpio-controller;
318			#gpio-cells = <2>;
319			interrupt-controller;
320			#interrupt-cells = <2>;
321			reg = <0x481ac000 0x1000>;
322			interrupts = <32>;
323		};
324
325		gpio3: gpio@481ae000 {
326			compatible = "ti,omap4-gpio";
327			ti,hwmods = "gpio4";
328			gpio-controller;
329			#gpio-cells = <2>;
330			interrupt-controller;
331			#interrupt-cells = <2>;
332			reg = <0x481ae000 0x1000>;
333			interrupts = <62>;
334		};
335
336		uart0: serial@44e09000 {
337			compatible = "ti,am3352-uart", "ti,omap3-uart";
338			ti,hwmods = "uart1";
339			clock-frequency = <48000000>;
340			reg = <0x44e09000 0x2000>;
341			interrupts = <72>;
342			status = "disabled";
343			dmas = <&edma 26 0>, <&edma 27 0>;
344			dma-names = "tx", "rx";
345		};
346
347		uart1: serial@48022000 {
348			compatible = "ti,am3352-uart", "ti,omap3-uart";
349			ti,hwmods = "uart2";
350			clock-frequency = <48000000>;
351			reg = <0x48022000 0x2000>;
352			interrupts = <73>;
353			status = "disabled";
354			dmas = <&edma 28 0>, <&edma 29 0>;
355			dma-names = "tx", "rx";
356		};
357
358		uart2: serial@48024000 {
359			compatible = "ti,am3352-uart", "ti,omap3-uart";
360			ti,hwmods = "uart3";
361			clock-frequency = <48000000>;
362			reg = <0x48024000 0x2000>;
363			interrupts = <74>;
364			status = "disabled";
365			dmas = <&edma 30 0>, <&edma 31 0>;
366			dma-names = "tx", "rx";
367		};
368
369		uart3: serial@481a6000 {
370			compatible = "ti,am3352-uart", "ti,omap3-uart";
371			ti,hwmods = "uart4";
372			clock-frequency = <48000000>;
373			reg = <0x481a6000 0x2000>;
374			interrupts = <44>;
375			status = "disabled";
376		};
377
378		uart4: serial@481a8000 {
379			compatible = "ti,am3352-uart", "ti,omap3-uart";
380			ti,hwmods = "uart5";
381			clock-frequency = <48000000>;
382			reg = <0x481a8000 0x2000>;
383			interrupts = <45>;
384			status = "disabled";
385		};
386
387		uart5: serial@481aa000 {
388			compatible = "ti,am3352-uart", "ti,omap3-uart";
389			ti,hwmods = "uart6";
390			clock-frequency = <48000000>;
391			reg = <0x481aa000 0x2000>;
392			interrupts = <46>;
393			status = "disabled";
394		};
395
396		i2c0: i2c@44e0b000 {
397			compatible = "ti,omap4-i2c";
398			#address-cells = <1>;
399			#size-cells = <0>;
400			ti,hwmods = "i2c1";
401			reg = <0x44e0b000 0x1000>;
402			interrupts = <70>;
403			status = "disabled";
404		};
405
406		i2c1: i2c@4802a000 {
407			compatible = "ti,omap4-i2c";
408			#address-cells = <1>;
409			#size-cells = <0>;
410			ti,hwmods = "i2c2";
411			reg = <0x4802a000 0x1000>;
412			interrupts = <71>;
413			status = "disabled";
414		};
415
416		i2c2: i2c@4819c000 {
417			compatible = "ti,omap4-i2c";
418			#address-cells = <1>;
419			#size-cells = <0>;
420			ti,hwmods = "i2c3";
421			reg = <0x4819c000 0x1000>;
422			interrupts = <30>;
423			status = "disabled";
424		};
425
426		mmc1: mmc@48060000 {
427			compatible = "ti,omap4-hsmmc";
428			ti,hwmods = "mmc1";
429			ti,dual-volt;
430			ti,needs-special-reset;
431			ti,needs-special-hs-handling;
432			dmas = <&edma_xbar 24 0 0
433				&edma_xbar 25 0 0>;
434			dma-names = "tx", "rx";
435			interrupts = <64>;
436			reg = <0x48060000 0x1000>;
437			status = "disabled";
438		};
439
440		mmc2: mmc@481d8000 {
441			compatible = "ti,omap4-hsmmc";
442			ti,hwmods = "mmc2";
443			ti,needs-special-reset;
444			dmas = <&edma 2 0
445				&edma 3 0>;
446			dma-names = "tx", "rx";
447			interrupts = <28>;
448			reg = <0x481d8000 0x1000>;
449			status = "disabled";
450		};
451
452		mmc3: mmc@47810000 {
453			compatible = "ti,omap4-hsmmc";
454			ti,hwmods = "mmc3";
455			ti,needs-special-reset;
456			interrupts = <29>;
457			reg = <0x47810000 0x1000>;
458			status = "disabled";
459		};
460
461		hwspinlock: spinlock@480ca000 {
462			compatible = "ti,omap4-hwspinlock";
463			reg = <0x480ca000 0x1000>;
464			ti,hwmods = "spinlock";
465			#hwlock-cells = <1>;
466		};
467
468		wdt2: wdt@44e35000 {
469			compatible = "ti,omap3-wdt";
470			ti,hwmods = "wd_timer2";
471			reg = <0x44e35000 0x1000>;
472			interrupts = <91>;
473		};
474
475		dcan0: can@481cc000 {
476			compatible = "ti,am3352-d_can";
477			ti,hwmods = "d_can0";
478			reg = <0x481cc000 0x2000>;
479			clocks = <&dcan0_fck>;
480			clock-names = "fck";
481			syscon-raminit = <&scm_conf 0x644 0>;
482			interrupts = <52>;
483			status = "disabled";
484		};
485
486		dcan1: can@481d0000 {
487			compatible = "ti,am3352-d_can";
488			ti,hwmods = "d_can1";
489			reg = <0x481d0000 0x2000>;
490			clocks = <&dcan1_fck>;
491			clock-names = "fck";
492			syscon-raminit = <&scm_conf 0x644 1>;
493			interrupts = <55>;
494			status = "disabled";
495		};
496
497		mailbox: mailbox@480C8000 {
498			compatible = "ti,omap4-mailbox";
499			reg = <0x480C8000 0x200>;
500			interrupts = <77>;
501			ti,hwmods = "mailbox";
502			#mbox-cells = <1>;
503			ti,mbox-num-users = <4>;
504			ti,mbox-num-fifos = <8>;
505			mbox_wkupm3: wkup_m3 {
506				ti,mbox-send-noirq;
507				ti,mbox-tx = <0 0 0>;
508				ti,mbox-rx = <0 0 3>;
509			};
510		};
511
512		timer1: timer@44e31000 {
513			compatible = "ti,am335x-timer-1ms";
514			reg = <0x44e31000 0x400>;
515			interrupts = <67>;
516			ti,hwmods = "timer1";
517			ti,timer-alwon;
518		};
519
520		timer2: timer@48040000 {
521			compatible = "ti,am335x-timer";
522			reg = <0x48040000 0x400>;
523			interrupts = <68>;
524			ti,hwmods = "timer2";
525		};
526
527		timer3: timer@48042000 {
528			compatible = "ti,am335x-timer";
529			reg = <0x48042000 0x400>;
530			interrupts = <69>;
531			ti,hwmods = "timer3";
532		};
533
534		timer4: timer@48044000 {
535			compatible = "ti,am335x-timer";
536			reg = <0x48044000 0x400>;
537			interrupts = <92>;
538			ti,hwmods = "timer4";
539			ti,timer-pwm;
540		};
541
542		timer5: timer@48046000 {
543			compatible = "ti,am335x-timer";
544			reg = <0x48046000 0x400>;
545			interrupts = <93>;
546			ti,hwmods = "timer5";
547			ti,timer-pwm;
548		};
549
550		timer6: timer@48048000 {
551			compatible = "ti,am335x-timer";
552			reg = <0x48048000 0x400>;
553			interrupts = <94>;
554			ti,hwmods = "timer6";
555			ti,timer-pwm;
556		};
557
558		timer7: timer@4804a000 {
559			compatible = "ti,am335x-timer";
560			reg = <0x4804a000 0x400>;
561			interrupts = <95>;
562			ti,hwmods = "timer7";
563			ti,timer-pwm;
564		};
565
566		rtc: rtc@44e3e000 {
567			compatible = "ti,am3352-rtc", "ti,da830-rtc";
568			reg = <0x44e3e000 0x1000>;
569			interrupts = <75
570				      76>;
571			ti,hwmods = "rtc";
572			clocks = <&clkdiv32k_ick>;
573			clock-names = "int-clk";
574		};
575
576		spi0: spi@48030000 {
577			compatible = "ti,omap4-mcspi";
578			#address-cells = <1>;
579			#size-cells = <0>;
580			reg = <0x48030000 0x400>;
581			interrupts = <65>;
582			ti,spi-num-cs = <2>;
583			ti,hwmods = "spi0";
584			dmas = <&edma 16 0
585				&edma 17 0
586				&edma 18 0
587				&edma 19 0>;
588			dma-names = "tx0", "rx0", "tx1", "rx1";
589			status = "disabled";
590		};
591
592		spi1: spi@481a0000 {
593			compatible = "ti,omap4-mcspi";
594			#address-cells = <1>;
595			#size-cells = <0>;
596			reg = <0x481a0000 0x400>;
597			interrupts = <125>;
598			ti,spi-num-cs = <2>;
599			ti,hwmods = "spi1";
600			dmas = <&edma 42 0
601				&edma 43 0
602				&edma 44 0
603				&edma 45 0>;
604			dma-names = "tx0", "rx0", "tx1", "rx1";
605			status = "disabled";
606		};
607
608		usb: usb@47400000 {
609			compatible = "ti,am33xx-usb";
610			reg = <0x47400000 0x1000>;
611			ranges;
612			#address-cells = <1>;
613			#size-cells = <1>;
614			ti,hwmods = "usb_otg_hs";
615			status = "disabled";
616
617			usb_ctrl_mod: control@44e10620 {
618				compatible = "ti,am335x-usb-ctrl-module";
619				reg = <0x44e10620 0x10
620					0x44e10648 0x4>;
621				reg-names = "phy_ctrl", "wakeup";
622				status = "disabled";
623			};
624
625			usb0_phy: usb-phy@47401300 {
626				compatible = "ti,am335x-usb-phy";
627				reg = <0x47401300 0x100>;
628				reg-names = "phy";
629				status = "disabled";
630				ti,ctrl_mod = <&usb_ctrl_mod>;
631			};
632
633			usb0: usb@47401000 {
634				compatible = "ti,musb-am33xx";
635				status = "disabled";
636				reg = <0x47401400 0x400
637					0x47401000 0x200>;
638				reg-names = "mc", "control";
639
640				interrupts = <18>;
641				interrupt-names = "mc";
642				dr_mode = "otg";
643				mentor,multipoint = <1>;
644				mentor,num-eps = <16>;
645				mentor,ram-bits = <12>;
646				mentor,power = <500>;
647				phys = <&usb0_phy>;
648
649				dmas = <&cppi41dma  0 0 &cppi41dma  1 0
650					&cppi41dma  2 0 &cppi41dma  3 0
651					&cppi41dma  4 0 &cppi41dma  5 0
652					&cppi41dma  6 0 &cppi41dma  7 0
653					&cppi41dma  8 0 &cppi41dma  9 0
654					&cppi41dma 10 0 &cppi41dma 11 0
655					&cppi41dma 12 0 &cppi41dma 13 0
656					&cppi41dma 14 0 &cppi41dma  0 1
657					&cppi41dma  1 1 &cppi41dma  2 1
658					&cppi41dma  3 1 &cppi41dma  4 1
659					&cppi41dma  5 1 &cppi41dma  6 1
660					&cppi41dma  7 1 &cppi41dma  8 1
661					&cppi41dma  9 1 &cppi41dma 10 1
662					&cppi41dma 11 1 &cppi41dma 12 1
663					&cppi41dma 13 1 &cppi41dma 14 1>;
664				dma-names =
665					"rx1", "rx2", "rx3", "rx4", "rx5", "rx6", "rx7",
666					"rx8", "rx9", "rx10", "rx11", "rx12", "rx13",
667					"rx14", "rx15",
668					"tx1", "tx2", "tx3", "tx4", "tx5", "tx6", "tx7",
669					"tx8", "tx9", "tx10", "tx11", "tx12", "tx13",
670					"tx14", "tx15";
671			};
672
673			usb1_phy: usb-phy@47401b00 {
674				compatible = "ti,am335x-usb-phy";
675				reg = <0x47401b00 0x100>;
676				reg-names = "phy";
677				status = "disabled";
678				ti,ctrl_mod = <&usb_ctrl_mod>;
679			};
680
681			usb1: usb@47401800 {
682				compatible = "ti,musb-am33xx";
683				status = "disabled";
684				reg = <0x47401c00 0x400
685					0x47401800 0x200>;
686				reg-names = "mc", "control";
687				interrupts = <19>;
688				interrupt-names = "mc";
689				dr_mode = "otg";
690				mentor,multipoint = <1>;
691				mentor,num-eps = <16>;
692				mentor,ram-bits = <12>;
693				mentor,power = <500>;
694				phys = <&usb1_phy>;
695
696				dmas = <&cppi41dma 15 0 &cppi41dma 16 0
697					&cppi41dma 17 0 &cppi41dma 18 0
698					&cppi41dma 19 0 &cppi41dma 20 0
699					&cppi41dma 21 0 &cppi41dma 22 0
700					&cppi41dma 23 0 &cppi41dma 24 0
701					&cppi41dma 25 0 &cppi41dma 26 0
702					&cppi41dma 27 0 &cppi41dma 28 0
703					&cppi41dma 29 0 &cppi41dma 15 1
704					&cppi41dma 16 1 &cppi41dma 17 1
705					&cppi41dma 18 1 &cppi41dma 19 1
706					&cppi41dma 20 1 &cppi41dma 21 1
707					&cppi41dma 22 1 &cppi41dma 23 1
708					&cppi41dma 24 1 &cppi41dma 25 1
709					&cppi41dma 26 1 &cppi41dma 27 1
710					&cppi41dma 28 1 &cppi41dma 29 1>;
711				dma-names =
712					"rx1", "rx2", "rx3", "rx4", "rx5", "rx6", "rx7",
713					"rx8", "rx9", "rx10", "rx11", "rx12", "rx13",
714					"rx14", "rx15",
715					"tx1", "tx2", "tx3", "tx4", "tx5", "tx6", "tx7",
716					"tx8", "tx9", "tx10", "tx11", "tx12", "tx13",
717					"tx14", "tx15";
718			};
719
720			cppi41dma: dma-controller@47402000 {
721				compatible = "ti,am3359-cppi41";
722				reg =  <0x47400000 0x1000
723					0x47402000 0x1000
724					0x47403000 0x1000
725					0x47404000 0x4000>;
726				reg-names = "glue", "controller", "scheduler", "queuemgr";
727				interrupts = <17>;
728				interrupt-names = "glue";
729				#dma-cells = <2>;
730				#dma-channels = <30>;
731				#dma-requests = <256>;
732				status = "disabled";
733			};
734		};
735
736		epwmss0: epwmss@48300000 {
737			compatible = "ti,am33xx-pwmss";
738			reg = <0x48300000 0x10>;
739			ti,hwmods = "epwmss0";
740			#address-cells = <1>;
741			#size-cells = <1>;
742			status = "disabled";
743			ranges = <0x48300100 0x48300100 0x80   /* ECAP */
744				  0x48300180 0x48300180 0x80   /* EQEP */
745				  0x48300200 0x48300200 0x80>; /* EHRPWM */
746
747			ecap0: ecap@48300100 {
748				compatible = "ti,am3352-ecap",
749					     "ti,am33xx-ecap";
750				#pwm-cells = <3>;
751				reg = <0x48300100 0x80>;
752				clocks = <&l4ls_gclk>;
753				clock-names = "fck";
754				interrupts = <31>;
755				interrupt-names = "ecap0";
756				status = "disabled";
757			};
758
759			ehrpwm0: pwm@48300200 {
760				compatible = "ti,am3352-ehrpwm",
761					     "ti,am33xx-ehrpwm";
762				#pwm-cells = <3>;
763				reg = <0x48300200 0x80>;
764				clocks = <&ehrpwm0_tbclk>, <&l4ls_gclk>;
765				clock-names = "tbclk", "fck";
766				status = "disabled";
767			};
768		};
769
770		epwmss1: epwmss@48302000 {
771			compatible = "ti,am33xx-pwmss";
772			reg = <0x48302000 0x10>;
773			ti,hwmods = "epwmss1";
774			#address-cells = <1>;
775			#size-cells = <1>;
776			status = "disabled";
777			ranges = <0x48302100 0x48302100 0x80   /* ECAP */
778				  0x48302180 0x48302180 0x80   /* EQEP */
779				  0x48302200 0x48302200 0x80>; /* EHRPWM */
780
781			ecap1: ecap@48302100 {
782				compatible = "ti,am3352-ecap",
783					     "ti,am33xx-ecap";
784				#pwm-cells = <3>;
785				reg = <0x48302100 0x80>;
786				clocks = <&l4ls_gclk>;
787				clock-names = "fck";
788				interrupts = <47>;
789				interrupt-names = "ecap1";
790				status = "disabled";
791			};
792
793			ehrpwm1: pwm@48302200 {
794				compatible = "ti,am3352-ehrpwm",
795					     "ti,am33xx-ehrpwm";
796				#pwm-cells = <3>;
797				reg = <0x48302200 0x80>;
798				clocks = <&ehrpwm1_tbclk>, <&l4ls_gclk>;
799				clock-names = "tbclk", "fck";
800				status = "disabled";
801			};
802		};
803
804		epwmss2: epwmss@48304000 {
805			compatible = "ti,am33xx-pwmss";
806			reg = <0x48304000 0x10>;
807			ti,hwmods = "epwmss2";
808			#address-cells = <1>;
809			#size-cells = <1>;
810			status = "disabled";
811			ranges = <0x48304100 0x48304100 0x80   /* ECAP */
812				  0x48304180 0x48304180 0x80   /* EQEP */
813				  0x48304200 0x48304200 0x80>; /* EHRPWM */
814
815			ecap2: ecap@48304100 {
816				compatible = "ti,am3352-ecap",
817					     "ti,am33xx-ecap";
818				#pwm-cells = <3>;
819				reg = <0x48304100 0x80>;
820				clocks = <&l4ls_gclk>;
821				clock-names = "fck";
822				interrupts = <61>;
823				interrupt-names = "ecap2";
824				status = "disabled";
825			};
826
827			ehrpwm2: pwm@48304200 {
828				compatible = "ti,am3352-ehrpwm",
829					     "ti,am33xx-ehrpwm";
830				#pwm-cells = <3>;
831				reg = <0x48304200 0x80>;
832				clocks = <&ehrpwm2_tbclk>, <&l4ls_gclk>;
833				clock-names = "tbclk", "fck";
834				status = "disabled";
835			};
836		};
837
838		mac: ethernet@4a100000 {
839			compatible = "ti,am335x-cpsw","ti,cpsw";
840			ti,hwmods = "cpgmac0";
841			clocks = <&cpsw_125mhz_gclk>, <&cpsw_cpts_rft_clk>;
842			clock-names = "fck", "cpts";
843			cpdma_channels = <8>;
844			ale_entries = <1024>;
845			bd_ram_size = <0x2000>;
846			mac_control = <0x20>;
847			slaves = <2>;
848			active_slave = <0>;
849			cpts_clock_mult = <0x80000000>;
850			cpts_clock_shift = <29>;
851			reg = <0x4a100000 0x800
852			       0x4a101200 0x100>;
853			#address-cells = <1>;
854			#size-cells = <1>;
855			/*
856			 * c0_rx_thresh_pend
857			 * c0_rx_pend
858			 * c0_tx_pend
859			 * c0_misc_pend
860			 */
861			interrupts = <40 41 42 43>;
862			ranges;
863			syscon = <&scm_conf>;
864			status = "disabled";
865
866			davinci_mdio: mdio@4a101000 {
867				compatible = "ti,cpsw-mdio","ti,davinci_mdio";
868				#address-cells = <1>;
869				#size-cells = <0>;
870				ti,hwmods = "davinci_mdio";
871				bus_freq = <1000000>;
872				reg = <0x4a101000 0x100>;
873				status = "disabled";
874			};
875
876			cpsw_emac0: slave@4a100200 {
877				/* Filled in by U-Boot */
878				mac-address = [ 00 00 00 00 00 00 ];
879			};
880
881			cpsw_emac1: slave@4a100300 {
882				/* Filled in by U-Boot */
883				mac-address = [ 00 00 00 00 00 00 ];
884			};
885
886			phy_sel: cpsw-phy-sel@44e10650 {
887				compatible = "ti,am3352-cpsw-phy-sel";
888				reg= <0x44e10650 0x4>;
889				reg-names = "gmii-sel";
890			};
891		};
892
893		ocmcram: ocmcram@40300000 {
894			compatible = "mmio-sram";
895			reg = <0x40300000 0x10000>; /* 64k */
896		};
897
898		elm: elm@48080000 {
899			compatible = "ti,am3352-elm";
900			reg = <0x48080000 0x2000>;
901			interrupts = <4>;
902			ti,hwmods = "elm";
903			status = "disabled";
904		};
905
906		lcdc: lcdc@4830e000 {
907			compatible = "ti,am33xx-tilcdc";
908			reg = <0x4830e000 0x1000>;
909			interrupts = <36>;
910			ti,hwmods = "lcdc";
911			status = "disabled";
912		};
913
914		tscadc: tscadc@44e0d000 {
915			compatible = "ti,am3359-tscadc";
916			reg = <0x44e0d000 0x1000>;
917			interrupts = <16>;
918			ti,hwmods = "adc_tsc";
919			status = "disabled";
920			dmas = <&edma 53 0>, <&edma 57 0>;
921			dma-names = "fifo0", "fifo1";
922
923			tsc {
924				compatible = "ti,am3359-tsc";
925			};
926			am335x_adc: adc {
927				#io-channel-cells = <1>;
928				compatible = "ti,am3359-adc";
929			};
930		};
931
932		gpmc: gpmc@50000000 {
933			compatible = "ti,am3352-gpmc";
934			ti,hwmods = "gpmc";
935			ti,no-idle-on-init;
936			reg = <0x50000000 0x2000>;
937			interrupts = <100>;
938			dmas = <&edma 52 0>;
939			dma-names = "rxtx";
940			gpmc,num-cs = <7>;
941			gpmc,num-waitpins = <2>;
942			#address-cells = <2>;
943			#size-cells = <1>;
944			interrupt-controller;
945			#interrupt-cells = <2>;
946			gpio-controller;
947			#gpio-cells = <2>;
948			status = "disabled";
949		};
950
951		sham: sham@53100000 {
952			compatible = "ti,omap4-sham";
953			ti,hwmods = "sham";
954			reg = <0x53100000 0x200>;
955			interrupts = <109>;
956			dmas = <&edma 36 0>;
957			dma-names = "rx";
958		};
959
960		aes: aes@53500000 {
961			compatible = "ti,omap4-aes";
962			ti,hwmods = "aes";
963			reg = <0x53500000 0xa0>;
964			interrupts = <103>;
965			dmas = <&edma 6 0>,
966			       <&edma 5 0>;
967			dma-names = "tx", "rx";
968		};
969
970		mcasp0: mcasp@48038000 {
971			compatible = "ti,am33xx-mcasp-audio";
972			ti,hwmods = "mcasp0";
973			reg = <0x48038000 0x2000>,
974			      <0x46000000 0x400000>;
975			reg-names = "mpu", "dat";
976			interrupts = <80>, <81>;
977			interrupt-names = "tx", "rx";
978			status = "disabled";
979			dmas = <&edma 8 2>,
980				<&edma 9 2>;
981			dma-names = "tx", "rx";
982		};
983
984		mcasp1: mcasp@4803C000 {
985			compatible = "ti,am33xx-mcasp-audio";
986			ti,hwmods = "mcasp1";
987			reg = <0x4803C000 0x2000>,
988			      <0x46400000 0x400000>;
989			reg-names = "mpu", "dat";
990			interrupts = <82>, <83>;
991			interrupt-names = "tx", "rx";
992			status = "disabled";
993			dmas = <&edma 10 2>,
994				<&edma 11 2>;
995			dma-names = "tx", "rx";
996		};
997
998		rng: rng@48310000 {
999			compatible = "ti,omap4-rng";
1000			ti,hwmods = "rng";
1001			reg = <0x48310000 0x2000>;
1002			interrupts = <111>;
1003		};
1004	};
1005};
1006
1007/include/ "am33xx-clocks.dtsi"
1008