imx6ul-tx6ul.dtsi 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947
  1. /*
  2. * Copyright 2015 Lothar Waßmann <[email protected]>
  3. *
  4. * This file is dual-licensed: you can use it either under the terms
  5. * of the GPL or the X11 license, at your option. Note that this dual
  6. * licensing only applies to this file, and not this project as a
  7. * whole.
  8. *
  9. * a) This file is free software; you can redistribute it and/or
  10. * modify it under the terms of the GNU General Public License
  11. * version 2 as published by the Free Software Foundation.
  12. *
  13. * This file is distributed in the hope that it will be useful,
  14. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  16. * GNU General Public License for more details.
  17. *
  18. * Or, alternatively,
  19. *
  20. * b) Permission is hereby granted, free of charge, to any person
  21. * obtaining a copy of this software and associated documentation
  22. * files (the "Software"), to deal in the Software without
  23. * restriction, including without limitation the rights to use,
  24. * copy, modify, merge, publish, distribute, sublicense, and/or
  25. * sell copies of the Software, and to permit persons to whom the
  26. * Software is furnished to do so, subject to the following
  27. * conditions:
  28. *
  29. * The above copyright notice and this permission notice shall be
  30. * included in all copies or substantial portions of the Software.
  31. *
  32. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  33. * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
  34. * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  35. * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
  36. * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
  37. * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
  38. * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
  39. * OTHER DEALINGS IN THE SOFTWARE.
  40. */
  41. #include <dt-bindings/gpio/gpio.h>
  42. #include <dt-bindings/interrupt-controller/irq.h>
  43. #include <dt-bindings/pwm/pwm.h>
  44. / {
  45. aliases {
  46. can0 = &can2;
  47. can1 = &can1;
  48. display = &display;
  49. i2c0 = &i2c2;
  50. i2c1 = &i2c_gpio;
  51. i2c2 = &i2c1;
  52. i2c3 = &i2c3;
  53. i2c4 = &i2c4;
  54. lcdif-23bit-pins-a = &pinctrl_disp0_1;
  55. lcdif-24bit-pins-a = &pinctrl_disp0_2;
  56. pwm0 = &pwm5;
  57. reg-can-xcvr = &reg_can_xcvr;
  58. serial2 = &uart5;
  59. serial4 = &uart3;
  60. spi0 = &ecspi2;
  61. spi1 = &spi_gpio;
  62. stk5led = &user_led;
  63. usbh1 = &usbotg2;
  64. usbotg = &usbotg1;
  65. };
  66. chosen {
  67. stdout-path = &uart1;
  68. };
  69. memory@80000000 {
  70. device_type = "memory";
  71. reg = <0x80000000 0>; /* will be filled by U-Boot */
  72. };
  73. clocks {
  74. mclk: mclk {
  75. compatible = "fixed-clock";
  76. #clock-cells = <0>;
  77. clock-frequency = <26000000>;
  78. };
  79. };
  80. backlight: backlight {
  81. compatible = "pwm-backlight";
  82. pinctrl-names = "default";
  83. pinctrl-0 = <&pinctrl_lcd_rst>;
  84. enable-gpios = <&gpio3 4 GPIO_ACTIVE_HIGH>;
  85. pwms = <&pwm5 0 500000 PWM_POLARITY_INVERTED>;
  86. power-supply = <&reg_lcd_pwr>;
  87. /*
  88. * a poor man's way to create a 1:1 relationship between
  89. * the PWM value and the actual duty cycle
  90. */
  91. brightness-levels = < 0 1 2 3 4 5 6 7 8 9
  92. 10 11 12 13 14 15 16 17 18 19
  93. 20 21 22 23 24 25 26 27 28 29
  94. 30 31 32 33 34 35 36 37 38 39
  95. 40 41 42 43 44 45 46 47 48 49
  96. 50 51 52 53 54 55 56 57 58 59
  97. 60 61 62 63 64 65 66 67 68 69
  98. 70 71 72 73 74 75 76 77 78 79
  99. 80 81 82 83 84 85 86 87 88 89
  100. 90 91 92 93 94 95 96 97 98 99
  101. 100>;
  102. default-brightness-level = <50>;
  103. };
  104. i2c_gpio: i2c-gpio {
  105. compatible = "i2c-gpio";
  106. #address-cells = <1>;
  107. #size-cells = <0>;
  108. pinctrl-names = "default";
  109. pinctrl-0 = <&pinctrl_i2c_gpio>;
  110. gpios = <
  111. &gpio5 1 GPIO_ACTIVE_HIGH /* SDA */
  112. &gpio5 0 GPIO_ACTIVE_HIGH /* SCL */
  113. >;
  114. clock-frequency = <400000>;
  115. status = "okay";
  116. ds1339: rtc@68 {
  117. compatible = "dallas,ds1339";
  118. reg = <0x68>;
  119. status = "disabled";
  120. };
  121. };
  122. leds {
  123. compatible = "gpio-leds";
  124. user_led: led-user {
  125. label = "Heartbeat";
  126. pinctrl-names = "default";
  127. pinctrl-0 = <&pinctrl_led>;
  128. gpios = <&gpio5 9 GPIO_ACTIVE_HIGH>;
  129. linux,default-trigger = "heartbeat";
  130. };
  131. };
  132. reg_3v3_etn: regulator-3v3etn {
  133. compatible = "regulator-fixed";
  134. regulator-name = "3V3_ETN";
  135. regulator-min-microvolt = <3300000>;
  136. regulator-max-microvolt = <3300000>;
  137. pinctrl-names = "default";
  138. pinctrl-0 = <&pinctrl_etnphy_power>;
  139. gpio = <&gpio5 7 GPIO_ACTIVE_HIGH>;
  140. enable-active-high;
  141. };
  142. reg_2v5: regulator-2v5 {
  143. compatible = "regulator-fixed";
  144. regulator-name = "2V5";
  145. regulator-min-microvolt = <2500000>;
  146. regulator-max-microvolt = <2500000>;
  147. regulator-always-on;
  148. };
  149. reg_3v3: regulator-3v3 {
  150. compatible = "regulator-fixed";
  151. regulator-name = "3V3";
  152. regulator-min-microvolt = <3300000>;
  153. regulator-max-microvolt = <3300000>;
  154. regulator-always-on;
  155. };
  156. reg_can_xcvr: regulator-canxcvr {
  157. compatible = "regulator-fixed";
  158. regulator-name = "CAN XCVR";
  159. regulator-min-microvolt = <3300000>;
  160. regulator-max-microvolt = <3300000>;
  161. pinctrl-names = "default";
  162. pinctrl-0 = <&pinctrl_flexcan_xcvr>;
  163. gpio = <&gpio3 5 GPIO_ACTIVE_LOW>;
  164. };
  165. reg_lcd_pwr: regulator-lcdpwr {
  166. compatible = "regulator-fixed";
  167. regulator-name = "LCD POWER";
  168. regulator-min-microvolt = <3300000>;
  169. regulator-max-microvolt = <3300000>;
  170. pinctrl-names = "default";
  171. pinctrl-0 = <&pinctrl_lcd_pwr>;
  172. gpio = <&gpio5 4 GPIO_ACTIVE_HIGH>;
  173. enable-active-high;
  174. regulator-boot-on;
  175. regulator-always-on;
  176. };
  177. reg_usbh1_vbus: regulator-usbh1vbus {
  178. compatible = "regulator-fixed";
  179. regulator-name = "usbh1_vbus";
  180. regulator-min-microvolt = <5000000>;
  181. regulator-max-microvolt = <5000000>;
  182. pinctrl-names = "default";
  183. pinctrl-0 = <&pinctrl_usbh1_vbus &pinctrl_usbh1_oc>;
  184. gpio = <&gpio1 2 GPIO_ACTIVE_HIGH>;
  185. enable-active-high;
  186. };
  187. reg_usbotg_vbus: regulator-usbotgvbus {
  188. compatible = "regulator-fixed";
  189. regulator-name = "usbotg_vbus";
  190. regulator-min-microvolt = <5000000>;
  191. regulator-max-microvolt = <5000000>;
  192. pinctrl-names = "default";
  193. pinctrl-0 = <&pinctrl_usbotg_vbus &pinctrl_usbotg_oc>;
  194. gpio = <&gpio1 26 GPIO_ACTIVE_HIGH>;
  195. enable-active-high;
  196. };
  197. spi_gpio: spi {
  198. #address-cells = <1>;
  199. #size-cells = <0>;
  200. compatible = "spi-gpio";
  201. pinctrl-names = "default";
  202. pinctrl-0 = <&pinctrl_spi_gpio>;
  203. gpio-mosi = <&gpio1 30 GPIO_ACTIVE_HIGH>;
  204. gpio-miso = <&gpio1 31 GPIO_ACTIVE_HIGH>;
  205. gpio-sck = <&gpio1 28 GPIO_ACTIVE_HIGH>;
  206. num-chipselects = <2>;
  207. cs-gpios = <
  208. &gpio1 29 GPIO_ACTIVE_HIGH
  209. &gpio1 10 GPIO_ACTIVE_HIGH
  210. >;
  211. status = "disabled";
  212. };
  213. sound {
  214. compatible = "karo,imx6ul-tx6ul-sgtl5000",
  215. "simple-audio-card";
  216. simple-audio-card,name = "imx6ul-tx6ul-sgtl5000-audio";
  217. simple-audio-card,format = "i2s";
  218. simple-audio-card,bitclock-master = <&codec_dai>;
  219. simple-audio-card,frame-master = <&codec_dai>;
  220. simple-audio-card,widgets =
  221. "Microphone", "Mic Jack",
  222. "Line", "Line In",
  223. "Line", "Line Out",
  224. "Headphone", "Headphone Jack";
  225. simple-audio-card,routing =
  226. "MIC_IN", "Mic Jack",
  227. "Mic Jack", "Mic Bias",
  228. "Headphone Jack", "HP_OUT";
  229. cpu_dai: simple-audio-card,cpu {
  230. sound-dai = <&sai2>;
  231. };
  232. codec_dai: simple-audio-card,codec {
  233. sound-dai = <&sgtl5000>;
  234. };
  235. };
  236. };
  237. &can1 {
  238. pinctrl-names = "default";
  239. pinctrl-0 = <&pinctrl_flexcan1>;
  240. xceiver-supply = <&reg_can_xcvr>;
  241. status = "okay";
  242. };
  243. &can2 {
  244. pinctrl-names = "default";
  245. pinctrl-0 = <&pinctrl_flexcan2>;
  246. xceiver-supply = <&reg_can_xcvr>;
  247. status = "okay";
  248. };
  249. &ecspi2 {
  250. pinctrl-names = "default";
  251. pinctrl-0 = <&pinctrl_ecspi2>;
  252. cs-gpios = <
  253. &gpio1 29 GPIO_ACTIVE_HIGH
  254. &gpio1 10 GPIO_ACTIVE_HIGH
  255. >;
  256. status = "disabled";
  257. };
  258. &fec1 {
  259. pinctrl-names = "default";
  260. pinctrl-0 = <&pinctrl_enet1 &pinctrl_enet1_mdio &pinctrl_etnphy0_rst>;
  261. phy-mode = "rmii";
  262. phy-reset-gpios = <&gpio5 6 GPIO_ACTIVE_LOW>;
  263. phy-supply = <&reg_3v3_etn>;
  264. phy-handle = <&etnphy0>;
  265. status = "okay";
  266. mdio {
  267. #address-cells = <1>;
  268. #size-cells = <0>;
  269. etnphy0: ethernet-phy@0 {
  270. compatible = "ethernet-phy-ieee802.3-c22";
  271. reg = <0>;
  272. pinctrl-names = "default";
  273. pinctrl-0 = <&pinctrl_etnphy0_int>;
  274. interrupt-parent = <&gpio5>;
  275. interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
  276. status = "okay";
  277. };
  278. etnphy1: ethernet-phy@2 {
  279. compatible = "ethernet-phy-ieee802.3-c22";
  280. reg = <2>;
  281. pinctrl-names = "default";
  282. pinctrl-0 = <&pinctrl_etnphy1_int>;
  283. interrupt-parent = <&gpio4>;
  284. interrupts = <27 IRQ_TYPE_EDGE_FALLING>;
  285. status = "okay";
  286. };
  287. };
  288. };
  289. &fec2 {
  290. pinctrl-names = "default";
  291. pinctrl-0 = <&pinctrl_enet2 &pinctrl_etnphy1_rst>;
  292. phy-mode = "rmii";
  293. phy-reset-gpios = <&gpio4 28 GPIO_ACTIVE_LOW>;
  294. phy-supply = <&reg_3v3_etn>;
  295. phy-handle = <&etnphy1>;
  296. status = "disabled";
  297. };
  298. &gpmi {
  299. pinctrl-names = "default";
  300. pinctrl-0 = <&pinctrl_gpmi_nand>;
  301. nand-on-flash-bbt;
  302. fsl,no-blockmark-swap;
  303. status = "okay";
  304. };
  305. &i2c2 {
  306. pinctrl-names = "default";
  307. pinctrl-0 = <&pinctrl_i2c2>;
  308. clock-frequency = <400000>;
  309. status = "okay";
  310. sgtl5000: codec@a {
  311. compatible = "fsl,sgtl5000";
  312. reg = <0x0a>;
  313. #sound-dai-cells = <0>;
  314. VDDA-supply = <&reg_2v5>;
  315. VDDIO-supply = <&reg_3v3>;
  316. clocks = <&mclk>;
  317. };
  318. polytouch: polytouch@38 {
  319. compatible = "edt,edt-ft5x06";
  320. reg = <0x38>;
  321. pinctrl-names = "default";
  322. pinctrl-0 = <&pinctrl_edt_ft5x06>;
  323. interrupt-parent = <&gpio5>;
  324. interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
  325. reset-gpios = <&gpio5 3 GPIO_ACTIVE_LOW>;
  326. wake-gpios = <&gpio5 8 GPIO_ACTIVE_HIGH>;
  327. wakeup-source;
  328. };
  329. touchscreen: touchscreen@48 {
  330. compatible = "ti,tsc2007";
  331. reg = <0x48>;
  332. pinctrl-names = "default";
  333. pinctrl-0 = <&pinctrl_tsc2007>;
  334. interrupt-parent = <&gpio3>;
  335. interrupts = <26 IRQ_TYPE_NONE>;
  336. gpios = <&gpio3 26 GPIO_ACTIVE_LOW>;
  337. ti,x-plate-ohms = <660>;
  338. wakeup-source;
  339. };
  340. };
  341. &kpp {
  342. pinctrl-names = "default";
  343. pinctrl-0 = <&pinctrl_kpp>;
  344. /* sample keymap */
  345. /* row/col 0..3 are mapped to KPP row/col 4..7 */
  346. linux,keymap = <
  347. MATRIX_KEY(4, 4, KEY_POWER)
  348. MATRIX_KEY(4, 5, KEY_KP0)
  349. MATRIX_KEY(4, 6, KEY_KP1)
  350. MATRIX_KEY(4, 7, KEY_KP2)
  351. MATRIX_KEY(5, 4, KEY_KP3)
  352. MATRIX_KEY(5, 5, KEY_KP4)
  353. MATRIX_KEY(5, 6, KEY_KP5)
  354. MATRIX_KEY(5, 7, KEY_KP6)
  355. MATRIX_KEY(6, 4, KEY_KP7)
  356. MATRIX_KEY(6, 5, KEY_KP8)
  357. MATRIX_KEY(6, 6, KEY_KP9)
  358. >;
  359. status = "okay";
  360. };
  361. &lcdif {
  362. pinctrl-names = "default";
  363. pinctrl-0 = <&pinctrl_disp0_1>;
  364. lcd-supply = <&reg_lcd_pwr>;
  365. display = <&display>;
  366. status = "okay";
  367. display: disp0 {
  368. bits-per-pixel = <32>;
  369. bus-width = <24>;
  370. status = "okay";
  371. display-timings {
  372. VGA {
  373. clock-frequency = <25200000>;
  374. hactive = <640>;
  375. vactive = <480>;
  376. hback-porch = <48>;
  377. hsync-len = <96>;
  378. hfront-porch = <16>;
  379. vback-porch = <31>;
  380. vsync-len = <2>;
  381. vfront-porch = <12>;
  382. hsync-active = <0>;
  383. vsync-active = <0>;
  384. de-active = <1>;
  385. pixelclk-active = <1>;
  386. };
  387. ETV570 {
  388. clock-frequency = <25200000>;
  389. hactive = <640>;
  390. vactive = <480>;
  391. hback-porch = <114>;
  392. hsync-len = <30>;
  393. hfront-porch = <16>;
  394. vback-porch = <32>;
  395. vsync-len = <3>;
  396. vfront-porch = <10>;
  397. hsync-active = <0>;
  398. vsync-active = <0>;
  399. de-active = <1>;
  400. pixelclk-active = <1>;
  401. };
  402. ET0350 {
  403. clock-frequency = <6413760>;
  404. hactive = <320>;
  405. vactive = <240>;
  406. hback-porch = <34>;
  407. hsync-len = <34>;
  408. hfront-porch = <20>;
  409. vback-porch = <15>;
  410. vsync-len = <3>;
  411. vfront-porch = <4>;
  412. hsync-active = <0>;
  413. vsync-active = <0>;
  414. de-active = <1>;
  415. pixelclk-active = <1>;
  416. };
  417. ET0430 {
  418. clock-frequency = <9009000>;
  419. hactive = <480>;
  420. vactive = <272>;
  421. hback-porch = <2>;
  422. hsync-len = <41>;
  423. hfront-porch = <2>;
  424. vback-porch = <2>;
  425. vsync-len = <10>;
  426. vfront-porch = <2>;
  427. hsync-active = <0>;
  428. vsync-active = <0>;
  429. de-active = <1>;
  430. pixelclk-active = <0>;
  431. };
  432. ET0500 {
  433. clock-frequency = <33264000>;
  434. hactive = <800>;
  435. vactive = <480>;
  436. hback-porch = <88>;
  437. hsync-len = <128>;
  438. hfront-porch = <40>;
  439. vback-porch = <33>;
  440. vsync-len = <2>;
  441. vfront-porch = <10>;
  442. hsync-active = <0>;
  443. vsync-active = <0>;
  444. de-active = <1>;
  445. pixelclk-active = <1>;
  446. };
  447. ET0700 { /* same as ET0500 */
  448. clock-frequency = <33264000>;
  449. hactive = <800>;
  450. vactive = <480>;
  451. hback-porch = <88>;
  452. hsync-len = <128>;
  453. hfront-porch = <40>;
  454. vback-porch = <33>;
  455. vsync-len = <2>;
  456. vfront-porch = <10>;
  457. hsync-active = <0>;
  458. vsync-active = <0>;
  459. de-active = <1>;
  460. pixelclk-active = <1>;
  461. };
  462. ETQ570 {
  463. clock-frequency = <6596040>;
  464. hactive = <320>;
  465. vactive = <240>;
  466. hback-porch = <38>;
  467. hsync-len = <30>;
  468. hfront-porch = <30>;
  469. vback-porch = <16>;
  470. vsync-len = <3>;
  471. vfront-porch = <4>;
  472. hsync-active = <0>;
  473. vsync-active = <0>;
  474. de-active = <1>;
  475. pixelclk-active = <1>;
  476. };
  477. };
  478. };
  479. };
  480. &pwm5 {
  481. pinctrl-names = "default";
  482. pinctrl-0 = <&pinctrl_pwm5>;
  483. status = "okay";
  484. };
  485. &sai2 {
  486. pinctrl-names = "default";
  487. pinctrl-0 = <&pinctrl_sai2>;
  488. status = "okay";
  489. };
  490. &uart1 {
  491. pinctrl-names = "default";
  492. pinctrl-0 = <&pinctrl_uart1 &pinctrl_uart1_rtscts>;
  493. uart-has-rtscts;
  494. status = "okay";
  495. };
  496. &uart2 {
  497. pinctrl-names = "default";
  498. pinctrl-0 = <&pinctrl_uart2 &pinctrl_uart2_rtscts>;
  499. uart-has-rtscts;
  500. status = "okay";
  501. };
  502. &uart5 {
  503. pinctrl-names = "default";
  504. pinctrl-0 = <&pinctrl_uart5 &pinctrl_uart5_rtscts>;
  505. uart-has-rtscts;
  506. status = "okay";
  507. };
  508. &usbotg1 {
  509. vbus-supply = <&reg_usbotg_vbus>;
  510. dr_mode = "peripheral";
  511. disable-over-current;
  512. status = "okay";
  513. };
  514. &usbotg2 {
  515. vbus-supply = <&reg_usbh1_vbus>;
  516. dr_mode = "host";
  517. disable-over-current;
  518. status = "okay";
  519. };
  520. &usdhc1 {
  521. pinctrl-names = "default";
  522. pinctrl-0 = <&pinctrl_usdhc1 &pinctrl_usdhc1_cd>;
  523. bus-width = <4>;
  524. no-1-8-v;
  525. cd-gpios = <&gpio4 14 GPIO_ACTIVE_LOW>;
  526. fsl,wp-controller;
  527. status = "okay";
  528. };
  529. &iomuxc {
  530. pinctrl-names = "default";
  531. pinctrl-0 = <&pinctrl_hog>;
  532. pinctrl_hog: hoggrp {
  533. };
  534. pinctrl_led: ledgrp {
  535. fsl,pins = <
  536. MX6UL_PAD_SNVS_TAMPER9__GPIO5_IO09 0x0b0b0 /* LED */
  537. >;
  538. };
  539. pinctrl_disp0_1: disp0grp-1 {
  540. fsl,pins = <
  541. MX6UL_PAD_LCD_CLK__LCDIF_CLK 0x10 /* LSCLK */
  542. MX6UL_PAD_LCD_ENABLE__LCDIF_ENABLE 0x10 /* OE_ACD */
  543. MX6UL_PAD_LCD_HSYNC__LCDIF_HSYNC 0x10 /* HSYNC */
  544. MX6UL_PAD_LCD_VSYNC__LCDIF_VSYNC 0x10 /* VSYNC */
  545. /* PAD DISP0_DAT0 is used for the Flexcan transceiver control on STK5-v5 */
  546. MX6UL_PAD_LCD_DATA01__LCDIF_DATA01 0x10
  547. MX6UL_PAD_LCD_DATA02__LCDIF_DATA02 0x10
  548. MX6UL_PAD_LCD_DATA03__LCDIF_DATA03 0x10
  549. MX6UL_PAD_LCD_DATA04__LCDIF_DATA04 0x10
  550. MX6UL_PAD_LCD_DATA05__LCDIF_DATA05 0x10
  551. MX6UL_PAD_LCD_DATA06__LCDIF_DATA06 0x10
  552. MX6UL_PAD_LCD_DATA07__LCDIF_DATA07 0x10
  553. MX6UL_PAD_LCD_DATA08__LCDIF_DATA08 0x10
  554. MX6UL_PAD_LCD_DATA09__LCDIF_DATA09 0x10
  555. MX6UL_PAD_LCD_DATA10__LCDIF_DATA10 0x10
  556. MX6UL_PAD_LCD_DATA11__LCDIF_DATA11 0x10
  557. MX6UL_PAD_LCD_DATA12__LCDIF_DATA12 0x10
  558. MX6UL_PAD_LCD_DATA13__LCDIF_DATA13 0x10
  559. MX6UL_PAD_LCD_DATA14__LCDIF_DATA14 0x10
  560. MX6UL_PAD_LCD_DATA15__LCDIF_DATA15 0x10
  561. MX6UL_PAD_LCD_DATA16__LCDIF_DATA16 0x10
  562. MX6UL_PAD_LCD_DATA17__LCDIF_DATA17 0x10
  563. MX6UL_PAD_LCD_DATA18__LCDIF_DATA18 0x10
  564. MX6UL_PAD_LCD_DATA19__LCDIF_DATA19 0x10
  565. MX6UL_PAD_LCD_DATA20__LCDIF_DATA20 0x10
  566. MX6UL_PAD_LCD_DATA21__LCDIF_DATA21 0x10
  567. MX6UL_PAD_LCD_DATA22__LCDIF_DATA22 0x10
  568. MX6UL_PAD_LCD_DATA23__LCDIF_DATA23 0x10
  569. >;
  570. };
  571. pinctrl_disp0_2: disp0grp-2 {
  572. fsl,pins = <
  573. MX6UL_PAD_LCD_CLK__LCDIF_CLK 0x10 /* LSCLK */
  574. MX6UL_PAD_LCD_ENABLE__LCDIF_ENABLE 0x10 /* OE_ACD */
  575. MX6UL_PAD_LCD_HSYNC__LCDIF_HSYNC 0x10 /* HSYNC */
  576. MX6UL_PAD_LCD_VSYNC__LCDIF_VSYNC 0x10 /* VSYNC */
  577. MX6UL_PAD_LCD_DATA00__LCDIF_DATA00 0x10
  578. MX6UL_PAD_LCD_DATA01__LCDIF_DATA01 0x10
  579. MX6UL_PAD_LCD_DATA02__LCDIF_DATA02 0x10
  580. MX6UL_PAD_LCD_DATA03__LCDIF_DATA03 0x10
  581. MX6UL_PAD_LCD_DATA04__LCDIF_DATA04 0x10
  582. MX6UL_PAD_LCD_DATA05__LCDIF_DATA05 0x10
  583. MX6UL_PAD_LCD_DATA06__LCDIF_DATA06 0x10
  584. MX6UL_PAD_LCD_DATA07__LCDIF_DATA07 0x10
  585. MX6UL_PAD_LCD_DATA08__LCDIF_DATA08 0x10
  586. MX6UL_PAD_LCD_DATA09__LCDIF_DATA09 0x10
  587. MX6UL_PAD_LCD_DATA10__LCDIF_DATA10 0x10
  588. MX6UL_PAD_LCD_DATA11__LCDIF_DATA11 0x10
  589. MX6UL_PAD_LCD_DATA12__LCDIF_DATA12 0x10
  590. MX6UL_PAD_LCD_DATA13__LCDIF_DATA13 0x10
  591. MX6UL_PAD_LCD_DATA14__LCDIF_DATA14 0x10
  592. MX6UL_PAD_LCD_DATA15__LCDIF_DATA15 0x10
  593. MX6UL_PAD_LCD_DATA16__LCDIF_DATA16 0x10
  594. MX6UL_PAD_LCD_DATA17__LCDIF_DATA17 0x10
  595. MX6UL_PAD_LCD_DATA18__LCDIF_DATA18 0x10
  596. MX6UL_PAD_LCD_DATA19__LCDIF_DATA19 0x10
  597. MX6UL_PAD_LCD_DATA20__LCDIF_DATA20 0x10
  598. MX6UL_PAD_LCD_DATA21__LCDIF_DATA21 0x10
  599. MX6UL_PAD_LCD_DATA22__LCDIF_DATA22 0x10
  600. MX6UL_PAD_LCD_DATA23__LCDIF_DATA23 0x10
  601. >;
  602. };
  603. pinctrl_ecspi2: ecspi2grp {
  604. fsl,pins = <
  605. MX6UL_PAD_UART4_RX_DATA__GPIO1_IO29 0x0b0b0 /* CSPI_SS */
  606. MX6UL_PAD_JTAG_MOD__GPIO1_IO10 0x0b0b0 /* CSPI_SS */
  607. MX6UL_PAD_UART5_TX_DATA__ECSPI2_MOSI 0x0b0b0 /* CSPI_MOSI */
  608. MX6UL_PAD_UART5_RX_DATA__ECSPI2_MISO 0x0b0b0 /* CSPI_MISO */
  609. MX6UL_PAD_UART4_TX_DATA__ECSPI2_SCLK 0x0b0b0 /* CSPI_SCLK */
  610. >;
  611. };
  612. pinctrl_edt_ft5x06: edt-ft5x06grp {
  613. fsl,pins = <
  614. MX6UL_PAD_SNVS_TAMPER2__GPIO5_IO02 0x1b0b0 /* Interrupt */
  615. MX6UL_PAD_SNVS_TAMPER3__GPIO5_IO03 0x1b0b0 /* Reset */
  616. MX6UL_PAD_SNVS_TAMPER8__GPIO5_IO08 0x1b0b0 /* Wake */
  617. >;
  618. };
  619. pinctrl_enet1: enet1grp {
  620. fsl,pins = <
  621. MX6UL_PAD_ENET1_RX_DATA0__ENET1_RDATA00 0x000b0
  622. MX6UL_PAD_ENET1_RX_DATA1__ENET1_RDATA01 0x000b0
  623. MX6UL_PAD_ENET1_RX_EN__ENET1_RX_EN 0x000b0
  624. MX6UL_PAD_ENET1_RX_ER__ENET1_RX_ER 0x000b0
  625. MX6UL_PAD_ENET1_TX_EN__ENET1_TX_EN 0x000b0
  626. MX6UL_PAD_ENET1_TX_DATA0__ENET1_TDATA00 0x000b0
  627. MX6UL_PAD_ENET1_TX_DATA1__ENET1_TDATA01 0x000b0
  628. MX6UL_PAD_ENET1_TX_CLK__ENET1_REF_CLK1 0x400000b1
  629. >;
  630. };
  631. pinctrl_enet2: enet2grp {
  632. fsl,pins = <
  633. MX6UL_PAD_ENET2_RX_DATA0__ENET2_RDATA00 0x000b0
  634. MX6UL_PAD_ENET2_RX_DATA1__ENET2_RDATA01 0x000b0
  635. MX6UL_PAD_ENET2_RX_EN__ENET2_RX_EN 0x000b0
  636. MX6UL_PAD_ENET2_RX_ER__ENET2_RX_ER 0x000b0
  637. MX6UL_PAD_ENET2_TX_EN__ENET2_TX_EN 0x000b0
  638. MX6UL_PAD_ENET2_TX_DATA0__ENET2_TDATA00 0x000b0
  639. MX6UL_PAD_ENET2_TX_DATA1__ENET2_TDATA01 0x000b0
  640. MX6UL_PAD_ENET2_TX_CLK__ENET2_REF_CLK2 0x400000b1
  641. >;
  642. };
  643. pinctrl_enet1_mdio: enet1-mdiogrp {
  644. fsl,pins = <
  645. MX6UL_PAD_GPIO1_IO07__ENET1_MDC 0x0b0b0
  646. MX6UL_PAD_GPIO1_IO06__ENET1_MDIO 0x1b0b0
  647. >;
  648. };
  649. pinctrl_etnphy_power: etnphy-pwrgrp {
  650. fsl,pins = <
  651. MX6UL_PAD_SNVS_TAMPER7__GPIO5_IO07 0x0b0b0 /* ETN PHY POWER */
  652. >;
  653. };
  654. pinctrl_etnphy0_int: etnphy-intgrp-0 {
  655. fsl,pins = <
  656. MX6UL_PAD_SNVS_TAMPER5__GPIO5_IO05 0x0b0b0 /* ETN PHY INT */
  657. >;
  658. };
  659. pinctrl_etnphy0_rst: etnphy-rstgrp-0 {
  660. fsl,pins = <
  661. MX6UL_PAD_SNVS_TAMPER6__GPIO5_IO06 0x0b0b0 /* ETN PHY RESET */
  662. >;
  663. };
  664. pinctrl_etnphy1_int: etnphy-intgrp-1 {
  665. fsl,pins = <
  666. MX6UL_PAD_CSI_DATA06__GPIO4_IO27 0x0b0b0 /* ETN PHY INT */
  667. >;
  668. };
  669. pinctrl_etnphy1_rst: etnphy-rstgrp-1 {
  670. fsl,pins = <
  671. MX6UL_PAD_CSI_DATA07__GPIO4_IO28 0x0b0b0 /* ETN PHY RESET */
  672. >;
  673. };
  674. pinctrl_flexcan1: flexcan1grp {
  675. fsl,pins = <
  676. MX6UL_PAD_UART3_CTS_B__FLEXCAN1_TX 0x0b0b0
  677. MX6UL_PAD_UART3_RTS_B__FLEXCAN1_RX 0x0b0b0
  678. >;
  679. };
  680. pinctrl_flexcan2: flexcan2grp {
  681. fsl,pins = <
  682. MX6UL_PAD_UART2_CTS_B__FLEXCAN2_TX 0x0b0b0
  683. MX6UL_PAD_UART2_RTS_B__FLEXCAN2_RX 0x0b0b0
  684. >;
  685. };
  686. pinctrl_flexcan_xcvr: flexcan-xcvrgrp {
  687. fsl,pins = <
  688. MX6UL_PAD_LCD_DATA00__GPIO3_IO05 0x0b0b0 /* Flexcan XCVR enable */
  689. >;
  690. };
  691. pinctrl_gpmi_nand: gpminandgrp {
  692. fsl,pins = <
  693. MX6UL_PAD_NAND_CLE__RAWNAND_CLE 0x0b0b1
  694. MX6UL_PAD_NAND_ALE__RAWNAND_ALE 0x0b0b1
  695. MX6UL_PAD_NAND_WP_B__RAWNAND_WP_B 0x0b0b1
  696. MX6UL_PAD_NAND_READY_B__RAWNAND_READY_B 0x0b000
  697. MX6UL_PAD_NAND_CE0_B__RAWNAND_CE0_B 0x0b0b1
  698. MX6UL_PAD_NAND_RE_B__RAWNAND_RE_B 0x0b0b1
  699. MX6UL_PAD_NAND_WE_B__RAWNAND_WE_B 0x0b0b1
  700. MX6UL_PAD_NAND_DATA00__RAWNAND_DATA00 0x0b0b1
  701. MX6UL_PAD_NAND_DATA01__RAWNAND_DATA01 0x0b0b1
  702. MX6UL_PAD_NAND_DATA02__RAWNAND_DATA02 0x0b0b1
  703. MX6UL_PAD_NAND_DATA03__RAWNAND_DATA03 0x0b0b1
  704. MX6UL_PAD_NAND_DATA04__RAWNAND_DATA04 0x0b0b1
  705. MX6UL_PAD_NAND_DATA05__RAWNAND_DATA05 0x0b0b1
  706. MX6UL_PAD_NAND_DATA06__RAWNAND_DATA06 0x0b0b1
  707. MX6UL_PAD_NAND_DATA07__RAWNAND_DATA07 0x0b0b1
  708. >;
  709. };
  710. pinctrl_i2c_gpio: i2c-gpiogrp {
  711. fsl,pins = <
  712. MX6UL_PAD_SNVS_TAMPER0__GPIO5_IO00 0x4001b8b1 /* I2C SCL */
  713. MX6UL_PAD_SNVS_TAMPER1__GPIO5_IO01 0x4001b8b1 /* I2C SDA */
  714. >;
  715. };
  716. pinctrl_i2c2: i2c2grp {
  717. fsl,pins = <
  718. MX6UL_PAD_GPIO1_IO00__I2C2_SCL 0x4001b8b1
  719. MX6UL_PAD_GPIO1_IO01__I2C2_SDA 0x4001b8b1
  720. >;
  721. };
  722. pinctrl_kpp: kppgrp {
  723. fsl,pins = <
  724. MX6UL_PAD_ENET2_RX_DATA1__KPP_COL04 0x1b0b0
  725. MX6UL_PAD_ENET2_TX_DATA0__KPP_COL05 0x1b0b0
  726. MX6UL_PAD_ENET2_TX_EN__KPP_COL06 0x1b0b0
  727. MX6UL_PAD_ENET2_RX_ER__KPP_COL07 0x1b0b0
  728. MX6UL_PAD_ENET2_RX_DATA0__KPP_ROW04 0x1b0b0
  729. MX6UL_PAD_ENET2_RX_EN__KPP_ROW05 0x1b0b0
  730. MX6UL_PAD_ENET2_TX_DATA1__KPP_ROW06 0x1b0b0
  731. MX6UL_PAD_ENET2_TX_CLK__KPP_ROW07 0x1b0b0
  732. >;
  733. };
  734. pinctrl_lcd_pwr: lcd-pwrgrp {
  735. fsl,pins = <
  736. MX6UL_PAD_SNVS_TAMPER4__GPIO5_IO04 0x0b0b0 /* LCD Power Enable */
  737. >;
  738. };
  739. pinctrl_lcd_rst: lcd-rstgrp {
  740. fsl,pins = <
  741. MX6UL_PAD_LCD_RESET__GPIO3_IO04 0x0b0b0 /* LCD Reset */
  742. >;
  743. };
  744. pinctrl_pwm5: pwm5grp {
  745. fsl,pins = <
  746. MX6UL_PAD_NAND_DQS__PWM5_OUT 0x0b0b0
  747. >;
  748. };
  749. pinctrl_sai2: sai2grp {
  750. fsl,pins = <
  751. MX6UL_PAD_JTAG_TCK__SAI2_RX_DATA 0x0b0b0 /* SSI1_RXD */
  752. MX6UL_PAD_JTAG_TRST_B__SAI2_TX_DATA 0x0b0b0 /* SSI1_TXD */
  753. MX6UL_PAD_JTAG_TDI__SAI2_TX_BCLK 0x0b0b0 /* SSI1_CLK */
  754. MX6UL_PAD_JTAG_TDO__SAI2_TX_SYNC 0x0b0b0 /* SSI1_FS */
  755. >;
  756. };
  757. pinctrl_spi_gpio: spi-gpiogrp {
  758. fsl,pins = <
  759. MX6UL_PAD_UART4_RX_DATA__GPIO1_IO29 0x0b0b0 /* CSPI_SS */
  760. MX6UL_PAD_JTAG_MOD__GPIO1_IO10 0x0b0b0 /* CSPI_SS */
  761. MX6UL_PAD_UART5_TX_DATA__GPIO1_IO30 0x0b0b0 /* CSPI_MOSI */
  762. MX6UL_PAD_UART5_RX_DATA__GPIO1_IO31 0x0b0b0 /* CSPI_MISO */
  763. MX6UL_PAD_UART4_TX_DATA__GPIO1_IO28 0x0b0b0 /* CSPI_SCLK */
  764. >;
  765. };
  766. pinctrl_tsc2007: tsc2007grp {
  767. fsl,pins = <
  768. MX6UL_PAD_JTAG_TMS__GPIO1_IO11 0x1b0b0 /* Interrupt */
  769. >;
  770. };
  771. pinctrl_uart1: uart1grp {
  772. fsl,pins = <
  773. MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX 0x0b0b0
  774. MX6UL_PAD_UART1_RX_DATA__UART1_DCE_RX 0x0b0b0
  775. >;
  776. };
  777. pinctrl_uart1_rtscts: uart1-rtsctsgrp {
  778. fsl,pins = <
  779. MX6UL_PAD_UART1_RTS_B__UART1_DCE_RTS 0x0b0b0
  780. MX6UL_PAD_UART1_CTS_B__UART1_DCE_CTS 0x0b0b0
  781. >;
  782. };
  783. pinctrl_uart2: uart2grp {
  784. fsl,pins = <
  785. MX6UL_PAD_UART2_TX_DATA__UART2_DCE_TX 0x0b0b0
  786. MX6UL_PAD_UART2_RX_DATA__UART2_DCE_RX 0x0b0b0
  787. >;
  788. };
  789. pinctrl_uart2_rtscts: uart2-rtsctsgrp {
  790. fsl,pins = <
  791. MX6UL_PAD_UART3_RX_DATA__UART2_DCE_RTS 0x0b0b0
  792. MX6UL_PAD_UART3_TX_DATA__UART2_DCE_CTS 0x0b0b0
  793. >;
  794. };
  795. pinctrl_uart5: uart5grp {
  796. fsl,pins = <
  797. MX6UL_PAD_GPIO1_IO04__UART5_DCE_TX 0x0b0b0
  798. MX6UL_PAD_GPIO1_IO05__UART5_DCE_RX 0x0b0b0
  799. >;
  800. };
  801. pinctrl_uart5_rtscts: uart5-rtsctsgrp {
  802. fsl,pins = <
  803. MX6UL_PAD_GPIO1_IO08__UART5_DCE_RTS 0x0b0b0
  804. MX6UL_PAD_GPIO1_IO09__UART5_DCE_CTS 0x0b0b0
  805. >;
  806. };
  807. pinctrl_usbh1_oc: usbh1-ocgrp {
  808. fsl,pins = <
  809. MX6UL_PAD_GPIO1_IO03__GPIO1_IO03 0x17059 /* USBH1_OC */
  810. >;
  811. };
  812. pinctrl_usbh1_vbus: usbh1-vbusgrp {
  813. fsl,pins = <
  814. MX6UL_PAD_GPIO1_IO02__GPIO1_IO02 0x0b0b0 /* USBH1_VBUSEN */
  815. >;
  816. };
  817. pinctrl_usbotg_oc: usbotg-ocgrp {
  818. fsl,pins = <
  819. MX6UL_PAD_UART3_RTS_B__GPIO1_IO27 0x17059 /* USBOTG_OC */
  820. >;
  821. };
  822. pinctrl_usbotg_vbus: usbotg-vbusgrp {
  823. fsl,pins = <
  824. MX6UL_PAD_UART3_CTS_B__GPIO1_IO26 0x1b0b0 /* USBOTG_VBUSEN */
  825. >;
  826. };
  827. pinctrl_usdhc1: usdhc1grp {
  828. fsl,pins = <
  829. MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x070b1
  830. MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x07099
  831. MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x070b1
  832. MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x070b1
  833. MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x070b1
  834. MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x070b1
  835. >;
  836. };
  837. pinctrl_usdhc1_cd: usdhc1cdgrp {
  838. fsl,pins = <
  839. MX6UL_PAD_NAND_CE1_B__GPIO4_IO14 0x170b0 /* SD1 CD */
  840. >;
  841. };
  842. pinctrl_usdhc2: usdhc2grp {
  843. fsl,pins = <
  844. MX6UL_PAD_NAND_WE_B__USDHC2_CMD 0x070b1
  845. MX6UL_PAD_NAND_RE_B__USDHC2_CLK 0x070b1
  846. MX6UL_PAD_NAND_DATA00__USDHC2_DATA0 0x070b1
  847. MX6UL_PAD_NAND_DATA01__USDHC2_DATA1 0x070b1
  848. MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x070b1
  849. MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x070b1
  850. /* eMMC RESET */
  851. MX6UL_PAD_NAND_ALE__USDHC2_RESET_B 0x170b0
  852. >;
  853. };
  854. };