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