imx27.dtsi 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385
  1. /*
  2. * Copyright 2012 Sascha Hauer, Pengutronix
  3. *
  4. * The code contained herein is licensed under the GNU General Public
  5. * License. You may obtain a copy of the GNU General Public License
  6. * Version 2 or later at the following locations:
  7. *
  8. * http://www.opensource.org/licenses/gpl-license.html
  9. * http://www.gnu.org/copyleft/gpl.html
  10. */
  11. #include "skeleton.dtsi"
  12. / {
  13. aliases {
  14. serial0 = &uart1;
  15. serial1 = &uart2;
  16. serial2 = &uart3;
  17. serial3 = &uart4;
  18. serial4 = &uart5;
  19. serial5 = &uart6;
  20. gpio0 = &gpio1;
  21. gpio1 = &gpio2;
  22. gpio2 = &gpio3;
  23. gpio3 = &gpio4;
  24. gpio4 = &gpio5;
  25. gpio5 = &gpio6;
  26. spi0 = &cspi1;
  27. spi1 = &cspi2;
  28. spi2 = &cspi3;
  29. };
  30. avic: avic-interrupt-controller@e0000000 {
  31. compatible = "fsl,imx27-avic", "fsl,avic";
  32. interrupt-controller;
  33. #interrupt-cells = <1>;
  34. reg = <0x10040000 0x1000>;
  35. };
  36. clocks {
  37. #address-cells = <1>;
  38. #size-cells = <0>;
  39. osc26m {
  40. compatible = "fsl,imx-osc26m", "fixed-clock";
  41. clock-frequency = <26000000>;
  42. };
  43. };
  44. soc {
  45. #address-cells = <1>;
  46. #size-cells = <1>;
  47. compatible = "simple-bus";
  48. interrupt-parent = <&avic>;
  49. ranges;
  50. aipi@10000000 { /* AIPI1 */
  51. compatible = "fsl,aipi-bus", "simple-bus";
  52. #address-cells = <1>;
  53. #size-cells = <1>;
  54. reg = <0x10000000 0x20000>;
  55. ranges;
  56. dma: dma@10001000 {
  57. compatible = "fsl,imx27-dma";
  58. reg = <0x10001000 0x1000>;
  59. interrupts = <32>;
  60. clocks = <&clks 50>, <&clks 70>;
  61. clock-names = "ipg", "ahb";
  62. #dma-cells = <1>;
  63. #dma-channels = <16>;
  64. };
  65. wdog: wdog@10002000 {
  66. compatible = "fsl,imx27-wdt", "fsl,imx21-wdt";
  67. reg = <0x10002000 0x1000>;
  68. interrupts = <27>;
  69. clocks = <&clks 0>;
  70. };
  71. gpt1: timer@10003000 {
  72. compatible = "fsl,imx27-gpt", "fsl,imx1-gpt";
  73. reg = <0x10003000 0x1000>;
  74. interrupts = <26>;
  75. clocks = <&clks 46>, <&clks 61>;
  76. clock-names = "ipg", "per";
  77. };
  78. gpt2: timer@10004000 {
  79. compatible = "fsl,imx27-gpt", "fsl,imx1-gpt";
  80. reg = <0x10004000 0x1000>;
  81. interrupts = <25>;
  82. clocks = <&clks 45>, <&clks 61>;
  83. clock-names = "ipg", "per";
  84. };
  85. gpt3: timer@10005000 {
  86. compatible = "fsl,imx27-gpt", "fsl,imx1-gpt";
  87. reg = <0x10005000 0x1000>;
  88. interrupts = <24>;
  89. clocks = <&clks 44>, <&clks 61>;
  90. clock-names = "ipg", "per";
  91. };
  92. pwm0: pwm@10006000 {
  93. compatible = "fsl,imx27-pwm";
  94. reg = <0x10006000 0x1000>;
  95. interrupts = <23>;
  96. clocks = <&clks 34>, <&clks 61>;
  97. clock-names = "ipg", "per";
  98. };
  99. uart1: serial@1000a000 {
  100. compatible = "fsl,imx27-uart", "fsl,imx21-uart";
  101. reg = <0x1000a000 0x1000>;
  102. interrupts = <20>;
  103. clocks = <&clks 81>, <&clks 61>;
  104. clock-names = "ipg", "per";
  105. status = "disabled";
  106. };
  107. uart2: serial@1000b000 {
  108. compatible = "fsl,imx27-uart", "fsl,imx21-uart";
  109. reg = <0x1000b000 0x1000>;
  110. interrupts = <19>;
  111. clocks = <&clks 80>, <&clks 61>;
  112. clock-names = "ipg", "per";
  113. status = "disabled";
  114. };
  115. uart3: serial@1000c000 {
  116. compatible = "fsl,imx27-uart", "fsl,imx21-uart";
  117. reg = <0x1000c000 0x1000>;
  118. interrupts = <18>;
  119. clocks = <&clks 79>, <&clks 61>;
  120. clock-names = "ipg", "per";
  121. status = "disabled";
  122. };
  123. uart4: serial@1000d000 {
  124. compatible = "fsl,imx27-uart", "fsl,imx21-uart";
  125. reg = <0x1000d000 0x1000>;
  126. interrupts = <17>;
  127. clocks = <&clks 78>, <&clks 61>;
  128. clock-names = "ipg", "per";
  129. status = "disabled";
  130. };
  131. cspi1: cspi@1000e000 {
  132. #address-cells = <1>;
  133. #size-cells = <0>;
  134. compatible = "fsl,imx27-cspi";
  135. reg = <0x1000e000 0x1000>;
  136. interrupts = <16>;
  137. clocks = <&clks 53>, <&clks 53>;
  138. clock-names = "ipg", "per";
  139. status = "disabled";
  140. };
  141. cspi2: cspi@1000f000 {
  142. #address-cells = <1>;
  143. #size-cells = <0>;
  144. compatible = "fsl,imx27-cspi";
  145. reg = <0x1000f000 0x1000>;
  146. interrupts = <15>;
  147. clocks = <&clks 52>, <&clks 52>;
  148. clock-names = "ipg", "per";
  149. status = "disabled";
  150. };
  151. i2c1: i2c@10012000 {
  152. #address-cells = <1>;
  153. #size-cells = <0>;
  154. compatible = "fsl,imx27-i2c", "fsl,imx21-i2c";
  155. reg = <0x10012000 0x1000>;
  156. interrupts = <12>;
  157. clocks = <&clks 40>;
  158. status = "disabled";
  159. };
  160. sdhci1: sdhci@10013000 {
  161. compatible = "fsl,imx27-mmc", "fsl,imx21-mmc";
  162. reg = <0x10013000 0x1000>;
  163. interrupts = <11>;
  164. clocks = <&clks 30>, <&clks 60>;
  165. clock-names = "ipg", "per";
  166. dmas = <&dma 7>;
  167. dma-names = "rx-tx";
  168. status = "disabled";
  169. };
  170. sdhci2: sdhci@10014000 {
  171. compatible = "fsl,imx27-mmc", "fsl,imx21-mmc";
  172. reg = <0x10014000 0x1000>;
  173. interrupts = <10>;
  174. clocks = <&clks 29>, <&clks 60>;
  175. clock-names = "ipg", "per";
  176. dmas = <&dma 6>;
  177. dma-names = "rx-tx";
  178. status = "disabled";
  179. };
  180. gpio1: gpio@10015000 {
  181. compatible = "fsl,imx27-gpio", "fsl,imx21-gpio";
  182. reg = <0x10015000 0x100>;
  183. interrupts = <8>;
  184. gpio-controller;
  185. #gpio-cells = <2>;
  186. interrupt-controller;
  187. #interrupt-cells = <2>;
  188. };
  189. gpio2: gpio@10015100 {
  190. compatible = "fsl,imx27-gpio", "fsl,imx21-gpio";
  191. reg = <0x10015100 0x100>;
  192. interrupts = <8>;
  193. gpio-controller;
  194. #gpio-cells = <2>;
  195. interrupt-controller;
  196. #interrupt-cells = <2>;
  197. };
  198. gpio3: gpio@10015200 {
  199. compatible = "fsl,imx27-gpio", "fsl,imx21-gpio";
  200. reg = <0x10015200 0x100>;
  201. interrupts = <8>;
  202. gpio-controller;
  203. #gpio-cells = <2>;
  204. interrupt-controller;
  205. #interrupt-cells = <2>;
  206. };
  207. gpio4: gpio@10015300 {
  208. compatible = "fsl,imx27-gpio", "fsl,imx21-gpio";
  209. reg = <0x10015300 0x100>;
  210. interrupts = <8>;
  211. gpio-controller;
  212. #gpio-cells = <2>;
  213. interrupt-controller;
  214. #interrupt-cells = <2>;
  215. };
  216. gpio5: gpio@10015400 {
  217. compatible = "fsl,imx27-gpio", "fsl,imx21-gpio";
  218. reg = <0x10015400 0x100>;
  219. interrupts = <8>;
  220. gpio-controller;
  221. #gpio-cells = <2>;
  222. interrupt-controller;
  223. #interrupt-cells = <2>;
  224. };
  225. gpio6: gpio@10015500 {
  226. compatible = "fsl,imx27-gpio", "fsl,imx21-gpio";
  227. reg = <0x10015500 0x100>;
  228. interrupts = <8>;
  229. gpio-controller;
  230. #gpio-cells = <2>;
  231. interrupt-controller;
  232. #interrupt-cells = <2>;
  233. };
  234. cspi3: cspi@10017000 {
  235. #address-cells = <1>;
  236. #size-cells = <0>;
  237. compatible = "fsl,imx27-cspi";
  238. reg = <0x10017000 0x1000>;
  239. interrupts = <6>;
  240. clocks = <&clks 51>, <&clks 51>;
  241. clock-names = "ipg", "per";
  242. status = "disabled";
  243. };
  244. gpt4: timer@10019000 {
  245. compatible = "fsl,imx27-gpt", "fsl,imx1-gpt";
  246. reg = <0x10019000 0x1000>;
  247. interrupts = <4>;
  248. clocks = <&clks 43>, <&clks 61>;
  249. clock-names = "ipg", "per";
  250. };
  251. gpt5: timer@1001a000 {
  252. compatible = "fsl,imx27-gpt", "fsl,imx1-gpt";
  253. reg = <0x1001a000 0x1000>;
  254. interrupts = <3>;
  255. clocks = <&clks 42>, <&clks 61>;
  256. clock-names = "ipg", "per";
  257. };
  258. uart5: serial@1001b000 {
  259. compatible = "fsl,imx27-uart", "fsl,imx21-uart";
  260. reg = <0x1001b000 0x1000>;
  261. interrupts = <49>;
  262. clocks = <&clks 77>, <&clks 61>;
  263. clock-names = "ipg", "per";
  264. status = "disabled";
  265. };
  266. uart6: serial@1001c000 {
  267. compatible = "fsl,imx27-uart", "fsl,imx21-uart";
  268. reg = <0x1001c000 0x1000>;
  269. interrupts = <48>;
  270. clocks = <&clks 78>, <&clks 61>;
  271. clock-names = "ipg", "per";
  272. status = "disabled";
  273. };
  274. i2c2: i2c@1001d000 {
  275. #address-cells = <1>;
  276. #size-cells = <0>;
  277. compatible = "fsl,imx27-i2c", "fsl,imx21-i2c";
  278. reg = <0x1001d000 0x1000>;
  279. interrupts = <1>;
  280. clocks = <&clks 39>;
  281. status = "disabled";
  282. };
  283. sdhci3: sdhci@1001e000 {
  284. compatible = "fsl,imx27-mmc", "fsl,imx21-mmc";
  285. reg = <0x1001e000 0x1000>;
  286. interrupts = <9>;
  287. clocks = <&clks 28>, <&clks 60>;
  288. clock-names = "ipg", "per";
  289. dmas = <&dma 36>;
  290. dma-names = "rx-tx";
  291. status = "disabled";
  292. };
  293. gpt6: timer@1001f000 {
  294. compatible = "fsl,imx27-gpt", "fsl,imx1-gpt";
  295. reg = <0x1001f000 0x1000>;
  296. interrupts = <2>;
  297. clocks = <&clks 41>, <&clks 61>;
  298. clock-names = "ipg", "per";
  299. };
  300. };
  301. aipi@10020000 { /* AIPI2 */
  302. compatible = "fsl,aipi-bus", "simple-bus";
  303. #address-cells = <1>;
  304. #size-cells = <1>;
  305. reg = <0x10020000 0x20000>;
  306. ranges;
  307. coda: coda@10023000 {
  308. compatible = "fsl,imx27-vpu";
  309. reg = <0x10023000 0x0200>;
  310. interrupts = <53>;
  311. clocks = <&clks 57>, <&clks 66>;
  312. clock-names = "per", "ahb";
  313. iram = <&iram>;
  314. };
  315. clks: ccm@10027000{
  316. compatible = "fsl,imx27-ccm";
  317. reg = <0x10027000 0x1000>;
  318. #clock-cells = <1>;
  319. };
  320. fec: ethernet@1002b000 {
  321. compatible = "fsl,imx27-fec";
  322. reg = <0x1002b000 0x4000>;
  323. interrupts = <50>;
  324. clocks = <&clks 48>, <&clks 67>, <&clks 0>;
  325. clock-names = "ipg", "ahb", "ptp";
  326. status = "disabled";
  327. };
  328. };
  329. iram: iram@ffff4c00 {
  330. compatible = "mmio-sram";
  331. reg = <0xffff4c00 0xb400>;
  332. };
  333. nfc: nand@d8000000 {
  334. #address-cells = <1>;
  335. #size-cells = <1>;
  336. compatible = "fsl,imx27-nand";
  337. reg = <0xd8000000 0x1000>;
  338. interrupts = <29>;
  339. clocks = <&clks 54>;
  340. status = "disabled";
  341. };
  342. };
  343. };