imx6dl-colibri-iris.dts 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
  2. /*
  3. * Copyright 2022 Toradex
  4. */
  5. /dts-v1/;
  6. #include <dt-bindings/input/input.h>
  7. #include <dt-bindings/interrupt-controller/irq.h>
  8. #include "imx6dl.dtsi"
  9. #include "imx6qdl-colibri.dtsi"
  10. / {
  11. model = "Toradex Colibri iMX6DL/S on Colibri Iris Board";
  12. compatible = "toradex,colibri_imx6dl-iris", "toradex,colibri_imx6dl",
  13. "fsl,imx6dl";
  14. aliases {
  15. i2c0 = &i2c2;
  16. i2c1 = &i2c3;
  17. };
  18. aliases {
  19. rtc0 = &rtc_i2c;
  20. rtc1 = &snvs_rtc;
  21. };
  22. chosen {
  23. stdout-path = "serial0:115200n8";
  24. };
  25. };
  26. /* Colibri SSP */
  27. &ecspi4 {
  28. status = "okay";
  29. };
  30. &gpio2 {
  31. pinctrl-names = "default";
  32. pinctrl-0 = <&pinctrl_uart1_forceoff &pinctrl_uart23_forceoff>;
  33. /*
  34. * uart-a-on-x13-enable turns the UART transceiver for UART_A on. If one
  35. * wants to turn the transceiver off, that property has to be deleted
  36. * and the gpio handled in userspace.
  37. * The same applies to uart-b-c-on-x14-enable where the UART_B and
  38. * UART_C transceiver is turned on.
  39. */
  40. uart-a-on-x13-enable-hog {
  41. gpio-hog;
  42. gpios = <4 GPIO_ACTIVE_HIGH>; /* SODIMM 102 */
  43. output-high;
  44. };
  45. uart-b-c-on-x14-enable-hog {
  46. gpio-hog;
  47. gpios = <8 GPIO_ACTIVE_HIGH>; /* SODIMM 104 */
  48. output-high;
  49. };
  50. };
  51. /*
  52. * Colibri I2C: I2C3_SDA/SCL on SODIMM 194/196 (e.g. RTC on carrier board)
  53. */
  54. &i2c3 {
  55. status = "okay";
  56. rtc_i2c: rtc@68 {
  57. compatible = "st,m41t0";
  58. reg = <0x68>;
  59. };
  60. };
  61. &iomuxc {
  62. pinctrl-names = "default";
  63. pinctrl-0 = <
  64. &pinctrl_gpio_iris
  65. &pinctrl_usbh_oc_1
  66. &pinctrl_usbc_id_1
  67. >;
  68. pinctrl_gpio_iris: gpioirisgrp {
  69. fsl,pins = <
  70. MX6QDL_PAD_EIM_A17__GPIO2_IO21 0x1b0b0
  71. MX6QDL_PAD_EIM_A18__GPIO2_IO20 0x1b0b0
  72. MX6QDL_PAD_EIM_A19__GPIO2_IO19 0x1b0b0
  73. MX6QDL_PAD_EIM_A20__GPIO2_IO18 0x1b0b0
  74. MX6QDL_PAD_EIM_A23__GPIO6_IO06 0x1b0b0
  75. MX6QDL_PAD_EIM_D27__GPIO3_IO27 0x1b0b0
  76. MX6QDL_PAD_NANDF_D3__GPIO2_IO03 0x1b0b0
  77. MX6QDL_PAD_SD2_DAT0__GPIO1_IO15 0x1b0b0
  78. >;
  79. };
  80. pinctrl_uart1_forceoff: uart1forceoffgrp {
  81. fsl,pins = <
  82. MX6QDL_PAD_NANDF_D4__GPIO2_IO04 0x1b0b0
  83. >;
  84. };
  85. pinctrl_uart23_forceoff: uart23forceoffgrp {
  86. fsl,pins = <
  87. MX6QDL_PAD_SD4_DAT0__GPIO2_IO08 0x1b0b0
  88. >;
  89. };
  90. };
  91. &pwm1 {
  92. status = "okay";
  93. };
  94. &pwm2 {
  95. status = "okay";
  96. };
  97. &pwm3 {
  98. status = "okay";
  99. };
  100. &pwm4 {
  101. status = "okay";
  102. };
  103. &reg_usb_host_vbus {
  104. status = "okay";
  105. };
  106. &uart1 {
  107. status = "okay";
  108. };
  109. &uart2 {
  110. status = "okay";
  111. };
  112. &uart3 {
  113. status = "okay";
  114. };
  115. &usbh1 {
  116. vbus-supply = <&reg_usb_host_vbus>;
  117. status = "okay";
  118. };
  119. &usbotg {
  120. status = "okay";
  121. };
  122. /* Colibri MMC */
  123. &usdhc1 {
  124. status = "okay";
  125. };