imx51-digi-connectcore-som.dtsi 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377
  1. /*
  2. * Copyright (C) 2014 Alexander Shiyan <shc_work@mail.ru>
  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. /dts-v1/;
  12. #include "imx51.dtsi"
  13. / {
  14. model = "Digi ConnectCore CC(W)-MX51";
  15. compatible = "digi,connectcore-ccxmx51-som", "fsl,imx51";
  16. memory {
  17. reg = <0x90000000 0x08000000>;
  18. };
  19. };
  20. &ecspi1 {
  21. pinctrl-names = "default";
  22. pinctrl-0 = <&pinctrl_ecspi1>;
  23. fsl,spi-num-chipselects = <1>;
  24. cs-gpios = <&gpio4 24 GPIO_ACTIVE_HIGH>;
  25. status = "okay";
  26. pmic: mc13892@0 {
  27. pinctrl-names = "default";
  28. pinctrl-0 = <&pinctrl_mc13892>;
  29. compatible = "fsl,mc13892";
  30. spi-max-frequency = <16000000>;
  31. spi-cs-high;
  32. reg = <0>;
  33. interrupt-parent = <&gpio1>;
  34. interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
  35. fsl,mc13xxx-uses-rtc;
  36. regulators {
  37. sw1_reg: sw1 {
  38. regulator-min-microvolt = <1000000>;
  39. regulator-max-microvolt = <1100000>;
  40. regulator-boot-on;
  41. regulator-always-on;
  42. };
  43. sw2_reg: sw2 {
  44. regulator-min-microvolt = <1225000>;
  45. regulator-max-microvolt = <1225000>;
  46. regulator-boot-on;
  47. regulator-always-on;
  48. };
  49. sw3_reg: sw3 {
  50. regulator-min-microvolt = <1200000>;
  51. regulator-max-microvolt = <1200000>;
  52. regulator-boot-on;
  53. regulator-always-on;
  54. };
  55. swbst_reg: swbst { };
  56. viohi_reg: viohi {
  57. regulator-always-on;
  58. };
  59. vpll_reg: vpll {
  60. regulator-min-microvolt = <1800000>;
  61. regulator-max-microvolt = <1800000>;
  62. regulator-always-on;
  63. };
  64. vdig_reg: vdig {
  65. regulator-min-microvolt = <1250000>;
  66. regulator-max-microvolt = <1250000>;
  67. regulator-always-on;
  68. };
  69. vsd_reg: vsd {
  70. regulator-min-microvolt = <3150000>;
  71. regulator-max-microvolt = <3150000>;
  72. regulator-always-on;
  73. };
  74. vusb2_reg: vusb2 {
  75. regulator-min-microvolt = <2600000>;
  76. regulator-max-microvolt = <2600000>;
  77. regulator-always-on;
  78. };
  79. vvideo_reg: vvideo {
  80. regulator-min-microvolt = <2775000>;
  81. regulator-max-microvolt = <2775000>;
  82. regulator-always-on;
  83. };
  84. vaudio_reg: vaudio {
  85. regulator-min-microvolt = <3000000>;
  86. regulator-max-microvolt = <3000000>;
  87. regulator-always-on;
  88. };
  89. vcam_reg: vcam {
  90. regulator-min-microvolt = <2750000>;
  91. regulator-max-microvolt = <2750000>;
  92. regulator-always-on;
  93. };
  94. vgen1_reg: vgen1 {
  95. regulator-min-microvolt = <1200000>;
  96. regulator-max-microvolt = <1200000>;
  97. regulator-always-on;
  98. };
  99. vgen2_reg: vgen2 {
  100. regulator-min-microvolt = <3150000>;
  101. regulator-max-microvolt = <3150000>;
  102. regulator-always-on;
  103. };
  104. vgen3_reg: vgen3 {
  105. regulator-min-microvolt = <1800000>;
  106. regulator-max-microvolt = <1800000>;
  107. regulator-always-on;
  108. };
  109. vusb_reg: vusb {
  110. regulator-always-on;
  111. };
  112. gpo1_reg: gpo1 { };
  113. gpo2_reg: gpo2 { };
  114. gpo3_reg: gpo3 { };
  115. gpo4_reg: gpo4 { };
  116. pwgt2spi_reg: pwgt2spi {
  117. regulator-always-on;
  118. };
  119. vcoincell_reg: vcoincell {
  120. regulator-min-microvolt = <3000000>;
  121. regulator-max-microvolt = <3000000>;
  122. regulator-always-on;
  123. };
  124. };
  125. };
  126. };
  127. &esdhc2 {
  128. pinctrl-names = "default";
  129. pinctrl-0 = <&pinctrl_esdhc2>;
  130. cap-sdio-irq;
  131. enable-sdio-wakeup;
  132. keep-power-in-suspend;
  133. max-frequency = <50000000>;
  134. no-1-8-v;
  135. non-removable;
  136. vmmc-supply = <&gpo4_reg>;
  137. status = "okay";
  138. };
  139. &fec {
  140. pinctrl-names = "default";
  141. pinctrl-0 = <&pinctrl_fec>;
  142. phy-mode = "mii";
  143. phy-supply = <&gpo3_reg>;
  144. /* Pins shared with LCD2, keep status disabled */
  145. };
  146. &i2c2 {
  147. pinctrl-names = "default";
  148. pinctrl-0 = <&pinctrl_i2c2>;
  149. clock-frequency = <400000>;
  150. status = "okay";
  151. mma7455l@1d {
  152. pinctrl-names = "default";
  153. pinctrl-0 = <&pinctrl_mma7455l>;
  154. compatible = "fsl,mma7455l";
  155. reg = <0x1d>;
  156. interrupt-parent = <&gpio1>;
  157. interrupts = <7 IRQ_TYPE_LEVEL_HIGH>, <6 IRQ_TYPE_LEVEL_HIGH>;
  158. };
  159. };
  160. &nfc {
  161. pinctrl-names = "default";
  162. pinctrl-0 = <&pinctrl_nfc>;
  163. nand-bus-width = <8>;
  164. nand-ecc-mode = "hw";
  165. nand-on-flash-bbt;
  166. status = "okay";
  167. };
  168. &usbotg {
  169. phy_type = "utmi_wide";
  170. disable-over-current;
  171. /* Device role is not known, keep status disabled */
  172. };
  173. &weim {
  174. pinctrl-names = "default";
  175. pinctrl-0 = <&pinctrl_weim>;
  176. status = "okay";
  177. lan9221: lan9221@5,0 {
  178. pinctrl-names = "default";
  179. pinctrl-0 = <&pinctrl_lan9221>;
  180. compatible = "smsc,lan9221", "smsc,lan9115";
  181. reg = <5 0x00000000 0x1000>;
  182. fsl,weim-cs-timing = <
  183. 0x00420081 0x00000000
  184. 0x32260000 0x00000000
  185. 0x72080f00 0x00000000
  186. >;
  187. clocks = <&clks IMX5_CLK_DUMMY>;
  188. interrupt-parent = <&gpio1>;
  189. interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
  190. phy-mode = "mii";
  191. reg-io-width = <2>;
  192. smsc,irq-push-pull;
  193. vdd33a-supply = <&gpo2_reg>;
  194. vddvario-supply = <&gpo2_reg>;
  195. };
  196. };
  197. &iomuxc {
  198. imx51-digi-connectcore-som {
  199. pinctrl_ecspi1: ecspi1grp {
  200. fsl,pins = <
  201. MX51_PAD_CSPI1_MISO__ECSPI1_MISO 0x185
  202. MX51_PAD_CSPI1_MOSI__ECSPI1_MOSI 0x185
  203. MX51_PAD_CSPI1_SCLK__ECSPI1_SCLK 0x185
  204. MX51_PAD_CSPI1_SS0__GPIO4_24 0x85 /* CS0 */
  205. >;
  206. };
  207. pinctrl_esdhc2: esdhc2grp {
  208. fsl,pins = <
  209. MX51_PAD_SD2_CMD__SD2_CMD 0x400020d5
  210. MX51_PAD_SD2_CLK__SD2_CLK 0x20d5
  211. MX51_PAD_SD2_DATA0__SD2_DATA0 0x20d5
  212. MX51_PAD_SD2_DATA1__SD2_DATA1 0x20d5
  213. MX51_PAD_SD2_DATA2__SD2_DATA2 0x20d5
  214. MX51_PAD_SD2_DATA3__SD2_DATA3 0x20d5
  215. >;
  216. };
  217. pinctrl_fec: fecgrp {
  218. fsl,pins = <
  219. MX51_PAD_DI_GP3__FEC_TX_ER 0x80000000
  220. MX51_PAD_DI2_PIN4__FEC_CRS 0x80000000
  221. MX51_PAD_DI2_PIN2__FEC_MDC 0x80000000
  222. MX51_PAD_DI2_PIN3__FEC_MDIO 0x80000000
  223. MX51_PAD_DI2_DISP_CLK__FEC_RDATA1 0x80000000
  224. MX51_PAD_DI_GP4__FEC_RDATA2 0x80000000
  225. MX51_PAD_DISP2_DAT0__FEC_RDATA3 0x80000000
  226. MX51_PAD_DISP2_DAT1__FEC_RX_ER 0x80000000
  227. MX51_PAD_DISP2_DAT6__FEC_TDATA1 0x80000000
  228. MX51_PAD_DISP2_DAT7__FEC_TDATA2 0x80000000
  229. MX51_PAD_DISP2_DAT8__FEC_TDATA3 0x80000000
  230. MX51_PAD_DISP2_DAT9__FEC_TX_EN 0x80000000
  231. MX51_PAD_DISP2_DAT10__FEC_COL 0x80000000
  232. MX51_PAD_DISP2_DAT11__FEC_RX_CLK 0x80000000
  233. MX51_PAD_DISP2_DAT12__FEC_RX_DV 0x80000000
  234. MX51_PAD_DISP2_DAT13__FEC_TX_CLK 0x80000000
  235. MX51_PAD_DISP2_DAT14__FEC_RDATA0 0x80000000
  236. MX51_PAD_DISP2_DAT15__FEC_TDATA0 0x80000000
  237. >;
  238. };
  239. pinctrl_i2c2: i2c2grp {
  240. fsl,pins = <
  241. MX51_PAD_GPIO1_2__I2C2_SCL 0x400001ed
  242. MX51_PAD_GPIO1_3__I2C2_SDA 0x400001ed
  243. >;
  244. };
  245. pinctrl_nfc: nfcgrp {
  246. fsl,pins = <
  247. MX51_PAD_NANDF_D0__NANDF_D0 0x80000000
  248. MX51_PAD_NANDF_D1__NANDF_D1 0x80000000
  249. MX51_PAD_NANDF_D2__NANDF_D2 0x80000000
  250. MX51_PAD_NANDF_D3__NANDF_D3 0x80000000
  251. MX51_PAD_NANDF_D4__NANDF_D4 0x80000000
  252. MX51_PAD_NANDF_D5__NANDF_D5 0x80000000
  253. MX51_PAD_NANDF_D6__NANDF_D6 0x80000000
  254. MX51_PAD_NANDF_D7__NANDF_D7 0x80000000
  255. MX51_PAD_NANDF_ALE__NANDF_ALE 0x80000000
  256. MX51_PAD_NANDF_CLE__NANDF_CLE 0x80000000
  257. MX51_PAD_NANDF_RE_B__NANDF_RE_B 0x80000000
  258. MX51_PAD_NANDF_WE_B__NANDF_WE_B 0x80000000
  259. MX51_PAD_NANDF_WP_B__NANDF_WP_B 0x80000000
  260. MX51_PAD_NANDF_CS0__NANDF_CS0 0x80000000
  261. MX51_PAD_NANDF_RB0__NANDF_RB0 0x80000000
  262. >;
  263. };
  264. pinctrl_lan9221: lan9221grp {
  265. fsl,pins = <
  266. MX51_PAD_GPIO1_9__GPIO1_9 0xe5 /* IRQ */
  267. >;
  268. };
  269. pinctrl_mc13892: mc13892grp {
  270. fsl,pins = <
  271. MX51_PAD_GPIO1_5__GPIO1_5 0xe5 /* IRQ */
  272. >;
  273. };
  274. pinctrl_mma7455l: mma7455lgrp {
  275. fsl,pins = <
  276. MX51_PAD_GPIO1_7__GPIO1_7 0xe5 /* IRQ1 */
  277. MX51_PAD_GPIO1_6__GPIO1_6 0xe5 /* IRQ2 */
  278. >;
  279. };
  280. pinctrl_weim: weimgrp {
  281. fsl,pins = <
  282. MX51_PAD_EIM_DA0__EIM_DA0 0x80000000
  283. MX51_PAD_EIM_DA1__EIM_DA1 0x80000000
  284. MX51_PAD_EIM_DA2__EIM_DA2 0x80000000
  285. MX51_PAD_EIM_DA3__EIM_DA3 0x80000000
  286. MX51_PAD_EIM_DA4__EIM_DA4 0x80000000
  287. MX51_PAD_EIM_DA5__EIM_DA5 0x80000000
  288. MX51_PAD_EIM_DA6__EIM_DA6 0x80000000
  289. MX51_PAD_EIM_DA7__EIM_DA7 0x80000000
  290. MX51_PAD_EIM_DA8__EIM_DA8 0x80000000
  291. MX51_PAD_EIM_DA9__EIM_DA9 0x80000000
  292. MX51_PAD_EIM_DA10__EIM_DA10 0x80000000
  293. MX51_PAD_EIM_DA11__EIM_DA11 0x80000000
  294. MX51_PAD_EIM_DA12__EIM_DA12 0x80000000
  295. MX51_PAD_EIM_DA13__EIM_DA13 0x80000000
  296. MX51_PAD_EIM_DA14__EIM_DA14 0x80000000
  297. MX51_PAD_EIM_DA15__EIM_DA15 0x80000000
  298. MX51_PAD_EIM_A16__EIM_A16 0x80000000
  299. MX51_PAD_EIM_A17__EIM_A17 0x80000000
  300. MX51_PAD_EIM_A18__EIM_A18 0x80000000
  301. MX51_PAD_EIM_A19__EIM_A19 0x80000000
  302. MX51_PAD_EIM_A20__EIM_A20 0x80000000
  303. MX51_PAD_EIM_A21__EIM_A21 0x80000000
  304. MX51_PAD_EIM_A22__EIM_A22 0x80000000
  305. MX51_PAD_EIM_A23__EIM_A23 0x80000000
  306. MX51_PAD_EIM_A24__EIM_A24 0x80000000
  307. MX51_PAD_EIM_A25__EIM_A25 0x80000000
  308. MX51_PAD_EIM_A26__EIM_A26 0x80000000
  309. MX51_PAD_EIM_A27__EIM_A27 0x80000000
  310. MX51_PAD_EIM_D16__EIM_D16 0x80000000
  311. MX51_PAD_EIM_D17__EIM_D17 0x80000000
  312. MX51_PAD_EIM_D18__EIM_D18 0x80000000
  313. MX51_PAD_EIM_D19__EIM_D19 0x80000000
  314. MX51_PAD_EIM_D20__EIM_D20 0x80000000
  315. MX51_PAD_EIM_D21__EIM_D21 0x80000000
  316. MX51_PAD_EIM_D22__EIM_D22 0x80000000
  317. MX51_PAD_EIM_D23__EIM_D23 0x80000000
  318. MX51_PAD_EIM_D24__EIM_D24 0x80000000
  319. MX51_PAD_EIM_D25__EIM_D25 0x80000000
  320. MX51_PAD_EIM_D26__EIM_D26 0x80000000
  321. MX51_PAD_EIM_D27__EIM_D27 0x80000000
  322. MX51_PAD_EIM_D28__EIM_D28 0x80000000
  323. MX51_PAD_EIM_D29__EIM_D29 0x80000000
  324. MX51_PAD_EIM_D30__EIM_D30 0x80000000
  325. MX51_PAD_EIM_D31__EIM_D31 0x80000000
  326. MX51_PAD_EIM_OE__EIM_OE 0x80000000
  327. MX51_PAD_EIM_DTACK__EIM_DTACK 0x80000000
  328. MX51_PAD_EIM_LBA__EIM_LBA 0x80000000
  329. MX51_PAD_EIM_CS5__EIM_CS5 0x80000000 /* CS5 */
  330. >;
  331. };
  332. };
  333. };