da850.dtsi 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273
  1. /*
  2. * Copyright 2012 DENX Software Engineering GmbH
  3. * Heiko Schocher <hs@denx.de>
  4. *
  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.
  9. */
  10. #include "skeleton.dtsi"
  11. / {
  12. arm {
  13. #address-cells = <1>;
  14. #size-cells = <1>;
  15. ranges;
  16. intc: interrupt-controller {
  17. compatible = "ti,cp-intc";
  18. interrupt-controller;
  19. #interrupt-cells = <1>;
  20. ti,intc-size = <100>;
  21. reg = <0xfffee000 0x2000>;
  22. };
  23. };
  24. soc {
  25. compatible = "simple-bus";
  26. model = "da850";
  27. #address-cells = <1>;
  28. #size-cells = <1>;
  29. ranges = <0x0 0x01c00000 0x400000>;
  30. interrupt-parent = <&intc>;
  31. pmx_core: pinmux@1c14120 {
  32. compatible = "pinctrl-single";
  33. reg = <0x14120 0x50>;
  34. #address-cells = <1>;
  35. #size-cells = <0>;
  36. pinctrl-single,bit-per-mux;
  37. pinctrl-single,register-width = <32>;
  38. pinctrl-single,function-mask = <0xf>;
  39. status = "disabled";
  40. nand_cs3_pins: pinmux_nand_pins {
  41. pinctrl-single,bits = <
  42. /* EMA_OE, EMA_WE */
  43. 0x1c 0x00110000 0x00ff0000
  44. /* EMA_CS[4],EMA_CS[3]*/
  45. 0x1c 0x00000110 0x00000ff0
  46. /*
  47. * EMA_D[0], EMA_D[1], EMA_D[2],
  48. * EMA_D[3], EMA_D[4], EMA_D[5],
  49. * EMA_D[6], EMA_D[7]
  50. */
  51. 0x24 0x11111111 0xffffffff
  52. /* EMA_A[1], EMA_A[2] */
  53. 0x30 0x01100000 0x0ff00000
  54. >;
  55. };
  56. i2c0_pins: pinmux_i2c0_pins {
  57. pinctrl-single,bits = <
  58. /* I2C0_SDA,I2C0_SCL */
  59. 0x10 0x00002200 0x0000ff00
  60. >;
  61. };
  62. mmc0_pins: pinmux_mmc_pins {
  63. pinctrl-single,bits = <
  64. /* MMCSD0_DAT[3] MMCSD0_DAT[2]
  65. * MMCSD0_DAT[1] MMCSD0_DAT[0]
  66. * MMCSD0_CMD MMCSD0_CLK
  67. */
  68. 0x28 0x00222222 0x00ffffff
  69. >;
  70. };
  71. ehrpwm0a_pins: pinmux_ehrpwm0a_pins {
  72. pinctrl-single,bits = <
  73. /* EPWM0A */
  74. 0xc 0x00000002 0x0000000f
  75. >;
  76. };
  77. ehrpwm0b_pins: pinmux_ehrpwm0b_pins {
  78. pinctrl-single,bits = <
  79. /* EPWM0B */
  80. 0xc 0x00000020 0x000000f0
  81. >;
  82. };
  83. ehrpwm1a_pins: pinmux_ehrpwm1a_pins {
  84. pinctrl-single,bits = <
  85. /* EPWM1A */
  86. 0x14 0x00000002 0x0000000f
  87. >;
  88. };
  89. ehrpwm1b_pins: pinmux_ehrpwm1b_pins {
  90. pinctrl-single,bits = <
  91. /* EPWM1B */
  92. 0x14 0x00000020 0x000000f0
  93. >;
  94. };
  95. ecap0_pins: pinmux_ecap0_pins {
  96. pinctrl-single,bits = <
  97. /* ECAP0_APWM0 */
  98. 0x8 0x20000000 0xf0000000
  99. >;
  100. };
  101. ecap1_pins: pinmux_ecap1_pins {
  102. pinctrl-single,bits = <
  103. /* ECAP1_APWM1 */
  104. 0x4 0x40000000 0xf0000000
  105. >;
  106. };
  107. ecap2_pins: pinmux_ecap2_pins {
  108. pinctrl-single,bits = <
  109. /* ECAP2_APWM2 */
  110. 0x4 0x00000004 0x0000000f
  111. >;
  112. };
  113. spi1_pins: pinmux_spi_pins {
  114. pinctrl-single,bits = <
  115. /* SIMO, SOMI, CLK */
  116. 0x14 0x00110100 0x00ff0f00
  117. >;
  118. };
  119. spi1_cs0_pin: pinmux_spi1_cs0 {
  120. pinctrl-single,bits = <
  121. /* CS0 */
  122. 0x14 0x00000010 0x000000f0
  123. >;
  124. };
  125. mdio_pins: pinmux_mdio_pins {
  126. pinctrl-single,bits = <
  127. /* MDIO_CLK, MDIO_D */
  128. 0x10 0x00000088 0x000000ff
  129. >;
  130. };
  131. mii_pins: pinmux_mii_pins {
  132. pinctrl-single,bits = <
  133. /*
  134. * MII_TXEN, MII_TXCLK, MII_COL
  135. * MII_TXD_3, MII_TXD_2, MII_TXD_1
  136. * MII_TXD_0
  137. */
  138. 0x8 0x88888880 0xfffffff0
  139. /*
  140. * MII_RXER, MII_CRS, MII_RXCLK
  141. * MII_RXDV, MII_RXD_3, MII_RXD_2
  142. * MII_RXD_1, MII_RXD_0
  143. */
  144. 0xc 0x88888888 0xffffffff
  145. >;
  146. };
  147. };
  148. serial0: serial@1c42000 {
  149. compatible = "ns16550a";
  150. reg = <0x42000 0x100>;
  151. reg-shift = <2>;
  152. interrupts = <25>;
  153. status = "disabled";
  154. };
  155. serial1: serial@1d0c000 {
  156. compatible = "ns16550a";
  157. reg = <0x10c000 0x100>;
  158. reg-shift = <2>;
  159. interrupts = <53>;
  160. status = "disabled";
  161. };
  162. serial2: serial@1d0d000 {
  163. compatible = "ns16550a";
  164. reg = <0x10d000 0x100>;
  165. reg-shift = <2>;
  166. interrupts = <61>;
  167. status = "disabled";
  168. };
  169. rtc0: rtc@1c23000 {
  170. compatible = "ti,da830-rtc";
  171. reg = <0x23000 0x1000>;
  172. interrupts = <19
  173. 19>;
  174. status = "disabled";
  175. };
  176. i2c0: i2c@1c22000 {
  177. compatible = "ti,davinci-i2c";
  178. reg = <0x22000 0x1000>;
  179. interrupts = <15>;
  180. #address-cells = <1>;
  181. #size-cells = <0>;
  182. status = "disabled";
  183. };
  184. wdt: wdt@1c21000 {
  185. compatible = "ti,davinci-wdt";
  186. reg = <0x21000 0x1000>;
  187. status = "disabled";
  188. };
  189. mmc0: mmc@1c40000 {
  190. compatible = "ti,da830-mmc";
  191. reg = <0x40000 0x1000>;
  192. interrupts = <16>;
  193. status = "disabled";
  194. };
  195. ehrpwm0: ehrpwm@01f00000 {
  196. compatible = "ti,da850-ehrpwm", "ti,am33xx-ehrpwm";
  197. #pwm-cells = <3>;
  198. reg = <0x300000 0x2000>;
  199. status = "disabled";
  200. };
  201. ehrpwm1: ehrpwm@01f02000 {
  202. compatible = "ti,da850-ehrpwm", "ti,am33xx-ehrpwm";
  203. #pwm-cells = <3>;
  204. reg = <0x302000 0x2000>;
  205. status = "disabled";
  206. };
  207. ecap0: ecap@01f06000 {
  208. compatible = "ti,da850-ecap", "ti,am33xx-ecap";
  209. #pwm-cells = <3>;
  210. reg = <0x306000 0x80>;
  211. status = "disabled";
  212. };
  213. ecap1: ecap@01f07000 {
  214. compatible = "ti,da850-ecap", "ti,am33xx-ecap";
  215. #pwm-cells = <3>;
  216. reg = <0x307000 0x80>;
  217. status = "disabled";
  218. };
  219. ecap2: ecap@01f08000 {
  220. compatible = "ti,da850-ecap", "ti,am33xx-ecap";
  221. #pwm-cells = <3>;
  222. reg = <0x308000 0x80>;
  223. status = "disabled";
  224. };
  225. spi1: spi@1f0e000 {
  226. #address-cells = <1>;
  227. #size-cells = <0>;
  228. compatible = "ti,da830-spi";
  229. reg = <0x30e000 0x1000>;
  230. num-cs = <4>;
  231. ti,davinci-spi-intr-line = <1>;
  232. interrupts = <56>;
  233. status = "disabled";
  234. };
  235. mdio: mdio@1e24000 {
  236. compatible = "ti,davinci_mdio";
  237. #address-cells = <1>;
  238. #size-cells = <0>;
  239. reg = <0x224000 0x1000>;
  240. };
  241. eth0: ethernet@1e20000 {
  242. compatible = "ti,davinci-dm6467-emac";
  243. reg = <0x220000 0x4000>;
  244. ti,davinci-ctrl-reg-offset = <0x3000>;
  245. ti,davinci-ctrl-mod-reg-offset = <0x2000>;
  246. ti,davinci-ctrl-ram-offset = <0>;
  247. ti,davinci-ctrl-ram-size = <0x2000>;
  248. local-mac-address = [ 00 00 00 00 00 00 ];
  249. interrupts = <33
  250. 34
  251. 35
  252. 36
  253. >;
  254. };
  255. };
  256. nand_cs3@62000000 {
  257. compatible = "ti,davinci-nand";
  258. reg = <0x62000000 0x807ff
  259. 0x68000000 0x8000>;
  260. ti,davinci-chipselect = <1>;
  261. ti,davinci-mask-ale = <0>;
  262. ti,davinci-mask-cle = <0>;
  263. ti,davinci-mask-chipsel = <0>;
  264. ti,davinci-ecc-mode = "hw";
  265. ti,davinci-ecc-bits = <4>;
  266. ti,davinci-nand-use-bbt;
  267. status = "disabled";
  268. };
  269. };