imx6q.dtsi 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077
  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/ "skeleton.dtsi"
  13. / {
  14. aliases {
  15. serial0 = &uart1;
  16. serial1 = &uart2;
  17. serial2 = &uart3;
  18. serial3 = &uart4;
  19. serial4 = &uart5;
  20. gpio0 = &gpio1;
  21. gpio1 = &gpio2;
  22. gpio2 = &gpio3;
  23. gpio3 = &gpio4;
  24. gpio4 = &gpio5;
  25. gpio5 = &gpio6;
  26. gpio6 = &gpio7;
  27. };
  28. cpus {
  29. #address-cells = <1>;
  30. #size-cells = <0>;
  31. cpu@0 {
  32. compatible = "arm,cortex-a9";
  33. reg = <0>;
  34. next-level-cache = <&L2>;
  35. operating-points = <
  36. /* kHz uV */
  37. 1200000 1275000
  38. 996000 1250000
  39. 792000 1150000
  40. 396000 950000
  41. >;
  42. clock-latency = <61036>; /* two CLK32 periods */
  43. clocks = <&clks 104>, <&clks 6>, <&clks 16>,
  44. <&clks 17>, <&clks 170>;
  45. clock-names = "arm", "pll2_pfd2_396m", "step",
  46. "pll1_sw", "pll1_sys";
  47. arm-supply = <&reg_arm>;
  48. pu-supply = <&reg_pu>;
  49. soc-supply = <&reg_soc>;
  50. };
  51. cpu@1 {
  52. compatible = "arm,cortex-a9";
  53. reg = <1>;
  54. next-level-cache = <&L2>;
  55. };
  56. cpu@2 {
  57. compatible = "arm,cortex-a9";
  58. reg = <2>;
  59. next-level-cache = <&L2>;
  60. };
  61. cpu@3 {
  62. compatible = "arm,cortex-a9";
  63. reg = <3>;
  64. next-level-cache = <&L2>;
  65. };
  66. };
  67. intc: interrupt-controller@00a01000 {
  68. compatible = "arm,cortex-a9-gic";
  69. #interrupt-cells = <3>;
  70. #address-cells = <1>;
  71. #size-cells = <1>;
  72. interrupt-controller;
  73. reg = <0x00a01000 0x1000>,
  74. <0x00a00100 0x100>;
  75. };
  76. clocks {
  77. #address-cells = <1>;
  78. #size-cells = <0>;
  79. ckil {
  80. compatible = "fsl,imx-ckil", "fixed-clock";
  81. clock-frequency = <32768>;
  82. };
  83. ckih1 {
  84. compatible = "fsl,imx-ckih1", "fixed-clock";
  85. clock-frequency = <0>;
  86. };
  87. osc {
  88. compatible = "fsl,imx-osc", "fixed-clock";
  89. clock-frequency = <24000000>;
  90. };
  91. };
  92. soc {
  93. #address-cells = <1>;
  94. #size-cells = <1>;
  95. compatible = "simple-bus";
  96. interrupt-parent = <&intc>;
  97. ranges;
  98. dma-apbh@00110000 {
  99. compatible = "fsl,imx6q-dma-apbh", "fsl,imx28-dma-apbh";
  100. reg = <0x00110000 0x2000>;
  101. clocks = <&clks 106>;
  102. };
  103. gpmi: gpmi-nand@00112000 {
  104. compatible = "fsl,imx6q-gpmi-nand";
  105. #address-cells = <1>;
  106. #size-cells = <1>;
  107. reg = <0x00112000 0x2000>, <0x00114000 0x2000>;
  108. reg-names = "gpmi-nand", "bch";
  109. interrupts = <0 13 0x04>, <0 15 0x04>;
  110. interrupt-names = "gpmi-dma", "bch";
  111. clocks = <&clks 152>, <&clks 153>, <&clks 151>,
  112. <&clks 150>, <&clks 149>;
  113. clock-names = "gpmi_io", "gpmi_apb", "gpmi_bch",
  114. "gpmi_bch_apb", "per1_bch";
  115. fsl,gpmi-dma-channel = <0>;
  116. status = "disabled";
  117. };
  118. timer@00a00600 {
  119. compatible = "arm,cortex-a9-twd-timer";
  120. reg = <0x00a00600 0x20>;
  121. interrupts = <1 13 0xf01>;
  122. };
  123. L2: l2-cache@00a02000 {
  124. compatible = "arm,pl310-cache";
  125. reg = <0x00a02000 0x1000>;
  126. interrupts = <0 92 0x04>;
  127. cache-unified;
  128. cache-level = <2>;
  129. };
  130. aips-bus@02000000 { /* AIPS1 */
  131. compatible = "fsl,aips-bus", "simple-bus";
  132. #address-cells = <1>;
  133. #size-cells = <1>;
  134. reg = <0x02000000 0x100000>;
  135. ranges;
  136. spba-bus@02000000 {
  137. compatible = "fsl,spba-bus", "simple-bus";
  138. #address-cells = <1>;
  139. #size-cells = <1>;
  140. reg = <0x02000000 0x40000>;
  141. ranges;
  142. spdif: spdif@02004000 {
  143. reg = <0x02004000 0x4000>;
  144. interrupts = <0 52 0x04>;
  145. };
  146. ecspi1: ecspi@02008000 {
  147. #address-cells = <1>;
  148. #size-cells = <0>;
  149. compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi";
  150. reg = <0x02008000 0x4000>;
  151. interrupts = <0 31 0x04>;
  152. clocks = <&clks 112>, <&clks 112>;
  153. clock-names = "ipg", "per";
  154. status = "disabled";
  155. };
  156. ecspi2: ecspi@0200c000 {
  157. #address-cells = <1>;
  158. #size-cells = <0>;
  159. compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi";
  160. reg = <0x0200c000 0x4000>;
  161. interrupts = <0 32 0x04>;
  162. clocks = <&clks 113>, <&clks 113>;
  163. clock-names = "ipg", "per";
  164. status = "disabled";
  165. };
  166. ecspi3: ecspi@02010000 {
  167. #address-cells = <1>;
  168. #size-cells = <0>;
  169. compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi";
  170. reg = <0x02010000 0x4000>;
  171. interrupts = <0 33 0x04>;
  172. clocks = <&clks 114>, <&clks 114>;
  173. clock-names = "ipg", "per";
  174. status = "disabled";
  175. };
  176. ecspi4: ecspi@02014000 {
  177. #address-cells = <1>;
  178. #size-cells = <0>;
  179. compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi";
  180. reg = <0x02014000 0x4000>;
  181. interrupts = <0 34 0x04>;
  182. clocks = <&clks 115>, <&clks 115>;
  183. clock-names = "ipg", "per";
  184. status = "disabled";
  185. };
  186. ecspi5: ecspi@02018000 {
  187. #address-cells = <1>;
  188. #size-cells = <0>;
  189. compatible = "fsl,imx6q-ecspi", "fsl,imx51-ecspi";
  190. reg = <0x02018000 0x4000>;
  191. interrupts = <0 35 0x04>;
  192. clocks = <&clks 116>, <&clks 116>;
  193. clock-names = "ipg", "per";
  194. status = "disabled";
  195. };
  196. uart1: serial@02020000 {
  197. compatible = "fsl,imx6q-uart", "fsl,imx21-uart";
  198. reg = <0x02020000 0x4000>;
  199. interrupts = <0 26 0x04>;
  200. clocks = <&clks 160>, <&clks 161>;
  201. clock-names = "ipg", "per";
  202. status = "disabled";
  203. };
  204. esai: esai@02024000 {
  205. reg = <0x02024000 0x4000>;
  206. interrupts = <0 51 0x04>;
  207. };
  208. ssi1: ssi@02028000 {
  209. compatible = "fsl,imx6q-ssi","fsl,imx21-ssi";
  210. reg = <0x02028000 0x4000>;
  211. interrupts = <0 46 0x04>;
  212. clocks = <&clks 178>;
  213. fsl,fifo-depth = <15>;
  214. fsl,ssi-dma-events = <38 37>;
  215. status = "disabled";
  216. };
  217. ssi2: ssi@0202c000 {
  218. compatible = "fsl,imx6q-ssi","fsl,imx21-ssi";
  219. reg = <0x0202c000 0x4000>;
  220. interrupts = <0 47 0x04>;
  221. clocks = <&clks 179>;
  222. fsl,fifo-depth = <15>;
  223. fsl,ssi-dma-events = <42 41>;
  224. status = "disabled";
  225. };
  226. ssi3: ssi@02030000 {
  227. compatible = "fsl,imx6q-ssi","fsl,imx21-ssi";
  228. reg = <0x02030000 0x4000>;
  229. interrupts = <0 48 0x04>;
  230. clocks = <&clks 180>;
  231. fsl,fifo-depth = <15>;
  232. fsl,ssi-dma-events = <46 45>;
  233. status = "disabled";
  234. };
  235. asrc: asrc@02034000 {
  236. reg = <0x02034000 0x4000>;
  237. interrupts = <0 50 0x04>;
  238. };
  239. spba@0203c000 {
  240. reg = <0x0203c000 0x4000>;
  241. };
  242. };
  243. vpu: vpu@02040000 {
  244. reg = <0x02040000 0x3c000>;
  245. interrupts = <0 3 0x04 0 12 0x04>;
  246. };
  247. aipstz@0207c000 { /* AIPSTZ1 */
  248. reg = <0x0207c000 0x4000>;
  249. };
  250. pwm1: pwm@02080000 {
  251. #pwm-cells = <2>;
  252. compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm";
  253. reg = <0x02080000 0x4000>;
  254. interrupts = <0 83 0x04>;
  255. clocks = <&clks 62>, <&clks 145>;
  256. clock-names = "ipg", "per";
  257. };
  258. pwm2: pwm@02084000 {
  259. #pwm-cells = <2>;
  260. compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm";
  261. reg = <0x02084000 0x4000>;
  262. interrupts = <0 84 0x04>;
  263. clocks = <&clks 62>, <&clks 146>;
  264. clock-names = "ipg", "per";
  265. };
  266. pwm3: pwm@02088000 {
  267. #pwm-cells = <2>;
  268. compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm";
  269. reg = <0x02088000 0x4000>;
  270. interrupts = <0 85 0x04>;
  271. clocks = <&clks 62>, <&clks 147>;
  272. clock-names = "ipg", "per";
  273. };
  274. pwm4: pwm@0208c000 {
  275. #pwm-cells = <2>;
  276. compatible = "fsl,imx6q-pwm", "fsl,imx27-pwm";
  277. reg = <0x0208c000 0x4000>;
  278. interrupts = <0 86 0x04>;
  279. clocks = <&clks 62>, <&clks 148>;
  280. clock-names = "ipg", "per";
  281. };
  282. can1: flexcan@02090000 {
  283. reg = <0x02090000 0x4000>;
  284. interrupts = <0 110 0x04>;
  285. };
  286. can2: flexcan@02094000 {
  287. reg = <0x02094000 0x4000>;
  288. interrupts = <0 111 0x04>;
  289. };
  290. gpt: gpt@02098000 {
  291. compatible = "fsl,imx6q-gpt";
  292. reg = <0x02098000 0x4000>;
  293. interrupts = <0 55 0x04>;
  294. };
  295. gpio1: gpio@0209c000 {
  296. compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
  297. reg = <0x0209c000 0x4000>;
  298. interrupts = <0 66 0x04 0 67 0x04>;
  299. gpio-controller;
  300. #gpio-cells = <2>;
  301. interrupt-controller;
  302. #interrupt-cells = <2>;
  303. };
  304. gpio2: gpio@020a0000 {
  305. compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
  306. reg = <0x020a0000 0x4000>;
  307. interrupts = <0 68 0x04 0 69 0x04>;
  308. gpio-controller;
  309. #gpio-cells = <2>;
  310. interrupt-controller;
  311. #interrupt-cells = <2>;
  312. };
  313. gpio3: gpio@020a4000 {
  314. compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
  315. reg = <0x020a4000 0x4000>;
  316. interrupts = <0 70 0x04 0 71 0x04>;
  317. gpio-controller;
  318. #gpio-cells = <2>;
  319. interrupt-controller;
  320. #interrupt-cells = <2>;
  321. };
  322. gpio4: gpio@020a8000 {
  323. compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
  324. reg = <0x020a8000 0x4000>;
  325. interrupts = <0 72 0x04 0 73 0x04>;
  326. gpio-controller;
  327. #gpio-cells = <2>;
  328. interrupt-controller;
  329. #interrupt-cells = <2>;
  330. };
  331. gpio5: gpio@020ac000 {
  332. compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
  333. reg = <0x020ac000 0x4000>;
  334. interrupts = <0 74 0x04 0 75 0x04>;
  335. gpio-controller;
  336. #gpio-cells = <2>;
  337. interrupt-controller;
  338. #interrupt-cells = <2>;
  339. };
  340. gpio6: gpio@020b0000 {
  341. compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
  342. reg = <0x020b0000 0x4000>;
  343. interrupts = <0 76 0x04 0 77 0x04>;
  344. gpio-controller;
  345. #gpio-cells = <2>;
  346. interrupt-controller;
  347. #interrupt-cells = <2>;
  348. };
  349. gpio7: gpio@020b4000 {
  350. compatible = "fsl,imx6q-gpio", "fsl,imx35-gpio";
  351. reg = <0x020b4000 0x4000>;
  352. interrupts = <0 78 0x04 0 79 0x04>;
  353. gpio-controller;
  354. #gpio-cells = <2>;
  355. interrupt-controller;
  356. #interrupt-cells = <2>;
  357. };
  358. kpp: kpp@020b8000 {
  359. reg = <0x020b8000 0x4000>;
  360. interrupts = <0 82 0x04>;
  361. };
  362. wdog1: wdog@020bc000 {
  363. compatible = "fsl,imx6q-wdt", "fsl,imx21-wdt";
  364. reg = <0x020bc000 0x4000>;
  365. interrupts = <0 80 0x04>;
  366. clocks = <&clks 0>;
  367. };
  368. wdog2: wdog@020c0000 {
  369. compatible = "fsl,imx6q-wdt", "fsl,imx21-wdt";
  370. reg = <0x020c0000 0x4000>;
  371. interrupts = <0 81 0x04>;
  372. clocks = <&clks 0>;
  373. status = "disabled";
  374. };
  375. clks: ccm@020c4000 {
  376. compatible = "fsl,imx6q-ccm";
  377. reg = <0x020c4000 0x4000>;
  378. interrupts = <0 87 0x04 0 88 0x04>;
  379. #clock-cells = <1>;
  380. };
  381. anatop: anatop@020c8000 {
  382. compatible = "fsl,imx6q-anatop", "syscon", "simple-bus";
  383. reg = <0x020c8000 0x1000>;
  384. interrupts = <0 49 0x04 0 54 0x04 0 127 0x04>;
  385. regulator-1p1@110 {
  386. compatible = "fsl,anatop-regulator";
  387. regulator-name = "vdd1p1";
  388. regulator-min-microvolt = <800000>;
  389. regulator-max-microvolt = <1375000>;
  390. regulator-always-on;
  391. anatop-reg-offset = <0x110>;
  392. anatop-vol-bit-shift = <8>;
  393. anatop-vol-bit-width = <5>;
  394. anatop-min-bit-val = <4>;
  395. anatop-min-voltage = <800000>;
  396. anatop-max-voltage = <1375000>;
  397. };
  398. regulator-3p0@120 {
  399. compatible = "fsl,anatop-regulator";
  400. regulator-name = "vdd3p0";
  401. regulator-min-microvolt = <2800000>;
  402. regulator-max-microvolt = <3150000>;
  403. regulator-always-on;
  404. anatop-reg-offset = <0x120>;
  405. anatop-vol-bit-shift = <8>;
  406. anatop-vol-bit-width = <5>;
  407. anatop-min-bit-val = <0>;
  408. anatop-min-voltage = <2625000>;
  409. anatop-max-voltage = <3400000>;
  410. };
  411. regulator-2p5@130 {
  412. compatible = "fsl,anatop-regulator";
  413. regulator-name = "vdd2p5";
  414. regulator-min-microvolt = <2000000>;
  415. regulator-max-microvolt = <2750000>;
  416. regulator-always-on;
  417. anatop-reg-offset = <0x130>;
  418. anatop-vol-bit-shift = <8>;
  419. anatop-vol-bit-width = <5>;
  420. anatop-min-bit-val = <0>;
  421. anatop-min-voltage = <2000000>;
  422. anatop-max-voltage = <2750000>;
  423. };
  424. reg_arm: regulator-vddcore@140 {
  425. compatible = "fsl,anatop-regulator";
  426. regulator-name = "cpu";
  427. regulator-min-microvolt = <725000>;
  428. regulator-max-microvolt = <1450000>;
  429. regulator-always-on;
  430. anatop-reg-offset = <0x140>;
  431. anatop-vol-bit-shift = <0>;
  432. anatop-vol-bit-width = <5>;
  433. anatop-delay-reg-offset = <0x170>;
  434. anatop-delay-bit-shift = <24>;
  435. anatop-delay-bit-width = <2>;
  436. anatop-min-bit-val = <1>;
  437. anatop-min-voltage = <725000>;
  438. anatop-max-voltage = <1450000>;
  439. };
  440. reg_pu: regulator-vddpu@140 {
  441. compatible = "fsl,anatop-regulator";
  442. regulator-name = "vddpu";
  443. regulator-min-microvolt = <725000>;
  444. regulator-max-microvolt = <1450000>;
  445. regulator-always-on;
  446. anatop-reg-offset = <0x140>;
  447. anatop-vol-bit-shift = <9>;
  448. anatop-vol-bit-width = <5>;
  449. anatop-delay-reg-offset = <0x170>;
  450. anatop-delay-bit-shift = <26>;
  451. anatop-delay-bit-width = <2>;
  452. anatop-min-bit-val = <1>;
  453. anatop-min-voltage = <725000>;
  454. anatop-max-voltage = <1450000>;
  455. };
  456. reg_soc: regulator-vddsoc@140 {
  457. compatible = "fsl,anatop-regulator";
  458. regulator-name = "vddsoc";
  459. regulator-min-microvolt = <725000>;
  460. regulator-max-microvolt = <1450000>;
  461. regulator-always-on;
  462. anatop-reg-offset = <0x140>;
  463. anatop-vol-bit-shift = <18>;
  464. anatop-vol-bit-width = <5>;
  465. anatop-delay-reg-offset = <0x170>;
  466. anatop-delay-bit-shift = <28>;
  467. anatop-delay-bit-width = <2>;
  468. anatop-min-bit-val = <1>;
  469. anatop-min-voltage = <725000>;
  470. anatop-max-voltage = <1450000>;
  471. };
  472. };
  473. usbphy1: usbphy@020c9000 {
  474. compatible = "fsl,imx6q-usbphy", "fsl,imx23-usbphy";
  475. reg = <0x020c9000 0x1000>;
  476. interrupts = <0 44 0x04>;
  477. clocks = <&clks 182>;
  478. };
  479. usbphy2: usbphy@020ca000 {
  480. compatible = "fsl,imx6q-usbphy", "fsl,imx23-usbphy";
  481. reg = <0x020ca000 0x1000>;
  482. interrupts = <0 45 0x04>;
  483. clocks = <&clks 183>;
  484. };
  485. snvs@020cc000 {
  486. compatible = "fsl,sec-v4.0-mon", "simple-bus";
  487. #address-cells = <1>;
  488. #size-cells = <1>;
  489. ranges = <0 0x020cc000 0x4000>;
  490. snvs-rtc-lp@34 {
  491. compatible = "fsl,sec-v4.0-mon-rtc-lp";
  492. reg = <0x34 0x58>;
  493. interrupts = <0 19 0x04 0 20 0x04>;
  494. };
  495. };
  496. epit1: epit@020d0000 { /* EPIT1 */
  497. reg = <0x020d0000 0x4000>;
  498. interrupts = <0 56 0x04>;
  499. };
  500. epit2: epit@020d4000 { /* EPIT2 */
  501. reg = <0x020d4000 0x4000>;
  502. interrupts = <0 57 0x04>;
  503. };
  504. src: src@020d8000 {
  505. compatible = "fsl,imx6q-src";
  506. reg = <0x020d8000 0x4000>;
  507. interrupts = <0 91 0x04 0 96 0x04>;
  508. };
  509. gpc: gpc@020dc000 {
  510. compatible = "fsl,imx6q-gpc";
  511. reg = <0x020dc000 0x4000>;
  512. interrupts = <0 89 0x04 0 90 0x04>;
  513. };
  514. gpr: iomuxc-gpr@020e0000 {
  515. compatible = "fsl,imx6q-iomuxc-gpr", "syscon";
  516. reg = <0x020e0000 0x38>;
  517. };
  518. iomuxc: iomuxc@020e0000 {
  519. compatible = "fsl,imx6q-iomuxc";
  520. reg = <0x020e0000 0x4000>;
  521. /* shared pinctrl settings */
  522. audmux {
  523. pinctrl_audmux_1: audmux-1 {
  524. fsl,pins = <
  525. 18 0x80000000 /* MX6Q_PAD_SD2_DAT0__AUDMUX_AUD4_RXD */
  526. 1586 0x80000000 /* MX6Q_PAD_SD2_DAT3__AUDMUX_AUD4_TXC */
  527. 11 0x80000000 /* MX6Q_PAD_SD2_DAT2__AUDMUX_AUD4_TXD */
  528. 3 0x80000000 /* MX6Q_PAD_SD2_DAT1__AUDMUX_AUD4_TXFS */
  529. >;
  530. };
  531. };
  532. ecspi1 {
  533. pinctrl_ecspi1_1: ecspi1grp-1 {
  534. fsl,pins = <
  535. 101 0x100b1 /* MX6Q_PAD_EIM_D17__ECSPI1_MISO */
  536. 109 0x100b1 /* MX6Q_PAD_EIM_D18__ECSPI1_MOSI */
  537. 94 0x100b1 /* MX6Q_PAD_EIM_D16__ECSPI1_SCLK */
  538. >;
  539. };
  540. };
  541. enet {
  542. pinctrl_enet_1: enetgrp-1 {
  543. fsl,pins = <
  544. 695 0x1b0b0 /* MX6Q_PAD_ENET_MDIO__ENET_MDIO */
  545. 756 0x1b0b0 /* MX6Q_PAD_ENET_MDC__ENET_MDC */
  546. 24 0x1b0b0 /* MX6Q_PAD_RGMII_TXC__ENET_RGMII_TXC */
  547. 30 0x1b0b0 /* MX6Q_PAD_RGMII_TD0__ENET_RGMII_TD0 */
  548. 34 0x1b0b0 /* MX6Q_PAD_RGMII_TD1__ENET_RGMII_TD1 */
  549. 39 0x1b0b0 /* MX6Q_PAD_RGMII_TD2__ENET_RGMII_TD2 */
  550. 44 0x1b0b0 /* MX6Q_PAD_RGMII_TD3__ENET_RGMII_TD3 */
  551. 56 0x1b0b0 /* MX6Q_PAD_RGMII_TX_CTL__RGMII_TX_CTL */
  552. 702 0x1b0b0 /* MX6Q_PAD_ENET_REF_CLK__ENET_TX_CLK */
  553. 74 0x1b0b0 /* MX6Q_PAD_RGMII_RXC__ENET_RGMII_RXC */
  554. 52 0x1b0b0 /* MX6Q_PAD_RGMII_RD0__ENET_RGMII_RD0 */
  555. 61 0x1b0b0 /* MX6Q_PAD_RGMII_RD1__ENET_RGMII_RD1 */
  556. 66 0x1b0b0 /* MX6Q_PAD_RGMII_RD2__ENET_RGMII_RD2 */
  557. 70 0x1b0b0 /* MX6Q_PAD_RGMII_RD3__ENET_RGMII_RD3 */
  558. 48 0x1b0b0 /* MX6Q_PAD_RGMII_RX_CTL__RGMII_RX_CTL */
  559. 1033 0x4001b0a8 /* MX6Q_PAD_GPIO_16__ENET_ANATOP_ETHERNET_REF_OUT*/
  560. >;
  561. };
  562. pinctrl_enet_2: enetgrp-2 {
  563. fsl,pins = <
  564. 890 0x1b0b0 /* MX6Q_PAD_KEY_COL1__ENET_MDIO */
  565. 909 0x1b0b0 /* MX6Q_PAD_KEY_COL2__ENET_MDC */
  566. 24 0x1b0b0 /* MX6Q_PAD_RGMII_TXC__ENET_RGMII_TXC */
  567. 30 0x1b0b0 /* MX6Q_PAD_RGMII_TD0__ENET_RGMII_TD0 */
  568. 34 0x1b0b0 /* MX6Q_PAD_RGMII_TD1__ENET_RGMII_TD1 */
  569. 39 0x1b0b0 /* MX6Q_PAD_RGMII_TD2__ENET_RGMII_TD2 */
  570. 44 0x1b0b0 /* MX6Q_PAD_RGMII_TD3__ENET_RGMII_TD3 */
  571. 56 0x1b0b0 /* MX6Q_PAD_RGMII_TX_CTL__RGMII_TX_CTL */
  572. 702 0x1b0b0 /* MX6Q_PAD_ENET_REF_CLK__ENET_TX_CLK */
  573. 74 0x1b0b0 /* MX6Q_PAD_RGMII_RXC__ENET_RGMII_RXC */
  574. 52 0x1b0b0 /* MX6Q_PAD_RGMII_RD0__ENET_RGMII_RD0 */
  575. 61 0x1b0b0 /* MX6Q_PAD_RGMII_RD1__ENET_RGMII_RD1 */
  576. 66 0x1b0b0 /* MX6Q_PAD_RGMII_RD2__ENET_RGMII_RD2 */
  577. 70 0x1b0b0 /* MX6Q_PAD_RGMII_RD3__ENET_RGMII_RD3 */
  578. 48 0x1b0b0 /* MX6Q_PAD_RGMII_RX_CTL__RGMII_RX_CTL */
  579. >;
  580. };
  581. };
  582. gpmi-nand {
  583. pinctrl_gpmi_nand_1: gpmi-nand-1 {
  584. fsl,pins = <
  585. 1328 0xb0b1 /* MX6Q_PAD_NANDF_CLE__RAWNAND_CLE */
  586. 1336 0xb0b1 /* MX6Q_PAD_NANDF_ALE__RAWNAND_ALE */
  587. 1344 0xb0b1 /* MX6Q_PAD_NANDF_WP_B__RAWNAND_RESETN */
  588. 1352 0xb000 /* MX6Q_PAD_NANDF_RB0__RAWNAND_READY0 */
  589. 1360 0xb0b1 /* MX6Q_PAD_NANDF_CS0__RAWNAND_CE0N */
  590. 1365 0xb0b1 /* MX6Q_PAD_NANDF_CS1__RAWNAND_CE1N */
  591. 1371 0xb0b1 /* MX6Q_PAD_NANDF_CS2__RAWNAND_CE2N */
  592. 1378 0xb0b1 /* MX6Q_PAD_NANDF_CS3__RAWNAND_CE3N */
  593. 1387 0xb0b1 /* MX6Q_PAD_SD4_CMD__RAWNAND_RDN */
  594. 1393 0xb0b1 /* MX6Q_PAD_SD4_CLK__RAWNAND_WRN */
  595. 1397 0xb0b1 /* MX6Q_PAD_NANDF_D0__RAWNAND_D0 */
  596. 1405 0xb0b1 /* MX6Q_PAD_NANDF_D1__RAWNAND_D1 */
  597. 1413 0xb0b1 /* MX6Q_PAD_NANDF_D2__RAWNAND_D2 */
  598. 1421 0xb0b1 /* MX6Q_PAD_NANDF_D3__RAWNAND_D3 */
  599. 1429 0xb0b1 /* MX6Q_PAD_NANDF_D4__RAWNAND_D4 */
  600. 1437 0xb0b1 /* MX6Q_PAD_NANDF_D5__RAWNAND_D5 */
  601. 1445 0xb0b1 /* MX6Q_PAD_NANDF_D6__RAWNAND_D6 */
  602. 1453 0xb0b1 /* MX6Q_PAD_NANDF_D7__RAWNAND_D7 */
  603. 1463 0x00b1 /* MX6Q_PAD_SD4_DAT0__RAWNAND_DQS */
  604. >;
  605. };
  606. };
  607. i2c1 {
  608. pinctrl_i2c1_1: i2c1grp-1 {
  609. fsl,pins = <
  610. 137 0x4001b8b1 /* MX6Q_PAD_EIM_D21__I2C1_SCL */
  611. 196 0x4001b8b1 /* MX6Q_PAD_EIM_D28__I2C1_SDA */
  612. >;
  613. };
  614. };
  615. uart1 {
  616. pinctrl_uart1_1: uart1grp-1 {
  617. fsl,pins = <
  618. 1140 0x1b0b1 /* MX6Q_PAD_CSI0_DAT10__UART1_TXD */
  619. 1148 0x1b0b1 /* MX6Q_PAD_CSI0_DAT11__UART1_RXD */
  620. >;
  621. };
  622. };
  623. uart2 {
  624. pinctrl_uart2_1: uart2grp-1 {
  625. fsl,pins = <
  626. 183 0x1b0b1 /* MX6Q_PAD_EIM_D26__UART2_TXD */
  627. 191 0x1b0b1 /* MX6Q_PAD_EIM_D27__UART2_RXD */
  628. >;
  629. };
  630. };
  631. uart4 {
  632. pinctrl_uart4_1: uart4grp-1 {
  633. fsl,pins = <
  634. 877 0x1b0b1 /* MX6Q_PAD_KEY_COL0__UART4_TXD */
  635. 885 0x1b0b1 /* MX6Q_PAD_KEY_ROW0__UART4_RXD */
  636. >;
  637. };
  638. };
  639. usbotg {
  640. pinctrl_usbotg_1: usbotggrp-1 {
  641. fsl,pins = <
  642. 1592 0x17059 /* MX6Q_PAD_GPIO_1__ANATOP_USBOTG_ID */
  643. >;
  644. };
  645. };
  646. usdhc2 {
  647. pinctrl_usdhc2_1: usdhc2grp-1 {
  648. fsl,pins = <
  649. 1577 0x17059 /* MX6Q_PAD_SD2_CMD__USDHC2_CMD */
  650. 1569 0x10059 /* MX6Q_PAD_SD2_CLK__USDHC2_CLK */
  651. 16 0x17059 /* MX6Q_PAD_SD2_DAT0__USDHC2_DAT0 */
  652. 0 0x17059 /* MX6Q_PAD_SD2_DAT1__USDHC2_DAT1 */
  653. 8 0x17059 /* MX6Q_PAD_SD2_DAT2__USDHC2_DAT2 */
  654. 1583 0x17059 /* MX6Q_PAD_SD2_DAT3__USDHC2_DAT3 */
  655. 1430 0x17059 /* MX6Q_PAD_NANDF_D4__USDHC2_DAT4 */
  656. 1438 0x17059 /* MX6Q_PAD_NANDF_D5__USDHC2_DAT5 */
  657. 1446 0x17059 /* MX6Q_PAD_NANDF_D6__USDHC2_DAT6 */
  658. 1454 0x17059 /* MX6Q_PAD_NANDF_D7__USDHC2_DAT7 */
  659. >;
  660. };
  661. };
  662. usdhc3 {
  663. pinctrl_usdhc3_1: usdhc3grp-1 {
  664. fsl,pins = <
  665. 1273 0x17059 /* MX6Q_PAD_SD3_CMD__USDHC3_CMD */
  666. 1281 0x10059 /* MX6Q_PAD_SD3_CLK__USDHC3_CLK */
  667. 1289 0x17059 /* MX6Q_PAD_SD3_DAT0__USDHC3_DAT0 */
  668. 1297 0x17059 /* MX6Q_PAD_SD3_DAT1__USDHC3_DAT1 */
  669. 1305 0x17059 /* MX6Q_PAD_SD3_DAT2__USDHC3_DAT2 */
  670. 1312 0x17059 /* MX6Q_PAD_SD3_DAT3__USDHC3_DAT3 */
  671. 1265 0x17059 /* MX6Q_PAD_SD3_DAT4__USDHC3_DAT4 */
  672. 1257 0x17059 /* MX6Q_PAD_SD3_DAT5__USDHC3_DAT5 */
  673. 1249 0x17059 /* MX6Q_PAD_SD3_DAT6__USDHC3_DAT6 */
  674. 1241 0x17059 /* MX6Q_PAD_SD3_DAT7__USDHC3_DAT7 */
  675. >;
  676. };
  677. pinctrl_usdhc3_2: usdhc3grp-2 {
  678. fsl,pins = <
  679. 1273 0x17059 /* MX6Q_PAD_SD3_CMD__USDHC3_CMD */
  680. 1281 0x10059 /* MX6Q_PAD_SD3_CLK__USDHC3_CLK */
  681. 1289 0x17059 /* MX6Q_PAD_SD3_DAT0__USDHC3_DAT0 */
  682. 1297 0x17059 /* MX6Q_PAD_SD3_DAT1__USDHC3_DAT1 */
  683. 1305 0x17059 /* MX6Q_PAD_SD3_DAT2__USDHC3_DAT2 */
  684. 1312 0x17059 /* MX6Q_PAD_SD3_DAT3__USDHC3_DAT3 */
  685. >;
  686. };
  687. };
  688. usdhc4 {
  689. pinctrl_usdhc4_1: usdhc4grp-1 {
  690. fsl,pins = <
  691. 1386 0x17059 /* MX6Q_PAD_SD4_CMD__USDHC4_CMD */
  692. 1392 0x10059 /* MX6Q_PAD_SD4_CLK__USDHC4_CLK */
  693. 1462 0x17059 /* MX6Q_PAD_SD4_DAT0__USDHC4_DAT0 */
  694. 1470 0x17059 /* MX6Q_PAD_SD4_DAT1__USDHC4_DAT1 */
  695. 1478 0x17059 /* MX6Q_PAD_SD4_DAT2__USDHC4_DAT2 */
  696. 1486 0x17059 /* MX6Q_PAD_SD4_DAT3__USDHC4_DAT3 */
  697. 1493 0x17059 /* MX6Q_PAD_SD4_DAT4__USDHC4_DAT4 */
  698. 1501 0x17059 /* MX6Q_PAD_SD4_DAT5__USDHC4_DAT5 */
  699. 1509 0x17059 /* MX6Q_PAD_SD4_DAT6__USDHC4_DAT6 */
  700. 1517 0x17059 /* MX6Q_PAD_SD4_DAT7__USDHC4_DAT7 */
  701. >;
  702. };
  703. pinctrl_usdhc4_2: usdhc4grp-2 {
  704. fsl,pins = <
  705. 1386 0x17059 /* MX6Q_PAD_SD4_CMD__USDHC4_CMD */
  706. 1392 0x10059 /* MX6Q_PAD_SD4_CLK__USDHC4_CLK */
  707. 1462 0x17059 /* MX6Q_PAD_SD4_DAT0__USDHC4_DAT0 */
  708. 1470 0x17059 /* MX6Q_PAD_SD4_DAT1__USDHC4_DAT1 */
  709. 1478 0x17059 /* MX6Q_PAD_SD4_DAT2__USDHC4_DAT2 */
  710. 1486 0x17059 /* MX6Q_PAD_SD4_DAT3__USDHC4_DAT3 */
  711. >;
  712. };
  713. };
  714. };
  715. dcic1: dcic@020e4000 {
  716. reg = <0x020e4000 0x4000>;
  717. interrupts = <0 124 0x04>;
  718. };
  719. dcic2: dcic@020e8000 {
  720. reg = <0x020e8000 0x4000>;
  721. interrupts = <0 125 0x04>;
  722. };
  723. sdma: sdma@020ec000 {
  724. compatible = "fsl,imx6q-sdma", "fsl,imx35-sdma";
  725. reg = <0x020ec000 0x4000>;
  726. interrupts = <0 2 0x04>;
  727. clocks = <&clks 155>, <&clks 155>;
  728. clock-names = "ipg", "ahb";
  729. fsl,sdma-ram-script-name = "imx/sdma/sdma-imx6q.bin";
  730. };
  731. };
  732. aips-bus@02100000 { /* AIPS2 */
  733. compatible = "fsl,aips-bus", "simple-bus";
  734. #address-cells = <1>;
  735. #size-cells = <1>;
  736. reg = <0x02100000 0x100000>;
  737. ranges;
  738. caam@02100000 {
  739. reg = <0x02100000 0x40000>;
  740. interrupts = <0 105 0x04 0 106 0x04>;
  741. };
  742. aipstz@0217c000 { /* AIPSTZ2 */
  743. reg = <0x0217c000 0x4000>;
  744. };
  745. usbotg: usb@02184000 {
  746. compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
  747. reg = <0x02184000 0x200>;
  748. interrupts = <0 43 0x04>;
  749. clocks = <&clks 162>;
  750. fsl,usbphy = <&usbphy1>;
  751. fsl,usbmisc = <&usbmisc 0>;
  752. status = "disabled";
  753. };
  754. usbh1: usb@02184200 {
  755. compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
  756. reg = <0x02184200 0x200>;
  757. interrupts = <0 40 0x04>;
  758. clocks = <&clks 162>;
  759. fsl,usbphy = <&usbphy2>;
  760. fsl,usbmisc = <&usbmisc 1>;
  761. status = "disabled";
  762. };
  763. usbh2: usb@02184400 {
  764. compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
  765. reg = <0x02184400 0x200>;
  766. interrupts = <0 41 0x04>;
  767. clocks = <&clks 162>;
  768. fsl,usbmisc = <&usbmisc 2>;
  769. status = "disabled";
  770. };
  771. usbh3: usb@02184600 {
  772. compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
  773. reg = <0x02184600 0x200>;
  774. interrupts = <0 42 0x04>;
  775. clocks = <&clks 162>;
  776. fsl,usbmisc = <&usbmisc 3>;
  777. status = "disabled";
  778. };
  779. usbmisc: usbmisc: usbmisc@02184800 {
  780. #index-cells = <1>;
  781. compatible = "fsl,imx6q-usbmisc";
  782. reg = <0x02184800 0x200>;
  783. clocks = <&clks 162>;
  784. };
  785. fec: ethernet@02188000 {
  786. compatible = "fsl,imx6q-fec";
  787. reg = <0x02188000 0x4000>;
  788. interrupts = <0 118 0x04 0 119 0x04>;
  789. clocks = <&clks 117>, <&clks 117>, <&clks 190>;
  790. clock-names = "ipg", "ahb", "ptp";
  791. status = "disabled";
  792. };
  793. mlb@0218c000 {
  794. reg = <0x0218c000 0x4000>;
  795. interrupts = <0 53 0x04 0 117 0x04 0 126 0x04>;
  796. };
  797. usdhc1: usdhc@02190000 {
  798. compatible = "fsl,imx6q-usdhc";
  799. reg = <0x02190000 0x4000>;
  800. interrupts = <0 22 0x04>;
  801. clocks = <&clks 163>, <&clks 163>, <&clks 163>;
  802. clock-names = "ipg", "ahb", "per";
  803. bus-width = <4>;
  804. status = "disabled";
  805. };
  806. usdhc2: usdhc@02194000 {
  807. compatible = "fsl,imx6q-usdhc";
  808. reg = <0x02194000 0x4000>;
  809. interrupts = <0 23 0x04>;
  810. clocks = <&clks 164>, <&clks 164>, <&clks 164>;
  811. clock-names = "ipg", "ahb", "per";
  812. bus-width = <4>;
  813. status = "disabled";
  814. };
  815. usdhc3: usdhc@02198000 {
  816. compatible = "fsl,imx6q-usdhc";
  817. reg = <0x02198000 0x4000>;
  818. interrupts = <0 24 0x04>;
  819. clocks = <&clks 165>, <&clks 165>, <&clks 165>;
  820. clock-names = "ipg", "ahb", "per";
  821. bus-width = <4>;
  822. status = "disabled";
  823. };
  824. usdhc4: usdhc@0219c000 {
  825. compatible = "fsl,imx6q-usdhc";
  826. reg = <0x0219c000 0x4000>;
  827. interrupts = <0 25 0x04>;
  828. clocks = <&clks 166>, <&clks 166>, <&clks 166>;
  829. clock-names = "ipg", "ahb", "per";
  830. bus-width = <4>;
  831. status = "disabled";
  832. };
  833. i2c1: i2c@021a0000 {
  834. #address-cells = <1>;
  835. #size-cells = <0>;
  836. compatible = "fsl,imx6q-i2c", "fsl,imx21-i2c";
  837. reg = <0x021a0000 0x4000>;
  838. interrupts = <0 36 0x04>;
  839. clocks = <&clks 125>;
  840. status = "disabled";
  841. };
  842. i2c2: i2c@021a4000 {
  843. #address-cells = <1>;
  844. #size-cells = <0>;
  845. compatible = "fsl,imx6q-i2c", "fsl,imx21-i2c";
  846. reg = <0x021a4000 0x4000>;
  847. interrupts = <0 37 0x04>;
  848. clocks = <&clks 126>;
  849. status = "disabled";
  850. };
  851. i2c3: i2c@021a8000 {
  852. #address-cells = <1>;
  853. #size-cells = <0>;
  854. compatible = "fsl,imx6q-i2c", "fsl,imx21-i2c";
  855. reg = <0x021a8000 0x4000>;
  856. interrupts = <0 38 0x04>;
  857. clocks = <&clks 127>;
  858. status = "disabled";
  859. };
  860. romcp@021ac000 {
  861. reg = <0x021ac000 0x4000>;
  862. };
  863. mmdc0: mmdc@021b0000 { /* MMDC0 */
  864. compatible = "fsl,imx6q-mmdc";
  865. reg = <0x021b0000 0x4000>;
  866. };
  867. mmdc1: mmdc@021b4000 { /* MMDC1 */
  868. reg = <0x021b4000 0x4000>;
  869. };
  870. weim@021b8000 {
  871. reg = <0x021b8000 0x4000>;
  872. interrupts = <0 14 0x04>;
  873. };
  874. ocotp@021bc000 {
  875. compatible = "fsl,imx6q-ocotp";
  876. reg = <0x021bc000 0x4000>;
  877. };
  878. ocotp@021c0000 {
  879. reg = <0x021c0000 0x4000>;
  880. interrupts = <0 21 0x04>;
  881. };
  882. tzasc@021d0000 { /* TZASC1 */
  883. reg = <0x021d0000 0x4000>;
  884. interrupts = <0 108 0x04>;
  885. };
  886. tzasc@021d4000 { /* TZASC2 */
  887. reg = <0x021d4000 0x4000>;
  888. interrupts = <0 109 0x04>;
  889. };
  890. audmux: audmux@021d8000 {
  891. compatible = "fsl,imx6q-audmux", "fsl,imx31-audmux";
  892. reg = <0x021d8000 0x4000>;
  893. status = "disabled";
  894. };
  895. mipi@021dc000 { /* MIPI-CSI */
  896. reg = <0x021dc000 0x4000>;
  897. };
  898. mipi@021e0000 { /* MIPI-DSI */
  899. reg = <0x021e0000 0x4000>;
  900. };
  901. vdoa@021e4000 {
  902. reg = <0x021e4000 0x4000>;
  903. interrupts = <0 18 0x04>;
  904. };
  905. uart2: serial@021e8000 {
  906. compatible = "fsl,imx6q-uart", "fsl,imx21-uart";
  907. reg = <0x021e8000 0x4000>;
  908. interrupts = <0 27 0x04>;
  909. clocks = <&clks 160>, <&clks 161>;
  910. clock-names = "ipg", "per";
  911. status = "disabled";
  912. };
  913. uart3: serial@021ec000 {
  914. compatible = "fsl,imx6q-uart", "fsl,imx21-uart";
  915. reg = <0x021ec000 0x4000>;
  916. interrupts = <0 28 0x04>;
  917. clocks = <&clks 160>, <&clks 161>;
  918. clock-names = "ipg", "per";
  919. status = "disabled";
  920. };
  921. uart4: serial@021f0000 {
  922. compatible = "fsl,imx6q-uart", "fsl,imx21-uart";
  923. reg = <0x021f0000 0x4000>;
  924. interrupts = <0 29 0x04>;
  925. clocks = <&clks 160>, <&clks 161>;
  926. clock-names = "ipg", "per";
  927. status = "disabled";
  928. };
  929. uart5: serial@021f4000 {
  930. compatible = "fsl,imx6q-uart", "fsl,imx21-uart";
  931. reg = <0x021f4000 0x4000>;
  932. interrupts = <0 30 0x04>;
  933. clocks = <&clks 160>, <&clks 161>;
  934. clock-names = "ipg", "per";
  935. status = "disabled";
  936. };
  937. };
  938. ipu1: ipu@02400000 {
  939. #crtc-cells = <1>;
  940. compatible = "fsl,imx6q-ipu";
  941. reg = <0x02400000 0x400000>;
  942. interrupts = <0 6 0x4 0 5 0x4>;
  943. clocks = <&clks 130>, <&clks 131>, <&clks 132>;
  944. clock-names = "bus", "di0", "di1";
  945. };
  946. ipu2: ipu@02800000 {
  947. #crtc-cells = <1>;
  948. compatible = "fsl,imx6q-ipu";
  949. reg = <0x02800000 0x400000>;
  950. interrupts = <0 8 0x4 0 7 0x4>;
  951. clocks = <&clks 133>, <&clks 134>, <&clks 137>;
  952. clock-names = "bus", "di0", "di1";
  953. };
  954. };
  955. };