2 * Device Tree Source for AM33XX SoC
4 * Copyright (C) 2012 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/ "skeleton.dtsi"
14 compatible = "ti,am33xx";
15 interrupt-parent = <&intc>;
30 compatible = "arm,cortex-a8";
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.
44 voltage-tolerance = <2>; /* 2 percentage */
45 clock-latency = <300000>; /* From omap-cpufreq driver */
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.
54 compatible = "ti,omap-infra";
56 compatible = "ti,omap3-mpu";
61 am33xx_pinmux: pinmux@44e10800 {
62 compatible = "pinctrl-single";
63 reg = <0x44e10800 0x0238>;
66 pinctrl-single,register-width = <32>;
67 pinctrl-single,function-mask = <0x7f>;
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.
78 compatible = "simple-bus";
82 ti,hwmods = "l3_main";
84 intc: interrupt-controller@48200000 {
85 compatible = "ti,omap2-intc";
87 #interrupt-cells = <1>;
89 reg = <0x48200000 0x1000>;
92 gpio0: gpio@44e07000 {
93 compatible = "ti,omap4-gpio";
98 #interrupt-cells = <1>;
99 reg = <0x44e07000 0x1000>;
103 gpio1: gpio@4804c000 {
104 compatible = "ti,omap4-gpio";
108 interrupt-controller;
109 #interrupt-cells = <1>;
110 reg = <0x4804c000 0x1000>;
114 gpio2: gpio@481ac000 {
115 compatible = "ti,omap4-gpio";
119 interrupt-controller;
120 #interrupt-cells = <1>;
121 reg = <0x481ac000 0x1000>;
125 gpio3: gpio@481ae000 {
126 compatible = "ti,omap4-gpio";
130 interrupt-controller;
131 #interrupt-cells = <1>;
132 reg = <0x481ae000 0x1000>;
136 uart1: serial@44e09000 {
137 compatible = "ti,omap3-uart";
139 clock-frequency = <48000000>;
140 reg = <0x44e09000 0x2000>;
145 uart2: serial@48022000 {
146 compatible = "ti,omap3-uart";
148 clock-frequency = <48000000>;
149 reg = <0x48022000 0x2000>;
154 uart3: serial@48024000 {
155 compatible = "ti,omap3-uart";
157 clock-frequency = <48000000>;
158 reg = <0x48024000 0x2000>;
163 uart4: serial@481a6000 {
164 compatible = "ti,omap3-uart";
166 clock-frequency = <48000000>;
167 reg = <0x481a6000 0x2000>;
172 uart5: serial@481a8000 {
173 compatible = "ti,omap3-uart";
175 clock-frequency = <48000000>;
176 reg = <0x481a8000 0x2000>;
181 uart6: serial@481aa000 {
182 compatible = "ti,omap3-uart";
184 clock-frequency = <48000000>;
185 reg = <0x481aa000 0x2000>;
191 compatible = "ti,omap4-i2c";
192 #address-cells = <1>;
195 reg = <0x44e0b000 0x1000>;
201 compatible = "ti,omap4-i2c";
202 #address-cells = <1>;
205 reg = <0x4802a000 0x1000>;
211 compatible = "ti,omap4-i2c";
212 #address-cells = <1>;
215 reg = <0x4819c000 0x1000>;
221 compatible = "ti,omap3-wdt";
222 ti,hwmods = "wd_timer2";
223 reg = <0x44e35000 0x1000>;
227 dcan0: d_can@481cc000 {
228 compatible = "bosch,d_can";
229 ti,hwmods = "d_can0";
230 reg = <0x481cc000 0x2000
236 dcan1: d_can@481d0000 {
237 compatible = "bosch,d_can";
238 ti,hwmods = "d_can1";
239 reg = <0x481d0000 0x2000
245 timer1: timer@44e31000 {
246 compatible = "ti,am335x-timer-1ms";
247 reg = <0x44e31000 0x400>;
249 ti,hwmods = "timer1";
253 timer2: timer@48040000 {
254 compatible = "ti,am335x-timer";
255 reg = <0x48040000 0x400>;
257 ti,hwmods = "timer2";
260 timer3: timer@48042000 {
261 compatible = "ti,am335x-timer";
262 reg = <0x48042000 0x400>;
264 ti,hwmods = "timer3";
267 timer4: timer@48044000 {
268 compatible = "ti,am335x-timer";
269 reg = <0x48044000 0x400>;
271 ti,hwmods = "timer4";
275 timer5: timer@48046000 {
276 compatible = "ti,am335x-timer";
277 reg = <0x48046000 0x400>;
279 ti,hwmods = "timer5";
283 timer6: timer@48048000 {
284 compatible = "ti,am335x-timer";
285 reg = <0x48048000 0x400>;
287 ti,hwmods = "timer6";
291 timer7: timer@4804a000 {
292 compatible = "ti,am335x-timer";
293 reg = <0x4804a000 0x400>;
295 ti,hwmods = "timer7";
300 compatible = "ti,da830-rtc";
301 reg = <0x44e3e000 0x1000>;
308 compatible = "ti,omap4-mcspi";
309 #address-cells = <1>;
311 reg = <0x48030000 0x400>;
319 compatible = "ti,omap4-mcspi";
320 #address-cells = <1>;
322 reg = <0x481a0000 0x400>;
330 compatible = "ti,musb-am33xx";
331 reg = <0x47400000 0x1000 /* usbss */
332 0x47401000 0x800 /* musb instance 0 */
333 0x47401800 0x800>; /* musb instance 1 */
334 interrupts = <17 /* usbss */
335 18 /* musb instance 0 */
336 19>; /* musb instance 1 */
343 ti,hwmods = "usb_otg_hs";
346 mac: ethernet@4a100000 {
347 compatible = "ti,cpsw";
348 ti,hwmods = "cpgmac0";
349 cpdma_channels = <8>;
350 ale_entries = <1024>;
351 bd_ram_size = <0x2000>;
354 mac_control = <0x20>;
357 cpts_clock_mult = <0x80000000>;
358 cpts_clock_shift = <29>;
359 reg = <0x4a100000 0x800
361 #address-cells = <1>;
363 interrupt-parent = <&intc>;
370 interrupts = <40 41 42 43>;
373 davinci_mdio: mdio@4a101000 {
374 compatible = "ti,davinci_mdio";
375 #address-cells = <1>;
377 ti,hwmods = "davinci_mdio";
378 bus_freq = <1000000>;
379 reg = <0x4a101000 0x100>;
382 cpsw_emac0: slave@4a100200 {
383 /* Filled in by U-Boot */
384 mac-address = [ 00 00 00 00 00 00 ];
387 cpsw_emac1: slave@4a100300 {
388 /* Filled in by U-Boot */
389 mac-address = [ 00 00 00 00 00 00 ];
393 ocmcram: ocmcram@40300000 {
394 compatible = "ti,am3352-ocmcram";
395 reg = <0x40300000 0x10000>;
396 ti,hwmods = "ocmcram";
397 ti,no_idle_on_suspend;
400 wkup_m3: wkup_m3@44d00000 {
401 compatible = "ti,am3353-wkup-m3";
402 reg = <0x44d00000 0x4000 /* M3 UMEM */
403 0x44d80000 0x2000>; /* M3 DMEM */
404 ti,hwmods = "wkup_m3";
407 gpmc: gpmc@50000000 {
408 compatible = "ti,am3352-gpmc";
410 reg = <0x50000000 0x2000>;
413 gpmc,num-waitpins = <2>;
414 #address-cells = <2>;