imx6qdl.dtsi 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155
  1. /*
  2. * Copyright 2011 Freescale Semiconductor, Inc.
  3. * Copyright 2011 Linaro Ltd.
  4. *
  5. * The code contained herein is licensed under the GNU General Public
  6. * License. You may obtain a copy of the GNU General Public License
  7. * Version 2 or later at the following locations:
  8. *
  9. * http://www.opensource.org/licenses/gpl-license.html
  10. * http://www.gnu.org/copyleft/gpl.html
  11. */
  12. #include <dt-bindings/clock/imx6qdl-clock.h>
  13. #include <dt-bindings/interrupt-controller/arm-gic.h>
  14. #include "skeleton.dtsi"
  15. / {
  16. aliases {
  17. ethernet0 = &fec;
  18. can0 = &can1;
  19. can1 = &can2;
  20. gpio0 = &gpio1;
  21. gpio1 = &gpio2;
  22. gpio2 = &gpio3;
  23. gpio3 = &gpio4;
  24. gpio4 = &gpio5;
  25. gpio5 = &gpio6;
  26. gpio6 = &gpio7;
  27. i2c0 = &i2c1;
  28. i2c1 = &i2c2;
  29. i2c2 = &i2c3;
  30. mmc0 = &usdhc1;
  31. mmc1 = &usdhc2;
  32. mmc2 = &usdhc3;
  33. mmc3 = &usdhc4;
  34. serial0 = &uart1;
  35. serial1 = &uart2;
  36. serial2 = &uart3;
  37. serial3 = &uart4;
  38. serial4 = &uart5;
  39. spi0 = &ecspi1;
  40. spi1 = &ecspi2;
  41. spi2 = &ecspi3;
  42. spi3 = &ecspi4;
  43. usbphy0 = &usbphy1;
  44. usbphy1 = &usbphy2;
  45. };
  46. intc: interrupt-controller@00a01000 {
  47. compatible = "arm,cortex-a9-gic";
  48. #interrupt-cells = <3>;
  49. interrupt-controller;
  50. reg = <0x00a01000 0x1000>,
  51. <0x00a00100 0x100>;
  52. };
  53. clocks {
  54. #address-cells = <1>;
  55. #size-cells = <0>;
  56. ckil {
  57. compatible = "fsl,imx-ckil", "fixed-clock";
  58. #clock-cells = <0>;
  59. clock-frequency = <32768>;
  60. };
  61. ckih1 {
  62. compatible = "fsl,imx-ckih1", "fixed-clock";
  63. #clock-cells = <0>;
  64. clock-frequency = <0>;
  65. };
  66. osc {
  67. compatible = "fsl,imx-osc", "fixed-clock";
  68. #clock-cells = <0>;
  69. clock-frequency = <24000000>;
  70. };
  71. };
  72. soc {
  73. #address-cells = <1>;
  74. #size-cells = <1>;
  75. compatible = "simple-bus";
  76. interrupt-parent = <&intc>;
  77. ranges;
  78. dma_apbh: dma-apbh@00110000 {
  79. compatible = "fsl,imx6q-dma-apbh", "fsl,imx28-dma-apbh";
  80. reg = <0x00110000 0x2000>;
  81. interrupts = <0 13 IRQ_TYPE_LEVEL_HIGH>,
  82. <0 13 IRQ_TYPE_LEVEL_HIGH>,
  83. <0 13 IRQ_TYPE_LEVEL_HIGH>,
  84. <0 13 IRQ_TYPE_LEVEL_HIGH>;
  85. interrupt-names = "gpmi0", "gpmi1", "gpmi2", "gpmi3";
  86. #dma-cells = <1>;
  87. dma-channels = <4>;
  88. clocks = <&clks IMX6QDL_CLK_APBH_DMA>;
  89. };
  90. gpmi: gpmi-nand@00112000 {
  91. compatible = "fsl,imx6q-gpmi-nand";
  92. #address-cells = <1>;
  93. #size-cells = <1>;
  94. reg = <0x00112000 0x2000>, <0x00114000 0x2000>;
  95. reg-names = "gpmi-nand", "bch";
  96. interrupts = <0 15 IRQ_TYPE_LEVEL_HIGH>;
  97. interrupt-names = "bch";
  98. clocks = <&clks IMX6QDL_CLK_GPMI_IO>,
  99. <&clks IMX6QDL_CLK_GPMI_APB>,
  100. <&clks IMX6QDL_CLK_GPMI_BCH>,
  101. <&clks IMX6QDL_CLK_GPMI_BCH_APB>,
  102. <&clks IMX6QDL_CLK_PER1_BCH>;
  103. clock-names = "gpmi_io", "gpmi_apb", "gpmi_bch",
  104. "gpmi_bch_apb", "per1_bch";
  105. dmas = <&dma_apbh 0>;
  106. dma-names = "rx-tx";
  107. status = "disabled";
  108. };
  109. timer@00a00600 {
  110. compatible = "arm,cortex-a9-twd-timer";
  111. reg = <0x00a00600 0x20>;
  112. interrupts = <1 13 0xf01>;
  113. clocks = <&clks IMX6QDL_CLK_TWD>;
  114. };
  115. L2: l2-cache@00a02000 {
  116. compatible = "arm,pl310-cache";
  117. reg = <0x00a02000 0x1000>;
  118. interrupts = <0 92 IRQ_TYPE_LEVEL_HIGH>;
  119. cache-unified;
  120. cache-level = <2>;
  121. arm,tag-latency = <4 2 3>;
  122. arm,data-latency = <4 2 3>;
  123. };
  124. pcie: pcie@0x01000000 {
  125. compatible = "fsl,imx6q-pcie", "snps,dw-pcie";
  126. reg = <0x01ffc000 0x04000>,
  127. <0x01f00000 0x80000>;
  128. reg-names = "dbi", "config";
  129. #address-cells = <3>;
  130. #size-cells = <2>;
  131. device_type = "pci";
  132. ranges = <0x00000800 0 0x01f00000 0x01f00000 0 0x00080000 /* configuration space */
  133. 0x81000000 0 0 0x01f80000 0 0x00010000 /* downstream I/O */
  134. 0x82000000 0 0x01000000 0x01000000 0 0x00f00000>; /* non-prefetchable memory */
  135. num-lanes = <1>;
  136. interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
  137. interrupt-names = "msi";
  138. #interrupt-cells = <1>;
  139. interrupt-map-mask = <0 0 0 0x7>;
  140. interrupt-map = <0 0 0 1 &intc GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
  141. <0 0 0 2 &intc GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>,
  142. <0 0 0 3 &intc GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>,
  143. <0 0 0 4 &intc GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
  144. clocks = <&clks IMX6QDL_CLK_PCIE_AXI>,
  145. <&clks IMX6QDL_CLK_LVDS1_GATE>,
  146. <&clks IMX6QDL_CLK_PCIE_REF_125M>;
  147. clock-names = "pcie", "pcie_bus", "pcie_phy";
  148. status = "disabled";
  149. };
  150. pmu {
  151. compatible = "arm,cortex-a9-pmu";
  152. interrupts = <0 94 IRQ_TYPE_LEVEL_HIGH>;
  153. };
  154. aips-bus@02000000 { /* AIPS1 */
  155. compatible = "fsl,aips-bus", "simple-bus";
  156. #address-cells = <1>;
  157. #size-cells = <1>;
  158. reg = <0x02000000 0x100000>;
  159. ranges;
  160. spba-bus@02000000 {
  161. compatible = "fsl,spba-bus", "simple-bus";
  162. #address-cells = <1>;
  163. #size-cells = <1>;
  164. reg = <0x02000000 0x40000>;
  165. ranges;
  166. spdif: spdif@02004000 {
  167. compatible = "fsl,imx35-spdif";
  168. reg = <0x02004000 0x4000>;
  169. interrupts = <0 52 IRQ_TYPE_LEVEL_HIGH>;
  170. dmas = <&sdma 14 18 0>,
  171. <&sdma 15 18 0>;
  172. dma-names = "rx", "tx";
  173. clocks = <&clks IMX6QDL_CLK_SPDIF>, <&clks IMX6QDL_CLK_OSC>,
  174. <&clks IMX6QDL_CLK_SPDIF>, <&clks IMX6QDL_CLK_DUMMY>,
  175. <&clks IMX6QDL_CLK_DUMMY>, <&clks IMX6QDL_CLK_DUMMY>,
  176. <&clks IMX6QDL_CLK_DUMMY>, <&clks IMX6QDL_CLK_DUMMY>,
  177. <&clks IMX6QDL_CLK_DUMMY>;
  178. clock-names = "core", "rxtx0",
  179. "rxtx1", "rxtx2",
  180. "rxtx3", "rxtx4",
  181. "rxtx5", "rxtx6",
  182. "rxtx7";
  183. status = "disabled";
  184. };
  185. ecspi1: ecspi@02008000 {
  186. #address-cells = <1>;
  187. #size-cells = <0>;
  188. compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi";
  189. reg = <0x02008000 0x4000>;
  190. interrupts = <0 31 IRQ_TYPE_LEVEL_HIGH>;
  191. clocks = <&clks IMX6QDL_CLK_ECSPI1>,
  192. <&clks IMX6QDL_CLK_ECSPI1>;
  193. clock-names = "ipg", "per";
  194. dmas = <&sdma 3 7 1>, <&sdma 4 7 2>;
  195. dma-names = "rx", "tx";
  196. status = "disabled";
  197. };
  198. ecspi2: ecspi@0200c000 {
  199. #address-cells = <1>;
  200. #size-cells = <0>;
  201. compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi";
  202. reg = <0x0200c000 0x4000>;
  203. interrupts = <0 32 IRQ_TYPE_LEVEL_HIGH>;
  204. clocks = <&clks IMX6QDL_CLK_ECSPI2>,
  205. <&clks IMX6QDL_CLK_ECSPI2>;
  206. clock-names = "ipg", "per";
  207. dmas = <&sdma 5 7 1>, <&sdma 6 7 2>;
  208. dma-names = "rx", "tx";
  209. status = "disabled";
  210. };
  211. ecspi3: ecspi@02010000 {
  212. #address-cells = <1>;
  213. #size-cells = <0>;
  214. compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi";
  215. reg = <0x02010000 0x4000>;
  216. interrupts = <0 33 IRQ_TYPE_LEVEL_HIGH>;
  217. clocks = <&clks IMX6QDL_CLK_ECSPI3>,
  218. <&clks IMX6QDL_CLK_ECSPI3>;
  219. clock-names = "ipg", "per";
  220. dmas = <&sdma 7 7 1>, <&sdma 8 7 2>;
  221. dma-names = "rx", "tx";
  222. status = "disabled";
  223. };
  224. ecspi4: ecspi@02014000 {
  225. #address-cells = <1>;
  226. #size-cells = <0>;
  227. compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi";
  228. reg = <0x02014000 0x4000>;
  229. interrupts = <0 34 IRQ_TYPE_LEVEL_HIGH>;
  230. clocks = <&clks IMX6QDL_CLK_ECSPI4>,
  231. <&clks IMX6QDL_CLK_ECSPI4>;
  232. clock-names = "ipg", "per";
  233. dmas = <&sdma 9 7 1>, <&sdma 10 7 2>;
  234. dma-names = "rx", "tx";
  235. status = "disabled";
  236. };
  237. uart1: serial@02020000 {
  238. compatible = "fsl,imx6q-uart", "fsl,imx21-uart";
  239. reg = <0x02020000 0x4000>;
  240. interrupts = <0 26 IRQ_TYPE_LEVEL_HIGH>;
  241. clocks = <&clks IMX6QDL_CLK_UART_IPG>,
  242. <&clks IMX6QDL_CLK_UART_SERIAL>;
  243. clock-names = "ipg", "per";
  244. dmas = <&sdma 25 4 0>, <&sdma 26 4 0>;
  245. dma-names = "rx", "tx";
  246. status = "disabled";
  247. };
  248. esai: esai@02024000 {
  249. reg = <0x02024000 0x4000>;
  250. interrupts = <0 51 IRQ_TYPE_LEVEL_HIGH>;
  251. };
  252. ssi1: ssi@02028000 {
  253. #sound-dai-cells = <0>;
  254. compatible = "fsl,imx6q-ssi",
  255. "fsl,imx51-ssi";
  256. reg = <0x02028000 0x4000>;
  257. interrupts = <0 46 IRQ_TYPE_LEVEL_HIGH>;
  258. clocks = <&clks IMX6QDL_CLK_SSI1_IPG>,
  259. <&clks IMX6QDL_CLK_SSI1>;
  260. clock-names = "ipg", "baud";
  261. dmas = <&sdma 37 1 0>,
  262. <&sdma 38 1 0>;
  263. dma-names = "rx", "tx";
  264. fsl,fifo-depth = <15>;
  265. status = "disabled";
  266. };
  267. ssi2: ssi@0202c000 {
  268. #sound-dai-cells = <0>;
  269. compatible = "fsl,imx6q-ssi",
  270. "fsl,imx51-ssi";
  271. reg = <0x0202c000 0x4000>;
  272. interrupts = <0 47 IRQ_TYPE_LEVEL_HIGH>;
  273. clocks = <&clks IMX6QDL_CLK_SSI2_IPG>,
  274. <&clks IMX6QDL_CLK_SSI2>;
  275. clock-names = "ipg", "baud";
  276. dmas = <&sdma 41 1 0>,
  277. <&sdma 42 1 0>;
  278. dma-names = "rx", "tx";
  279. fsl,fifo-depth = <15>;
  280. status = "disabled";
  281. };
  282. ssi3: ssi@02030000 {
  283. #sound-dai-cells = <0>;
  284. compatible = "fsl,imx6q-ssi",
  285. "fsl,imx51-ssi";
  286. reg = <0x02030000 0x4000>;
  287. interrupts = <0 48 IRQ_TYPE_LEVEL_HIGH>;
  288. clocks = <&clks IMX6QDL_CLK_SSI3_IPG>,
  289. <&clks IMX6QDL_CLK_SSI3>;
  290. clock-names = "ipg", "baud";
  291. dmas = <&sdma 45 1 0>,
  292. <&sdma 46 1 0>;
  293. dma-names = "rx", "tx";
  294. fsl,fifo-depth = <15>;
  295. status = "disabled";
  296. };
  297. asrc: asrc@02034000 {
  298. reg = <0x02034000 0x4000>;
  299. interrupts = <0 50 IRQ_TYPE_LEVEL_HIGH>;
  300. };
  301. spba@0203c000 {
  302. reg = <0x0203c000 0x4000>;
  303. };
  304. };
  305. vpu: vpu@02040000 {
  306. reg = <0x02040000 0x3c000>;
  307. interrupts = <0 3 IRQ_TYPE_LEVEL_HIGH>,
  308. <0 12 IRQ_TYPE_LEVEL_HIGH>;
  309. };
  310. aipstz@0207c000 { /* AIPSTZ1 */
  311. reg = <0x0207c000 0x4000>;
  312. };
  313. pwm1: pwm@02080000 {
  314. #pwm-cells = <2>;
  315. compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm";
  316. reg = <0x02080000 0x4000>;
  317. interrupts = <0 83 IRQ_TYPE_LEVEL_HIGH>;
  318. clocks = <&clks IMX6QDL_CLK_IPG>,
  319. <&clks IMX6QDL_CLK_PWM1>;
  320. clock-names = "ipg", "per";
  321. };
  322. pwm2: pwm@02084000 {
  323. #pwm-cells = <2>;
  324. compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm";
  325. reg = <0x02084000 0x4000>;
  326. interrupts = <0 84 IRQ_TYPE_LEVEL_HIGH>;
  327. clocks = <&clks IMX6QDL_CLK_IPG>,
  328. <&clks IMX6QDL_CLK_PWM2>;
  329. clock-names = "ipg", "per";
  330. };
  331. pwm3: pwm@02088000 {
  332. #pwm-cells = <2>;
  333. compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm";
  334. reg = <0x02088000 0x4000>;
  335. interrupts = <0 85 IRQ_TYPE_LEVEL_HIGH>;
  336. clocks = <&clks IMX6QDL_CLK_IPG>,
  337. <&clks IMX6QDL_CLK_PWM3>;
  338. clock-names = "ipg", "per";
  339. };
  340. pwm4: pwm@0208c000 {
  341. #pwm-cells = <2>;
  342. compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm";
  343. reg = <0x0208c000 0x4000>;
  344. interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>;
  345. clocks = <&clks IMX6QDL_CLK_IPG>,
  346. <&clks IMX6QDL_CLK_PWM4>;
  347. clock-names = "ipg", "per";
  348. };
  349. can1: flexcan@02090000 {
  350. compatible = "fsl,imx6q-flexcan";
  351. reg = <0x02090000 0x4000>;
  352. interrupts = <0 110 IRQ_TYPE_LEVEL_HIGH>;
  353. clocks = <&clks IMX6QDL_CLK_CAN1_IPG>,
  354. <&clks IMX6QDL_CLK_CAN1_SERIAL>;
  355. clock-names = "ipg", "per";
  356. status = "disabled";
  357. };
  358. can2: flexcan@02094000 {
  359. compatible = "fsl,imx6q-flexcan";
  360. reg = <0x02094000 0x4000>;
  361. interrupts = <0 111 IRQ_TYPE_LEVEL_HIGH>;
  362. clocks = <&clks IMX6QDL_CLK_CAN2_IPG>,
  363. <&clks IMX6QDL_CLK_CAN2_SERIAL>;
  364. clock-names = "ipg", "per";
  365. status = "disabled";
  366. };
  367. gpt: gpt@02098000 {
  368. compatible = "fsl,imx6q-gpt", "fsl,imx31-gpt";
  369. reg = <0x02098000 0x4000>;
  370. interrupts = <0 55 IRQ_TYPE_LEVEL_HIGH>;
  371. clocks = <&clks IMX6QDL_CLK_GPT_IPG>,
  372. <&clks IMX6QDL_CLK_GPT_IPG_PER>,
  373. <&clks IMX6QDL_CLK_GPT_3M>;
  374. clock-names = "ipg", "per", "osc_per";
  375. };
  376. gpio1: gpio@0209c000 {
  377. compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
  378. reg = <0x0209c000 0x4000>;
  379. interrupts = <0 66 IRQ_TYPE_LEVEL_HIGH>,
  380. <0 67 IRQ_TYPE_LEVEL_HIGH>;
  381. gpio-controller;
  382. #gpio-cells = <2>;
  383. interrupt-controller;
  384. #interrupt-cells = <2>;
  385. };
  386. gpio2: gpio@020a0000 {
  387. compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
  388. reg = <0x020a0000 0x4000>;
  389. interrupts = <0 68 IRQ_TYPE_LEVEL_HIGH>,
  390. <0 69 IRQ_TYPE_LEVEL_HIGH>;
  391. gpio-controller;
  392. #gpio-cells = <2>;
  393. interrupt-controller;
  394. #interrupt-cells = <2>;
  395. };
  396. gpio3: gpio@020a4000 {
  397. compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
  398. reg = <0x020a4000 0x4000>;
  399. interrupts = <0 70 IRQ_TYPE_LEVEL_HIGH>,
  400. <0 71 IRQ_TYPE_LEVEL_HIGH>;
  401. gpio-controller;
  402. #gpio-cells = <2>;
  403. interrupt-controller;
  404. #interrupt-cells = <2>;
  405. };
  406. gpio4: gpio@020a8000 {
  407. compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
  408. reg = <0x020a8000 0x4000>;
  409. interrupts = <0 72 IRQ_TYPE_LEVEL_HIGH>,
  410. <0 73 IRQ_TYPE_LEVEL_HIGH>;
  411. gpio-controller;
  412. #gpio-cells = <2>;
  413. interrupt-controller;
  414. #interrupt-cells = <2>;
  415. };
  416. gpio5: gpio@020ac000 {
  417. compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
  418. reg = <0x020ac000 0x4000>;
  419. interrupts = <0 74 IRQ_TYPE_LEVEL_HIGH>,
  420. <0 75 IRQ_TYPE_LEVEL_HIGH>;
  421. gpio-controller;
  422. #gpio-cells = <2>;
  423. interrupt-controller;
  424. #interrupt-cells = <2>;
  425. };
  426. gpio6: gpio@020b0000 {
  427. compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
  428. reg = <0x020b0000 0x4000>;
  429. interrupts = <0 76 IRQ_TYPE_LEVEL_HIGH>,
  430. <0 77 IRQ_TYPE_LEVEL_HIGH>;
  431. gpio-controller;
  432. #gpio-cells = <2>;
  433. interrupt-controller;
  434. #interrupt-cells = <2>;
  435. };
  436. gpio7: gpio@020b4000 {
  437. compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
  438. reg = <0x020b4000 0x4000>;
  439. interrupts = <0 78 IRQ_TYPE_LEVEL_HIGH>,
  440. <0 79 IRQ_TYPE_LEVEL_HIGH>;
  441. gpio-controller;
  442. #gpio-cells = <2>;
  443. interrupt-controller;
  444. #interrupt-cells = <2>;
  445. };
  446. kpp: kpp@020b8000 {
  447. compatible = "fsl,imx6q-kpp", "fsl,imx21-kpp";
  448. reg = <0x020b8000 0x4000>;
  449. interrupts = <0 82 IRQ_TYPE_LEVEL_HIGH>;
  450. clocks = <&clks IMX6QDL_CLK_IPG>;
  451. status = "disabled";
  452. };
  453. wdog1: wdog@020bc000 {
  454. compatible = "fsl,imx6q-wdt", "fsl,imx21-wdt";
  455. reg = <0x020bc000 0x4000>;
  456. interrupts = <0 80 IRQ_TYPE_LEVEL_HIGH>;
  457. clocks = <&clks IMX6QDL_CLK_DUMMY>;
  458. };
  459. wdog2: wdog@020c0000 {
  460. compatible = "fsl,imx6q-wdt", "fsl,imx21-wdt";
  461. reg = <0x020c0000 0x4000>;
  462. interrupts = <0 81 IRQ_TYPE_LEVEL_HIGH>;
  463. clocks = <&clks IMX6QDL_CLK_DUMMY>;
  464. status = "disabled";
  465. };
  466. clks: ccm@020c4000 {
  467. compatible = "fsl,imx6q-ccm";
  468. reg = <0x020c4000 0x4000>;
  469. interrupts = <0 87 IRQ_TYPE_LEVEL_HIGH>,
  470. <0 88 IRQ_TYPE_LEVEL_HIGH>;
  471. #clock-cells = <1>;
  472. };
  473. anatop: anatop@020c8000 {
  474. compatible = "fsl,imx6q-anatop", "syscon", "simple-bus";
  475. reg = <0x020c8000 0x1000>;
  476. interrupts = <0 49 IRQ_TYPE_LEVEL_HIGH>,
  477. <0 54 IRQ_TYPE_LEVEL_HIGH>,
  478. <0 127 IRQ_TYPE_LEVEL_HIGH>;
  479. regulator-1p1@110 {
  480. compatible = "fsl,anatop-regulator";
  481. regulator-name = "vdd1p1";
  482. regulator-min-microvolt = <800000>;
  483. regulator-max-microvolt = <1375000>;
  484. regulator-always-on;
  485. anatop-reg-offset = <0x110>;
  486. anatop-vol-bit-shift = <8>;
  487. anatop-vol-bit-width = <5>;
  488. anatop-min-bit-val = <4>;
  489. anatop-min-voltage = <800000>;
  490. anatop-max-voltage = <1375000>;
  491. };
  492. regulator-3p0@120 {
  493. compatible = "fsl,anatop-regulator";
  494. regulator-name = "vdd3p0";
  495. regulator-min-microvolt = <2800000>;
  496. regulator-max-microvolt = <3150000>;
  497. regulator-always-on;
  498. anatop-reg-offset = <0x120>;
  499. anatop-vol-bit-shift = <8>;
  500. anatop-vol-bit-width = <5>;
  501. anatop-min-bit-val = <0>;
  502. anatop-min-voltage = <2625000>;
  503. anatop-max-voltage = <3400000>;
  504. };
  505. regulator-2p5@130 {
  506. compatible = "fsl,anatop-regulator";
  507. regulator-name = "vdd2p5";
  508. regulator-min-microvolt = <2000000>;
  509. regulator-max-microvolt = <2750000>;
  510. regulator-always-on;
  511. anatop-reg-offset = <0x130>;
  512. anatop-vol-bit-shift = <8>;
  513. anatop-vol-bit-width = <5>;
  514. anatop-min-bit-val = <0>;
  515. anatop-min-voltage = <2000000>;
  516. anatop-max-voltage = <2750000>;
  517. };
  518. reg_arm: regulator-vddcore@140 {
  519. compatible = "fsl,anatop-regulator";
  520. regulator-name = "vddarm";
  521. regulator-min-microvolt = <725000>;
  522. regulator-max-microvolt = <1450000>;
  523. regulator-always-on;
  524. anatop-reg-offset = <0x140>;
  525. anatop-vol-bit-shift = <0>;
  526. anatop-vol-bit-width = <5>;
  527. anatop-delay-reg-offset = <0x170>;
  528. anatop-delay-bit-shift = <24>;
  529. anatop-delay-bit-width = <2>;
  530. anatop-min-bit-val = <1>;
  531. anatop-min-voltage = <725000>;
  532. anatop-max-voltage = <1450000>;
  533. };
  534. reg_pu: regulator-vddpu@140 {
  535. compatible = "fsl,anatop-regulator";
  536. regulator-name = "vddpu";
  537. regulator-min-microvolt = <725000>;
  538. regulator-max-microvolt = <1450000>;
  539. regulator-always-on;
  540. anatop-reg-offset = <0x140>;
  541. anatop-vol-bit-shift = <9>;
  542. anatop-vol-bit-width = <5>;
  543. anatop-delay-reg-offset = <0x170>;
  544. anatop-delay-bit-shift = <26>;
  545. anatop-delay-bit-width = <2>;
  546. anatop-min-bit-val = <1>;
  547. anatop-min-voltage = <725000>;
  548. anatop-max-voltage = <1450000>;
  549. };
  550. reg_soc: regulator-vddsoc@140 {
  551. compatible = "fsl,anatop-regulator";
  552. regulator-name = "vddsoc";
  553. regulator-min-microvolt = <725000>;
  554. regulator-max-microvolt = <1450000>;
  555. regulator-always-on;
  556. anatop-reg-offset = <0x140>;
  557. anatop-vol-bit-shift = <18>;
  558. anatop-vol-bit-width = <5>;
  559. anatop-delay-reg-offset = <0x170>;
  560. anatop-delay-bit-shift = <28>;
  561. anatop-delay-bit-width = <2>;
  562. anatop-min-bit-val = <1>;
  563. anatop-min-voltage = <725000>;
  564. anatop-max-voltage = <1450000>;
  565. };
  566. };
  567. tempmon: tempmon {
  568. compatible = "fsl,imx6q-tempmon";
  569. interrupts = <0 49 IRQ_TYPE_LEVEL_HIGH>;
  570. fsl,tempmon = <&anatop>;
  571. fsl,tempmon-data = <&ocotp>;
  572. clocks = <&clks IMX6QDL_CLK_PLL3_USB_OTG>;
  573. };
  574. usbphy1: usbphy@020c9000 {
  575. compatible = "fsl,imx6q-usbphy", "fsl,imx23-usbphy";
  576. reg = <0x020c9000 0x1000>;
  577. interrupts = <0 44 IRQ_TYPE_LEVEL_HIGH>;
  578. clocks = <&clks IMX6QDL_CLK_USBPHY1>;
  579. fsl,anatop = <&anatop>;
  580. };
  581. usbphy2: usbphy@020ca000 {
  582. compatible = "fsl,imx6q-usbphy", "fsl,imx23-usbphy";
  583. reg = <0x020ca000 0x1000>;
  584. interrupts = <0 45 IRQ_TYPE_LEVEL_HIGH>;
  585. clocks = <&clks IMX6QDL_CLK_USBPHY2>;
  586. fsl,anatop = <&anatop>;
  587. };
  588. snvs@020cc000 {
  589. compatible = "fsl,sec-v4.0-mon", "simple-bus";
  590. #address-cells = <1>;
  591. #size-cells = <1>;
  592. ranges = <0 0x020cc000 0x4000>;
  593. snvs-rtc-lp@34 {
  594. compatible = "fsl,sec-v4.0-mon-rtc-lp";
  595. reg = <0x34 0x58>;
  596. interrupts = <0 19 IRQ_TYPE_LEVEL_HIGH>,
  597. <0 20 IRQ_TYPE_LEVEL_HIGH>;
  598. };
  599. };
  600. epit1: epit@020d0000 { /* EPIT1 */
  601. reg = <0x020d0000 0x4000>;
  602. interrupts = <0 56 IRQ_TYPE_LEVEL_HIGH>;
  603. };
  604. epit2: epit@020d4000 { /* EPIT2 */
  605. reg = <0x020d4000 0x4000>;
  606. interrupts = <0 57 IRQ_TYPE_LEVEL_HIGH>;
  607. };
  608. src: src@020d8000 {
  609. compatible = "fsl,imx6q-src", "fsl,imx51-src";
  610. reg = <0x020d8000 0x4000>;
  611. interrupts = <0 91 IRQ_TYPE_LEVEL_HIGH>,
  612. <0 96 IRQ_TYPE_LEVEL_HIGH>;
  613. #reset-cells = <1>;
  614. };
  615. gpc: gpc@020dc000 {
  616. compatible = "fsl,imx6q-gpc";
  617. reg = <0x020dc000 0x4000>;
  618. interrupts = <0 89 IRQ_TYPE_LEVEL_HIGH>,
  619. <0 90 IRQ_TYPE_LEVEL_HIGH>;
  620. };
  621. gpr: iomuxc-gpr@020e0000 {
  622. compatible = "fsl,imx6q-iomuxc-gpr", "syscon";
  623. reg = <0x020e0000 0x38>;
  624. };
  625. iomuxc: iomuxc@020e0000 {
  626. compatible = "fsl,imx6dl-iomuxc", "fsl,imx6q-iomuxc";
  627. reg = <0x020e0000 0x4000>;
  628. };
  629. ldb: ldb@020e0008 {
  630. #address-cells = <1>;
  631. #size-cells = <0>;
  632. compatible = "fsl,imx6q-ldb", "fsl,imx53-ldb";
  633. gpr = <&gpr>;
  634. status = "disabled";
  635. lvds-channel@0 {
  636. #address-cells = <1>;
  637. #size-cells = <0>;
  638. reg = <0>;
  639. status = "disabled";
  640. port@0 {
  641. reg = <0>;
  642. lvds0_mux_0: endpoint {
  643. remote-endpoint = <&ipu1_di0_lvds0>;
  644. };
  645. };
  646. port@1 {
  647. reg = <1>;
  648. lvds0_mux_1: endpoint {
  649. remote-endpoint = <&ipu1_di1_lvds0>;
  650. };
  651. };
  652. };
  653. lvds-channel@1 {
  654. #address-cells = <1>;
  655. #size-cells = <0>;
  656. reg = <1>;
  657. status = "disabled";
  658. port@0 {
  659. reg = <0>;
  660. lvds1_mux_0: endpoint {
  661. remote-endpoint = <&ipu1_di0_lvds1>;
  662. };
  663. };
  664. port@1 {
  665. reg = <1>;
  666. lvds1_mux_1: endpoint {
  667. remote-endpoint = <&ipu1_di1_lvds1>;
  668. };
  669. };
  670. };
  671. };
  672. hdmi: hdmi@0120000 {
  673. #address-cells = <1>;
  674. #size-cells = <0>;
  675. reg = <0x00120000 0x9000>;
  676. interrupts = <0 115 0x04>;
  677. gpr = <&gpr>;
  678. clocks = <&clks IMX6QDL_CLK_HDMI_IAHB>,
  679. <&clks IMX6QDL_CLK_HDMI_ISFR>;
  680. clock-names = "iahb", "isfr";
  681. status = "disabled";
  682. port@0 {
  683. reg = <0>;
  684. hdmi_mux_0: endpoint {
  685. remote-endpoint = <&ipu1_di0_hdmi>;
  686. };
  687. };
  688. port@1 {
  689. reg = <1>;
  690. hdmi_mux_1: endpoint {
  691. remote-endpoint = <&ipu1_di1_hdmi>;
  692. };
  693. };
  694. };
  695. dcic1: dcic@020e4000 {
  696. reg = <0x020e4000 0x4000>;
  697. interrupts = <0 124 IRQ_TYPE_LEVEL_HIGH>;
  698. };
  699. dcic2: dcic@020e8000 {
  700. reg = <0x020e8000 0x4000>;
  701. interrupts = <0 125 IRQ_TYPE_LEVEL_HIGH>;
  702. };
  703. sdma: sdma@020ec000 {
  704. compatible = "fsl,imx6q-sdma", "fsl,imx35-sdma";
  705. reg = <0x020ec000 0x4000>;
  706. interrupts = <0 2 IRQ_TYPE_LEVEL_HIGH>;
  707. clocks = <&clks IMX6QDL_CLK_SDMA>,
  708. <&clks IMX6QDL_CLK_SDMA>;
  709. clock-names = "ipg", "ahb";
  710. #dma-cells = <3>;
  711. fsl,sdma-ram-script-name = "imx/sdma/sdma-imx6q.bin";
  712. };
  713. };
  714. aips-bus@02100000 { /* AIPS2 */
  715. compatible = "fsl,aips-bus", "simple-bus";
  716. #address-cells = <1>;
  717. #size-cells = <1>;
  718. reg = <0x02100000 0x100000>;
  719. ranges;
  720. caam@02100000 {
  721. reg = <0x02100000 0x40000>;
  722. interrupts = <0 105 IRQ_TYPE_LEVEL_HIGH>,
  723. <0 106 IRQ_TYPE_LEVEL_HIGH>;
  724. };
  725. aipstz@0217c000 { /* AIPSTZ2 */
  726. reg = <0x0217c000 0x4000>;
  727. };
  728. usbotg: usb@02184000 {
  729. compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
  730. reg = <0x02184000 0x200>;
  731. interrupts = <0 43 IRQ_TYPE_LEVEL_HIGH>;
  732. clocks = <&clks IMX6QDL_CLK_USBOH3>;
  733. fsl,usbphy = <&usbphy1>;
  734. fsl,usbmisc = <&usbmisc 0>;
  735. status = "disabled";
  736. };
  737. usbh1: usb@02184200 {
  738. compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
  739. reg = <0x02184200 0x200>;
  740. interrupts = <0 40 IRQ_TYPE_LEVEL_HIGH>;
  741. clocks = <&clks IMX6QDL_CLK_USBOH3>;
  742. fsl,usbphy = <&usbphy2>;
  743. fsl,usbmisc = <&usbmisc 1>;
  744. status = "disabled";
  745. };
  746. usbh2: usb@02184400 {
  747. compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
  748. reg = <0x02184400 0x200>;
  749. interrupts = <0 41 IRQ_TYPE_LEVEL_HIGH>;
  750. clocks = <&clks IMX6QDL_CLK_USBOH3>;
  751. fsl,usbmisc = <&usbmisc 2>;
  752. status = "disabled";
  753. };
  754. usbh3: usb@02184600 {
  755. compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
  756. reg = <0x02184600 0x200>;
  757. interrupts = <0 42 IRQ_TYPE_LEVEL_HIGH>;
  758. clocks = <&clks IMX6QDL_CLK_USBOH3>;
  759. fsl,usbmisc = <&usbmisc 3>;
  760. status = "disabled";
  761. };
  762. usbmisc: usbmisc@02184800 {
  763. #index-cells = <1>;
  764. compatible = "fsl,imx6q-usbmisc";
  765. reg = <0x02184800 0x200>;
  766. clocks = <&clks IMX6QDL_CLK_USBOH3>;
  767. };
  768. fec: ethernet@02188000 {
  769. compatible = "fsl,imx6q-fec";
  770. reg = <0x02188000 0x4000>;
  771. interrupts-extended =
  772. <&intc 0 118 IRQ_TYPE_LEVEL_HIGH>,
  773. <&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
  774. clocks = <&clks IMX6QDL_CLK_ENET>,
  775. <&clks IMX6QDL_CLK_ENET>,
  776. <&clks IMX6QDL_CLK_ENET_REF>;
  777. clock-names = "ipg", "ahb", "ptp";
  778. status = "disabled";
  779. };
  780. mlb@0218c000 {
  781. reg = <0x0218c000 0x4000>;
  782. interrupts = <0 53 IRQ_TYPE_LEVEL_HIGH>,
  783. <0 117 IRQ_TYPE_LEVEL_HIGH>,
  784. <0 126 IRQ_TYPE_LEVEL_HIGH>;
  785. };
  786. usdhc1: usdhc@02190000 {
  787. compatible = "fsl,imx6q-usdhc";
  788. reg = <0x02190000 0x4000>;
  789. interrupts = <0 22 IRQ_TYPE_LEVEL_HIGH>;
  790. clocks = <&clks IMX6QDL_CLK_USDHC1>,
  791. <&clks IMX6QDL_CLK_USDHC1>,
  792. <&clks IMX6QDL_CLK_USDHC1>;
  793. clock-names = "ipg", "ahb", "per";
  794. bus-width = <4>;
  795. status = "disabled";
  796. };
  797. usdhc2: usdhc@02194000 {
  798. compatible = "fsl,imx6q-usdhc";
  799. reg = <0x02194000 0x4000>;
  800. interrupts = <0 23 IRQ_TYPE_LEVEL_HIGH>;
  801. clocks = <&clks IMX6QDL_CLK_USDHC2>,
  802. <&clks IMX6QDL_CLK_USDHC2>,
  803. <&clks IMX6QDL_CLK_USDHC2>;
  804. clock-names = "ipg", "ahb", "per";
  805. bus-width = <4>;
  806. status = "disabled";
  807. };
  808. usdhc3: usdhc@02198000 {
  809. compatible = "fsl,imx6q-usdhc";
  810. reg = <0x02198000 0x4000>;
  811. interrupts = <0 24 IRQ_TYPE_LEVEL_HIGH>;
  812. clocks = <&clks IMX6QDL_CLK_USDHC3>,
  813. <&clks IMX6QDL_CLK_USDHC3>,
  814. <&clks IMX6QDL_CLK_USDHC3>;
  815. clock-names = "ipg", "ahb", "per";
  816. bus-width = <4>;
  817. status = "disabled";
  818. };
  819. usdhc4: usdhc@0219c000 {
  820. compatible = "fsl,imx6q-usdhc";
  821. reg = <0x0219c000 0x4000>;
  822. interrupts = <0 25 IRQ_TYPE_LEVEL_HIGH>;
  823. clocks = <&clks IMX6QDL_CLK_USDHC4>,
  824. <&clks IMX6QDL_CLK_USDHC4>,
  825. <&clks IMX6QDL_CLK_USDHC4>;
  826. clock-names = "ipg", "ahb", "per";
  827. bus-width = <4>;
  828. status = "disabled";
  829. };
  830. i2c1: i2c@021a0000 {
  831. #address-cells = <1>;
  832. #size-cells = <0>;
  833. compatible = "fsl,imx6q-i2c", "fsl,imx21-i2c";
  834. reg = <0x021a0000 0x4000>;
  835. interrupts = <0 36 IRQ_TYPE_LEVEL_HIGH>;
  836. clocks = <&clks IMX6QDL_CLK_I2C1>;
  837. status = "disabled";
  838. };
  839. i2c2: i2c@021a4000 {
  840. #address-cells = <1>;
  841. #size-cells = <0>;
  842. compatible = "fsl,imx6q-i2c", "fsl,imx21-i2c";
  843. reg = <0x021a4000 0x4000>;
  844. interrupts = <0 37 IRQ_TYPE_LEVEL_HIGH>;
  845. clocks = <&clks IMX6QDL_CLK_I2C2>;
  846. status = "disabled";
  847. };
  848. i2c3: i2c@021a8000 {
  849. #address-cells = <1>;
  850. #size-cells = <0>;
  851. compatible = "fsl,imx6q-i2c", "fsl,imx21-i2c";
  852. reg = <0x021a8000 0x4000>;
  853. interrupts = <0 38 IRQ_TYPE_LEVEL_HIGH>;
  854. clocks = <&clks IMX6QDL_CLK_I2C3>;
  855. status = "disabled";
  856. };
  857. romcp@021ac000 {
  858. reg = <0x021ac000 0x4000>;
  859. };
  860. mmdc0: mmdc@021b0000 { /* MMDC0 */
  861. compatible = "fsl,imx6q-mmdc";
  862. reg = <0x021b0000 0x4000>;
  863. };
  864. mmdc1: mmdc@021b4000 { /* MMDC1 */
  865. reg = <0x021b4000 0x4000>;
  866. };
  867. weim: weim@021b8000 {
  868. compatible = "fsl,imx6q-weim";
  869. reg = <0x021b8000 0x4000>;
  870. interrupts = <0 14 IRQ_TYPE_LEVEL_HIGH>;
  871. clocks = <&clks IMX6QDL_CLK_EIM_SLOW>;
  872. };
  873. ocotp: ocotp@021bc000 {
  874. compatible = "fsl,imx6q-ocotp", "syscon";
  875. reg = <0x021bc000 0x4000>;
  876. };
  877. tzasc@021d0000 { /* TZASC1 */
  878. reg = <0x021d0000 0x4000>;
  879. interrupts = <0 108 IRQ_TYPE_LEVEL_HIGH>;
  880. };
  881. tzasc@021d4000 { /* TZASC2 */
  882. reg = <0x021d4000 0x4000>;
  883. interrupts = <0 109 IRQ_TYPE_LEVEL_HIGH>;
  884. };
  885. audmux: audmux@021d8000 {
  886. compatible = "fsl,imx6q-audmux", "fsl,imx31-audmux";
  887. reg = <0x021d8000 0x4000>;
  888. status = "disabled";
  889. };
  890. mipi_csi: mipi@021dc000 {
  891. reg = <0x021dc000 0x4000>;
  892. };
  893. mipi_dsi: mipi@021e0000 {
  894. #address-cells = <1>;
  895. #size-cells = <0>;
  896. reg = <0x021e0000 0x4000>;
  897. status = "disabled";
  898. port@0 {
  899. reg = <0>;
  900. mipi_mux_0: endpoint {
  901. remote-endpoint = <&ipu1_di0_mipi>;
  902. };
  903. };
  904. port@1 {
  905. reg = <1>;
  906. mipi_mux_1: endpoint {
  907. remote-endpoint = <&ipu1_di1_mipi>;
  908. };
  909. };
  910. };
  911. vdoa@021e4000 {
  912. reg = <0x021e4000 0x4000>;
  913. interrupts = <0 18 IRQ_TYPE_LEVEL_HIGH>;
  914. };
  915. uart2: serial@021e8000 {
  916. compatible = "fsl,imx6q-uart", "fsl,imx21-uart";
  917. reg = <0x021e8000 0x4000>;
  918. interrupts = <0 27 IRQ_TYPE_LEVEL_HIGH>;
  919. clocks = <&clks IMX6QDL_CLK_UART_IPG>,
  920. <&clks IMX6QDL_CLK_UART_SERIAL>;
  921. clock-names = "ipg", "per";
  922. dmas = <&sdma 27 4 0>, <&sdma 28 4 0>;
  923. dma-names = "rx", "tx";
  924. status = "disabled";
  925. };
  926. uart3: serial@021ec000 {
  927. compatible = "fsl,imx6q-uart", "fsl,imx21-uart";
  928. reg = <0x021ec000 0x4000>;
  929. interrupts = <0 28 IRQ_TYPE_LEVEL_HIGH>;
  930. clocks = <&clks IMX6QDL_CLK_UART_IPG>,
  931. <&clks IMX6QDL_CLK_UART_SERIAL>;
  932. clock-names = "ipg", "per";
  933. dmas = <&sdma 29 4 0>, <&sdma 30 4 0>;
  934. dma-names = "rx", "tx";
  935. status = "disabled";
  936. };
  937. uart4: serial@021f0000 {
  938. compatible = "fsl,imx6q-uart", "fsl,imx21-uart";
  939. reg = <0x021f0000 0x4000>;
  940. interrupts = <0 29 IRQ_TYPE_LEVEL_HIGH>;
  941. clocks = <&clks IMX6QDL_CLK_UART_IPG>,
  942. <&clks IMX6QDL_CLK_UART_SERIAL>;
  943. clock-names = "ipg", "per";
  944. dmas = <&sdma 31 4 0>, <&sdma 32 4 0>;
  945. dma-names = "rx", "tx";
  946. status = "disabled";
  947. };
  948. uart5: serial@021f4000 {
  949. compatible = "fsl,imx6q-uart", "fsl,imx21-uart";
  950. reg = <0x021f4000 0x4000>;
  951. interrupts = <0 30 IRQ_TYPE_LEVEL_HIGH>;
  952. clocks = <&clks IMX6QDL_CLK_UART_IPG>,
  953. <&clks IMX6QDL_CLK_UART_SERIAL>;
  954. clock-names = "ipg", "per";
  955. dmas = <&sdma 33 4 0>, <&sdma 34 4 0>;
  956. dma-names = "rx", "tx";
  957. status = "disabled";
  958. };
  959. };
  960. ipu1: ipu@02400000 {
  961. #address-cells = <1>;
  962. #size-cells = <0>;
  963. compatible = "fsl,imx6q-ipu";
  964. reg = <0x02400000 0x400000>;
  965. interrupts = <0 6 IRQ_TYPE_LEVEL_HIGH>,
  966. <0 5 IRQ_TYPE_LEVEL_HIGH>;
  967. clocks = <&clks IMX6QDL_CLK_IPU1>,
  968. <&clks IMX6QDL_CLK_IPU1_DI0>,
  969. <&clks IMX6QDL_CLK_IPU1_DI1>;
  970. clock-names = "bus", "di0", "di1";
  971. resets = <&src 2>;
  972. ipu1_csi0: port@0 {
  973. reg = <0>;
  974. };
  975. ipu1_csi1: port@1 {
  976. reg = <1>;
  977. };
  978. ipu1_di0: port@2 {
  979. #address-cells = <1>;
  980. #size-cells = <0>;
  981. reg = <2>;
  982. ipu1_di0_disp0: endpoint@0 {
  983. };
  984. ipu1_di0_hdmi: endpoint@1 {
  985. remote-endpoint = <&hdmi_mux_0>;
  986. };
  987. ipu1_di0_mipi: endpoint@2 {
  988. remote-endpoint = <&mipi_mux_0>;
  989. };
  990. ipu1_di0_lvds0: endpoint@3 {
  991. remote-endpoint = <&lvds0_mux_0>;
  992. };
  993. ipu1_di0_lvds1: endpoint@4 {
  994. remote-endpoint = <&lvds1_mux_0>;
  995. };
  996. };
  997. ipu1_di1: port@3 {
  998. #address-cells = <1>;
  999. #size-cells = <0>;
  1000. reg = <3>;
  1001. ipu1_di0_disp1: endpoint@0 {
  1002. };
  1003. ipu1_di1_hdmi: endpoint@1 {
  1004. remote-endpoint = <&hdmi_mux_1>;
  1005. };
  1006. ipu1_di1_mipi: endpoint@2 {
  1007. remote-endpoint = <&mipi_mux_1>;
  1008. };
  1009. ipu1_di1_lvds0: endpoint@3 {
  1010. remote-endpoint = <&lvds0_mux_1>;
  1011. };
  1012. ipu1_di1_lvds1: endpoint@4 {
  1013. remote-endpoint = <&lvds1_mux_1>;
  1014. };
  1015. };
  1016. };
  1017. };
  1018. };