imx27.dtsi 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327
  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. };
  27. avic: avic-interrupt-controller@e0000000 {
  28. compatible = "fsl,imx27-avic", "fsl,avic";
  29. interrupt-controller;
  30. #interrupt-cells = <1>;
  31. reg = <0x10040000 0x1000>;
  32. };
  33. clocks {
  34. #address-cells = <1>;
  35. #size-cells = <0>;
  36. osc26m {
  37. compatible = "fsl,imx-osc26m", "fixed-clock";
  38. clock-frequency = <26000000>;
  39. };
  40. };
  41. soc {
  42. #address-cells = <1>;
  43. #size-cells = <1>;
  44. compatible = "simple-bus";
  45. interrupt-parent = <&avic>;
  46. ranges;
  47. aipi@10000000 { /* AIPI1 */
  48. compatible = "fsl,aipi-bus", "simple-bus";
  49. #address-cells = <1>;
  50. #size-cells = <1>;
  51. reg = <0x10000000 0x20000>;
  52. ranges;
  53. wdog: wdog@10002000 {
  54. compatible = "fsl,imx27-wdt", "fsl,imx21-wdt";
  55. reg = <0x10002000 0x1000>;
  56. interrupts = <27>;
  57. clocks = <&clks 0>;
  58. };
  59. gpt1: timer@10003000 {
  60. compatible = "fsl,imx27-gpt", "fsl,imx1-gpt";
  61. reg = <0x10003000 0x1000>;
  62. interrupts = <26>;
  63. clocks = <&clks 46>, <&clks 61>;
  64. clock-names = "ipg", "per";
  65. };
  66. gpt2: timer@10004000 {
  67. compatible = "fsl,imx27-gpt", "fsl,imx1-gpt";
  68. reg = <0x10004000 0x1000>;
  69. interrupts = <25>;
  70. clocks = <&clks 45>, <&clks 61>;
  71. clock-names = "ipg", "per";
  72. };
  73. gpt3: timer@10005000 {
  74. compatible = "fsl,imx27-gpt", "fsl,imx1-gpt";
  75. reg = <0x10005000 0x1000>;
  76. interrupts = <24>;
  77. clocks = <&clks 44>, <&clks 61>;
  78. clock-names = "ipg", "per";
  79. };
  80. pwm0: pwm@10006000 {
  81. compatible = "fsl,imx27-pwm";
  82. reg = <0x10006000 0x1000>;
  83. interrupts = <23>;
  84. clocks = <&clks 34>, <&clks 61>;
  85. clock-names = "ipg", "per";
  86. };
  87. uart1: serial@1000a000 {
  88. compatible = "fsl,imx27-uart", "fsl,imx21-uart";
  89. reg = <0x1000a000 0x1000>;
  90. interrupts = <20>;
  91. clocks = <&clks 81>, <&clks 61>;
  92. clock-names = "ipg", "per";
  93. status = "disabled";
  94. };
  95. uart2: serial@1000b000 {
  96. compatible = "fsl,imx27-uart", "fsl,imx21-uart";
  97. reg = <0x1000b000 0x1000>;
  98. interrupts = <19>;
  99. clocks = <&clks 80>, <&clks 61>;
  100. clock-names = "ipg", "per";
  101. status = "disabled";
  102. };
  103. uart3: serial@1000c000 {
  104. compatible = "fsl,imx27-uart", "fsl,imx21-uart";
  105. reg = <0x1000c000 0x1000>;
  106. interrupts = <18>;
  107. clocks = <&clks 79>, <&clks 61>;
  108. clock-names = "ipg", "per";
  109. status = "disabled";
  110. };
  111. uart4: serial@1000d000 {
  112. compatible = "fsl,imx27-uart", "fsl,imx21-uart";
  113. reg = <0x1000d000 0x1000>;
  114. interrupts = <17>;
  115. clocks = <&clks 78>, <&clks 61>;
  116. clock-names = "ipg", "per";
  117. status = "disabled";
  118. };
  119. cspi1: cspi@1000e000 {
  120. #address-cells = <1>;
  121. #size-cells = <0>;
  122. compatible = "fsl,imx27-cspi";
  123. reg = <0x1000e000 0x1000>;
  124. interrupts = <16>;
  125. clocks = <&clks 53>, <&clks 53>;
  126. clock-names = "ipg", "per";
  127. status = "disabled";
  128. };
  129. cspi2: cspi@1000f000 {
  130. #address-cells = <1>;
  131. #size-cells = <0>;
  132. compatible = "fsl,imx27-cspi";
  133. reg = <0x1000f000 0x1000>;
  134. interrupts = <15>;
  135. clocks = <&clks 52>, <&clks 52>;
  136. clock-names = "ipg", "per";
  137. status = "disabled";
  138. };
  139. i2c1: i2c@10012000 {
  140. #address-cells = <1>;
  141. #size-cells = <0>;
  142. compatible = "fsl,imx27-i2c", "fsl,imx21-i2c";
  143. reg = <0x10012000 0x1000>;
  144. interrupts = <12>;
  145. clocks = <&clks 40>;
  146. status = "disabled";
  147. };
  148. gpio1: gpio@10015000 {
  149. compatible = "fsl,imx27-gpio", "fsl,imx21-gpio";
  150. reg = <0x10015000 0x100>;
  151. interrupts = <8>;
  152. gpio-controller;
  153. #gpio-cells = <2>;
  154. interrupt-controller;
  155. #interrupt-cells = <2>;
  156. };
  157. gpio2: gpio@10015100 {
  158. compatible = "fsl,imx27-gpio", "fsl,imx21-gpio";
  159. reg = <0x10015100 0x100>;
  160. interrupts = <8>;
  161. gpio-controller;
  162. #gpio-cells = <2>;
  163. interrupt-controller;
  164. #interrupt-cells = <2>;
  165. };
  166. gpio3: gpio@10015200 {
  167. compatible = "fsl,imx27-gpio", "fsl,imx21-gpio";
  168. reg = <0x10015200 0x100>;
  169. interrupts = <8>;
  170. gpio-controller;
  171. #gpio-cells = <2>;
  172. interrupt-controller;
  173. #interrupt-cells = <2>;
  174. };
  175. gpio4: gpio@10015300 {
  176. compatible = "fsl,imx27-gpio", "fsl,imx21-gpio";
  177. reg = <0x10015300 0x100>;
  178. interrupts = <8>;
  179. gpio-controller;
  180. #gpio-cells = <2>;
  181. interrupt-controller;
  182. #interrupt-cells = <2>;
  183. };
  184. gpio5: gpio@10015400 {
  185. compatible = "fsl,imx27-gpio", "fsl,imx21-gpio";
  186. reg = <0x10015400 0x100>;
  187. interrupts = <8>;
  188. gpio-controller;
  189. #gpio-cells = <2>;
  190. interrupt-controller;
  191. #interrupt-cells = <2>;
  192. };
  193. gpio6: gpio@10015500 {
  194. compatible = "fsl,imx27-gpio", "fsl,imx21-gpio";
  195. reg = <0x10015500 0x100>;
  196. interrupts = <8>;
  197. gpio-controller;
  198. #gpio-cells = <2>;
  199. interrupt-controller;
  200. #interrupt-cells = <2>;
  201. };
  202. cspi3: cspi@10017000 {
  203. #address-cells = <1>;
  204. #size-cells = <0>;
  205. compatible = "fsl,imx27-cspi";
  206. reg = <0x10017000 0x1000>;
  207. interrupts = <6>;
  208. clocks = <&clks 51>, <&clks 51>;
  209. clock-names = "ipg", "per";
  210. status = "disabled";
  211. };
  212. gpt4: timer@10019000 {
  213. compatible = "fsl,imx27-gpt", "fsl,imx1-gpt";
  214. reg = <0x10019000 0x1000>;
  215. interrupts = <4>;
  216. clocks = <&clks 43>, <&clks 61>;
  217. clock-names = "ipg", "per";
  218. };
  219. gpt5: timer@1001a000 {
  220. compatible = "fsl,imx27-gpt", "fsl,imx1-gpt";
  221. reg = <0x1001a000 0x1000>;
  222. interrupts = <3>;
  223. clocks = <&clks 42>, <&clks 61>;
  224. clock-names = "ipg", "per";
  225. };
  226. uart5: serial@1001b000 {
  227. compatible = "fsl,imx27-uart", "fsl,imx21-uart";
  228. reg = <0x1001b000 0x1000>;
  229. interrupts = <49>;
  230. clocks = <&clks 77>, <&clks 61>;
  231. clock-names = "ipg", "per";
  232. status = "disabled";
  233. };
  234. uart6: serial@1001c000 {
  235. compatible = "fsl,imx27-uart", "fsl,imx21-uart";
  236. reg = <0x1001c000 0x1000>;
  237. interrupts = <48>;
  238. clocks = <&clks 78>, <&clks 61>;
  239. clock-names = "ipg", "per";
  240. status = "disabled";
  241. };
  242. i2c2: i2c@1001d000 {
  243. #address-cells = <1>;
  244. #size-cells = <0>;
  245. compatible = "fsl,imx27-i2c", "fsl,imx21-i2c";
  246. reg = <0x1001d000 0x1000>;
  247. interrupts = <1>;
  248. clocks = <&clks 39>;
  249. status = "disabled";
  250. };
  251. gpt6: timer@1001f000 {
  252. compatible = "fsl,imx27-gpt", "fsl,imx1-gpt";
  253. reg = <0x1001f000 0x1000>;
  254. interrupts = <2>;
  255. clocks = <&clks 41>, <&clks 61>;
  256. clock-names = "ipg", "per";
  257. };
  258. };
  259. aipi@10020000 { /* AIPI2 */
  260. compatible = "fsl,aipi-bus", "simple-bus";
  261. #address-cells = <1>;
  262. #size-cells = <1>;
  263. reg = <0x10020000 0x20000>;
  264. ranges;
  265. fec: ethernet@1002b000 {
  266. compatible = "fsl,imx27-fec";
  267. reg = <0x1002b000 0x4000>;
  268. interrupts = <50>;
  269. clocks = <&clks 48>, <&clks 67>, <&clks 0>;
  270. clock-names = "ipg", "ahb", "ptp";
  271. status = "disabled";
  272. };
  273. clks: ccm@10027000{
  274. compatible = "fsl,imx27-ccm";
  275. reg = <0x10027000 0x1000>;
  276. #clock-cells = <1>;
  277. };
  278. };
  279. nfc: nand@d8000000 {
  280. #address-cells = <1>;
  281. #size-cells = <1>;
  282. compatible = "fsl,imx27-nand";
  283. reg = <0xd8000000 0x1000>;
  284. interrupts = <29>;
  285. clocks = <&clks 54>;
  286. status = "disabled";
  287. };
  288. };
  289. };