blob: a8fad53b1d4e1e067d57b368ee64713af2ce85d1 [file] [log] [blame]
AnilKumar Ch5fc0b422012-06-22 15:10:48 +05301/*
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/ "skeleton.dtsi"
12
13/ {
14 compatible = "ti,am33xx";
Benoit Cousson4c94ac22012-10-24 10:47:52 +020015 interrupt-parent = <&intc>;
AnilKumar Ch5fc0b422012-06-22 15:10:48 +053016
17 aliases {
18 serial0 = &uart1;
19 serial1 = &uart2;
20 serial2 = &uart3;
21 serial3 = &uart4;
22 serial4 = &uart5;
23 serial5 = &uart6;
AnilKumar Ch7a57ee82012-11-14 23:38:24 +053024 d_can0 = &dcan0;
25 d_can1 = &dcan1;
AnilKumar Ch5fc0b422012-06-22 15:10:48 +053026 };
27
28 cpus {
29 cpu@0 {
30 compatible = "arm,cortex-a8";
AnilKumar Chefeedcf2012-08-31 15:07:20 +053031
32 /*
33 * To consider voltage drop between PMIC and SoC,
34 * tolerance value is reduced to 2% from 4% and
35 * voltage value is increased as a precaution.
36 */
37 operating-points = <
38 /* kHz uV */
39 720000 1285000
40 600000 1225000
41 500000 1125000
42 275000 1125000
43 >;
44 voltage-tolerance = <2>; /* 2 percentage */
45 clock-latency = <300000>; /* From omap-cpufreq driver */
AnilKumar Ch5fc0b422012-06-22 15:10:48 +053046 };
47 };
48
49 /*
50 * The soc node represents the soc top level view. It is uses for IPs
51 * that are not memory mapped in the MPU view or for the MPU itself.
52 */
53 soc {
54 compatible = "ti,omap-infra";
55 mpu {
56 compatible = "ti,omap3-mpu";
57 ti,hwmods = "mpu";
58 };
59 };
60
AnilKumar Chb552dfc2012-09-20 02:49:26 +053061 am33xx_pinmux: pinmux@44e10800 {
62 compatible = "pinctrl-single";
63 reg = <0x44e10800 0x0238>;
64 #address-cells = <1>;
65 #size-cells = <0>;
66 pinctrl-single,register-width = <32>;
67 pinctrl-single,function-mask = <0x7f>;
68 };
69
AnilKumar Ch5fc0b422012-06-22 15:10:48 +053070 /*
71 * XXX: Use a flat representation of the AM33XX interconnect.
72 * The real AM33XX interconnect network is quite complex.Since
73 * that will not bring real advantage to represent that in DT
74 * for the moment, just use a fake OCP bus entry to represent
75 * the whole bus hierarchy.
76 */
77 ocp {
78 compatible = "simple-bus";
79 #address-cells = <1>;
80 #size-cells = <1>;
81 ranges;
82 ti,hwmods = "l3_main";
83
84 intc: interrupt-controller@48200000 {
85 compatible = "ti,omap2-intc";
86 interrupt-controller;
87 #interrupt-cells = <1>;
88 ti,intc-size = <128>;
89 reg = <0x48200000 0x1000>;
90 };
91
AnilKumar Chb918e2c2012-11-21 17:22:17 +053092 gpio0: gpio@44e07000 {
AnilKumar Ch5fc0b422012-06-22 15:10:48 +053093 compatible = "ti,omap4-gpio";
94 ti,hwmods = "gpio1";
95 gpio-controller;
96 #gpio-cells = <2>;
97 interrupt-controller;
98 #interrupt-cells = <1>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +053099 reg = <0x44e07000 0x1000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530100 interrupts = <96>;
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530101 };
102
AnilKumar Chb918e2c2012-11-21 17:22:17 +0530103 gpio1: gpio@4804c000 {
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530104 compatible = "ti,omap4-gpio";
105 ti,hwmods = "gpio2";
106 gpio-controller;
107 #gpio-cells = <2>;
108 interrupt-controller;
109 #interrupt-cells = <1>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530110 reg = <0x4804c000 0x1000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530111 interrupts = <98>;
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530112 };
113
AnilKumar Chb918e2c2012-11-21 17:22:17 +0530114 gpio2: gpio@481ac000 {
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530115 compatible = "ti,omap4-gpio";
116 ti,hwmods = "gpio3";
117 gpio-controller;
118 #gpio-cells = <2>;
119 interrupt-controller;
120 #interrupt-cells = <1>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530121 reg = <0x481ac000 0x1000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530122 interrupts = <32>;
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530123 };
124
AnilKumar Chb918e2c2012-11-21 17:22:17 +0530125 gpio3: gpio@481ae000 {
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530126 compatible = "ti,omap4-gpio";
127 ti,hwmods = "gpio4";
128 gpio-controller;
129 #gpio-cells = <2>;
130 interrupt-controller;
131 #interrupt-cells = <1>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530132 reg = <0x481ae000 0x1000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530133 interrupts = <62>;
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530134 };
135
Vaibhav Hiremath5d83cb82012-08-27 16:59:08 +0530136 uart1: serial@44e09000 {
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530137 compatible = "ti,omap3-uart";
138 ti,hwmods = "uart1";
139 clock-frequency = <48000000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530140 reg = <0x44e09000 0x2000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530141 interrupts = <72>;
Vaibhav Hiremath53d91032012-08-15 16:53:25 +0530142 status = "disabled";
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530143 };
144
145 uart2: serial@48022000 {
146 compatible = "ti,omap3-uart";
147 ti,hwmods = "uart2";
148 clock-frequency = <48000000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530149 reg = <0x48022000 0x2000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530150 interrupts = <73>;
Vaibhav Hiremath53d91032012-08-15 16:53:25 +0530151 status = "disabled";
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530152 };
153
154 uart3: serial@48024000 {
155 compatible = "ti,omap3-uart";
156 ti,hwmods = "uart3";
157 clock-frequency = <48000000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530158 reg = <0x48024000 0x2000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530159 interrupts = <74>;
Vaibhav Hiremath53d91032012-08-15 16:53:25 +0530160 status = "disabled";
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530161 };
162
Vaibhav Hiremath5d83cb82012-08-27 16:59:08 +0530163 uart4: serial@481a6000 {
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530164 compatible = "ti,omap3-uart";
165 ti,hwmods = "uart4";
166 clock-frequency = <48000000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530167 reg = <0x481a6000 0x2000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530168 interrupts = <44>;
Vaibhav Hiremath53d91032012-08-15 16:53:25 +0530169 status = "disabled";
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530170 };
171
Vaibhav Hiremath5d83cb82012-08-27 16:59:08 +0530172 uart5: serial@481a8000 {
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530173 compatible = "ti,omap3-uart";
174 ti,hwmods = "uart5";
175 clock-frequency = <48000000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530176 reg = <0x481a8000 0x2000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530177 interrupts = <45>;
Vaibhav Hiremath53d91032012-08-15 16:53:25 +0530178 status = "disabled";
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530179 };
180
Vaibhav Hiremath5d83cb82012-08-27 16:59:08 +0530181 uart6: serial@481aa000 {
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530182 compatible = "ti,omap3-uart";
183 ti,hwmods = "uart6";
184 clock-frequency = <48000000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530185 reg = <0x481aa000 0x2000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530186 interrupts = <46>;
Vaibhav Hiremath53d91032012-08-15 16:53:25 +0530187 status = "disabled";
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530188 };
189
AnilKumar Chb918e2c2012-11-21 17:22:17 +0530190 i2c0: i2c@44e0b000 {
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530191 compatible = "ti,omap4-i2c";
192 #address-cells = <1>;
193 #size-cells = <0>;
194 ti,hwmods = "i2c1";
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530195 reg = <0x44e0b000 0x1000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530196 interrupts = <70>;
Vaibhav Hiremath53d91032012-08-15 16:53:25 +0530197 status = "disabled";
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530198 };
199
AnilKumar Chb918e2c2012-11-21 17:22:17 +0530200 i2c1: i2c@4802a000 {
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530201 compatible = "ti,omap4-i2c";
202 #address-cells = <1>;
203 #size-cells = <0>;
204 ti,hwmods = "i2c2";
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530205 reg = <0x4802a000 0x1000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530206 interrupts = <71>;
Vaibhav Hiremath53d91032012-08-15 16:53:25 +0530207 status = "disabled";
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530208 };
209
AnilKumar Chb918e2c2012-11-21 17:22:17 +0530210 i2c2: i2c@4819c000 {
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530211 compatible = "ti,omap4-i2c";
212 #address-cells = <1>;
213 #size-cells = <0>;
214 ti,hwmods = "i2c3";
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530215 reg = <0x4819c000 0x1000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530216 interrupts = <30>;
Vaibhav Hiremath53d91032012-08-15 16:53:25 +0530217 status = "disabled";
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530218 };
Afzal Mohammed5f789eb2012-07-04 18:00:37 +0530219
220 wdt2: wdt@44e35000 {
221 compatible = "ti,omap3-wdt";
222 ti,hwmods = "wd_timer2";
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530223 reg = <0x44e35000 0x1000>;
Vaibhav Hiremath4462b312012-08-27 17:21:01 +0530224 interrupts = <91>;
Afzal Mohammed5f789eb2012-07-04 18:00:37 +0530225 };
AnilKumar Ch059b1852012-09-20 02:49:27 +0530226
227 dcan0: d_can@481cc000 {
228 compatible = "bosch,d_can";
229 ti,hwmods = "d_can0";
230 reg = <0x481cc000 0x2000>;
231 interrupts = <52>;
AnilKumar Ch059b1852012-09-20 02:49:27 +0530232 status = "disabled";
233 };
234
235 dcan1: d_can@481d0000 {
236 compatible = "bosch,d_can";
237 ti,hwmods = "d_can1";
238 reg = <0x481d0000 0x2000>;
239 interrupts = <55>;
AnilKumar Ch059b1852012-09-20 02:49:27 +0530240 status = "disabled";
241 };
Jon Hunterfab8ad02012-10-19 09:59:00 -0500242
243 timer1: timer@44e31000 {
244 compatible = "ti,omap2-timer";
245 reg = <0x44e31000 0x400>;
246 interrupts = <67>;
247 ti,hwmods = "timer1";
248 ti,timer-alwon;
249 };
250
251 timer2: timer@48040000 {
252 compatible = "ti,omap2-timer";
253 reg = <0x48040000 0x400>;
254 interrupts = <68>;
255 ti,hwmods = "timer2";
256 };
257
258 timer3: timer@48042000 {
259 compatible = "ti,omap2-timer";
260 reg = <0x48042000 0x400>;
261 interrupts = <69>;
262 ti,hwmods = "timer3";
263 };
264
265 timer4: timer@48044000 {
266 compatible = "ti,omap2-timer";
267 reg = <0x48044000 0x400>;
268 interrupts = <92>;
269 ti,hwmods = "timer4";
270 ti,timer-pwm;
271 };
272
273 timer5: timer@48046000 {
274 compatible = "ti,omap2-timer";
275 reg = <0x48046000 0x400>;
276 interrupts = <93>;
277 ti,hwmods = "timer5";
278 ti,timer-pwm;
279 };
280
281 timer6: timer@48048000 {
282 compatible = "ti,omap2-timer";
283 reg = <0x48048000 0x400>;
284 interrupts = <94>;
285 ti,hwmods = "timer6";
286 ti,timer-pwm;
287 };
288
289 timer7: timer@4804a000 {
290 compatible = "ti,omap2-timer";
291 reg = <0x4804a000 0x400>;
292 interrupts = <95>;
293 ti,hwmods = "timer7";
294 ti,timer-pwm;
295 };
Afzal Mohammed0d935c12012-10-30 15:04:01 +0530296
297 rtc@44e3e000 {
298 compatible = "ti,da830-rtc";
299 reg = <0x44e3e000 0x1000>;
300 interrupts = <75
301 76>;
302 ti,hwmods = "rtc";
303 };
Philip, Avinash9fd3c742012-10-31 16:21:09 +0530304
305 spi0: spi@48030000 {
306 compatible = "ti,omap4-mcspi";
307 #address-cells = <1>;
308 #size-cells = <0>;
309 reg = <0x48030000 0x400>;
310 interrupt = <65>;
311 ti,spi-num-cs = <2>;
312 ti,hwmods = "spi0";
313 status = "disabled";
314 };
315
316 spi1: spi@481a0000 {
317 compatible = "ti,omap4-mcspi";
318 #address-cells = <1>;
319 #size-cells = <0>;
320 reg = <0x481a0000 0x400>;
321 interrupt = <125>;
322 ti,spi-num-cs = <2>;
323 ti,hwmods = "spi1";
324 status = "disabled";
325 };
Ajay Kumar Gupta35b47fb2012-11-06 19:59:38 +0530326
327 usb@47400000 {
328 compatible = "ti,musb-am33xx";
329 reg = <0x47400000 0x1000 /* usbss */
330 0x47401000 0x800 /* musb instance 0 */
331 0x47401800 0x800>; /* musb instance 1 */
332 interrupts = <17 /* usbss */
333 18 /* musb instance 0 */
334 19>; /* musb instance 1 */
335 multipoint = <1>;
336 num-eps = <16>;
337 ram-bits = <12>;
338 port0-mode = <3>;
339 port1-mode = <3>;
340 power = <250>;
341 ti,hwmods = "usb_otg_hs";
342 };
Linus Torvalds6be35c72012-12-12 18:07:07 -0800343
Mugunthan V N1a39a652012-11-14 09:08:00 +0000344 mac: ethernet@4a100000 {
345 compatible = "ti,cpsw";
346 ti,hwmods = "cpgmac0";
347 cpdma_channels = <8>;
348 ale_entries = <1024>;
349 bd_ram_size = <0x2000>;
350 no_bd_ram = <0>;
351 rx_descs = <64>;
352 mac_control = <0x20>;
353 slaves = <2>;
354 cpts_active_slave = <0>;
355 cpts_clock_mult = <0x80000000>;
356 cpts_clock_shift = <29>;
357 reg = <0x4a100000 0x800
358 0x4a101200 0x100>;
359 #address-cells = <1>;
360 #size-cells = <1>;
361 interrupt-parent = <&intc>;
362 /*
363 * c0_rx_thresh_pend
364 * c0_rx_pend
365 * c0_tx_pend
366 * c0_misc_pend
367 */
368 interrupts = <40 41 42 43>;
369 ranges;
370
371 davinci_mdio: mdio@4a101000 {
372 compatible = "ti,davinci_mdio";
373 #address-cells = <1>;
374 #size-cells = <0>;
375 ti,hwmods = "davinci_mdio";
376 bus_freq = <1000000>;
377 reg = <0x4a101000 0x100>;
378 };
379
380 cpsw_emac0: slave@4a100200 {
381 /* Filled in by U-Boot */
382 mac-address = [ 00 00 00 00 00 00 ];
383 };
384
385 cpsw_emac1: slave@4a100300 {
386 /* Filled in by U-Boot */
387 mac-address = [ 00 00 00 00 00 00 ];
388 };
Mugunthan V N1a39a652012-11-14 09:08:00 +0000389 };
Vaibhav Bediaf6575c92013-01-29 16:45:07 +0530390
391 ocmcram: ocmcram@40300000 {
392 compatible = "ti,am3352-ocmcram";
393 reg = <0x40300000 0x10000>;
394 ti,hwmods = "ocmcram";
395 ti,no_idle_on_suspend;
396 };
397
398 wkup_m3: wkup_m3@44d00000 {
399 compatible = "ti,am3353-wkup-m3";
400 reg = <0x44d00000 0x4000 /* M3 UMEM */
401 0x44d80000 0x2000>; /* M3 DMEM */
402 ti,hwmods = "wkup_m3";
403 };
AnilKumar Ch5fc0b422012-06-22 15:10:48 +0530404 };
405};