imx6sl.dtsi 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962
  1. /*
  2. * Copyright 2013 Freescale Semiconductor, Inc.
  3. *
  4. * This program is free software; you can redistribute it and/or modify
  5. * it under the terms of the GNU General Public License version 2 as
  6. * published by the Free Software Foundation.
  7. *
  8. */
  9. #include "skeleton.dtsi"
  10. #include "imx6sl-pinfunc.h"
  11. #include <dt-bindings/clock/imx6sl-clock.h>
  12. / {
  13. aliases {
  14. gpio0 = &gpio1;
  15. gpio1 = &gpio2;
  16. gpio2 = &gpio3;
  17. gpio3 = &gpio4;
  18. gpio4 = &gpio5;
  19. serial0 = &uart1;
  20. serial1 = &uart2;
  21. serial2 = &uart3;
  22. serial3 = &uart4;
  23. serial4 = &uart5;
  24. spi0 = &ecspi1;
  25. spi1 = &ecspi2;
  26. spi2 = &ecspi3;
  27. spi3 = &ecspi4;
  28. };
  29. cpus {
  30. #address-cells = <1>;
  31. #size-cells = <0>;
  32. cpu@0 {
  33. compatible = "arm,cortex-a9";
  34. device_type = "cpu";
  35. reg = <0x0>;
  36. next-level-cache = <&L2>;
  37. };
  38. };
  39. intc: interrupt-controller@00a01000 {
  40. compatible = "arm,cortex-a9-gic";
  41. #interrupt-cells = <3>;
  42. #address-cells = <1>;
  43. #size-cells = <1>;
  44. interrupt-controller;
  45. reg = <0x00a01000 0x1000>,
  46. <0x00a00100 0x100>;
  47. };
  48. clocks {
  49. #address-cells = <1>;
  50. #size-cells = <0>;
  51. ckil {
  52. compatible = "fixed-clock";
  53. clock-frequency = <32768>;
  54. };
  55. osc {
  56. compatible = "fixed-clock";
  57. clock-frequency = <24000000>;
  58. };
  59. };
  60. soc {
  61. #address-cells = <1>;
  62. #size-cells = <1>;
  63. compatible = "simple-bus";
  64. interrupt-parent = <&intc>;
  65. ranges;
  66. L2: l2-cache@00a02000 {
  67. compatible = "arm,pl310-cache";
  68. reg = <0x00a02000 0x1000>;
  69. interrupts = <0 92 0x04>;
  70. cache-unified;
  71. cache-level = <2>;
  72. arm,tag-latency = <4 2 3>;
  73. arm,data-latency = <4 2 3>;
  74. };
  75. pmu {
  76. compatible = "arm,cortex-a9-pmu";
  77. interrupts = <0 94 0x04>;
  78. };
  79. aips1: aips-bus@02000000 {
  80. compatible = "fsl,aips-bus", "simple-bus";
  81. #address-cells = <1>;
  82. #size-cells = <1>;
  83. reg = <0x02000000 0x100000>;
  84. ranges;
  85. spba: spba-bus@02000000 {
  86. compatible = "fsl,spba-bus", "simple-bus";
  87. #address-cells = <1>;
  88. #size-cells = <1>;
  89. reg = <0x02000000 0x40000>;
  90. ranges;
  91. spdif: spdif@02004000 {
  92. reg = <0x02004000 0x4000>;
  93. interrupts = <0 52 0x04>;
  94. };
  95. ecspi1: ecspi@02008000 {
  96. #address-cells = <1>;
  97. #size-cells = <0>;
  98. compatible = "fsl,imx6sl-ecspi", "fsl,imx51-ecspi";
  99. reg = <0x02008000 0x4000>;
  100. interrupts = <0 31 0x04>;
  101. clocks = <&clks IMX6SL_CLK_ECSPI1>,
  102. <&clks IMX6SL_CLK_ECSPI1>;
  103. clock-names = "ipg", "per";
  104. status = "disabled";
  105. };
  106. ecspi2: ecspi@0200c000 {
  107. #address-cells = <1>;
  108. #size-cells = <0>;
  109. compatible = "fsl,imx6sl-ecspi", "fsl,imx51-ecspi";
  110. reg = <0x0200c000 0x4000>;
  111. interrupts = <0 32 0x04>;
  112. clocks = <&clks IMX6SL_CLK_ECSPI2>,
  113. <&clks IMX6SL_CLK_ECSPI2>;
  114. clock-names = "ipg", "per";
  115. status = "disabled";
  116. };
  117. ecspi3: ecspi@02010000 {
  118. #address-cells = <1>;
  119. #size-cells = <0>;
  120. compatible = "fsl,imx6sl-ecspi", "fsl,imx51-ecspi";
  121. reg = <0x02010000 0x4000>;
  122. interrupts = <0 33 0x04>;
  123. clocks = <&clks IMX6SL_CLK_ECSPI3>,
  124. <&clks IMX6SL_CLK_ECSPI3>;
  125. clock-names = "ipg", "per";
  126. status = "disabled";
  127. };
  128. ecspi4: ecspi@02014000 {
  129. #address-cells = <1>;
  130. #size-cells = <0>;
  131. compatible = "fsl,imx6sl-ecspi", "fsl,imx51-ecspi";
  132. reg = <0x02014000 0x4000>;
  133. interrupts = <0 34 0x04>;
  134. clocks = <&clks IMX6SL_CLK_ECSPI4>,
  135. <&clks IMX6SL_CLK_ECSPI4>;
  136. clock-names = "ipg", "per";
  137. status = "disabled";
  138. };
  139. uart5: serial@02018000 {
  140. compatible = "fsl,imx6sl-uart",
  141. "fsl,imx6q-uart", "fsl,imx21-uart";
  142. reg = <0x02018000 0x4000>;
  143. interrupts = <0 30 0x04>;
  144. clocks = <&clks IMX6SL_CLK_UART>,
  145. <&clks IMX6SL_CLK_UART_SERIAL>;
  146. clock-names = "ipg", "per";
  147. dmas = <&sdma 33 4 0>, <&sdma 34 4 0>;
  148. dma-names = "rx", "tx";
  149. status = "disabled";
  150. };
  151. uart1: serial@02020000 {
  152. compatible = "fsl,imx6sl-uart",
  153. "fsl,imx6q-uart", "fsl,imx21-uart";
  154. reg = <0x02020000 0x4000>;
  155. interrupts = <0 26 0x04>;
  156. clocks = <&clks IMX6SL_CLK_UART>,
  157. <&clks IMX6SL_CLK_UART_SERIAL>;
  158. clock-names = "ipg", "per";
  159. dmas = <&sdma 25 4 0>, <&sdma 26 4 0>;
  160. dma-names = "rx", "tx";
  161. status = "disabled";
  162. };
  163. uart2: serial@02024000 {
  164. compatible = "fsl,imx6sl-uart",
  165. "fsl,imx6q-uart", "fsl,imx21-uart";
  166. reg = <0x02024000 0x4000>;
  167. interrupts = <0 27 0x04>;
  168. clocks = <&clks IMX6SL_CLK_UART>,
  169. <&clks IMX6SL_CLK_UART_SERIAL>;
  170. clock-names = "ipg", "per";
  171. dmas = <&sdma 27 4 0>, <&sdma 28 4 0>;
  172. dma-names = "rx", "tx";
  173. status = "disabled";
  174. };
  175. ssi1: ssi@02028000 {
  176. compatible = "fsl,imx6sl-ssi","fsl,imx21-ssi";
  177. reg = <0x02028000 0x4000>;
  178. interrupts = <0 46 0x04>;
  179. clocks = <&clks IMX6SL_CLK_SSI1>;
  180. dmas = <&sdma 37 1 0>,
  181. <&sdma 38 1 0>;
  182. dma-names = "rx", "tx";
  183. fsl,fifo-depth = <15>;
  184. status = "disabled";
  185. };
  186. ssi2: ssi@0202c000 {
  187. compatible = "fsl,imx6sl-ssi","fsl,imx21-ssi";
  188. reg = <0x0202c000 0x4000>;
  189. interrupts = <0 47 0x04>;
  190. clocks = <&clks IMX6SL_CLK_SSI2>;
  191. dmas = <&sdma 41 1 0>,
  192. <&sdma 42 1 0>;
  193. dma-names = "rx", "tx";
  194. fsl,fifo-depth = <15>;
  195. status = "disabled";
  196. };
  197. ssi3: ssi@02030000 {
  198. compatible = "fsl,imx6sl-ssi","fsl,imx21-ssi";
  199. reg = <0x02030000 0x4000>;
  200. interrupts = <0 48 0x04>;
  201. clocks = <&clks IMX6SL_CLK_SSI3>;
  202. dmas = <&sdma 45 1 0>,
  203. <&sdma 46 1 0>;
  204. dma-names = "rx", "tx";
  205. fsl,fifo-depth = <15>;
  206. status = "disabled";
  207. };
  208. uart3: serial@02034000 {
  209. compatible = "fsl,imx6sl-uart",
  210. "fsl,imx6q-uart", "fsl,imx21-uart";
  211. reg = <0x02034000 0x4000>;
  212. interrupts = <0 28 0x04>;
  213. clocks = <&clks IMX6SL_CLK_UART>,
  214. <&clks IMX6SL_CLK_UART_SERIAL>;
  215. clock-names = "ipg", "per";
  216. dmas = <&sdma 29 4 0>, <&sdma 30 4 0>;
  217. dma-names = "rx", "tx";
  218. status = "disabled";
  219. };
  220. uart4: serial@02038000 {
  221. compatible = "fsl,imx6sl-uart",
  222. "fsl,imx6q-uart", "fsl,imx21-uart";
  223. reg = <0x02038000 0x4000>;
  224. interrupts = <0 29 0x04>;
  225. clocks = <&clks IMX6SL_CLK_UART>,
  226. <&clks IMX6SL_CLK_UART_SERIAL>;
  227. clock-names = "ipg", "per";
  228. dmas = <&sdma 31 4 0>, <&sdma 32 4 0>;
  229. dma-names = "rx", "tx";
  230. status = "disabled";
  231. };
  232. };
  233. pwm1: pwm@02080000 {
  234. #pwm-cells = <2>;
  235. compatible = "fsl,imx6sl-pwm", "fsl,imx27-pwm";
  236. reg = <0x02080000 0x4000>;
  237. interrupts = <0 83 0x04>;
  238. clocks = <&clks IMX6SL_CLK_PWM1>,
  239. <&clks IMX6SL_CLK_PWM1>;
  240. clock-names = "ipg", "per";
  241. };
  242. pwm2: pwm@02084000 {
  243. #pwm-cells = <2>;
  244. compatible = "fsl,imx6sl-pwm", "fsl,imx27-pwm";
  245. reg = <0x02084000 0x4000>;
  246. interrupts = <0 84 0x04>;
  247. clocks = <&clks IMX6SL_CLK_PWM2>,
  248. <&clks IMX6SL_CLK_PWM2>;
  249. clock-names = "ipg", "per";
  250. };
  251. pwm3: pwm@02088000 {
  252. #pwm-cells = <2>;
  253. compatible = "fsl,imx6sl-pwm", "fsl,imx27-pwm";
  254. reg = <0x02088000 0x4000>;
  255. interrupts = <0 85 0x04>;
  256. clocks = <&clks IMX6SL_CLK_PWM3>,
  257. <&clks IMX6SL_CLK_PWM3>;
  258. clock-names = "ipg", "per";
  259. };
  260. pwm4: pwm@0208c000 {
  261. #pwm-cells = <2>;
  262. compatible = "fsl,imx6sl-pwm", "fsl,imx27-pwm";
  263. reg = <0x0208c000 0x4000>;
  264. interrupts = <0 86 0x04>;
  265. clocks = <&clks IMX6SL_CLK_PWM4>,
  266. <&clks IMX6SL_CLK_PWM4>;
  267. clock-names = "ipg", "per";
  268. };
  269. gpt: gpt@02098000 {
  270. compatible = "fsl,imx6sl-gpt";
  271. reg = <0x02098000 0x4000>;
  272. interrupts = <0 55 0x04>;
  273. clocks = <&clks IMX6SL_CLK_GPT>,
  274. <&clks IMX6SL_CLK_GPT_SERIAL>;
  275. clock-names = "ipg", "per";
  276. };
  277. gpio1: gpio@0209c000 {
  278. compatible = "fsl,imx6sl-gpio", "fsl,imx35-gpio";
  279. reg = <0x0209c000 0x4000>;
  280. interrupts = <0 66 0x04 0 67 0x04>;
  281. gpio-controller;
  282. #gpio-cells = <2>;
  283. interrupt-controller;
  284. #interrupt-cells = <2>;
  285. };
  286. gpio2: gpio@020a0000 {
  287. compatible = "fsl,imx6sl-gpio", "fsl,imx35-gpio";
  288. reg = <0x020a0000 0x4000>;
  289. interrupts = <0 68 0x04 0 69 0x04>;
  290. gpio-controller;
  291. #gpio-cells = <2>;
  292. interrupt-controller;
  293. #interrupt-cells = <2>;
  294. };
  295. gpio3: gpio@020a4000 {
  296. compatible = "fsl,imx6sl-gpio", "fsl,imx35-gpio";
  297. reg = <0x020a4000 0x4000>;
  298. interrupts = <0 70 0x04 0 71 0x04>;
  299. gpio-controller;
  300. #gpio-cells = <2>;
  301. interrupt-controller;
  302. #interrupt-cells = <2>;
  303. };
  304. gpio4: gpio@020a8000 {
  305. compatible = "fsl,imx6sl-gpio", "fsl,imx35-gpio";
  306. reg = <0x020a8000 0x4000>;
  307. interrupts = <0 72 0x04 0 73 0x04>;
  308. gpio-controller;
  309. #gpio-cells = <2>;
  310. interrupt-controller;
  311. #interrupt-cells = <2>;
  312. };
  313. gpio5: gpio@020ac000 {
  314. compatible = "fsl,imx6sl-gpio", "fsl,imx35-gpio";
  315. reg = <0x020ac000 0x4000>;
  316. interrupts = <0 74 0x04 0 75 0x04>;
  317. gpio-controller;
  318. #gpio-cells = <2>;
  319. interrupt-controller;
  320. #interrupt-cells = <2>;
  321. };
  322. kpp: kpp@020b8000 {
  323. reg = <0x020b8000 0x4000>;
  324. interrupts = <0 82 0x04>;
  325. };
  326. wdog1: wdog@020bc000 {
  327. compatible = "fsl,imx6sl-wdt", "fsl,imx21-wdt";
  328. reg = <0x020bc000 0x4000>;
  329. interrupts = <0 80 0x04>;
  330. clocks = <&clks IMX6SL_CLK_DUMMY>;
  331. };
  332. wdog2: wdog@020c0000 {
  333. compatible = "fsl,imx6sl-wdt", "fsl,imx21-wdt";
  334. reg = <0x020c0000 0x4000>;
  335. interrupts = <0 81 0x04>;
  336. clocks = <&clks IMX6SL_CLK_DUMMY>;
  337. status = "disabled";
  338. };
  339. clks: ccm@020c4000 {
  340. compatible = "fsl,imx6sl-ccm";
  341. reg = <0x020c4000 0x4000>;
  342. interrupts = <0 87 0x04 0 88 0x04>;
  343. #clock-cells = <1>;
  344. };
  345. anatop: anatop@020c8000 {
  346. compatible = "fsl,imx6sl-anatop",
  347. "fsl,imx6q-anatop",
  348. "syscon", "simple-bus";
  349. reg = <0x020c8000 0x1000>;
  350. interrupts = <0 49 0x04 0 54 0x04 0 127 0x04>;
  351. regulator-1p1@110 {
  352. compatible = "fsl,anatop-regulator";
  353. regulator-name = "vdd1p1";
  354. regulator-min-microvolt = <800000>;
  355. regulator-max-microvolt = <1375000>;
  356. regulator-always-on;
  357. anatop-reg-offset = <0x110>;
  358. anatop-vol-bit-shift = <8>;
  359. anatop-vol-bit-width = <5>;
  360. anatop-min-bit-val = <4>;
  361. anatop-min-voltage = <800000>;
  362. anatop-max-voltage = <1375000>;
  363. };
  364. regulator-3p0@120 {
  365. compatible = "fsl,anatop-regulator";
  366. regulator-name = "vdd3p0";
  367. regulator-min-microvolt = <2800000>;
  368. regulator-max-microvolt = <3150000>;
  369. regulator-always-on;
  370. anatop-reg-offset = <0x120>;
  371. anatop-vol-bit-shift = <8>;
  372. anatop-vol-bit-width = <5>;
  373. anatop-min-bit-val = <0>;
  374. anatop-min-voltage = <2625000>;
  375. anatop-max-voltage = <3400000>;
  376. };
  377. regulator-2p5@130 {
  378. compatible = "fsl,anatop-regulator";
  379. regulator-name = "vdd2p5";
  380. regulator-min-microvolt = <2100000>;
  381. regulator-max-microvolt = <2850000>;
  382. regulator-always-on;
  383. anatop-reg-offset = <0x130>;
  384. anatop-vol-bit-shift = <8>;
  385. anatop-vol-bit-width = <5>;
  386. anatop-min-bit-val = <0>;
  387. anatop-min-voltage = <2100000>;
  388. anatop-max-voltage = <2850000>;
  389. };
  390. reg_arm: regulator-vddcore@140 {
  391. compatible = "fsl,anatop-regulator";
  392. regulator-name = "cpu";
  393. regulator-min-microvolt = <725000>;
  394. regulator-max-microvolt = <1450000>;
  395. regulator-always-on;
  396. anatop-reg-offset = <0x140>;
  397. anatop-vol-bit-shift = <0>;
  398. anatop-vol-bit-width = <5>;
  399. anatop-delay-reg-offset = <0x170>;
  400. anatop-delay-bit-shift = <24>;
  401. anatop-delay-bit-width = <2>;
  402. anatop-min-bit-val = <1>;
  403. anatop-min-voltage = <725000>;
  404. anatop-max-voltage = <1450000>;
  405. };
  406. reg_pu: regulator-vddpu@140 {
  407. compatible = "fsl,anatop-regulator";
  408. regulator-name = "vddpu";
  409. regulator-min-microvolt = <725000>;
  410. regulator-max-microvolt = <1450000>;
  411. regulator-always-on;
  412. anatop-reg-offset = <0x140>;
  413. anatop-vol-bit-shift = <9>;
  414. anatop-vol-bit-width = <5>;
  415. anatop-delay-reg-offset = <0x170>;
  416. anatop-delay-bit-shift = <26>;
  417. anatop-delay-bit-width = <2>;
  418. anatop-min-bit-val = <1>;
  419. anatop-min-voltage = <725000>;
  420. anatop-max-voltage = <1450000>;
  421. };
  422. reg_soc: regulator-vddsoc@140 {
  423. compatible = "fsl,anatop-regulator";
  424. regulator-name = "vddsoc";
  425. regulator-min-microvolt = <725000>;
  426. regulator-max-microvolt = <1450000>;
  427. regulator-always-on;
  428. anatop-reg-offset = <0x140>;
  429. anatop-vol-bit-shift = <18>;
  430. anatop-vol-bit-width = <5>;
  431. anatop-delay-reg-offset = <0x170>;
  432. anatop-delay-bit-shift = <28>;
  433. anatop-delay-bit-width = <2>;
  434. anatop-min-bit-val = <1>;
  435. anatop-min-voltage = <725000>;
  436. anatop-max-voltage = <1450000>;
  437. };
  438. };
  439. usbphy1: usbphy@020c9000 {
  440. compatible = "fsl,imx6sl-usbphy", "fsl,imx23-usbphy";
  441. reg = <0x020c9000 0x1000>;
  442. interrupts = <0 44 0x04>;
  443. clocks = <&clks IMX6SL_CLK_USBPHY1>;
  444. };
  445. usbphy2: usbphy@020ca000 {
  446. compatible = "fsl,imx6sl-usbphy", "fsl,imx23-usbphy";
  447. reg = <0x020ca000 0x1000>;
  448. interrupts = <0 45 0x04>;
  449. clocks = <&clks IMX6SL_CLK_USBPHY2>;
  450. };
  451. snvs@020cc000 {
  452. compatible = "fsl,sec-v4.0-mon", "simple-bus";
  453. #address-cells = <1>;
  454. #size-cells = <1>;
  455. ranges = <0 0x020cc000 0x4000>;
  456. snvs-rtc-lp@34 {
  457. compatible = "fsl,sec-v4.0-mon-rtc-lp";
  458. reg = <0x34 0x58>;
  459. interrupts = <0 19 0x04 0 20 0x04>;
  460. };
  461. };
  462. epit1: epit@020d0000 {
  463. reg = <0x020d0000 0x4000>;
  464. interrupts = <0 56 0x04>;
  465. };
  466. epit2: epit@020d4000 {
  467. reg = <0x020d4000 0x4000>;
  468. interrupts = <0 57 0x04>;
  469. };
  470. src: src@020d8000 {
  471. compatible = "fsl,imx6sl-src", "fsl,imx51-src";
  472. reg = <0x020d8000 0x4000>;
  473. interrupts = <0 91 0x04 0 96 0x04>;
  474. #reset-cells = <1>;
  475. };
  476. gpc: gpc@020dc000 {
  477. compatible = "fsl,imx6sl-gpc", "fsl,imx6q-gpc";
  478. reg = <0x020dc000 0x4000>;
  479. interrupts = <0 89 0x04>;
  480. };
  481. gpr: iomuxc-gpr@020e0000 {
  482. compatible = "fsl,imx6sl-iomuxc-gpr",
  483. "fsl,imx6q-iomuxc-gpr", "syscon";
  484. reg = <0x020e0000 0x38>;
  485. };
  486. iomuxc: iomuxc@020e0000 {
  487. compatible = "fsl,imx6sl-iomuxc";
  488. reg = <0x020e0000 0x4000>;
  489. ecspi1 {
  490. pinctrl_ecspi1_1: ecspi1grp-1 {
  491. fsl,pins = <
  492. MX6SL_PAD_ECSPI1_MISO__ECSPI1_MISO 0x100b1
  493. MX6SL_PAD_ECSPI1_MOSI__ECSPI1_MOSI 0x100b1
  494. MX6SL_PAD_ECSPI1_SCLK__ECSPI1_SCLK 0x100b1
  495. >;
  496. };
  497. };
  498. fec {
  499. pinctrl_fec_1: fecgrp-1 {
  500. fsl,pins = <
  501. MX6SL_PAD_FEC_MDC__FEC_MDC 0x1b0b0
  502. MX6SL_PAD_FEC_MDIO__FEC_MDIO 0x1b0b0
  503. MX6SL_PAD_FEC_CRS_DV__FEC_RX_DV 0x1b0b0
  504. MX6SL_PAD_FEC_RXD0__FEC_RX_DATA0 0x1b0b0
  505. MX6SL_PAD_FEC_RXD1__FEC_RX_DATA1 0x1b0b0
  506. MX6SL_PAD_FEC_TX_EN__FEC_TX_EN 0x1b0b0
  507. MX6SL_PAD_FEC_TXD0__FEC_TX_DATA0 0x1b0b0
  508. MX6SL_PAD_FEC_TXD1__FEC_TX_DATA1 0x1b0b0
  509. MX6SL_PAD_FEC_REF_CLK__FEC_REF_OUT 0x4001b0a8
  510. >;
  511. };
  512. };
  513. uart1 {
  514. pinctrl_uart1_1: uart1grp-1 {
  515. fsl,pins = <
  516. MX6SL_PAD_UART1_RXD__UART1_RX_DATA 0x1b0b1
  517. MX6SL_PAD_UART1_TXD__UART1_TX_DATA 0x1b0b1
  518. >;
  519. };
  520. };
  521. usbotg1 {
  522. pinctrl_usbotg1_1: usbotg1grp-1 {
  523. fsl,pins = <
  524. MX6SL_PAD_EPDC_PWRCOM__USB_OTG1_ID 0x17059
  525. >;
  526. };
  527. pinctrl_usbotg1_2: usbotg1grp-2 {
  528. fsl,pins = <
  529. MX6SL_PAD_FEC_RXD0__USB_OTG1_ID 0x17059
  530. >;
  531. };
  532. pinctrl_usbotg1_3: usbotg1grp-3 {
  533. fsl,pins = <
  534. MX6SL_PAD_LCD_DAT1__USB_OTG1_ID 0x17059
  535. >;
  536. };
  537. pinctrl_usbotg1_4: usbotg1grp-4 {
  538. fsl,pins = <
  539. MX6SL_PAD_REF_CLK_32K__USB_OTG1_ID 0x17059
  540. >;
  541. };
  542. pinctrl_usbotg1_5: usbotg1grp-5 {
  543. fsl,pins = <
  544. MX6SL_PAD_SD3_DAT0__USB_OTG1_ID 0x17059
  545. >;
  546. };
  547. };
  548. usbotg2 {
  549. pinctrl_usbotg2_1: usbotg2grp-1 {
  550. fsl,pins = <
  551. MX6SL_PAD_ECSPI1_SCLK__USB_OTG2_OC 0x17059
  552. >;
  553. };
  554. pinctrl_usbotg2_2: usbotg2grp-2 {
  555. fsl,pins = <
  556. MX6SL_PAD_ECSPI2_SCLK__USB_OTG2_OC 0x17059
  557. >;
  558. };
  559. pinctrl_usbotg2_3: usbotg2grp-3 {
  560. fsl,pins = <
  561. MX6SL_PAD_KEY_ROW5__USB_OTG2_OC 0x17059
  562. >;
  563. };
  564. pinctrl_usbotg2_4: usbotg2grp-4 {
  565. fsl,pins = <
  566. MX6SL_PAD_SD3_DAT2__USB_OTG2_OC 0x17059
  567. >;
  568. };
  569. };
  570. usdhc1 {
  571. pinctrl_usdhc1_1: usdhc1grp-1 {
  572. fsl,pins = <
  573. MX6SL_PAD_SD1_CMD__SD1_CMD 0x17059
  574. MX6SL_PAD_SD1_CLK__SD1_CLK 0x10059
  575. MX6SL_PAD_SD1_DAT0__SD1_DATA0 0x17059
  576. MX6SL_PAD_SD1_DAT1__SD1_DATA1 0x17059
  577. MX6SL_PAD_SD1_DAT2__SD1_DATA2 0x17059
  578. MX6SL_PAD_SD1_DAT3__SD1_DATA3 0x17059
  579. MX6SL_PAD_SD1_DAT4__SD1_DATA4 0x17059
  580. MX6SL_PAD_SD1_DAT5__SD1_DATA5 0x17059
  581. MX6SL_PAD_SD1_DAT6__SD1_DATA6 0x17059
  582. MX6SL_PAD_SD1_DAT7__SD1_DATA7 0x17059
  583. >;
  584. };
  585. pinctrl_usdhc1_1_100mhz: usdhc1grp-1-100mhz {
  586. fsl,pins = <
  587. MX6SL_PAD_SD1_CMD__SD1_CMD 0x170b9
  588. MX6SL_PAD_SD1_CLK__SD1_CLK 0x100b9
  589. MX6SL_PAD_SD1_DAT0__SD1_DATA0 0x170b9
  590. MX6SL_PAD_SD1_DAT1__SD1_DATA1 0x170b9
  591. MX6SL_PAD_SD1_DAT2__SD1_DATA2 0x170b9
  592. MX6SL_PAD_SD1_DAT3__SD1_DATA3 0x170b9
  593. MX6SL_PAD_SD1_DAT4__SD1_DATA4 0x170b9
  594. MX6SL_PAD_SD1_DAT5__SD1_DATA5 0x170b9
  595. MX6SL_PAD_SD1_DAT6__SD1_DATA6 0x170b9
  596. MX6SL_PAD_SD1_DAT7__SD1_DATA7 0x170b9
  597. >;
  598. };
  599. pinctrl_usdhc1_1_200mhz: usdhc1grp-1-200mhz {
  600. fsl,pins = <
  601. MX6SL_PAD_SD1_CMD__SD1_CMD 0x170f9
  602. MX6SL_PAD_SD1_CLK__SD1_CLK 0x100f9
  603. MX6SL_PAD_SD1_DAT0__SD1_DATA0 0x170f9
  604. MX6SL_PAD_SD1_DAT1__SD1_DATA1 0x170f9
  605. MX6SL_PAD_SD1_DAT2__SD1_DATA2 0x170f9
  606. MX6SL_PAD_SD1_DAT3__SD1_DATA3 0x170f9
  607. MX6SL_PAD_SD1_DAT4__SD1_DATA4 0x170f9
  608. MX6SL_PAD_SD1_DAT5__SD1_DATA5 0x170f9
  609. MX6SL_PAD_SD1_DAT6__SD1_DATA6 0x170f9
  610. MX6SL_PAD_SD1_DAT7__SD1_DATA7 0x170f9
  611. >;
  612. };
  613. };
  614. usdhc2 {
  615. pinctrl_usdhc2_1: usdhc2grp-1 {
  616. fsl,pins = <
  617. MX6SL_PAD_SD2_CMD__SD2_CMD 0x17059
  618. MX6SL_PAD_SD2_CLK__SD2_CLK 0x10059
  619. MX6SL_PAD_SD2_DAT0__SD2_DATA0 0x17059
  620. MX6SL_PAD_SD2_DAT1__SD2_DATA1 0x17059
  621. MX6SL_PAD_SD2_DAT2__SD2_DATA2 0x17059
  622. MX6SL_PAD_SD2_DAT3__SD2_DATA3 0x17059
  623. >;
  624. };
  625. pinctrl_usdhc2_1_100mhz: usdhc2grp-1-100mhz {
  626. fsl,pins = <
  627. MX6SL_PAD_SD2_CMD__SD2_CMD 0x170b9
  628. MX6SL_PAD_SD2_CLK__SD2_CLK 0x100b9
  629. MX6SL_PAD_SD2_DAT0__SD2_DATA0 0x170b9
  630. MX6SL_PAD_SD2_DAT1__SD2_DATA1 0x170b9
  631. MX6SL_PAD_SD2_DAT2__SD2_DATA2 0x170b9
  632. MX6SL_PAD_SD2_DAT3__SD2_DATA3 0x170b9
  633. >;
  634. };
  635. pinctrl_usdhc2_1_200mhz: usdhc2grp-1-200mhz {
  636. fsl,pins = <
  637. MX6SL_PAD_SD2_CMD__SD2_CMD 0x170f9
  638. MX6SL_PAD_SD2_CLK__SD2_CLK 0x100f9
  639. MX6SL_PAD_SD2_DAT0__SD2_DATA0 0x170f9
  640. MX6SL_PAD_SD2_DAT1__SD2_DATA1 0x170f9
  641. MX6SL_PAD_SD2_DAT2__SD2_DATA2 0x170f9
  642. MX6SL_PAD_SD2_DAT3__SD2_DATA3 0x170f9
  643. >;
  644. };
  645. };
  646. usdhc3 {
  647. pinctrl_usdhc3_1: usdhc3grp-1 {
  648. fsl,pins = <
  649. MX6SL_PAD_SD3_CMD__SD3_CMD 0x17059
  650. MX6SL_PAD_SD3_CLK__SD3_CLK 0x10059
  651. MX6SL_PAD_SD3_DAT0__SD3_DATA0 0x17059
  652. MX6SL_PAD_SD3_DAT1__SD3_DATA1 0x17059
  653. MX6SL_PAD_SD3_DAT2__SD3_DATA2 0x17059
  654. MX6SL_PAD_SD3_DAT3__SD3_DATA3 0x17059
  655. >;
  656. };
  657. pinctrl_usdhc3_1_100mhz: usdhc3grp-1-100mhz {
  658. fsl,pins = <
  659. MX6SL_PAD_SD3_CMD__SD3_CMD 0x170b9
  660. MX6SL_PAD_SD3_CLK__SD3_CLK 0x100b9
  661. MX6SL_PAD_SD3_DAT0__SD3_DATA0 0x170b9
  662. MX6SL_PAD_SD3_DAT1__SD3_DATA1 0x170b9
  663. MX6SL_PAD_SD3_DAT2__SD3_DATA2 0x170b9
  664. MX6SL_PAD_SD3_DAT3__SD3_DATA3 0x170b9
  665. >;
  666. };
  667. pinctrl_usdhc3_1_200mhz: usdhc3grp-1-200mhz {
  668. fsl,pins = <
  669. MX6SL_PAD_SD3_CMD__SD3_CMD 0x170f9
  670. MX6SL_PAD_SD3_CLK__SD3_CLK 0x100f9
  671. MX6SL_PAD_SD3_DAT0__SD3_DATA0 0x170f9
  672. MX6SL_PAD_SD3_DAT1__SD3_DATA1 0x170f9
  673. MX6SL_PAD_SD3_DAT2__SD3_DATA2 0x170f9
  674. MX6SL_PAD_SD3_DAT3__SD3_DATA3 0x170f9
  675. >;
  676. };
  677. };
  678. };
  679. csi: csi@020e4000 {
  680. reg = <0x020e4000 0x4000>;
  681. interrupts = <0 7 0x04>;
  682. };
  683. spdc: spdc@020e8000 {
  684. reg = <0x020e8000 0x4000>;
  685. interrupts = <0 6 0x04>;
  686. };
  687. sdma: sdma@020ec000 {
  688. compatible = "fsl,imx6sl-sdma", "fsl,imx35-sdma";
  689. reg = <0x020ec000 0x4000>;
  690. interrupts = <0 2 0x04>;
  691. clocks = <&clks IMX6SL_CLK_SDMA>,
  692. <&clks IMX6SL_CLK_SDMA>;
  693. clock-names = "ipg", "ahb";
  694. #dma-cells = <3>;
  695. /* imx6sl reuses imx6q sdma firmware */
  696. fsl,sdma-ram-script-name = "imx/sdma/sdma-imx6q.bin";
  697. };
  698. pxp: pxp@020f0000 {
  699. reg = <0x020f0000 0x4000>;
  700. interrupts = <0 98 0x04>;
  701. };
  702. epdc: epdc@020f4000 {
  703. reg = <0x020f4000 0x4000>;
  704. interrupts = <0 97 0x04>;
  705. };
  706. lcdif: lcdif@020f8000 {
  707. reg = <0x020f8000 0x4000>;
  708. interrupts = <0 39 0x04>;
  709. };
  710. dcp: dcp@020fc000 {
  711. reg = <0x020fc000 0x4000>;
  712. interrupts = <0 99 0x04>;
  713. };
  714. };
  715. aips2: aips-bus@02100000 {
  716. compatible = "fsl,aips-bus", "simple-bus";
  717. #address-cells = <1>;
  718. #size-cells = <1>;
  719. reg = <0x02100000 0x100000>;
  720. ranges;
  721. usbotg1: usb@02184000 {
  722. compatible = "fsl,imx6sl-usb", "fsl,imx27-usb";
  723. reg = <0x02184000 0x200>;
  724. interrupts = <0 43 0x04>;
  725. clocks = <&clks IMX6SL_CLK_USBOH3>;
  726. fsl,usbphy = <&usbphy1>;
  727. fsl,usbmisc = <&usbmisc 0>;
  728. status = "disabled";
  729. };
  730. usbotg2: usb@02184200 {
  731. compatible = "fsl,imx6sl-usb", "fsl,imx27-usb";
  732. reg = <0x02184200 0x200>;
  733. interrupts = <0 42 0x04>;
  734. clocks = <&clks IMX6SL_CLK_USBOH3>;
  735. fsl,usbphy = <&usbphy2>;
  736. fsl,usbmisc = <&usbmisc 1>;
  737. status = "disabled";
  738. };
  739. usbh: usb@02184400 {
  740. compatible = "fsl,imx6sl-usb", "fsl,imx27-usb";
  741. reg = <0x02184400 0x200>;
  742. interrupts = <0 40 0x04>;
  743. clocks = <&clks IMX6SL_CLK_USBOH3>;
  744. fsl,usbmisc = <&usbmisc 2>;
  745. status = "disabled";
  746. };
  747. usbmisc: usbmisc@02184800 {
  748. #index-cells = <1>;
  749. compatible = "fsl,imx6sl-usbmisc", "fsl,imx6q-usbmisc";
  750. reg = <0x02184800 0x200>;
  751. clocks = <&clks IMX6SL_CLK_USBOH3>;
  752. };
  753. fec: ethernet@02188000 {
  754. compatible = "fsl,imx6sl-fec", "fsl,imx25-fec";
  755. reg = <0x02188000 0x4000>;
  756. interrupts = <0 114 0x04>;
  757. clocks = <&clks IMX6SL_CLK_ENET_REF>,
  758. <&clks IMX6SL_CLK_ENET_REF>;
  759. clock-names = "ipg", "ahb";
  760. status = "disabled";
  761. };
  762. usdhc1: usdhc@02190000 {
  763. compatible = "fsl,imx6sl-usdhc", "fsl,imx6q-usdhc";
  764. reg = <0x02190000 0x4000>;
  765. interrupts = <0 22 0x04>;
  766. clocks = <&clks IMX6SL_CLK_USDHC1>,
  767. <&clks IMX6SL_CLK_USDHC1>,
  768. <&clks IMX6SL_CLK_USDHC1>;
  769. clock-names = "ipg", "ahb", "per";
  770. bus-width = <4>;
  771. status = "disabled";
  772. };
  773. usdhc2: usdhc@02194000 {
  774. compatible = "fsl,imx6sl-usdhc", "fsl,imx6q-usdhc";
  775. reg = <0x02194000 0x4000>;
  776. interrupts = <0 23 0x04>;
  777. clocks = <&clks IMX6SL_CLK_USDHC2>,
  778. <&clks IMX6SL_CLK_USDHC2>,
  779. <&clks IMX6SL_CLK_USDHC2>;
  780. clock-names = "ipg", "ahb", "per";
  781. bus-width = <4>;
  782. status = "disabled";
  783. };
  784. usdhc3: usdhc@02198000 {
  785. compatible = "fsl,imx6sl-usdhc", "fsl,imx6q-usdhc";
  786. reg = <0x02198000 0x4000>;
  787. interrupts = <0 24 0x04>;
  788. clocks = <&clks IMX6SL_CLK_USDHC3>,
  789. <&clks IMX6SL_CLK_USDHC3>,
  790. <&clks IMX6SL_CLK_USDHC3>;
  791. clock-names = "ipg", "ahb", "per";
  792. bus-width = <4>;
  793. status = "disabled";
  794. };
  795. usdhc4: usdhc@0219c000 {
  796. compatible = "fsl,imx6sl-usdhc", "fsl,imx6q-usdhc";
  797. reg = <0x0219c000 0x4000>;
  798. interrupts = <0 25 0x04>;
  799. clocks = <&clks IMX6SL_CLK_USDHC4>,
  800. <&clks IMX6SL_CLK_USDHC4>,
  801. <&clks IMX6SL_CLK_USDHC4>;
  802. clock-names = "ipg", "ahb", "per";
  803. bus-width = <4>;
  804. status = "disabled";
  805. };
  806. i2c1: i2c@021a0000 {
  807. #address-cells = <1>;
  808. #size-cells = <0>;
  809. compatible = "fsl,imx6sl-i2c", "fsl,imx21-i2c";
  810. reg = <0x021a0000 0x4000>;
  811. interrupts = <0 36 0x04>;
  812. clocks = <&clks IMX6SL_CLK_I2C1>;
  813. status = "disabled";
  814. };
  815. i2c2: i2c@021a4000 {
  816. #address-cells = <1>;
  817. #size-cells = <0>;
  818. compatible = "fsl,imx6sl-i2c", "fsl,imx21-i2c";
  819. reg = <0x021a4000 0x4000>;
  820. interrupts = <0 37 0x04>;
  821. clocks = <&clks IMX6SL_CLK_I2C2>;
  822. status = "disabled";
  823. };
  824. i2c3: i2c@021a8000 {
  825. #address-cells = <1>;
  826. #size-cells = <0>;
  827. compatible = "fsl,imx6sl-i2c", "fsl,imx21-i2c";
  828. reg = <0x021a8000 0x4000>;
  829. interrupts = <0 38 0x04>;
  830. clocks = <&clks IMX6SL_CLK_I2C3>;
  831. status = "disabled";
  832. };
  833. mmdc: mmdc@021b0000 {
  834. compatible = "fsl,imx6sl-mmdc", "fsl,imx6q-mmdc";
  835. reg = <0x021b0000 0x4000>;
  836. };
  837. rngb: rngb@021b4000 {
  838. reg = <0x021b4000 0x4000>;
  839. interrupts = <0 5 0x04>;
  840. };
  841. weim: weim@021b8000 {
  842. reg = <0x021b8000 0x4000>;
  843. interrupts = <0 14 0x04>;
  844. };
  845. ocotp: ocotp@021bc000 {
  846. compatible = "fsl,imx6sl-ocotp";
  847. reg = <0x021bc000 0x4000>;
  848. };
  849. audmux: audmux@021d8000 {
  850. compatible = "fsl,imx6sl-audmux", "fsl,imx31-audmux";
  851. reg = <0x021d8000 0x4000>;
  852. status = "disabled";
  853. };
  854. };
  855. };
  856. };