0001 // SPDX-License-Identifier: GPL-2.0 OR MIT
0002 /dts-v1/;
0003
0004 #include <dt-bindings/input/input.h>
0005 #include "tegra20-colibri.dtsi"
0006
0007 / {
0008 model = "Toradex Colibri T20 on Colibri Evaluation Board";
0009 compatible = "toradex,colibri_t20-eval-v3", "toradex,colibri_t20",
0010 "nvidia,tegra20";
0011
0012 aliases {
0013 rtc0 = "/i2c@7000c000/rtc@68";
0014 rtc1 = "/i2c@7000d000/pmic@34";
0015 rtc2 = "/rtc@7000e000";
0016 serial0 = &uarta;
0017 serial1 = &uartd;
0018 serial2 = &uartb;
0019 };
0020
0021 chosen {
0022 stdout-path = "serial0:115200n8";
0023 };
0024
0025 host1x@50000000 {
0026 dc@54200000 {
0027 rgb {
0028 status = "okay";
0029 nvidia,panel = <&panel>;
0030 };
0031 };
0032
0033 hdmi@54280000 {
0034 status = "okay";
0035 hdmi-supply = <®_5v0>;
0036 };
0037 };
0038
0039 pinmux@70000014 {
0040 state_default: pinmux {
0041 bl-on {
0042 nvidia,tristate = <TEGRA_PIN_DISABLE>;
0043 };
0044
0045 ddc {
0046 nvidia,tristate = <TEGRA_PIN_DISABLE>;
0047 };
0048
0049 hotplug-detect {
0050 nvidia,tristate = <TEGRA_PIN_DISABLE>;
0051 };
0052
0053 i2c {
0054 nvidia,tristate = <TEGRA_PIN_DISABLE>;
0055 };
0056
0057 lcd {
0058 nvidia,tristate = <TEGRA_PIN_DISABLE>;
0059 };
0060
0061 lm1 {
0062 nvidia,tristate = <TEGRA_PIN_DISABLE>;
0063 };
0064
0065 mmc {
0066 nvidia,tristate = <TEGRA_PIN_DISABLE>;
0067 };
0068
0069 mmccd {
0070 nvidia,tristate = <TEGRA_PIN_DISABLE>;
0071 };
0072
0073 sdc {
0074 nvidia,tristate = <TEGRA_PIN_DISABLE>;
0075 };
0076
0077 sdb_sdd {
0078 nvidia,tristate = <TEGRA_PIN_DISABLE>;
0079 };
0080
0081 ssp {
0082 nvidia,tristate = <TEGRA_PIN_DISABLE>;
0083 };
0084
0085 uart-a {
0086 nvidia,tristate = <TEGRA_PIN_DISABLE>;
0087 };
0088
0089 uart-b {
0090 nvidia,tristate = <TEGRA_PIN_DISABLE>;
0091 };
0092
0093 uart-c {
0094 nvidia,tristate = <TEGRA_PIN_DISABLE>;
0095 };
0096
0097 usbh-pen {
0098 nvidia,tristate = <TEGRA_PIN_DISABLE>;
0099 };
0100 };
0101 };
0102
0103 /* Colibri UART-A */
0104 serial@70006000 {
0105 status = "okay";
0106 };
0107
0108 /* Colibri UART-C */
0109 serial@70006040 {
0110 status = "okay";
0111 };
0112
0113 /* Colibri UART-B */
0114 serial@70006300 {
0115 status = "okay";
0116 };
0117
0118 pwm@7000a000 {
0119 status = "okay";
0120 };
0121
0122 /*
0123 * GEN1_I2C: I2C_SDA/SCL on SODIMM pin 194/196 (e.g. RTC on carrier
0124 * board)
0125 */
0126 i2c@7000c000 {
0127 status = "okay";
0128 clock-frequency = <400000>;
0129
0130 /* M41T0M6 real time clock on carrier board */
0131 rtc@68 {
0132 compatible = "st,m41t0";
0133 reg = <0x68>;
0134 };
0135 };
0136
0137 /* GEN2_I2C: unused */
0138
0139 /* CAM_I2C (I2C3): unused */
0140
0141 /* DDC_CLOCK/DATA on X3 pin 15/16 (e.g. display EDID) */
0142 i2c@7000c400 {
0143 status = "okay";
0144 };
0145
0146 /* EHCI instance 0: USB1_DP/N -> USBC_P/N */
0147 usb@c5000000 {
0148 status = "okay";
0149 dr_mode = "otg";
0150 };
0151
0152 usb-phy@c5000000 {
0153 status = "okay";
0154 vbus-supply = <®_usbc_vbus>;
0155 };
0156
0157 /* EHCI instance 2: USB3_DP/N -> USBH_P/N */
0158 usb@c5008000 {
0159 status = "okay";
0160 };
0161
0162 usb-phy@c5008000 {
0163 status = "okay";
0164 vbus-supply = <®_usbh_vbus>;
0165 };
0166
0167 /* SPI4: Colibri SSP */
0168 spi@7000da00 {
0169 status = "okay";
0170 spi-max-frequency = <25000000>;
0171
0172 can@0 {
0173 compatible = "microchip,mcp2515";
0174 reg = <0>;
0175 clocks = <&clk16m>;
0176 interrupt-parent = <&gpio>;
0177 /* CAN_INT */
0178 interrupts = <TEGRA_GPIO(A, 0) IRQ_TYPE_EDGE_FALLING>;
0179 spi-max-frequency = <10000000>;
0180 vdd-supply = <®_3v3>;
0181 xceiver-supply = <®_5v0>;
0182 };
0183 };
0184
0185 /* SD/MMC */
0186 mmc@c8000600 {
0187 status = "okay";
0188 bus-width = <4>;
0189 cd-gpios = <&gpio TEGRA_GPIO(C, 7) GPIO_ACTIVE_LOW>; /* MMCD */
0190 no-1-8-v;
0191 };
0192
0193 backlight: backlight {
0194 compatible = "pwm-backlight";
0195 brightness-levels = <255 128 64 32 16 8 4 0>;
0196 default-brightness-level = <6>;
0197 /* BL_ON */
0198 enable-gpios = <&gpio TEGRA_GPIO(T, 4) GPIO_ACTIVE_HIGH>;
0199 power-supply = <®_3v3>;
0200 pwms = <&pwm 0 5000000>; /* PWM<A> */
0201 };
0202
0203 clk16m: osc3 {
0204 compatible = "fixed-clock";
0205 #clock-cells = <0>;
0206 clock-frequency = <16000000>;
0207 };
0208
0209 gpio-keys {
0210 compatible = "gpio-keys";
0211
0212 key-wakeup {
0213 label = "SODIMM pin 45 wakeup";
0214 gpios = <&gpio TEGRA_GPIO(V, 3) GPIO_ACTIVE_HIGH>;
0215 linux,code = <KEY_WAKEUP>;
0216 debounce-interval = <10>;
0217 wakeup-source;
0218 };
0219 };
0220
0221 panel: panel {
0222 /*
0223 * edt,et057090dhu: EDT 5.7" LCD TFT
0224 * edt,et070080dh6: EDT 7.0" LCD TFT
0225 */
0226 compatible = "edt,et057090dhu";
0227 backlight = <&backlight>;
0228 power-supply = <®_3v3>;
0229 };
0230
0231 reg_3v3: regulator-3v3 {
0232 compatible = "regulator-fixed";
0233 regulator-name = "3.3V_SW";
0234 regulator-min-microvolt = <3300000>;
0235 regulator-max-microvolt = <3300000>;
0236 };
0237
0238 reg_5v0: regulator-5v0 {
0239 compatible = "regulator-fixed";
0240 regulator-name = "5V_SW";
0241 regulator-min-microvolt = <5000000>;
0242 regulator-max-microvolt = <5000000>;
0243 };
0244
0245 reg_usbc_vbus: regulator-usbc-vbus {
0246 compatible = "regulator-fixed";
0247 regulator-name = "VCC_USB5";
0248 regulator-min-microvolt = <5000000>;
0249 regulator-max-microvolt = <5000000>;
0250 vin-supply = <®_5v0>;
0251 };
0252
0253 /* USBH_PEN resp. USB_P_EN */
0254 reg_usbh_vbus: regulator-usbh-vbus {
0255 compatible = "regulator-fixed";
0256 regulator-name = "VCC_USB[1-4]";
0257 regulator-min-microvolt = <5000000>;
0258 regulator-max-microvolt = <5000000>;
0259 gpio = <&gpio TEGRA_GPIO(W, 2) GPIO_ACTIVE_LOW>;
0260 vin-supply = <®_5v0>;
0261 };
0262 };