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