imx27.dtsi 9.6 KB

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