xref: /linux/arch/arm/boot/dts/nvidia/tegra20-colibri-eval-v3.dts (revision 9766116a12c882db802bb29fc28a3dfc2431c442)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0 OR MIT
2724ba675SRob Herring/dts-v1/;
3724ba675SRob Herring
4724ba675SRob Herring#include <dt-bindings/input/input.h>
5724ba675SRob Herring#include "tegra20-colibri.dtsi"
6724ba675SRob Herring
7724ba675SRob Herring/ {
8724ba675SRob Herring	model = "Toradex Colibri T20 on Colibri Evaluation Board";
9724ba675SRob Herring	compatible = "toradex,colibri_t20-eval-v3", "toradex,colibri_t20",
10724ba675SRob Herring		     "nvidia,tegra20";
11724ba675SRob Herring
12724ba675SRob Herring	aliases {
13724ba675SRob Herring		rtc0 = "/i2c@7000c000/rtc@68";
14724ba675SRob Herring		rtc1 = "/i2c@7000d000/pmic@34";
15724ba675SRob Herring		rtc2 = "/rtc@7000e000";
16724ba675SRob Herring		serial0 = &uarta;
17724ba675SRob Herring		serial1 = &uartd;
18724ba675SRob Herring		serial2 = &uartb;
19724ba675SRob Herring	};
20724ba675SRob Herring
21724ba675SRob Herring	chosen {
22724ba675SRob Herring		stdout-path = "serial0:115200n8";
23724ba675SRob Herring	};
24724ba675SRob Herring
25724ba675SRob Herring	host1x@50000000 {
26724ba675SRob Herring		dc@54200000 {
27724ba675SRob Herring			rgb {
28724ba675SRob Herring				status = "okay";
29724ba675SRob Herring				nvidia,panel = <&panel>;
30724ba675SRob Herring			};
31724ba675SRob Herring		};
32724ba675SRob Herring
33724ba675SRob Herring		hdmi@54280000 {
34724ba675SRob Herring			status = "okay";
35724ba675SRob Herring			hdmi-supply = <&reg_5v0>;
36724ba675SRob Herring		};
37724ba675SRob Herring	};
38724ba675SRob Herring
39724ba675SRob Herring	pinmux@70000014 {
40724ba675SRob Herring		state_default: pinmux {
41724ba675SRob Herring			bl-on {
42724ba675SRob Herring				nvidia,tristate = <TEGRA_PIN_DISABLE>;
43724ba675SRob Herring			};
44724ba675SRob Herring
45724ba675SRob Herring			ddc {
46724ba675SRob Herring				nvidia,tristate = <TEGRA_PIN_DISABLE>;
47724ba675SRob Herring			};
48724ba675SRob Herring
49724ba675SRob Herring			hotplug-detect {
50724ba675SRob Herring				nvidia,tristate = <TEGRA_PIN_DISABLE>;
51724ba675SRob Herring			};
52724ba675SRob Herring
53724ba675SRob Herring			i2c {
54724ba675SRob Herring				nvidia,tristate = <TEGRA_PIN_DISABLE>;
55724ba675SRob Herring			};
56724ba675SRob Herring
57724ba675SRob Herring			lcd {
58724ba675SRob Herring				nvidia,tristate = <TEGRA_PIN_DISABLE>;
59724ba675SRob Herring			};
60724ba675SRob Herring
61724ba675SRob Herring			lm1 {
62724ba675SRob Herring				nvidia,tristate = <TEGRA_PIN_DISABLE>;
63724ba675SRob Herring			};
64724ba675SRob Herring
65724ba675SRob Herring			mmc {
66724ba675SRob Herring				nvidia,tristate = <TEGRA_PIN_DISABLE>;
67724ba675SRob Herring			};
68724ba675SRob Herring
69724ba675SRob Herring			mmccd {
70724ba675SRob Herring				nvidia,tristate = <TEGRA_PIN_DISABLE>;
71724ba675SRob Herring			};
72724ba675SRob Herring
73724ba675SRob Herring			sdc {
74724ba675SRob Herring				nvidia,tristate = <TEGRA_PIN_DISABLE>;
75724ba675SRob Herring			};
76724ba675SRob Herring
77724ba675SRob Herring			sdb_sdd {
78724ba675SRob Herring				nvidia,tristate = <TEGRA_PIN_DISABLE>;
79724ba675SRob Herring			};
80724ba675SRob Herring
81724ba675SRob Herring			ssp {
82724ba675SRob Herring				nvidia,tristate = <TEGRA_PIN_DISABLE>;
83724ba675SRob Herring			};
84724ba675SRob Herring
85724ba675SRob Herring			uart-a {
86724ba675SRob Herring				nvidia,tristate = <TEGRA_PIN_DISABLE>;
87724ba675SRob Herring			};
88724ba675SRob Herring
89724ba675SRob Herring			uart-b {
90724ba675SRob Herring				nvidia,tristate = <TEGRA_PIN_DISABLE>;
91724ba675SRob Herring			};
92724ba675SRob Herring
93724ba675SRob Herring			uart-c {
94724ba675SRob Herring				nvidia,tristate = <TEGRA_PIN_DISABLE>;
95724ba675SRob Herring			};
96724ba675SRob Herring
97724ba675SRob Herring			usbh-pen {
98724ba675SRob Herring				nvidia,tristate = <TEGRA_PIN_DISABLE>;
99724ba675SRob Herring			};
100724ba675SRob Herring		};
101724ba675SRob Herring	};
102724ba675SRob Herring
103724ba675SRob Herring	/* Colibri UART-A */
104724ba675SRob Herring	serial@70006000 {
105*9766116aSThierry Reding		/delete-property/ dmas;
106*9766116aSThierry Reding		/delete-property/ dma-names;
107724ba675SRob Herring		status = "okay";
108724ba675SRob Herring	};
109724ba675SRob Herring
110724ba675SRob Herring	/* Colibri UART-C */
111724ba675SRob Herring	serial@70006040 {
112724ba675SRob Herring		status = "okay";
113724ba675SRob Herring	};
114724ba675SRob Herring
115724ba675SRob Herring	/* Colibri UART-B */
116724ba675SRob Herring	serial@70006300 {
117724ba675SRob Herring		status = "okay";
118724ba675SRob Herring	};
119724ba675SRob Herring
120724ba675SRob Herring	pwm@7000a000 {
121724ba675SRob Herring		status = "okay";
122724ba675SRob Herring	};
123724ba675SRob Herring
124724ba675SRob Herring	/*
125724ba675SRob Herring	 * GEN1_I2C: I2C_SDA/SCL on SODIMM pin 194/196 (e.g. RTC on carrier
126724ba675SRob Herring	 * board)
127724ba675SRob Herring	 */
128724ba675SRob Herring	i2c@7000c000 {
129724ba675SRob Herring		status = "okay";
130724ba675SRob Herring		clock-frequency = <400000>;
131724ba675SRob Herring
132724ba675SRob Herring		/* M41T0M6 real time clock on carrier board */
133724ba675SRob Herring		rtc@68 {
134724ba675SRob Herring			compatible = "st,m41t0";
135724ba675SRob Herring			reg = <0x68>;
136724ba675SRob Herring		};
137724ba675SRob Herring	};
138724ba675SRob Herring
139724ba675SRob Herring	/* GEN2_I2C: unused */
140724ba675SRob Herring
141724ba675SRob Herring	/* CAM_I2C (I2C3): unused */
142724ba675SRob Herring
143724ba675SRob Herring	/* DDC_CLOCK/DATA on X3 pin 15/16 (e.g. display EDID) */
144724ba675SRob Herring	i2c@7000c400 {
145724ba675SRob Herring		status = "okay";
146724ba675SRob Herring	};
147724ba675SRob Herring
148724ba675SRob Herring	/* SPI4: Colibri SSP */
149724ba675SRob Herring	spi@7000da00 {
150724ba675SRob Herring		status = "okay";
151724ba675SRob Herring		spi-max-frequency = <25000000>;
152724ba675SRob Herring
153724ba675SRob Herring		can@0 {
154724ba675SRob Herring			compatible = "microchip,mcp2515";
155724ba675SRob Herring			reg = <0>;
156724ba675SRob Herring			clocks = <&clk16m>;
157724ba675SRob Herring			interrupt-parent = <&gpio>;
158724ba675SRob Herring			/* CAN_INT */
159724ba675SRob Herring			interrupts = <TEGRA_GPIO(A, 0) IRQ_TYPE_EDGE_FALLING>;
160724ba675SRob Herring			spi-max-frequency = <10000000>;
161724ba675SRob Herring			vdd-supply = <&reg_3v3>;
162724ba675SRob Herring			xceiver-supply = <&reg_5v0>;
163724ba675SRob Herring		};
164724ba675SRob Herring	};
165724ba675SRob Herring
166724ba675SRob Herring	/* EHCI instance 0: USB1_DP/N -> USBC_P/N */
167724ba675SRob Herring	usb@c5000000 {
168724ba675SRob Herring		status = "okay";
169724ba675SRob Herring		dr_mode = "otg";
170724ba675SRob Herring	};
171724ba675SRob Herring
172724ba675SRob Herring	usb-phy@c5000000 {
173724ba675SRob Herring		status = "okay";
174724ba675SRob Herring		vbus-supply = <&reg_usbc_vbus>;
175724ba675SRob Herring	};
176724ba675SRob Herring
177724ba675SRob Herring	/* EHCI instance 2: USB3_DP/N -> USBH_P/N */
178724ba675SRob Herring	usb@c5008000 {
179724ba675SRob Herring		status = "okay";
180724ba675SRob Herring	};
181724ba675SRob Herring
182724ba675SRob Herring	usb-phy@c5008000 {
183724ba675SRob Herring		status = "okay";
184724ba675SRob Herring		vbus-supply = <&reg_usbh_vbus>;
185724ba675SRob Herring	};
186724ba675SRob Herring
187724ba675SRob Herring	/* SD/MMC */
188724ba675SRob Herring	mmc@c8000600 {
189724ba675SRob Herring		status = "okay";
190724ba675SRob Herring		bus-width = <4>;
191724ba675SRob Herring		cd-gpios = <&gpio TEGRA_GPIO(C, 7) GPIO_ACTIVE_LOW>; /* MMCD */
192724ba675SRob Herring		no-1-8-v;
193724ba675SRob Herring	};
194724ba675SRob Herring
195724ba675SRob Herring	backlight: backlight {
196724ba675SRob Herring		compatible = "pwm-backlight";
197724ba675SRob Herring		brightness-levels = <255 128 64 32 16 8 4 0>;
198724ba675SRob Herring		default-brightness-level = <6>;
199724ba675SRob Herring		/* BL_ON */
200724ba675SRob Herring		enable-gpios = <&gpio TEGRA_GPIO(T, 4) GPIO_ACTIVE_HIGH>;
201724ba675SRob Herring		power-supply = <&reg_3v3>;
202724ba675SRob Herring		pwms = <&pwm 0 5000000>; /* PWM<A> */
203724ba675SRob Herring	};
204724ba675SRob Herring
205724ba675SRob Herring	clk16m: clock-osc3 {
206724ba675SRob Herring		compatible = "fixed-clock";
207724ba675SRob Herring		#clock-cells = <0>;
208724ba675SRob Herring		clock-frequency = <16000000>;
209724ba675SRob Herring	};
210724ba675SRob Herring
211724ba675SRob Herring	gpio-keys {
212724ba675SRob Herring		compatible = "gpio-keys";
213724ba675SRob Herring
214724ba675SRob Herring		key-wakeup {
215724ba675SRob Herring			label = "SODIMM pin 45 wakeup";
216724ba675SRob Herring			gpios = <&gpio TEGRA_GPIO(V, 3) GPIO_ACTIVE_HIGH>;
217724ba675SRob Herring			linux,code = <KEY_WAKEUP>;
218724ba675SRob Herring			debounce-interval = <10>;
219724ba675SRob Herring			wakeup-source;
220724ba675SRob Herring		};
221724ba675SRob Herring	};
222724ba675SRob Herring
223724ba675SRob Herring	panel: panel {
224724ba675SRob Herring		/*
225724ba675SRob Herring		 * edt,et057090dhu: EDT 5.7" LCD TFT
226724ba675SRob Herring		 * edt,et070080dh6: EDT 7.0" LCD TFT
227724ba675SRob Herring		 */
228724ba675SRob Herring		compatible = "edt,et057090dhu";
229724ba675SRob Herring		backlight = <&backlight>;
230724ba675SRob Herring		power-supply = <&reg_3v3>;
231724ba675SRob Herring	};
232724ba675SRob Herring
233724ba675SRob Herring	reg_3v3: regulator-3v3 {
234724ba675SRob Herring		compatible = "regulator-fixed";
235724ba675SRob Herring		regulator-name = "3.3V_SW";
236724ba675SRob Herring		regulator-min-microvolt = <3300000>;
237724ba675SRob Herring		regulator-max-microvolt = <3300000>;
238724ba675SRob Herring	};
239724ba675SRob Herring
240724ba675SRob Herring	reg_5v0: regulator-5v0 {
241724ba675SRob Herring		compatible = "regulator-fixed";
242724ba675SRob Herring		regulator-name = "5V_SW";
243724ba675SRob Herring		regulator-min-microvolt = <5000000>;
244724ba675SRob Herring		regulator-max-microvolt = <5000000>;
245724ba675SRob Herring	};
246724ba675SRob Herring
247724ba675SRob Herring	reg_usbc_vbus: regulator-usbc-vbus {
248724ba675SRob Herring		compatible = "regulator-fixed";
249724ba675SRob Herring		regulator-name = "VCC_USB5";
250724ba675SRob Herring		regulator-min-microvolt = <5000000>;
251724ba675SRob Herring		regulator-max-microvolt = <5000000>;
252724ba675SRob Herring		vin-supply = <&reg_5v0>;
253724ba675SRob Herring	};
254724ba675SRob Herring
255724ba675SRob Herring	/* USBH_PEN resp. USB_P_EN */
256724ba675SRob Herring	reg_usbh_vbus: regulator-usbh-vbus {
257724ba675SRob Herring		compatible = "regulator-fixed";
258724ba675SRob Herring		regulator-name = "VCC_USB[1-4]";
259724ba675SRob Herring		regulator-min-microvolt = <5000000>;
260724ba675SRob Herring		regulator-max-microvolt = <5000000>;
261724ba675SRob Herring		gpio = <&gpio TEGRA_GPIO(W, 2) GPIO_ACTIVE_LOW>;
262724ba675SRob Herring		vin-supply = <&reg_5v0>;
263724ba675SRob Herring	};
264724ba675SRob Herring};
265