2 * Copyright 2012 DENX Software Engineering GmbH
3 * Heiko Schocher <hs@denx.de>
5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License as published by the
7 * Free Software Foundation; either version 2 of the License, or (at your
8 * option) any later version.
10 #include "skeleton.dtsi"
11 #include <dt-bindings/interrupt-controller/irq.h>
18 intc: interrupt-controller@fffee000 {
19 compatible = "ti,cp-intc";
21 #interrupt-cells = <1>;
23 reg = <0xfffee000 0x2000>;
27 compatible = "simple-bus";
31 ranges = <0x0 0x01c00000 0x400000>;
32 interrupt-parent = <&intc>;
34 pmx_core: pinmux@14120 {
35 compatible = "pinctrl-single";
40 pinctrl-single,bit-per-mux;
41 pinctrl-single,register-width = <32>;
42 pinctrl-single,function-mask = <0xf>;
45 serial0_rtscts_pins: pinmux_serial0_rtscts_pins {
46 pinctrl-single,bits = <
47 /* UART0_RTS UART0_CTS */
48 0x0c 0x22000000 0xff000000
51 serial0_rxtx_pins: pinmux_serial0_rxtx_pins {
52 pinctrl-single,bits = <
53 /* UART0_TXD UART0_RXD */
54 0x0c 0x00220000 0x00ff0000
57 serial1_rtscts_pins: pinmux_serial1_rtscts_pins {
58 pinctrl-single,bits = <
59 /* UART1_CTS UART1_RTS */
60 0x00 0x00440000 0x00ff0000
63 serial1_rxtx_pins: pinmux_serial1_rxtx_pins {
64 pinctrl-single,bits = <
65 /* UART1_TXD UART1_RXD */
66 0x10 0x22000000 0xff000000
69 serial2_rtscts_pins: pinmux_serial2_rtscts_pins {
70 pinctrl-single,bits = <
71 /* UART2_CTS UART2_RTS */
72 0x00 0x44000000 0xff000000
75 serial2_rxtx_pins: pinmux_serial2_rxtx_pins {
76 pinctrl-single,bits = <
77 /* UART2_TXD UART2_RXD */
78 0x10 0x00220000 0x00ff0000
81 i2c0_pins: pinmux_i2c0_pins {
82 pinctrl-single,bits = <
83 /* I2C0_SDA,I2C0_SCL */
84 0x10 0x00002200 0x0000ff00
87 i2c1_pins: pinmux_i2c1_pins {
88 pinctrl-single,bits = <
89 /* I2C1_SDA, I2C1_SCL */
90 0x10 0x00440000 0x00ff0000
93 mmc0_pins: pinmux_mmc_pins {
94 pinctrl-single,bits = <
95 /* MMCSD0_DAT[3] MMCSD0_DAT[2]
96 * MMCSD0_DAT[1] MMCSD0_DAT[0]
97 * MMCSD0_CMD MMCSD0_CLK
99 0x28 0x00222222 0x00ffffff
102 ehrpwm0a_pins: pinmux_ehrpwm0a_pins {
103 pinctrl-single,bits = <
105 0xc 0x00000002 0x0000000f
108 ehrpwm0b_pins: pinmux_ehrpwm0b_pins {
109 pinctrl-single,bits = <
111 0xc 0x00000020 0x000000f0
114 ehrpwm1a_pins: pinmux_ehrpwm1a_pins {
115 pinctrl-single,bits = <
117 0x14 0x00000002 0x0000000f
120 ehrpwm1b_pins: pinmux_ehrpwm1b_pins {
121 pinctrl-single,bits = <
123 0x14 0x00000020 0x000000f0
126 ecap0_pins: pinmux_ecap0_pins {
127 pinctrl-single,bits = <
129 0x8 0x20000000 0xf0000000
132 ecap1_pins: pinmux_ecap1_pins {
133 pinctrl-single,bits = <
135 0x4 0x40000000 0xf0000000
138 ecap2_pins: pinmux_ecap2_pins {
139 pinctrl-single,bits = <
141 0x4 0x00000004 0x0000000f
144 spi0_pins: pinmux_spi0_pins {
145 pinctrl-single,bits = <
146 /* SIMO, SOMI, CLK */
147 0xc 0x00001101 0x0000ff0f
150 spi0_cs0_pin: pinmux_spi0_cs0 {
151 pinctrl-single,bits = <
153 0x10 0x00000010 0x000000f0
156 spi0_cs3_pin: pinmux_spi0_cs3_pin {
157 pinctrl-single,bits = <
159 0xc 0x01000000 0x0f000000
162 spi1_pins: pinmux_spi1_pins {
163 pinctrl-single,bits = <
164 /* SIMO, SOMI, CLK */
165 0x14 0x00110100 0x00ff0f00
168 spi1_cs0_pin: pinmux_spi1_cs0 {
169 pinctrl-single,bits = <
171 0x14 0x00000010 0x000000f0
174 mdio_pins: pinmux_mdio_pins {
175 pinctrl-single,bits = <
176 /* MDIO_CLK, MDIO_D */
177 0x10 0x00000088 0x000000ff
180 mii_pins: pinmux_mii_pins {
181 pinctrl-single,bits = <
183 * MII_TXEN, MII_TXCLK, MII_COL
184 * MII_TXD_3, MII_TXD_2, MII_TXD_1
187 0x8 0x88888880 0xfffffff0
189 * MII_RXER, MII_CRS, MII_RXCLK
190 * MII_RXDV, MII_RXD_3, MII_RXD_2
191 * MII_RXD_1, MII_RXD_0
193 0xc 0x88888888 0xffffffff
196 lcd_pins: pinmux_lcd_pins {
197 pinctrl-single,bits = <
199 * LCD_D[2], LCD_D[3], LCD_D[4], LCD_D[5],
202 0x40 0x22222200 0xffffff00
204 * LCD_D[10], LCD_D[11], LCD_D[12], LCD_D[13],
205 * LCD_D[14], LCD_D[15], LCD_D[0], LCD_D[1]
207 0x44 0x22222222 0xffffffff
208 /* LCD_D[8], LCD_D[9] */
209 0x48 0x00000022 0x000000ff
212 0x48 0x02000000 0x0f000000
213 /* LCD_AC_ENB_CS, LCD_VSYNC, LCD_HSYNC */
214 0x4c 0x02000022 0x0f0000ff
217 vpif_capture_pins: vpif_capture_pins {
218 pinctrl-single,bits = <
219 /* VP_DIN[2..7], VP_CLKIN1, VP_CLKIN0 */
220 0x38 0x11111111 0xffffffff
221 /* VP_DIN[10..15,0..1] */
222 0x3c 0x11111111 0xffffffff
224 0x40 0x00000011 0x000000ff
227 vpif_display_pins: vpif_display_pins {
228 pinctrl-single,bits = <
230 0x40 0x11111100 0xffffff00
231 /* VP_DOUT[10..15,0..1] */
232 0x44 0x11111111 0xffffffff
234 0x48 0x00000011 0x000000ff
236 * VP_CLKOUT3, VP_CLKIN3,
237 * VP_CLKOUT2, VP_CLKIN2
239 0x4c 0x00111100 0x00ffff00
243 prictrl: priority-controller@14110 {
244 compatible = "ti,da850-mstpri";
245 reg = <0x14110 0x0c>;
248 cfgchip: chip-controller@1417c {
249 compatible = "ti,da830-cfgchip", "syscon", "simple-mfd";
250 reg = <0x1417c 0x14>;
253 compatible = "ti,da830-usb-phy";
259 compatible = "ti,edma3-tpcc";
260 /* eDMA3 CC0: 0x01c0 0000 - 0x01c0 7fff */
262 reg-names = "edma3_cc";
263 interrupts = <11 12>;
264 interrupt-names = "edma3_ccint", "edma3_ccerrint";
267 ti,tptcs = <&edma0_tptc0 7>, <&edma0_tptc1 0>;
269 edma0_tptc0: tptc@8000 {
270 compatible = "ti,edma3-tptc";
271 reg = <0x8000 0x400>;
273 interrupt-names = "edm3_tcerrint";
275 edma0_tptc1: tptc@8400 {
276 compatible = "ti,edma3-tptc";
277 reg = <0x8400 0x400>;
279 interrupt-names = "edm3_tcerrint";
282 compatible = "ti,edma3-tpcc";
283 /* eDMA3 CC1: 0x01e3 0000 - 0x01e3 7fff */
284 reg = <0x230000 0x8000>;
285 reg-names = "edma3_cc";
286 interrupts = <93 94>;
287 interrupt-names = "edma3_ccint", "edma3_ccerrint";
290 ti,tptcs = <&edma1_tptc0 7>;
292 edma1_tptc0: tptc@238000 {
293 compatible = "ti,edma3-tptc";
294 reg = <0x238000 0x400>;
296 interrupt-names = "edm3_tcerrint";
298 serial0: serial@42000 {
299 compatible = "ti,da830-uart", "ns16550a";
300 reg = <0x42000 0x100>;
306 serial1: serial@10c000 {
307 compatible = "ti,da830-uart", "ns16550a";
308 reg = <0x10c000 0x100>;
314 serial2: serial@10d000 {
315 compatible = "ti,da830-uart", "ns16550a";
316 reg = <0x10d000 0x100>;
323 compatible = "ti,da830-rtc";
324 reg = <0x23000 0x1000>;
330 compatible = "ti,davinci-i2c";
331 reg = <0x22000 0x1000>;
333 #address-cells = <1>;
338 compatible = "ti,davinci-i2c";
339 reg = <0x228000 0x1000>;
341 #address-cells = <1>;
346 compatible = "ti,davinci-wdt";
347 reg = <0x21000 0x1000>;
351 compatible = "ti,da830-mmc";
352 reg = <0x40000 0x1000>;
356 dmas = <&edma0 16 0>, <&edma0 17 0>;
357 dma-names = "rx", "tx";
361 compatible = "ti,da850-vpif";
362 reg = <0x217000 0x1000>;
366 /* VPIF capture port */
368 #address-cells = <1>;
372 /* VPIF display port */
374 #address-cells = <1>;
379 compatible = "ti,da830-mmc";
380 reg = <0x21b000 0x1000>;
384 dmas = <&edma1 28 0>, <&edma1 29 0>;
385 dma-names = "rx", "tx";
388 ehrpwm0: pwm@300000 {
389 compatible = "ti,da850-ehrpwm", "ti,am3352-ehrpwm",
392 reg = <0x300000 0x2000>;
395 ehrpwm1: pwm@302000 {
396 compatible = "ti,da850-ehrpwm", "ti,am3352-ehrpwm",
399 reg = <0x302000 0x2000>;
403 compatible = "ti,da850-ecap", "ti,am3352-ecap",
406 reg = <0x306000 0x80>;
410 compatible = "ti,da850-ecap", "ti,am3352-ecap",
413 reg = <0x307000 0x80>;
417 compatible = "ti,da850-ecap", "ti,am3352-ecap",
420 reg = <0x308000 0x80>;
424 #address-cells = <1>;
426 compatible = "ti,da830-spi";
427 reg = <0x41000 0x1000>;
429 ti,davinci-spi-intr-line = <1>;
431 dmas = <&edma0 14 0>, <&edma0 15 0>;
432 dma-names = "rx", "tx";
436 #address-cells = <1>;
438 compatible = "ti,da830-spi";
439 reg = <0x30e000 0x1000>;
441 ti,davinci-spi-intr-line = <1>;
443 dmas = <&edma0 18 0>, <&edma0 19 0>;
444 dma-names = "rx", "tx";
448 compatible = "ti,da830-musb";
449 reg = <0x200000 0x1000>;
452 interrupt-names = "mc";
455 phy-names = "usb-phy";
458 #address-cells = <1>;
461 dmas = <&cppi41dma 0 0 &cppi41dma 1 0
462 &cppi41dma 2 0 &cppi41dma 3 0
463 &cppi41dma 0 1 &cppi41dma 1 1
464 &cppi41dma 2 1 &cppi41dma 3 1>;
466 "rx1", "rx2", "rx3", "rx4",
467 "tx1", "tx2", "tx3", "tx4";
469 cppi41dma: dma-controller@201000 {
470 compatible = "ti,da830-cppi41";
471 reg = <0x201000 0x1000
474 reg-names = "controller",
475 "scheduler", "queuemgr";
483 compatible = "ti,da850-ahci";
484 reg = <0x218000 0x2000>, <0x22c018 0x4>;
489 compatible = "ti,davinci_mdio";
490 #address-cells = <1>;
492 reg = <0x224000 0x1000>;
495 eth0: ethernet@220000 {
496 compatible = "ti,davinci-dm6467-emac";
497 reg = <0x220000 0x4000>;
498 ti,davinci-ctrl-reg-offset = <0x3000>;
499 ti,davinci-ctrl-mod-reg-offset = <0x2000>;
500 ti,davinci-ctrl-ram-offset = <0>;
501 ti,davinci-ctrl-ram-size = <0x2000>;
502 local-mac-address = [ 00 00 00 00 00 00 ];
511 compatible = "ti,da830-ohci";
512 reg = <0x225000 0x1000>;
515 phy-names = "usb-phy";
519 compatible = "ti,dm6441-gpio";
522 reg = <0x226000 0x1000>;
523 interrupts = <42 IRQ_TYPE_EDGE_BOTH
524 43 IRQ_TYPE_EDGE_BOTH 44 IRQ_TYPE_EDGE_BOTH
525 45 IRQ_TYPE_EDGE_BOTH 46 IRQ_TYPE_EDGE_BOTH
526 47 IRQ_TYPE_EDGE_BOTH 48 IRQ_TYPE_EDGE_BOTH
527 49 IRQ_TYPE_EDGE_BOTH 50 IRQ_TYPE_EDGE_BOTH>;
529 ti,davinci-gpio-unbanked = <0>;
531 interrupt-controller;
532 #interrupt-cells = <2>;
534 pinconf: pin-controller@22c00c {
535 compatible = "ti,da850-pupd";
536 reg = <0x22c00c 0x8>;
540 mcasp0: mcasp@100000 {
541 compatible = "ti,da830-mcasp-audio";
542 reg = <0x100000 0x2000>,
544 reg-names = "mpu", "dat";
546 interrupt-names = "common";
550 dma-names = "tx", "rx";
553 lcdc: display@213000 {
554 compatible = "ti,da850-tilcdc";
555 reg = <0x213000 0x1000>;
557 max-pixelclock = <37500>;
561 aemif: aemif@68000000 {
562 compatible = "ti,da850-aemif";
563 #address-cells = <2>;
566 reg = <0x68000000 0x00008000>;
567 ranges = <0 0 0x60000000 0x08000000
568 1 0 0x68000000 0x00008000>;
571 memctrl: memory-controller@b0000000 {
572 compatible = "ti,da850-ddr-controller";
573 reg = <0xb0000000 0xe8>;