imx6sl.dtsi 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821
  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 <dt-bindings/interrupt-controller/irq.h>
  10. #include "skeleton.dtsi"
  11. #include "imx6sl-pinfunc.h"
  12. #include <dt-bindings/clock/imx6sl-clock.h>
  13. / {
  14. aliases {
  15. ethernet0 = &fec;
  16. gpio0 = &gpio1;
  17. gpio1 = &gpio2;
  18. gpio2 = &gpio3;
  19. gpio3 = &gpio4;
  20. gpio4 = &gpio5;
  21. serial0 = &uart1;
  22. serial1 = &uart2;
  23. serial2 = &uart3;
  24. serial3 = &uart4;
  25. serial4 = &uart5;
  26. spi0 = &ecspi1;
  27. spi1 = &ecspi2;
  28. spi2 = &ecspi3;
  29. spi3 = &ecspi4;
  30. usbphy0 = &usbphy1;
  31. usbphy1 = &usbphy2;
  32. };
  33. cpus {
  34. #address-cells = <1>;
  35. #size-cells = <0>;
  36. cpu@0 {
  37. compatible = "arm,cortex-a9";
  38. device_type = "cpu";
  39. reg = <0x0>;
  40. next-level-cache = <&L2>;
  41. operating-points = <
  42. /* kHz uV */
  43. 996000 1275000
  44. 792000 1175000
  45. 396000 975000
  46. >;
  47. fsl,soc-operating-points = <
  48. /* ARM kHz SOC-PU uV */
  49. 996000 1225000
  50. 792000 1175000
  51. 396000 1175000
  52. >;
  53. clock-latency = <61036>; /* two CLK32 periods */
  54. clocks = <&clks IMX6SL_CLK_ARM>, <&clks IMX6SL_CLK_PLL2_PFD2>,
  55. <&clks IMX6SL_CLK_STEP>, <&clks IMX6SL_CLK_PLL1_SW>,
  56. <&clks IMX6SL_CLK_PLL1_SYS>;
  57. clock-names = "arm", "pll2_pfd2_396m", "step",
  58. "pll1_sw", "pll1_sys";
  59. arm-supply = <&reg_arm>;
  60. pu-supply = <&reg_pu>;
  61. soc-supply = <&reg_soc>;
  62. };
  63. };
  64. intc: interrupt-controller@00a01000 {
  65. compatible = "arm,cortex-a9-gic";
  66. #interrupt-cells = <3>;
  67. interrupt-controller;
  68. reg = <0x00a01000 0x1000>,
  69. <0x00a00100 0x100>;
  70. };
  71. clocks {
  72. #address-cells = <1>;
  73. #size-cells = <0>;
  74. ckil {
  75. compatible = "fixed-clock";
  76. #clock-cells = <0>;
  77. clock-frequency = <32768>;
  78. };
  79. osc {
  80. compatible = "fixed-clock";
  81. #clock-cells = <0>;
  82. clock-frequency = <24000000>;
  83. };
  84. };
  85. soc {
  86. #address-cells = <1>;
  87. #size-cells = <1>;
  88. compatible = "simple-bus";
  89. interrupt-parent = <&intc>;
  90. ranges;
  91. ocram: sram@00900000 {
  92. compatible = "mmio-sram";
  93. reg = <0x00900000 0x20000>;
  94. clocks = <&clks IMX6SL_CLK_OCRAM>;
  95. };
  96. L2: l2-cache@00a02000 {
  97. compatible = "arm,pl310-cache";
  98. reg = <0x00a02000 0x1000>;
  99. interrupts = <0 92 IRQ_TYPE_LEVEL_HIGH>;
  100. cache-unified;
  101. cache-level = <2>;
  102. arm,tag-latency = <4 2 3>;
  103. arm,data-latency = <4 2 3>;
  104. };
  105. pmu {
  106. compatible = "arm,cortex-a9-pmu";
  107. interrupts = <0 94 IRQ_TYPE_LEVEL_HIGH>;
  108. };
  109. aips1: aips-bus@02000000 {
  110. compatible = "fsl,aips-bus", "simple-bus";
  111. #address-cells = <1>;
  112. #size-cells = <1>;
  113. reg = <0x02000000 0x100000>;
  114. ranges;
  115. spba: spba-bus@02000000 {
  116. compatible = "fsl,spba-bus", "simple-bus";
  117. #address-cells = <1>;
  118. #size-cells = <1>;
  119. reg = <0x02000000 0x40000>;
  120. ranges;
  121. spdif: spdif@02004000 {
  122. reg = <0x02004000 0x4000>;
  123. interrupts = <0 52 IRQ_TYPE_LEVEL_HIGH>;
  124. };
  125. ecspi1: ecspi@02008000 {
  126. #address-cells = <1>;
  127. #size-cells = <0>;
  128. compatible = "fsl,imx6sl-ecspi", "fsl,imx51-ecspi";
  129. reg = <0x02008000 0x4000>;
  130. interrupts = <0 31 IRQ_TYPE_LEVEL_HIGH>;
  131. clocks = <&clks IMX6SL_CLK_ECSPI1>,
  132. <&clks IMX6SL_CLK_ECSPI1>;
  133. clock-names = "ipg", "per";
  134. status = "disabled";
  135. };
  136. ecspi2: ecspi@0200c000 {
  137. #address-cells = <1>;
  138. #size-cells = <0>;
  139. compatible = "fsl,imx6sl-ecspi", "fsl,imx51-ecspi";
  140. reg = <0x0200c000 0x4000>;
  141. interrupts = <0 32 IRQ_TYPE_LEVEL_HIGH>;
  142. clocks = <&clks IMX6SL_CLK_ECSPI2>,
  143. <&clks IMX6SL_CLK_ECSPI2>;
  144. clock-names = "ipg", "per";
  145. status = "disabled";
  146. };
  147. ecspi3: ecspi@02010000 {
  148. #address-cells = <1>;
  149. #size-cells = <0>;
  150. compatible = "fsl,imx6sl-ecspi", "fsl,imx51-ecspi";
  151. reg = <0x02010000 0x4000>;
  152. interrupts = <0 33 IRQ_TYPE_LEVEL_HIGH>;
  153. clocks = <&clks IMX6SL_CLK_ECSPI3>,
  154. <&clks IMX6SL_CLK_ECSPI3>;
  155. clock-names = "ipg", "per";
  156. status = "disabled";
  157. };
  158. ecspi4: ecspi@02014000 {
  159. #address-cells = <1>;
  160. #size-cells = <0>;
  161. compatible = "fsl,imx6sl-ecspi", "fsl,imx51-ecspi";
  162. reg = <0x02014000 0x4000>;
  163. interrupts = <0 34 IRQ_TYPE_LEVEL_HIGH>;
  164. clocks = <&clks IMX6SL_CLK_ECSPI4>,
  165. <&clks IMX6SL_CLK_ECSPI4>;
  166. clock-names = "ipg", "per";
  167. status = "disabled";
  168. };
  169. uart5: serial@02018000 {
  170. compatible = "fsl,imx6sl-uart",
  171. "fsl,imx6q-uart", "fsl,imx21-uart";
  172. reg = <0x02018000 0x4000>;
  173. interrupts = <0 30 IRQ_TYPE_LEVEL_HIGH>;
  174. clocks = <&clks IMX6SL_CLK_UART>,
  175. <&clks IMX6SL_CLK_UART_SERIAL>;
  176. clock-names = "ipg", "per";
  177. dmas = <&sdma 33 4 0>, <&sdma 34 4 0>;
  178. dma-names = "rx", "tx";
  179. status = "disabled";
  180. };
  181. uart1: serial@02020000 {
  182. compatible = "fsl,imx6sl-uart",
  183. "fsl,imx6q-uart", "fsl,imx21-uart";
  184. reg = <0x02020000 0x4000>;
  185. interrupts = <0 26 IRQ_TYPE_LEVEL_HIGH>;
  186. clocks = <&clks IMX6SL_CLK_UART>,
  187. <&clks IMX6SL_CLK_UART_SERIAL>;
  188. clock-names = "ipg", "per";
  189. dmas = <&sdma 25 4 0>, <&sdma 26 4 0>;
  190. dma-names = "rx", "tx";
  191. status = "disabled";
  192. };
  193. uart2: serial@02024000 {
  194. compatible = "fsl,imx6sl-uart",
  195. "fsl,imx6q-uart", "fsl,imx21-uart";
  196. reg = <0x02024000 0x4000>;
  197. interrupts = <0 27 IRQ_TYPE_LEVEL_HIGH>;
  198. clocks = <&clks IMX6SL_CLK_UART>,
  199. <&clks IMX6SL_CLK_UART_SERIAL>;
  200. clock-names = "ipg", "per";
  201. dmas = <&sdma 27 4 0>, <&sdma 28 4 0>;
  202. dma-names = "rx", "tx";
  203. status = "disabled";
  204. };
  205. ssi1: ssi@02028000 {
  206. #sound-dai-cells = <0>;
  207. compatible = "fsl,imx6sl-ssi",
  208. "fsl,imx51-ssi";
  209. reg = <0x02028000 0x4000>;
  210. interrupts = <0 46 IRQ_TYPE_LEVEL_HIGH>;
  211. clocks = <&clks IMX6SL_CLK_SSI1_IPG>,
  212. <&clks IMX6SL_CLK_SSI1>;
  213. clock-names = "ipg", "baud";
  214. dmas = <&sdma 37 1 0>,
  215. <&sdma 38 1 0>;
  216. dma-names = "rx", "tx";
  217. fsl,fifo-depth = <15>;
  218. status = "disabled";
  219. };
  220. ssi2: ssi@0202c000 {
  221. #sound-dai-cells = <0>;
  222. compatible = "fsl,imx6sl-ssi",
  223. "fsl,imx51-ssi";
  224. reg = <0x0202c000 0x4000>;
  225. interrupts = <0 47 IRQ_TYPE_LEVEL_HIGH>;
  226. clocks = <&clks IMX6SL_CLK_SSI2_IPG>,
  227. <&clks IMX6SL_CLK_SSI2>;
  228. clock-names = "ipg", "baud";
  229. dmas = <&sdma 41 1 0>,
  230. <&sdma 42 1 0>;
  231. dma-names = "rx", "tx";
  232. fsl,fifo-depth = <15>;
  233. status = "disabled";
  234. };
  235. ssi3: ssi@02030000 {
  236. #sound-dai-cells = <0>;
  237. compatible = "fsl,imx6sl-ssi",
  238. "fsl,imx51-ssi";
  239. reg = <0x02030000 0x4000>;
  240. interrupts = <0 48 IRQ_TYPE_LEVEL_HIGH>;
  241. clocks = <&clks IMX6SL_CLK_SSI3_IPG>,
  242. <&clks IMX6SL_CLK_SSI3>;
  243. clock-names = "ipg", "baud";
  244. dmas = <&sdma 45 1 0>,
  245. <&sdma 46 1 0>;
  246. dma-names = "rx", "tx";
  247. fsl,fifo-depth = <15>;
  248. status = "disabled";
  249. };
  250. uart3: serial@02034000 {
  251. compatible = "fsl,imx6sl-uart",
  252. "fsl,imx6q-uart", "fsl,imx21-uart";
  253. reg = <0x02034000 0x4000>;
  254. interrupts = <0 28 IRQ_TYPE_LEVEL_HIGH>;
  255. clocks = <&clks IMX6SL_CLK_UART>,
  256. <&clks IMX6SL_CLK_UART_SERIAL>;
  257. clock-names = "ipg", "per";
  258. dmas = <&sdma 29 4 0>, <&sdma 30 4 0>;
  259. dma-names = "rx", "tx";
  260. status = "disabled";
  261. };
  262. uart4: serial@02038000 {
  263. compatible = "fsl,imx6sl-uart",
  264. "fsl,imx6q-uart", "fsl,imx21-uart";
  265. reg = <0x02038000 0x4000>;
  266. interrupts = <0 29 IRQ_TYPE_LEVEL_HIGH>;
  267. clocks = <&clks IMX6SL_CLK_UART>,
  268. <&clks IMX6SL_CLK_UART_SERIAL>;
  269. clock-names = "ipg", "per";
  270. dmas = <&sdma 31 4 0>, <&sdma 32 4 0>;
  271. dma-names = "rx", "tx";
  272. status = "disabled";
  273. };
  274. };
  275. pwm1: pwm@02080000 {
  276. #pwm-cells = <2>;
  277. compatible = "fsl,imx6sl-pwm", "fsl,imx27-pwm";
  278. reg = <0x02080000 0x4000>;
  279. interrupts = <0 83 IRQ_TYPE_LEVEL_HIGH>;
  280. clocks = <&clks IMX6SL_CLK_PWM1>,
  281. <&clks IMX6SL_CLK_PWM1>;
  282. clock-names = "ipg", "per";
  283. };
  284. pwm2: pwm@02084000 {
  285. #pwm-cells = <2>;
  286. compatible = "fsl,imx6sl-pwm", "fsl,imx27-pwm";
  287. reg = <0x02084000 0x4000>;
  288. interrupts = <0 84 IRQ_TYPE_LEVEL_HIGH>;
  289. clocks = <&clks IMX6SL_CLK_PWM2>,
  290. <&clks IMX6SL_CLK_PWM2>;
  291. clock-names = "ipg", "per";
  292. };
  293. pwm3: pwm@02088000 {
  294. #pwm-cells = <2>;
  295. compatible = "fsl,imx6sl-pwm", "fsl,imx27-pwm";
  296. reg = <0x02088000 0x4000>;
  297. interrupts = <0 85 IRQ_TYPE_LEVEL_HIGH>;
  298. clocks = <&clks IMX6SL_CLK_PWM3>,
  299. <&clks IMX6SL_CLK_PWM3>;
  300. clock-names = "ipg", "per";
  301. };
  302. pwm4: pwm@0208c000 {
  303. #pwm-cells = <2>;
  304. compatible = "fsl,imx6sl-pwm", "fsl,imx27-pwm";
  305. reg = <0x0208c000 0x4000>;
  306. interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>;
  307. clocks = <&clks IMX6SL_CLK_PWM4>,
  308. <&clks IMX6SL_CLK_PWM4>;
  309. clock-names = "ipg", "per";
  310. };
  311. gpt: gpt@02098000 {
  312. compatible = "fsl,imx6sl-gpt";
  313. reg = <0x02098000 0x4000>;
  314. interrupts = <0 55 IRQ_TYPE_LEVEL_HIGH>;
  315. clocks = <&clks IMX6SL_CLK_GPT>,
  316. <&clks IMX6SL_CLK_GPT_SERIAL>;
  317. clock-names = "ipg", "per";
  318. };
  319. gpio1: gpio@0209c000 {
  320. compatible = "fsl,imx6sl-gpio", "fsl,imx35-gpio";
  321. reg = <0x0209c000 0x4000>;
  322. interrupts = <0 66 IRQ_TYPE_LEVEL_HIGH>,
  323. <0 67 IRQ_TYPE_LEVEL_HIGH>;
  324. gpio-controller;
  325. #gpio-cells = <2>;
  326. interrupt-controller;
  327. #interrupt-cells = <2>;
  328. };
  329. gpio2: gpio@020a0000 {
  330. compatible = "fsl,imx6sl-gpio", "fsl,imx35-gpio";
  331. reg = <0x020a0000 0x4000>;
  332. interrupts = <0 68 IRQ_TYPE_LEVEL_HIGH>,
  333. <0 69 IRQ_TYPE_LEVEL_HIGH>;
  334. gpio-controller;
  335. #gpio-cells = <2>;
  336. interrupt-controller;
  337. #interrupt-cells = <2>;
  338. };
  339. gpio3: gpio@020a4000 {
  340. compatible = "fsl,imx6sl-gpio", "fsl,imx35-gpio";
  341. reg = <0x020a4000 0x4000>;
  342. interrupts = <0 70 IRQ_TYPE_LEVEL_HIGH>,
  343. <0 71 IRQ_TYPE_LEVEL_HIGH>;
  344. gpio-controller;
  345. #gpio-cells = <2>;
  346. interrupt-controller;
  347. #interrupt-cells = <2>;
  348. };
  349. gpio4: gpio@020a8000 {
  350. compatible = "fsl,imx6sl-gpio", "fsl,imx35-gpio";
  351. reg = <0x020a8000 0x4000>;
  352. interrupts = <0 72 IRQ_TYPE_LEVEL_HIGH>,
  353. <0 73 IRQ_TYPE_LEVEL_HIGH>;
  354. gpio-controller;
  355. #gpio-cells = <2>;
  356. interrupt-controller;
  357. #interrupt-cells = <2>;
  358. };
  359. gpio5: gpio@020ac000 {
  360. compatible = "fsl,imx6sl-gpio", "fsl,imx35-gpio";
  361. reg = <0x020ac000 0x4000>;
  362. interrupts = <0 74 IRQ_TYPE_LEVEL_HIGH>,
  363. <0 75 IRQ_TYPE_LEVEL_HIGH>;
  364. gpio-controller;
  365. #gpio-cells = <2>;
  366. interrupt-controller;
  367. #interrupt-cells = <2>;
  368. };
  369. kpp: kpp@020b8000 {
  370. compatible = "fsl,imx6sl-kpp", "fsl,imx21-kpp";
  371. reg = <0x020b8000 0x4000>;
  372. interrupts = <0 82 IRQ_TYPE_LEVEL_HIGH>;
  373. clocks = <&clks IMX6SL_CLK_DUMMY>;
  374. status = "disabled";
  375. };
  376. wdog1: wdog@020bc000 {
  377. compatible = "fsl,imx6sl-wdt", "fsl,imx21-wdt";
  378. reg = <0x020bc000 0x4000>;
  379. interrupts = <0 80 IRQ_TYPE_LEVEL_HIGH>;
  380. clocks = <&clks IMX6SL_CLK_DUMMY>;
  381. };
  382. wdog2: wdog@020c0000 {
  383. compatible = "fsl,imx6sl-wdt", "fsl,imx21-wdt";
  384. reg = <0x020c0000 0x4000>;
  385. interrupts = <0 81 IRQ_TYPE_LEVEL_HIGH>;
  386. clocks = <&clks IMX6SL_CLK_DUMMY>;
  387. status = "disabled";
  388. };
  389. clks: ccm@020c4000 {
  390. compatible = "fsl,imx6sl-ccm";
  391. reg = <0x020c4000 0x4000>;
  392. interrupts = <0 87 IRQ_TYPE_LEVEL_HIGH>,
  393. <0 88 IRQ_TYPE_LEVEL_HIGH>;
  394. #clock-cells = <1>;
  395. };
  396. anatop: anatop@020c8000 {
  397. compatible = "fsl,imx6sl-anatop",
  398. "fsl,imx6q-anatop",
  399. "syscon", "simple-bus";
  400. reg = <0x020c8000 0x1000>;
  401. interrupts = <0 49 IRQ_TYPE_LEVEL_HIGH>,
  402. <0 54 IRQ_TYPE_LEVEL_HIGH>,
  403. <0 127 IRQ_TYPE_LEVEL_HIGH>;
  404. regulator-1p1@110 {
  405. compatible = "fsl,anatop-regulator";
  406. regulator-name = "vdd1p1";
  407. regulator-min-microvolt = <800000>;
  408. regulator-max-microvolt = <1375000>;
  409. regulator-always-on;
  410. anatop-reg-offset = <0x110>;
  411. anatop-vol-bit-shift = <8>;
  412. anatop-vol-bit-width = <5>;
  413. anatop-min-bit-val = <4>;
  414. anatop-min-voltage = <800000>;
  415. anatop-max-voltage = <1375000>;
  416. };
  417. regulator-3p0@120 {
  418. compatible = "fsl,anatop-regulator";
  419. regulator-name = "vdd3p0";
  420. regulator-min-microvolt = <2800000>;
  421. regulator-max-microvolt = <3150000>;
  422. regulator-always-on;
  423. anatop-reg-offset = <0x120>;
  424. anatop-vol-bit-shift = <8>;
  425. anatop-vol-bit-width = <5>;
  426. anatop-min-bit-val = <0>;
  427. anatop-min-voltage = <2625000>;
  428. anatop-max-voltage = <3400000>;
  429. };
  430. regulator-2p5@130 {
  431. compatible = "fsl,anatop-regulator";
  432. regulator-name = "vdd2p5";
  433. regulator-min-microvolt = <2100000>;
  434. regulator-max-microvolt = <2850000>;
  435. regulator-always-on;
  436. anatop-reg-offset = <0x130>;
  437. anatop-vol-bit-shift = <8>;
  438. anatop-vol-bit-width = <5>;
  439. anatop-min-bit-val = <0>;
  440. anatop-min-voltage = <2100000>;
  441. anatop-max-voltage = <2850000>;
  442. };
  443. reg_arm: regulator-vddcore@140 {
  444. compatible = "fsl,anatop-regulator";
  445. regulator-name = "vddarm";
  446. regulator-min-microvolt = <725000>;
  447. regulator-max-microvolt = <1450000>;
  448. regulator-always-on;
  449. anatop-reg-offset = <0x140>;
  450. anatop-vol-bit-shift = <0>;
  451. anatop-vol-bit-width = <5>;
  452. anatop-delay-reg-offset = <0x170>;
  453. anatop-delay-bit-shift = <24>;
  454. anatop-delay-bit-width = <2>;
  455. anatop-min-bit-val = <1>;
  456. anatop-min-voltage = <725000>;
  457. anatop-max-voltage = <1450000>;
  458. };
  459. reg_pu: regulator-vddpu@140 {
  460. compatible = "fsl,anatop-regulator";
  461. regulator-name = "vddpu";
  462. regulator-min-microvolt = <725000>;
  463. regulator-max-microvolt = <1450000>;
  464. regulator-always-on;
  465. anatop-reg-offset = <0x140>;
  466. anatop-vol-bit-shift = <9>;
  467. anatop-vol-bit-width = <5>;
  468. anatop-delay-reg-offset = <0x170>;
  469. anatop-delay-bit-shift = <26>;
  470. anatop-delay-bit-width = <2>;
  471. anatop-min-bit-val = <1>;
  472. anatop-min-voltage = <725000>;
  473. anatop-max-voltage = <1450000>;
  474. };
  475. reg_soc: regulator-vddsoc@140 {
  476. compatible = "fsl,anatop-regulator";
  477. regulator-name = "vddsoc";
  478. regulator-min-microvolt = <725000>;
  479. regulator-max-microvolt = <1450000>;
  480. regulator-always-on;
  481. anatop-reg-offset = <0x140>;
  482. anatop-vol-bit-shift = <18>;
  483. anatop-vol-bit-width = <5>;
  484. anatop-delay-reg-offset = <0x170>;
  485. anatop-delay-bit-shift = <28>;
  486. anatop-delay-bit-width = <2>;
  487. anatop-min-bit-val = <1>;
  488. anatop-min-voltage = <725000>;
  489. anatop-max-voltage = <1450000>;
  490. };
  491. };
  492. tempmon: tempmon {
  493. compatible = "fsl,imx6q-tempmon";
  494. interrupts = <0 49 IRQ_TYPE_LEVEL_HIGH>;
  495. fsl,tempmon = <&anatop>;
  496. fsl,tempmon-data = <&ocotp>;
  497. clocks = <&clks IMX6SL_CLK_PLL3_USB_OTG>;
  498. };
  499. usbphy1: usbphy@020c9000 {
  500. compatible = "fsl,imx6sl-usbphy", "fsl,imx23-usbphy";
  501. reg = <0x020c9000 0x1000>;
  502. interrupts = <0 44 IRQ_TYPE_LEVEL_HIGH>;
  503. clocks = <&clks IMX6SL_CLK_USBPHY1>;
  504. fsl,anatop = <&anatop>;
  505. };
  506. usbphy2: usbphy@020ca000 {
  507. compatible = "fsl,imx6sl-usbphy", "fsl,imx23-usbphy";
  508. reg = <0x020ca000 0x1000>;
  509. interrupts = <0 45 IRQ_TYPE_LEVEL_HIGH>;
  510. clocks = <&clks IMX6SL_CLK_USBPHY2>;
  511. fsl,anatop = <&anatop>;
  512. };
  513. snvs@020cc000 {
  514. compatible = "fsl,sec-v4.0-mon", "simple-bus";
  515. #address-cells = <1>;
  516. #size-cells = <1>;
  517. ranges = <0 0x020cc000 0x4000>;
  518. snvs-rtc-lp@34 {
  519. compatible = "fsl,sec-v4.0-mon-rtc-lp";
  520. reg = <0x34 0x58>;
  521. interrupts = <0 19 IRQ_TYPE_LEVEL_HIGH>,
  522. <0 20 IRQ_TYPE_LEVEL_HIGH>;
  523. };
  524. };
  525. epit1: epit@020d0000 {
  526. reg = <0x020d0000 0x4000>;
  527. interrupts = <0 56 IRQ_TYPE_LEVEL_HIGH>;
  528. };
  529. epit2: epit@020d4000 {
  530. reg = <0x020d4000 0x4000>;
  531. interrupts = <0 57 IRQ_TYPE_LEVEL_HIGH>;
  532. };
  533. src: src@020d8000 {
  534. compatible = "fsl,imx6sl-src", "fsl,imx51-src";
  535. reg = <0x020d8000 0x4000>;
  536. interrupts = <0 91 IRQ_TYPE_LEVEL_HIGH>,
  537. <0 96 IRQ_TYPE_LEVEL_HIGH>;
  538. #reset-cells = <1>;
  539. };
  540. gpc: gpc@020dc000 {
  541. compatible = "fsl,imx6sl-gpc", "fsl,imx6q-gpc";
  542. reg = <0x020dc000 0x4000>;
  543. interrupts = <0 89 IRQ_TYPE_LEVEL_HIGH>;
  544. };
  545. gpr: iomuxc-gpr@020e0000 {
  546. compatible = "fsl,imx6sl-iomuxc-gpr",
  547. "fsl,imx6q-iomuxc-gpr", "syscon";
  548. reg = <0x020e0000 0x38>;
  549. };
  550. iomuxc: iomuxc@020e0000 {
  551. compatible = "fsl,imx6sl-iomuxc";
  552. reg = <0x020e0000 0x4000>;
  553. };
  554. csi: csi@020e4000 {
  555. reg = <0x020e4000 0x4000>;
  556. interrupts = <0 7 IRQ_TYPE_LEVEL_HIGH>;
  557. };
  558. spdc: spdc@020e8000 {
  559. reg = <0x020e8000 0x4000>;
  560. interrupts = <0 6 IRQ_TYPE_LEVEL_HIGH>;
  561. };
  562. sdma: sdma@020ec000 {
  563. compatible = "fsl,imx6sl-sdma", "fsl,imx6q-sdma";
  564. reg = <0x020ec000 0x4000>;
  565. interrupts = <0 2 IRQ_TYPE_LEVEL_HIGH>;
  566. clocks = <&clks IMX6SL_CLK_SDMA>,
  567. <&clks IMX6SL_CLK_SDMA>;
  568. clock-names = "ipg", "ahb";
  569. #dma-cells = <3>;
  570. /* imx6sl reuses imx6q sdma firmware */
  571. fsl,sdma-ram-script-name = "imx/sdma/sdma-imx6q.bin";
  572. };
  573. pxp: pxp@020f0000 {
  574. reg = <0x020f0000 0x4000>;
  575. interrupts = <0 98 IRQ_TYPE_LEVEL_HIGH>;
  576. };
  577. epdc: epdc@020f4000 {
  578. reg = <0x020f4000 0x4000>;
  579. interrupts = <0 97 IRQ_TYPE_LEVEL_HIGH>;
  580. };
  581. lcdif: lcdif@020f8000 {
  582. compatible = "fsl,imx6sl-lcdif", "fsl,imx28-lcdif";
  583. reg = <0x020f8000 0x4000>;
  584. interrupts = <0 39 IRQ_TYPE_LEVEL_HIGH>;
  585. clocks = <&clks IMX6SL_CLK_LCDIF_PIX>,
  586. <&clks IMX6SL_CLK_LCDIF_AXI>,
  587. <&clks IMX6SL_CLK_DUMMY>;
  588. clock-names = "pix", "axi", "disp_axi";
  589. status = "disabled";
  590. };
  591. dcp: dcp@020fc000 {
  592. reg = <0x020fc000 0x4000>;
  593. interrupts = <0 99 IRQ_TYPE_LEVEL_HIGH>;
  594. };
  595. };
  596. aips2: aips-bus@02100000 {
  597. compatible = "fsl,aips-bus", "simple-bus";
  598. #address-cells = <1>;
  599. #size-cells = <1>;
  600. reg = <0x02100000 0x100000>;
  601. ranges;
  602. usbotg1: usb@02184000 {
  603. compatible = "fsl,imx6sl-usb", "fsl,imx27-usb";
  604. reg = <0x02184000 0x200>;
  605. interrupts = <0 43 IRQ_TYPE_LEVEL_HIGH>;
  606. clocks = <&clks IMX6SL_CLK_USBOH3>;
  607. fsl,usbphy = <&usbphy1>;
  608. fsl,usbmisc = <&usbmisc 0>;
  609. status = "disabled";
  610. };
  611. usbotg2: usb@02184200 {
  612. compatible = "fsl,imx6sl-usb", "fsl,imx27-usb";
  613. reg = <0x02184200 0x200>;
  614. interrupts = <0 42 IRQ_TYPE_LEVEL_HIGH>;
  615. clocks = <&clks IMX6SL_CLK_USBOH3>;
  616. fsl,usbphy = <&usbphy2>;
  617. fsl,usbmisc = <&usbmisc 1>;
  618. status = "disabled";
  619. };
  620. usbh: usb@02184400 {
  621. compatible = "fsl,imx6sl-usb", "fsl,imx27-usb";
  622. reg = <0x02184400 0x200>;
  623. interrupts = <0 40 IRQ_TYPE_LEVEL_HIGH>;
  624. clocks = <&clks IMX6SL_CLK_USBOH3>;
  625. fsl,usbmisc = <&usbmisc 2>;
  626. status = "disabled";
  627. };
  628. usbmisc: usbmisc@02184800 {
  629. #index-cells = <1>;
  630. compatible = "fsl,imx6sl-usbmisc", "fsl,imx6q-usbmisc";
  631. reg = <0x02184800 0x200>;
  632. clocks = <&clks IMX6SL_CLK_USBOH3>;
  633. };
  634. fec: ethernet@02188000 {
  635. compatible = "fsl,imx6sl-fec", "fsl,imx25-fec";
  636. reg = <0x02188000 0x4000>;
  637. interrupts = <0 114 IRQ_TYPE_LEVEL_HIGH>;
  638. clocks = <&clks IMX6SL_CLK_ENET>,
  639. <&clks IMX6SL_CLK_ENET_REF>;
  640. clock-names = "ipg", "ahb";
  641. status = "disabled";
  642. };
  643. usdhc1: usdhc@02190000 {
  644. compatible = "fsl,imx6sl-usdhc", "fsl,imx6q-usdhc";
  645. reg = <0x02190000 0x4000>;
  646. interrupts = <0 22 IRQ_TYPE_LEVEL_HIGH>;
  647. clocks = <&clks IMX6SL_CLK_USDHC1>,
  648. <&clks IMX6SL_CLK_USDHC1>,
  649. <&clks IMX6SL_CLK_USDHC1>;
  650. clock-names = "ipg", "ahb", "per";
  651. bus-width = <4>;
  652. status = "disabled";
  653. };
  654. usdhc2: usdhc@02194000 {
  655. compatible = "fsl,imx6sl-usdhc", "fsl,imx6q-usdhc";
  656. reg = <0x02194000 0x4000>;
  657. interrupts = <0 23 IRQ_TYPE_LEVEL_HIGH>;
  658. clocks = <&clks IMX6SL_CLK_USDHC2>,
  659. <&clks IMX6SL_CLK_USDHC2>,
  660. <&clks IMX6SL_CLK_USDHC2>;
  661. clock-names = "ipg", "ahb", "per";
  662. bus-width = <4>;
  663. status = "disabled";
  664. };
  665. usdhc3: usdhc@02198000 {
  666. compatible = "fsl,imx6sl-usdhc", "fsl,imx6q-usdhc";
  667. reg = <0x02198000 0x4000>;
  668. interrupts = <0 24 IRQ_TYPE_LEVEL_HIGH>;
  669. clocks = <&clks IMX6SL_CLK_USDHC3>,
  670. <&clks IMX6SL_CLK_USDHC3>,
  671. <&clks IMX6SL_CLK_USDHC3>;
  672. clock-names = "ipg", "ahb", "per";
  673. bus-width = <4>;
  674. status = "disabled";
  675. };
  676. usdhc4: usdhc@0219c000 {
  677. compatible = "fsl,imx6sl-usdhc", "fsl,imx6q-usdhc";
  678. reg = <0x0219c000 0x4000>;
  679. interrupts = <0 25 IRQ_TYPE_LEVEL_HIGH>;
  680. clocks = <&clks IMX6SL_CLK_USDHC4>,
  681. <&clks IMX6SL_CLK_USDHC4>,
  682. <&clks IMX6SL_CLK_USDHC4>;
  683. clock-names = "ipg", "ahb", "per";
  684. bus-width = <4>;
  685. status = "disabled";
  686. };
  687. i2c1: i2c@021a0000 {
  688. #address-cells = <1>;
  689. #size-cells = <0>;
  690. compatible = "fsl,imx6sl-i2c", "fsl,imx21-i2c";
  691. reg = <0x021a0000 0x4000>;
  692. interrupts = <0 36 IRQ_TYPE_LEVEL_HIGH>;
  693. clocks = <&clks IMX6SL_CLK_I2C1>;
  694. status = "disabled";
  695. };
  696. i2c2: i2c@021a4000 {
  697. #address-cells = <1>;
  698. #size-cells = <0>;
  699. compatible = "fsl,imx6sl-i2c", "fsl,imx21-i2c";
  700. reg = <0x021a4000 0x4000>;
  701. interrupts = <0 37 IRQ_TYPE_LEVEL_HIGH>;
  702. clocks = <&clks IMX6SL_CLK_I2C2>;
  703. status = "disabled";
  704. };
  705. i2c3: i2c@021a8000 {
  706. #address-cells = <1>;
  707. #size-cells = <0>;
  708. compatible = "fsl,imx6sl-i2c", "fsl,imx21-i2c";
  709. reg = <0x021a8000 0x4000>;
  710. interrupts = <0 38 IRQ_TYPE_LEVEL_HIGH>;
  711. clocks = <&clks IMX6SL_CLK_I2C3>;
  712. status = "disabled";
  713. };
  714. mmdc: mmdc@021b0000 {
  715. compatible = "fsl,imx6sl-mmdc", "fsl,imx6q-mmdc";
  716. reg = <0x021b0000 0x4000>;
  717. };
  718. rngb: rngb@021b4000 {
  719. reg = <0x021b4000 0x4000>;
  720. interrupts = <0 5 IRQ_TYPE_LEVEL_HIGH>;
  721. };
  722. weim: weim@021b8000 {
  723. reg = <0x021b8000 0x4000>;
  724. interrupts = <0 14 IRQ_TYPE_LEVEL_HIGH>;
  725. };
  726. ocotp: ocotp@021bc000 {
  727. compatible = "fsl,imx6sl-ocotp", "syscon";
  728. reg = <0x021bc000 0x4000>;
  729. };
  730. audmux: audmux@021d8000 {
  731. compatible = "fsl,imx6sl-audmux", "fsl,imx31-audmux";
  732. reg = <0x021d8000 0x4000>;
  733. status = "disabled";
  734. };
  735. };
  736. };
  737. };