1/dts-v1/;
2
3#include "tegra20.dtsi"
4
5/ {
6	model = "Toradex Colibri T20";
7	compatible = "toradex,colibri_t20", "nvidia,tegra20";
8
9	chosen {
10		stdout-path = &uarta;
11	};
12
13	aliases {
14		i2c0 = "/i2c@7000d000";
15		i2c1 = "/i2c@7000c000";
16		i2c2 = "/i2c@7000c400";
17		mmc0 = "/sdhci@c8000600";
18		usb0 = "/usb@c5000000";
19		usb1 = "/usb@c5004000"; /* On-module only, for ASIX */
20		usb2 = "/usb@c5008000";
21	};
22
23	host1x@50000000 {
24		dc@54200000 {
25			rgb {
26				status = "okay";
27				nvidia,panel = <&lcd_panel>;
28				display-timings {
29					timing@0 {
30						/* VESA VGA */
31						clock-frequency = <25175000>;
32						hactive = <640>;
33						vactive = <480>;
34						hback-porch = <48>;
35						hfront-porch = <16>;
36						hsync-len = <96>;
37						vback-porch = <31>;
38						vfront-porch = <11>;
39						vsync-len = <2>;
40					};
41				};
42			};
43		};
44	};
45
46	nand-controller@70008000 {
47		nvidia,wp-gpios = <&gpio TEGRA_GPIO(S, 0) GPIO_ACTIVE_HIGH>;
48		nvidia,width = <8>;
49		nvidia,timing = <15 100 25 80 25 10 15 10 100>;
50
51		nand@0 {
52			reg = <0>;
53			compatible = "nand-flash";
54		};
55	};
56
57	pwm@7000a000 {
58		status = "okay";
59	};
60
61	/*
62	 * GEN1_I2C: I2C_SDA/SCL on SODIMM pin 194/196 (e.g. RTC on carrier
63	 * board)
64	 */
65	i2c@7000c000 {
66		status = "okay";
67		clock-frequency = <400000>;
68	};
69
70	/* GEN2_I2C: unused */
71
72	/* DDC_CLOCK/DATA on X3 pin 15/16 (e.g. display EDID) */
73	i2c@7000c400 {
74		status = "okay";
75		clock-frequency = <10000>;
76	};
77
78	/*
79	 * PWR_I2C: power I2C to PMIC and temperature sensor
80	 */
81	i2c@7000d000 {
82		status = "okay";
83		clock-frequency = <100000>;
84	};
85
86	/* EHCI instance 0: USB1_DP/N -> USBC_P/N */
87	usb@c5000000 {
88		status = "okay";
89		dr_mode = "otg";
90	};
91
92	/* EHCI instance 1: ULPI -> USB3340 -> AX88772B */
93	usb@c5004000 {
94		status = "okay";
95		/* ULPI_RESET */
96		nvidia,phy-reset-gpio =
97				<&gpio TEGRA_GPIO(V, 1) GPIO_ACTIVE_LOW>;
98		/* VBUS_LAN */
99		nvidia,vbus-gpio = <&gpio TEGRA_GPIO(BB, 1) GPIO_ACTIVE_HIGH>;
100	};
101
102	/* EHCI instance 2: USB3_DP/N -> USBH_P/N */
103	usb@c5008000 {
104		status = "okay";
105		/* USBH_PEN */
106		nvidia,vbus-gpio = <&gpio TEGRA_GPIO(W, 2) GPIO_ACTIVE_LOW>;
107	};
108
109	sdhci@c8000600 {
110		status = "okay";
111		bus-width = <4>;
112		cd-gpios = <&gpio TEGRA_GPIO(C, 7) GPIO_ACTIVE_LOW>;
113	};
114
115	backlight: backlight {
116		compatible = "pwm-backlight";
117
118		brightness-levels = <255 128 64 32 16 8 4 0>;
119		default-brightness-level = <6>;
120		/* BL_ON */
121		enable-gpios = <&gpio TEGRA_GPIO(T, 4) GPIO_ACTIVE_HIGH>;
122		power-supply = <&reg_3v3>;
123		/* PWM<A> */
124		pwms = <&pwm 0 5000000>;
125	};
126
127	clocks {
128		compatible = "simple-bus";
129		#address-cells = <1>;
130		#size-cells = <0>;
131
132		clk32k_in: clock@0 {
133			compatible = "fixed-clock";
134			reg=<0>;
135			#clock-cells = <0>;
136			clock-frequency = <32768>;
137		};
138	};
139
140	lcd_panel: panel {
141		/*
142		 * edt,et057090dhu: EDT 5.7" LCD TFT
143		 * edt,et070080dh6: EDT 7.0" LCD TFT
144		 */
145		compatible = "edt,et057090dhu", "simple-panel";
146
147		backlight = <&backlight>;
148	};
149
150	regulators {
151		compatible = "simple-bus";
152		#address-cells = <1>;
153		#size-cells = <0>;
154
155		reg_3v3: regulator@0 {
156			compatible = "regulator-fixed";
157			reg = <0>;
158			regulator-name = "+V3.3";
159			regulator-min-microvolt = <3300000>;
160			regulator-max-microvolt = <3300000>;
161			regulator-always-on;
162		};
163	};
164};
165
166&uarta {
167	status = "okay";
168};
169