tegra124-apalis-eval.dts 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255
  1. // SPDX-License-Identifier: GPL-2.0 OR X11
  2. /*
  3. * Copyright 2016-2019 Toradex AG
  4. */
  5. /dts-v1/;
  6. #include <dt-bindings/input/input.h>
  7. #include "tegra124-apalis.dtsi"
  8. / {
  9. model = "Toradex Apalis TK1 on Apalis Evaluation Board";
  10. compatible = "toradex,apalis-tk1-eval", "toradex,apalis-tk1",
  11. "nvidia,tegra124";
  12. aliases {
  13. rtc0 = "/i2c@7000c000/rtc@68";
  14. rtc1 = "/i2c@7000d000/pmic@40";
  15. rtc2 = "/rtc@7000e000";
  16. serial0 = &uarta;
  17. serial1 = &uartb;
  18. serial2 = &uartc;
  19. serial3 = &uartd;
  20. };
  21. chosen {
  22. stdout-path = "serial0:115200n8";
  23. };
  24. pcie@1003000 {
  25. pci@1,0 {
  26. status = "okay";
  27. };
  28. };
  29. host1x@50000000 {
  30. hdmi@54280000 {
  31. status = "okay";
  32. hdmi-supply = <&reg_5v0>;
  33. };
  34. };
  35. /* Apalis UART1 */
  36. serial@70006000 {
  37. status = "okay";
  38. };
  39. /* Apalis UART2 */
  40. serial@70006040 {
  41. status = "okay";
  42. };
  43. /* Apalis UART3 */
  44. serial@70006200 {
  45. status = "okay";
  46. };
  47. /* Apalis UART4 */
  48. serial@70006300 {
  49. status = "okay";
  50. };
  51. pwm@7000a000 {
  52. status = "okay";
  53. };
  54. /*
  55. * GEN1_I2C: I2C1_SDA/SCL on MXM3 pin 209/211 (e.g. RTC on carrier
  56. * board)
  57. */
  58. i2c@7000c000 {
  59. status = "okay";
  60. clock-frequency = <400000>;
  61. pcie-switch@58 {
  62. compatible = "plx,pex8605";
  63. reg = <0x58>;
  64. };
  65. /* M41T0M6 real time clock on carrier board */
  66. rtc@68 {
  67. compatible = "st,m41t0";
  68. reg = <0x68>;
  69. };
  70. };
  71. /*
  72. * GEN2_I2C: I2C2_SDA/SCL (DDC) on MXM3 pin 205/207 (e.g. display EDID)
  73. */
  74. i2c@7000c400 {
  75. status = "okay";
  76. };
  77. /*
  78. * CAM_I2C: I2C3_SDA/SCL (CAM) on MXM3 pin 201/203 (e.g. camera sensor
  79. * on carrier board)
  80. */
  81. i2c@7000c500 {
  82. status = "okay";
  83. clock-frequency = <400000>;
  84. };
  85. /* I2C4 (DDC): unused */
  86. /* SPI1: Apalis SPI1 */
  87. spi@7000d400 {
  88. status = "okay";
  89. spi-max-frequency = <50000000>;
  90. };
  91. /* SPI4: Apalis SPI2 */
  92. spi@7000da00 {
  93. status = "okay";
  94. spi-max-frequency = <50000000>;
  95. };
  96. /* Apalis Serial ATA */
  97. sata@70020000 {
  98. status = "okay";
  99. target-5v-supply = <&reg_5v0>;
  100. target-12v-supply = <&reg_12v0>;
  101. };
  102. hda@70030000 {
  103. status = "okay";
  104. };
  105. usb@70090000 {
  106. status = "okay";
  107. };
  108. /* Apalis MMC1 */
  109. mmc@700b0000 {
  110. status = "okay";
  111. bus-width = <4>;
  112. /* MMC1_CD# */
  113. cd-gpios = <&gpio TEGRA_GPIO(V, 3) GPIO_ACTIVE_LOW>;
  114. vqmmc-supply = <&vddio_sdmmc1>;
  115. };
  116. /* Apalis SD1 */
  117. mmc@700b0400 {
  118. status = "okay";
  119. bus-width = <4>;
  120. /* SD1_CD# */
  121. cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>;
  122. vqmmc-supply = <&vddio_sdmmc3>;
  123. };
  124. /* EHCI instance 0: USB1_DP/N -> USBO1_DP/N */
  125. usb@7d000000 {
  126. status = "okay";
  127. dr_mode = "otg";
  128. };
  129. usb-phy@7d000000 {
  130. status = "okay";
  131. vbus-supply = <&reg_usbo1_vbus>;
  132. };
  133. /* EHCI instance 1: USB2_DP/N -> USBH2_DP/N */
  134. usb@7d004000 {
  135. status = "okay";
  136. };
  137. usb-phy@7d004000 {
  138. status = "okay";
  139. vbus-supply = <&reg_usbh_vbus>;
  140. };
  141. /* EHCI instance 2: USB3_DP/N -> USBH4_DP/N */
  142. usb@7d008000 {
  143. status = "okay";
  144. };
  145. usb-phy@7d008000 {
  146. status = "okay";
  147. vbus-supply = <&reg_usbh_vbus>;
  148. };
  149. backlight: backlight {
  150. compatible = "pwm-backlight";
  151. brightness-levels = <255 231 223 207 191 159 127 0>;
  152. default-brightness-level = <6>;
  153. /* BKL1_ON */
  154. enable-gpios = <&gpio TEGRA_GPIO(BB, 5) GPIO_ACTIVE_HIGH>;
  155. power-supply = <&reg_3v3>;
  156. pwms = <&pwm 3 5000000>; /* BKL1_PWM */
  157. };
  158. gpio-keys {
  159. compatible = "gpio-keys";
  160. key-wakeup {
  161. label = "WAKE1_MICO";
  162. gpios = <&gpio TEGRA_GPIO(DD, 3) GPIO_ACTIVE_LOW>;
  163. linux,code = <KEY_WAKEUP>;
  164. debounce-interval = <10>;
  165. wakeup-source;
  166. };
  167. };
  168. reg_3v3: regulator-3v3 {
  169. compatible = "regulator-fixed";
  170. regulator-name = "3.3V_SW";
  171. regulator-min-microvolt = <3300000>;
  172. regulator-max-microvolt = <3300000>;
  173. };
  174. reg_5v0: regulator-5v0 {
  175. compatible = "regulator-fixed";
  176. regulator-name = "5V_SW";
  177. regulator-min-microvolt = <5000000>;
  178. regulator-max-microvolt = <5000000>;
  179. };
  180. reg_12v0: regulator-12v0 {
  181. compatible = "regulator-fixed";
  182. regulator-name = "12V_SW";
  183. regulator-min-microvolt = <12000000>;
  184. regulator-max-microvolt = <12000000>;
  185. };
  186. /* USBO1_EN */
  187. reg_usbo1_vbus: regulator-usbo1-vbus {
  188. compatible = "regulator-fixed";
  189. regulator-name = "VCC_USBO1";
  190. regulator-min-microvolt = <5000000>;
  191. regulator-max-microvolt = <5000000>;
  192. gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>;
  193. enable-active-high;
  194. vin-supply = <&reg_5v0>;
  195. };
  196. /* USBH_EN */
  197. reg_usbh_vbus: regulator-usbh-vbus {
  198. compatible = "regulator-fixed";
  199. regulator-name = "VCC_USBH(2A|2C|2D|3|4)";
  200. regulator-min-microvolt = <5000000>;
  201. regulator-max-microvolt = <5000000>;
  202. gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>;
  203. enable-active-high;
  204. vin-supply = <&reg_5v0>;
  205. };
  206. };
  207. &gpio {
  208. /* Apalis GPIO7 MXM3 pin 15 PLX PEX 8605 PCIe Switch Reset */
  209. pex-perst-n-hog {
  210. gpio-hog;
  211. gpios = <TEGRA_GPIO(DD, 1) GPIO_ACTIVE_HIGH>;
  212. output-high;
  213. line-name = "PEX_PERST_N";
  214. };
  215. };