1// SPDX-License-Identifier: GPL-2.0
2/dts-v1/;
3
4#include <dt-bindings/input/input.h>
5#include "tegra30-colibri.dtsi"
6
7/ {
8	model = "Toradex Colibri T30 on Colibri Evaluation Board";
9	compatible = "toradex,colibri_t30-eval-v3", "toradex,colibri_t30",
10		     "nvidia,tegra30";
11
12	aliases {
13		rtc0 = "/i2c@7000c000/rtc@68";
14		rtc1 = "/i2c@7000d000/pmic@2d";
15		rtc2 = "/rtc@7000e000";
16		serial0 = &uarta;
17		serial1 = &uartb;
18		serial2 = &uartd;
19	};
20
21	chosen {
22		stdout-path = "serial0:115200n8";
23	};
24
25	host1x@50000000 {
26		dc@54200000 {
27			rgb {
28				status = "okay";
29				nvidia,panel = <&panel>;
30			};
31		};
32
33		hdmi@54280000 {
34			status = "okay";
35			hdmi-supply = <&reg_5v0>;
36		};
37	};
38
39	/* Colibri UART-A */
40	serial@70006000 {
41		/delete-property/ dmas;
42		/delete-property/ dma-names;
43		status = "okay";
44	};
45
46	/* Colibri UART-C */
47	serial@70006040 {
48		status = "okay";
49	};
50
51	/* Colibri UART-B */
52	serial@70006300 {
53		status = "okay";
54	};
55
56	pwm@7000a000 {
57		status = "okay";
58	};
59
60	/*
61	 * GEN1_I2C: I2C_SDA/SCL on SODIMM pin 194/196 (e.g. RTC on carrier
62	 * board)
63	 */
64	i2c@7000c000 {
65		status = "okay";
66		clock-frequency = <400000>;
67
68		/* M41T0M6 real time clock on carrier board */
69		rtc@68 {
70			compatible = "st,m41t0";
71			reg = <0x68>;
72		};
73	};
74
75	/* GEN2_I2C: unused */
76
77	/* CAM_I2C (I2C3): unused */
78
79	/* DDC_CLOCK/DATA on X3 pin 15/16 (e.g. display EDID) */
80	i2c@7000c700 {
81		status = "okay";
82	};
83
84	/* SPI1: Colibri SSP */
85	spi@7000d400 {
86		status = "okay";
87		spi-max-frequency = <25000000>;
88
89		can@0 {
90			compatible = "microchip,mcp2515";
91			reg = <0>;
92			clocks = <&clk16m>;
93			interrupt-parent = <&gpio>;
94			/* CAN_INT */
95			interrupts = <TEGRA_GPIO(S, 0) IRQ_TYPE_EDGE_FALLING>;
96			spi-max-frequency = <10000000>;
97			vdd-supply = <&reg_3v3>;
98			xceiver-supply = <&reg_5v0>;
99		};
100	};
101
102	/* SD/MMC */
103	mmc@78000200 {
104		status = "okay";
105		bus-width = <4>;
106		cd-gpios = <&gpio TEGRA_GPIO(C, 7) GPIO_ACTIVE_LOW>; /* MMCD */
107		no-1-8-v;
108	};
109
110	/* EHCI instance 0: USB1_DP/N -> USBC_P/N */
111	usb@7d000000 {
112		status = "okay";
113		dr_mode = "otg";
114	};
115
116	usb-phy@7d000000 {
117		status = "okay";
118		vbus-supply = <&reg_usbc_vbus>;
119	};
120
121	/* EHCI instance 2: USB3_DP/N -> USBH_P/N */
122	usb@7d008000 {
123		status = "okay";
124	};
125
126	usb-phy@7d008000 {
127		status = "okay";
128		vbus-supply = <&reg_usbh_vbus>;
129	};
130
131	backlight: backlight {
132		compatible = "pwm-backlight";
133		brightness-levels = <255 128 64 32 16 8 4 0>;
134		default-brightness-level = <6>;
135		/* BL_ON */
136		enable-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_HIGH>;
137		power-supply = <&reg_3v3>;
138		pwms = <&pwm 0 5000000>; /* PWM<A> */
139	};
140
141	clk16m: clock-osc3 {
142		compatible = "fixed-clock";
143		#clock-cells = <0>;
144		clock-frequency = <16000000>;
145	};
146
147	gpio-keys {
148		compatible = "gpio-keys";
149
150		key-wakeup {
151			label = "SODIMM pin 45 wakeup";
152			gpios = <&gpio TEGRA_GPIO(V, 1) GPIO_ACTIVE_HIGH>;
153			linux,code = <KEY_WAKEUP>;
154			debounce-interval = <10>;
155			wakeup-source;
156		};
157	};
158
159	panel: panel {
160		/*
161		 * edt,et057090dhu: EDT 5.7" LCD TFT
162		 * edt,et070080dh6: EDT 7.0" LCD TFT
163		 */
164		compatible = "edt,et057090dhu";
165		backlight = <&backlight>;
166		power-supply = <&reg_3v3>;
167	};
168
169	reg_3v3: regulator-3v3 {
170		compatible = "regulator-fixed";
171		regulator-name = "3.3V_SW";
172		regulator-min-microvolt = <3300000>;
173		regulator-max-microvolt = <3300000>;
174	};
175
176	reg_5v0: regulator-5v0 {
177		compatible = "regulator-fixed";
178		regulator-name = "5V_SW";
179		regulator-min-microvolt = <5000000>;
180		regulator-max-microvolt = <5000000>;
181	};
182
183	reg_usbc_vbus: regulator-usbc-vbus {
184		compatible = "regulator-fixed";
185		regulator-name = "VCC_USB5";
186		regulator-min-microvolt = <5000000>;
187		regulator-max-microvolt = <5000000>;
188		vin-supply = <&reg_5v0>;
189	};
190
191	/* USBH_PEN resp. USB_P_EN */
192	reg_usbh_vbus: regulator-usbh-vbus {
193		compatible = "regulator-fixed";
194		regulator-name = "VCC_USB[1-4]";
195		regulator-min-microvolt = <5000000>;
196		regulator-max-microvolt = <5000000>;
197		gpio = <&gpio TEGRA_GPIO(W, 2) GPIO_ACTIVE_LOW>;
198		vin-supply = <&reg_5v0>;
199	};
200};
201