xref: /freebsd-src/sys/contrib/device-tree/src/arm/nvidia/tegra20-colibri.dtsi (revision 7d0873ebb83b19ba1e8a89e679470d885efe12e3)
1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2f126890aSEmmanuel Vadot#include "tegra20.dtsi"
3f126890aSEmmanuel Vadot
4f126890aSEmmanuel Vadot/*
5f126890aSEmmanuel Vadot * Toradex Colibri T20 Module Device Tree
6f126890aSEmmanuel Vadot * Compatible for Revisions Colibri T20 256MB V1.1B, V1.2A;
7f126890aSEmmanuel Vadot * Colibri T20 256MB IT V1.2A; Colibri T20 512MB V1.1C, V1.2A;
8f126890aSEmmanuel Vadot * Colibri T20 512MB IT V1.2A
9f126890aSEmmanuel Vadot */
10f126890aSEmmanuel Vadot/ {
11f126890aSEmmanuel Vadot	memory@0 {
12f126890aSEmmanuel Vadot		/*
13f126890aSEmmanuel Vadot		 * Set memory to 256 MB to be safe as this could be used on
14f126890aSEmmanuel Vadot		 * 256 or 512 MB module. It is expected from bootloader
15f126890aSEmmanuel Vadot		 * to fix this up for 512 MB version.
16f126890aSEmmanuel Vadot		 */
17f126890aSEmmanuel Vadot		reg = <0x00000000 0x10000000>;
18f126890aSEmmanuel Vadot	};
19f126890aSEmmanuel Vadot
20f126890aSEmmanuel Vadot	host1x@50000000 {
21f126890aSEmmanuel Vadot		hdmi@54280000 {
22f126890aSEmmanuel Vadot			nvidia,ddc-i2c-bus = <&hdmi_ddc>;
23f126890aSEmmanuel Vadot			nvidia,hpd-gpio =
24f126890aSEmmanuel Vadot				<&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>;
25f126890aSEmmanuel Vadot			pll-supply = <&reg_1v8_avdd_hdmi_pll>;
26f126890aSEmmanuel Vadot			vdd-supply = <&reg_3v3_avdd_hdmi>;
27f126890aSEmmanuel Vadot		};
28f126890aSEmmanuel Vadot	};
29f126890aSEmmanuel Vadot
30f126890aSEmmanuel Vadot	gpio@6000d000 {
31f126890aSEmmanuel Vadot		lan-reset-n-hog {
32f126890aSEmmanuel Vadot			gpio-hog;
33f126890aSEmmanuel Vadot			gpios = <TEGRA_GPIO(V, 4) GPIO_ACTIVE_HIGH>;
34f126890aSEmmanuel Vadot			output-high;
35f126890aSEmmanuel Vadot			line-name = "LAN_RESET#";
36f126890aSEmmanuel Vadot		};
37f126890aSEmmanuel Vadot
38f126890aSEmmanuel Vadot		/* Tri-stating GMI_WR_N on SODIMM pin 99 nPWE */
39f126890aSEmmanuel Vadot		npwe-hog {
40f126890aSEmmanuel Vadot			gpio-hog;
41f126890aSEmmanuel Vadot			gpios = <TEGRA_GPIO(T, 5) GPIO_ACTIVE_HIGH>;
42f126890aSEmmanuel Vadot			output-high;
43f126890aSEmmanuel Vadot			line-name = "Tri-state nPWE";
44f126890aSEmmanuel Vadot		};
45f126890aSEmmanuel Vadot
46f126890aSEmmanuel Vadot		/* Not tri-stating GMI_WR_N on SODIMM pin 93 RDnWR */
47f126890aSEmmanuel Vadot		rdnwr-hog {
48f126890aSEmmanuel Vadot			gpio-hog;
49f126890aSEmmanuel Vadot			gpios = <TEGRA_GPIO(T, 6) GPIO_ACTIVE_HIGH>;
50f126890aSEmmanuel Vadot			output-low;
51f126890aSEmmanuel Vadot			line-name = "Not tri-state RDnWR";
52f126890aSEmmanuel Vadot		};
53f126890aSEmmanuel Vadot	};
54f126890aSEmmanuel Vadot
55f126890aSEmmanuel Vadot	pinmux@70000014 {
56f126890aSEmmanuel Vadot		pinctrl-names = "default";
57f126890aSEmmanuel Vadot		pinctrl-0 = <&state_default>;
58f126890aSEmmanuel Vadot
59f126890aSEmmanuel Vadot		state_default: pinmux {
60f126890aSEmmanuel Vadot			/* Analogue Audio AC97 to WM9712 (On-module) */
61f126890aSEmmanuel Vadot			audio-refclk {
62f126890aSEmmanuel Vadot				nvidia,pins = "cdev1";
63f126890aSEmmanuel Vadot				nvidia,function = "plla_out";
64f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
65f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_DISABLE>;
66f126890aSEmmanuel Vadot			};
67f126890aSEmmanuel Vadot			dap3 {
68f126890aSEmmanuel Vadot				nvidia,pins = "dap3";
69f126890aSEmmanuel Vadot				nvidia,function = "dap3";
70f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
71f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_DISABLE>;
72f126890aSEmmanuel Vadot			};
73f126890aSEmmanuel Vadot
74f126890aSEmmanuel Vadot			/*
75f126890aSEmmanuel Vadot			 * AC97_RESET, ULPI_RESET, AC97_INT aka WM9712 GENIRQ
76f126890aSEmmanuel Vadot			 * (All on-module), SODIMM Pin 45 Wakeup
77f126890aSEmmanuel Vadot			 */
78f126890aSEmmanuel Vadot			gpio-uac {
79f126890aSEmmanuel Vadot				nvidia,pins = "uac";
80f126890aSEmmanuel Vadot				nvidia,function = "rsvd2";
81f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
82f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_DISABLE>;
83f126890aSEmmanuel Vadot			};
84f126890aSEmmanuel Vadot
85f126890aSEmmanuel Vadot			/*
86f126890aSEmmanuel Vadot			 * Buffer Enables for nPWE and RDnWR (On-module,
87f126890aSEmmanuel Vadot			 * see GPIO hogging further down below)
88f126890aSEmmanuel Vadot			 */
89f126890aSEmmanuel Vadot			gpio-pta {
90f126890aSEmmanuel Vadot				nvidia,pins = "pta";
91f126890aSEmmanuel Vadot				nvidia,function = "rsvd4";
92f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
93f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_DISABLE>;
94f126890aSEmmanuel Vadot			};
95f126890aSEmmanuel Vadot
96f126890aSEmmanuel Vadot			/*
97f126890aSEmmanuel Vadot			 * CLK_32K_OUT, CORE_PWR_REQ, CPU_PWR_REQ, PWR_INT_N,
98f126890aSEmmanuel Vadot			 * SYS_CLK_REQ (All on-module)
99f126890aSEmmanuel Vadot			 */
100f126890aSEmmanuel Vadot			pmc {
101f126890aSEmmanuel Vadot				nvidia,pins = "pmc";
102f126890aSEmmanuel Vadot				nvidia,function = "pwr_on";
103f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_DISABLE>;
104f126890aSEmmanuel Vadot			};
105f126890aSEmmanuel Vadot
106f126890aSEmmanuel Vadot			/*
107f126890aSEmmanuel Vadot			 * Colibri Address/Data Bus (GMI)
108f126890aSEmmanuel Vadot			 * Note: spid and spie optionally used for SPI1
109f126890aSEmmanuel Vadot			 */
110f126890aSEmmanuel Vadot			gmi {
111f126890aSEmmanuel Vadot				nvidia,pins = "atc", "atd", "ate", "dap1",
112f126890aSEmmanuel Vadot					      "dap2", "dap4", "gmd", "gpu",
113f126890aSEmmanuel Vadot					      "irrx", "irtx", "spia", "spib",
114f126890aSEmmanuel Vadot					      "spic", "spid", "spie", "uca",
115f126890aSEmmanuel Vadot					      "ucb";
116f126890aSEmmanuel Vadot				nvidia,function = "gmi";
117f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
118f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
119f126890aSEmmanuel Vadot			};
120f126890aSEmmanuel Vadot			/* Further pins may be used as GPIOs */
121f126890aSEmmanuel Vadot			gmi-gpio1 {
122f126890aSEmmanuel Vadot				nvidia,pins = "lpw0", "lsc1", "lsck", "lsda";
123f126890aSEmmanuel Vadot				nvidia,function = "hdmi";
124f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
125f126890aSEmmanuel Vadot			};
126f126890aSEmmanuel Vadot			gmi-gpio2 {
127f126890aSEmmanuel Vadot				nvidia,pins = "lcsn", "ldc", "lm0", "lsdi";
128f126890aSEmmanuel Vadot				nvidia,function = "rsvd4";
129f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
130f126890aSEmmanuel Vadot			};
131f126890aSEmmanuel Vadot
132f126890aSEmmanuel Vadot			/* Colibri BL_ON */
133f126890aSEmmanuel Vadot			bl-on {
134f126890aSEmmanuel Vadot				nvidia,pins = "dta";
135f126890aSEmmanuel Vadot				nvidia,function = "rsvd1";
136f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
137f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
138f126890aSEmmanuel Vadot			};
139f126890aSEmmanuel Vadot
140f126890aSEmmanuel Vadot			/* Colibri Backlight PWM<A>, PWM<B> */
141f126890aSEmmanuel Vadot			sdc {
142f126890aSEmmanuel Vadot				nvidia,pins = "sdc";
143f126890aSEmmanuel Vadot				nvidia,function = "pwm";
144f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
145f126890aSEmmanuel Vadot			};
146f126890aSEmmanuel Vadot
147f126890aSEmmanuel Vadot			/* Colibri DDC */
148f126890aSEmmanuel Vadot			ddc {
149f126890aSEmmanuel Vadot				nvidia,pins = "ddc";
150f126890aSEmmanuel Vadot				nvidia,function = "i2c2";
151f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_UP>;
152f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
153f126890aSEmmanuel Vadot			};
154f126890aSEmmanuel Vadot
155f126890aSEmmanuel Vadot			/*
156f126890aSEmmanuel Vadot			 * Colibri EXT_IO*
157f126890aSEmmanuel Vadot			 * Note: dtf optionally used for I2C3
158f126890aSEmmanuel Vadot			 */
159f126890aSEmmanuel Vadot			ext-io {
160f126890aSEmmanuel Vadot				nvidia,pins = "dtf", "spdi";
161f126890aSEmmanuel Vadot				nvidia,function = "rsvd2";
162f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
163f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
164f126890aSEmmanuel Vadot			};
165f126890aSEmmanuel Vadot
166f126890aSEmmanuel Vadot			/*
167f126890aSEmmanuel Vadot			 * Colibri Ethernet (On-module)
168f126890aSEmmanuel Vadot			 * ULPI EHCI instance 1 USB2_DP/N -> AX88772B
169f126890aSEmmanuel Vadot			 */
170f126890aSEmmanuel Vadot			ulpi {
171f126890aSEmmanuel Vadot				nvidia,pins = "uaa", "uab", "uda";
172f126890aSEmmanuel Vadot				nvidia,function = "ulpi";
173f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
174f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_DISABLE>;
175f126890aSEmmanuel Vadot			};
176f126890aSEmmanuel Vadot			ulpi-refclk {
177f126890aSEmmanuel Vadot				nvidia,pins = "cdev2";
178f126890aSEmmanuel Vadot				nvidia,function = "pllp_out4";
179f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
180f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_DISABLE>;
181f126890aSEmmanuel Vadot			};
182f126890aSEmmanuel Vadot
183f126890aSEmmanuel Vadot			/* Colibri HOTPLUG_DETECT (HDMI) */
184f126890aSEmmanuel Vadot			hotplug-detect {
185f126890aSEmmanuel Vadot				nvidia,pins = "hdint";
186f126890aSEmmanuel Vadot				nvidia,function = "hdmi";
187f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
188f126890aSEmmanuel Vadot			};
189f126890aSEmmanuel Vadot
190f126890aSEmmanuel Vadot			/* Colibri I2C */
191f126890aSEmmanuel Vadot			i2c {
192f126890aSEmmanuel Vadot				nvidia,pins = "rm";
193f126890aSEmmanuel Vadot				nvidia,function = "i2c1";
194f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
195f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
196f126890aSEmmanuel Vadot			};
197f126890aSEmmanuel Vadot
198f126890aSEmmanuel Vadot			/*
199f126890aSEmmanuel Vadot			 * Colibri L_BIAS, LCD_M1 is muxed with LCD_DE
200f126890aSEmmanuel Vadot			 * today's display need DE, disable LCD_M1
201f126890aSEmmanuel Vadot			 */
202f126890aSEmmanuel Vadot			lm1 {
203f126890aSEmmanuel Vadot				nvidia,pins = "lm1";
204f126890aSEmmanuel Vadot				nvidia,function = "rsvd3";
205f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
206f126890aSEmmanuel Vadot			};
207f126890aSEmmanuel Vadot
208f126890aSEmmanuel Vadot			/* Colibri LCD (L_* resp. LDD<*>) */
209f126890aSEmmanuel Vadot			lcd {
210f126890aSEmmanuel Vadot				nvidia,pins = "ld0", "ld1", "ld2", "ld3",
211f126890aSEmmanuel Vadot					      "ld4", "ld5", "ld6", "ld7",
212f126890aSEmmanuel Vadot					      "ld8", "ld9", "ld10", "ld11",
213f126890aSEmmanuel Vadot					      "ld12", "ld13", "ld14", "ld15",
214f126890aSEmmanuel Vadot					      "ld16", "ld17", "lhs", "lsc0",
215f126890aSEmmanuel Vadot					      "lspi", "lvs";
216f126890aSEmmanuel Vadot				nvidia,function = "displaya";
217f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
218f126890aSEmmanuel Vadot			};
219f126890aSEmmanuel Vadot			/* Colibri LCD (Optional 24 BPP Support) */
220f126890aSEmmanuel Vadot			lcd-24 {
221f126890aSEmmanuel Vadot				nvidia,pins = "ldi", "lhp0", "lhp1", "lhp2",
222f126890aSEmmanuel Vadot					      "lpp", "lvp1";
223f126890aSEmmanuel Vadot				nvidia,function = "displaya";
224f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
225f126890aSEmmanuel Vadot			};
226f126890aSEmmanuel Vadot
227f126890aSEmmanuel Vadot			/* Colibri MMC */
228f126890aSEmmanuel Vadot			mmc {
229f126890aSEmmanuel Vadot				nvidia,pins = "atb", "gma";
230f126890aSEmmanuel Vadot				nvidia,function = "sdio4";
231f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
232f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
233f126890aSEmmanuel Vadot			};
234f126890aSEmmanuel Vadot
235f126890aSEmmanuel Vadot			/* Colibri MMCCD */
236f126890aSEmmanuel Vadot			mmccd {
237f126890aSEmmanuel Vadot				nvidia,pins = "gmb";
238f126890aSEmmanuel Vadot				nvidia,function = "gmi_int";
239f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
240f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
241f126890aSEmmanuel Vadot			};
242f126890aSEmmanuel Vadot
243f126890aSEmmanuel Vadot			/* Colibri MMC (Optional 8-bit) */
244f126890aSEmmanuel Vadot			mmc-8bit {
245f126890aSEmmanuel Vadot				nvidia,pins = "gme";
246f126890aSEmmanuel Vadot				nvidia,function = "sdio4";
247f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
248f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
249f126890aSEmmanuel Vadot			};
250f126890aSEmmanuel Vadot
251f126890aSEmmanuel Vadot			/*
252f126890aSEmmanuel Vadot			 * Colibri Parallel Camera (Optional)
253f126890aSEmmanuel Vadot			 * pins multiplexed with others and therefore disabled
254f126890aSEmmanuel Vadot			 * Note: dta used for BL_ON by default
255f126890aSEmmanuel Vadot			 */
256f126890aSEmmanuel Vadot			cif-mclk {
257f126890aSEmmanuel Vadot				nvidia,pins = "csus";
258f126890aSEmmanuel Vadot				nvidia,function = "vi_sensor_clk";
259f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
260f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
261f126890aSEmmanuel Vadot			};
262f126890aSEmmanuel Vadot			cif {
263f126890aSEmmanuel Vadot				nvidia,pins = "dtb", "dtc", "dtd";
264f126890aSEmmanuel Vadot				nvidia,function = "vi";
265f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
266f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
267f126890aSEmmanuel Vadot			};
268f126890aSEmmanuel Vadot
269f126890aSEmmanuel Vadot			/* Colibri PWM<C>, PWM<D> */
270f126890aSEmmanuel Vadot			sdb_sdd {
271f126890aSEmmanuel Vadot				nvidia,pins = "sdb", "sdd";
272f126890aSEmmanuel Vadot				nvidia,function = "pwm";
273f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
274f126890aSEmmanuel Vadot			};
275f126890aSEmmanuel Vadot
276f126890aSEmmanuel Vadot			/* Colibri SSP */
277f126890aSEmmanuel Vadot			ssp {
278f126890aSEmmanuel Vadot				nvidia,pins = "slxa", "slxc", "slxd", "slxk";
279f126890aSEmmanuel Vadot				nvidia,function = "spi4";
280f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
281f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
282f126890aSEmmanuel Vadot			};
283f126890aSEmmanuel Vadot
284f126890aSEmmanuel Vadot			/* Colibri UART-A */
285f126890aSEmmanuel Vadot			uart-a {
286f126890aSEmmanuel Vadot				nvidia,pins = "sdio1";
287f126890aSEmmanuel Vadot				nvidia,function = "uarta";
288f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
289f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
290f126890aSEmmanuel Vadot			};
291f126890aSEmmanuel Vadot			uart-a-dsr {
292f126890aSEmmanuel Vadot				nvidia,pins = "lpw1";
293f126890aSEmmanuel Vadot				nvidia,function = "rsvd3";
294f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
295f126890aSEmmanuel Vadot			};
296f126890aSEmmanuel Vadot			uart-a-dcd {
297f126890aSEmmanuel Vadot				nvidia,pins = "lpw2";
298f126890aSEmmanuel Vadot				nvidia,function = "hdmi";
299f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
300f126890aSEmmanuel Vadot			};
301f126890aSEmmanuel Vadot
302f126890aSEmmanuel Vadot			/* Colibri UART-B */
303f126890aSEmmanuel Vadot			uart-b {
304f126890aSEmmanuel Vadot				nvidia,pins = "gmc";
305f126890aSEmmanuel Vadot				nvidia,function = "uartd";
306f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
307f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
308f126890aSEmmanuel Vadot			};
309f126890aSEmmanuel Vadot
310f126890aSEmmanuel Vadot			/* Colibri UART-C */
311f126890aSEmmanuel Vadot			uart-c {
312f126890aSEmmanuel Vadot				nvidia,pins = "uad";
313f126890aSEmmanuel Vadot				nvidia,function = "irda";
314f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
315f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
316f126890aSEmmanuel Vadot			};
317f126890aSEmmanuel Vadot
318f126890aSEmmanuel Vadot			/* Colibri USB_CDET */
319f126890aSEmmanuel Vadot			usb-cdet {
320f126890aSEmmanuel Vadot				nvidia,pins = "spdo";
321f126890aSEmmanuel Vadot				nvidia,function = "rsvd2";
322f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
323f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
324f126890aSEmmanuel Vadot			};
325f126890aSEmmanuel Vadot
326f126890aSEmmanuel Vadot			/* Colibri USBH_OC */
327f126890aSEmmanuel Vadot			usbh-oc {
328f126890aSEmmanuel Vadot				nvidia,pins = "spih";
329f126890aSEmmanuel Vadot				nvidia,function = "spi2_alt";
330f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
331f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
332f126890aSEmmanuel Vadot			};
333f126890aSEmmanuel Vadot
334f126890aSEmmanuel Vadot			/* Colibri USBH_PEN */
335f126890aSEmmanuel Vadot			usbh-pen {
336f126890aSEmmanuel Vadot				nvidia,pins = "spig";
337f126890aSEmmanuel Vadot				nvidia,function = "spi2_alt";
338f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
339f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
340f126890aSEmmanuel Vadot			};
341f126890aSEmmanuel Vadot
342f126890aSEmmanuel Vadot			/* Colibri VGA not supported */
343f126890aSEmmanuel Vadot			vga {
344f126890aSEmmanuel Vadot				nvidia,pins = "crtp";
345f126890aSEmmanuel Vadot				nvidia,function = "crt";
346f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
347f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
348f126890aSEmmanuel Vadot			};
349f126890aSEmmanuel Vadot
350f126890aSEmmanuel Vadot			/* I2C3 (Optional) */
351f126890aSEmmanuel Vadot			i2c3 {
352f126890aSEmmanuel Vadot				nvidia,pins = "dtf";
353f126890aSEmmanuel Vadot				nvidia,function = "i2c3";
354f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
355f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
356f126890aSEmmanuel Vadot			};
357f126890aSEmmanuel Vadot
358f126890aSEmmanuel Vadot			/* JTAG_RTCK */
359f126890aSEmmanuel Vadot			jtag-rtck {
360f126890aSEmmanuel Vadot				nvidia,pins = "gpu7";
361f126890aSEmmanuel Vadot				nvidia,function = "rtck";
362f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
363f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
364f126890aSEmmanuel Vadot			};
365f126890aSEmmanuel Vadot
366f126890aSEmmanuel Vadot			/*
367f126890aSEmmanuel Vadot			 * LAN_RESET, LAN_EXT_WAKEUP and LAN_PME
368f126890aSEmmanuel Vadot			 * (All On-module)
369f126890aSEmmanuel Vadot			 */
370f126890aSEmmanuel Vadot			gpio-gpv {
371f126890aSEmmanuel Vadot				nvidia,pins = "gpv";
372f126890aSEmmanuel Vadot				nvidia,function = "rsvd2";
373f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
374f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_DISABLE>;
375f126890aSEmmanuel Vadot			};
376f126890aSEmmanuel Vadot
377f126890aSEmmanuel Vadot			/*
378f126890aSEmmanuel Vadot			 * LAN_V_BUS, VDD_FAULT, BATT_FAULT, WM9712 PENDOWN
379f126890aSEmmanuel Vadot			 * (All On-module); Colibri CAN_INT
380f126890aSEmmanuel Vadot			 */
381f126890aSEmmanuel Vadot			gpio-dte {
382f126890aSEmmanuel Vadot				nvidia,pins = "dte";
383f126890aSEmmanuel Vadot				nvidia,function = "rsvd1";
384f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
385f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_DISABLE>;
386f126890aSEmmanuel Vadot			};
387f126890aSEmmanuel Vadot
388f126890aSEmmanuel Vadot			/* NAND (On-module) */
389f126890aSEmmanuel Vadot			nand {
390f126890aSEmmanuel Vadot				nvidia,pins = "kbca", "kbcb", "kbcc", "kbcd",
391f126890aSEmmanuel Vadot					      "kbce", "kbcf";
392f126890aSEmmanuel Vadot				nvidia,function = "nand";
393f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
394f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_DISABLE>;
395f126890aSEmmanuel Vadot			};
396f126890aSEmmanuel Vadot
397f126890aSEmmanuel Vadot			/* Onewire (Optional) */
398f126890aSEmmanuel Vadot			owr {
399f126890aSEmmanuel Vadot				nvidia,pins = "owc";
400f126890aSEmmanuel Vadot				nvidia,function = "owr";
401f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
402f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
403f126890aSEmmanuel Vadot			};
404f126890aSEmmanuel Vadot
405f126890aSEmmanuel Vadot			/* Power I2C (On-module) */
406f126890aSEmmanuel Vadot			i2cp {
407f126890aSEmmanuel Vadot				nvidia,pins = "i2cp";
408f126890aSEmmanuel Vadot				nvidia,function = "i2cp";
409f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
410f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_DISABLE>;
411f126890aSEmmanuel Vadot			};
412f126890aSEmmanuel Vadot
413f126890aSEmmanuel Vadot			/* RESET_OUT */
414f126890aSEmmanuel Vadot			reset-out {
415f126890aSEmmanuel Vadot				nvidia,pins = "ata";
416f126890aSEmmanuel Vadot				nvidia,function = "gmi";
417f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
418f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_DISABLE>;
419f126890aSEmmanuel Vadot			};
420f126890aSEmmanuel Vadot
421f126890aSEmmanuel Vadot			/*
422f126890aSEmmanuel Vadot			 * SPI1 (Optional)
423f126890aSEmmanuel Vadot			 * Note: spid and spie used for Colibri Address/Data
424f126890aSEmmanuel Vadot			 *       Bus (GMI)
425f126890aSEmmanuel Vadot			 */
426f126890aSEmmanuel Vadot			spi1 {
427f126890aSEmmanuel Vadot				nvidia,pins = "spid", "spie", "spif";
428f126890aSEmmanuel Vadot				nvidia,function = "spi1";
429f126890aSEmmanuel Vadot				nvidia,pull = <TEGRA_PIN_PULL_NONE>;
430f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
431f126890aSEmmanuel Vadot			};
432f126890aSEmmanuel Vadot
433f126890aSEmmanuel Vadot			/*
434f126890aSEmmanuel Vadot			 * THERMD_ALERT# (On-module), unlatched I2C address pin
435f126890aSEmmanuel Vadot			 * of LM95245 temperature sensor therefore requires
436f126890aSEmmanuel Vadot			 * disabling for now
437f126890aSEmmanuel Vadot			 */
438f126890aSEmmanuel Vadot			lvp0 {
439f126890aSEmmanuel Vadot				nvidia,pins = "lvp0";
440f126890aSEmmanuel Vadot				nvidia,function = "rsvd3";
441f126890aSEmmanuel Vadot				nvidia,tristate = <TEGRA_PIN_ENABLE>;
442f126890aSEmmanuel Vadot			};
443f126890aSEmmanuel Vadot		};
444f126890aSEmmanuel Vadot	};
445f126890aSEmmanuel Vadot
446f126890aSEmmanuel Vadot	tegra_ac97: ac97@70002000 {
447f126890aSEmmanuel Vadot		status = "okay";
448*7d0873ebSEmmanuel Vadot		nvidia,codec-reset-gpios =
4498d13bc63SEmmanuel Vadot			<&gpio TEGRA_GPIO(V, 0) GPIO_ACTIVE_LOW>;
450*7d0873ebSEmmanuel Vadot		nvidia,codec-sync-gpios =
451f126890aSEmmanuel Vadot			<&gpio TEGRA_GPIO(P, 0) GPIO_ACTIVE_HIGH>;
452f126890aSEmmanuel Vadot	};
453f126890aSEmmanuel Vadot
454f126890aSEmmanuel Vadot	serial@70006040 {
455f126890aSEmmanuel Vadot		compatible = "nvidia,tegra20-hsuart";
456aa1a8ff2SEmmanuel Vadot		reset-names = "serial";
457f126890aSEmmanuel Vadot		/delete-property/ reg-shift;
458f126890aSEmmanuel Vadot	};
459f126890aSEmmanuel Vadot
460f126890aSEmmanuel Vadot	serial@70006300 {
461f126890aSEmmanuel Vadot		compatible = "nvidia,tegra20-hsuart";
462aa1a8ff2SEmmanuel Vadot		reset-names = "serial";
463f126890aSEmmanuel Vadot		/delete-property/ reg-shift;
464f126890aSEmmanuel Vadot	};
465f126890aSEmmanuel Vadot
466f126890aSEmmanuel Vadot	nand-controller@70008000 {
467f126890aSEmmanuel Vadot		status = "okay";
468f126890aSEmmanuel Vadot
469f126890aSEmmanuel Vadot		nand@0 {
470f126890aSEmmanuel Vadot			reg = <0>;
471f126890aSEmmanuel Vadot			#address-cells = <1>;
472f126890aSEmmanuel Vadot			#size-cells = <1>;
473f126890aSEmmanuel Vadot			nand-bus-width = <8>;
474f126890aSEmmanuel Vadot			nand-on-flash-bbt;
475f126890aSEmmanuel Vadot			nand-ecc-algo = "bch";
476f126890aSEmmanuel Vadot			nand-is-boot-medium;
477f126890aSEmmanuel Vadot			nand-ecc-maximize;
478f126890aSEmmanuel Vadot			wp-gpios = <&gpio TEGRA_GPIO(S, 0) GPIO_ACTIVE_LOW>;
479f126890aSEmmanuel Vadot		};
480f126890aSEmmanuel Vadot	};
481f126890aSEmmanuel Vadot
482f126890aSEmmanuel Vadot	/*
483f126890aSEmmanuel Vadot	 * GEN1_I2C: I2C_SDA/SCL on SODIMM pin 194/196 (e.g. RTC on carrier
484f126890aSEmmanuel Vadot	 * board)
485f126890aSEmmanuel Vadot	 */
486f126890aSEmmanuel Vadot	i2c@7000c000 {
487f126890aSEmmanuel Vadot		clock-frequency = <400000>;
488f126890aSEmmanuel Vadot	};
489f126890aSEmmanuel Vadot
490f126890aSEmmanuel Vadot	/* DDC_SCL/SDA on X3 pin 15/16 (e.g. display EDID) */
491f126890aSEmmanuel Vadot	hdmi_ddc: i2c@7000c400 {
492f126890aSEmmanuel Vadot		clock-frequency = <10000>;
493f126890aSEmmanuel Vadot	};
494f126890aSEmmanuel Vadot
495f126890aSEmmanuel Vadot	/* GEN2_I2C: unused */
496f126890aSEmmanuel Vadot
497f126890aSEmmanuel Vadot	/* CAM/GEN3_I2C: used as EXT_IO1/2 GPIOs on SODIMM pin 133/127 */
498f126890aSEmmanuel Vadot
499f126890aSEmmanuel Vadot	/* PWR_I2C: power I2C to PMIC and temperature sensor (On-module) */
500f126890aSEmmanuel Vadot	i2c@7000d000 {
501f126890aSEmmanuel Vadot		status = "okay";
502f126890aSEmmanuel Vadot		clock-frequency = <100000>;
503f126890aSEmmanuel Vadot
504f126890aSEmmanuel Vadot		pmic@34 {
505f126890aSEmmanuel Vadot			compatible = "ti,tps6586x";
506f126890aSEmmanuel Vadot			reg = <0x34>;
507f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
508f126890aSEmmanuel Vadot			ti,system-power-controller;
509f126890aSEmmanuel Vadot			#gpio-cells = <2>;
510f126890aSEmmanuel Vadot			gpio-controller;
511f126890aSEmmanuel Vadot			sys-supply = <&reg_module_3v3>;
512f126890aSEmmanuel Vadot			vin-sm0-supply = <&reg_3v3_vsys>;
513f126890aSEmmanuel Vadot			vin-sm1-supply = <&reg_3v3_vsys>;
514f126890aSEmmanuel Vadot			vin-sm2-supply = <&reg_3v3_vsys>;
515f126890aSEmmanuel Vadot			vinldo01-supply = <&reg_1v8_vdd_ddr2>;
516f126890aSEmmanuel Vadot			vinldo23-supply = <&reg_module_3v3>;
517f126890aSEmmanuel Vadot			vinldo4-supply = <&reg_module_3v3>;
518f126890aSEmmanuel Vadot			vinldo678-supply = <&reg_module_3v3>;
519f126890aSEmmanuel Vadot			vinldo9-supply = <&reg_module_3v3>;
520f126890aSEmmanuel Vadot
521f126890aSEmmanuel Vadot			regulators {
522f126890aSEmmanuel Vadot				reg_3v3_vsys: sys {
523f126890aSEmmanuel Vadot					regulator-name = "VSYS_3.3V";
524f126890aSEmmanuel Vadot					regulator-always-on;
525f126890aSEmmanuel Vadot				};
526f126890aSEmmanuel Vadot
527f126890aSEmmanuel Vadot				vdd_core: sm0 {
528f126890aSEmmanuel Vadot					regulator-name = "VDD_CORE_1.2V";
529f126890aSEmmanuel Vadot					regulator-min-microvolt = <1200000>;
530f126890aSEmmanuel Vadot					regulator-max-microvolt = <1200000>;
531f126890aSEmmanuel Vadot					regulator-always-on;
532f126890aSEmmanuel Vadot				};
533f126890aSEmmanuel Vadot
534f126890aSEmmanuel Vadot				sm1 {
535f126890aSEmmanuel Vadot					regulator-name = "VDD_CPU_1.0V";
536f126890aSEmmanuel Vadot					regulator-min-microvolt = <1000000>;
537f126890aSEmmanuel Vadot					regulator-max-microvolt = <1000000>;
538f126890aSEmmanuel Vadot					regulator-always-on;
539f126890aSEmmanuel Vadot				};
540f126890aSEmmanuel Vadot
541f126890aSEmmanuel Vadot				reg_1v8_vdd_ddr2: sm2 {
542f126890aSEmmanuel Vadot					regulator-name = "VDD_DDR2_1.8V";
543f126890aSEmmanuel Vadot					regulator-min-microvolt = <1800000>;
544f126890aSEmmanuel Vadot					regulator-max-microvolt = <1800000>;
545f126890aSEmmanuel Vadot					regulator-always-on;
546f126890aSEmmanuel Vadot				};
547f126890aSEmmanuel Vadot
548f126890aSEmmanuel Vadot				/* LDO0 is not connected to anything */
549f126890aSEmmanuel Vadot
550f126890aSEmmanuel Vadot				/*
551f126890aSEmmanuel Vadot				 * +3.3V_ENABLE_N switching via FET:
552f126890aSEmmanuel Vadot				 * AVDD_AUDIO_S and +3.3V
553f126890aSEmmanuel Vadot				 * see also +3.3V fixed supply
554f126890aSEmmanuel Vadot				 */
555f126890aSEmmanuel Vadot				ldo1 {
556f126890aSEmmanuel Vadot					regulator-name = "AVDD_PLL_1.1V";
557f126890aSEmmanuel Vadot					regulator-min-microvolt = <1100000>;
558f126890aSEmmanuel Vadot					regulator-max-microvolt = <1100000>;
559f126890aSEmmanuel Vadot					regulator-always-on;
560f126890aSEmmanuel Vadot				};
561f126890aSEmmanuel Vadot
562f126890aSEmmanuel Vadot				ldo2 {
563f126890aSEmmanuel Vadot					regulator-name = "VDD_RTC_1.2V";
564f126890aSEmmanuel Vadot					regulator-min-microvolt = <1200000>;
565f126890aSEmmanuel Vadot					regulator-max-microvolt = <1200000>;
566f126890aSEmmanuel Vadot				};
567f126890aSEmmanuel Vadot
568f126890aSEmmanuel Vadot				/* LDO3 is not connected to anything */
569f126890aSEmmanuel Vadot
570f126890aSEmmanuel Vadot				ldo4 {
571f126890aSEmmanuel Vadot					regulator-name = "VDDIO_SYS_1.8V";
572f126890aSEmmanuel Vadot					regulator-min-microvolt = <1800000>;
573f126890aSEmmanuel Vadot					regulator-max-microvolt = <1800000>;
574f126890aSEmmanuel Vadot					regulator-always-on;
575f126890aSEmmanuel Vadot				};
576f126890aSEmmanuel Vadot
577f126890aSEmmanuel Vadot				/* Switched via FET from regular +3.3V */
578f126890aSEmmanuel Vadot				ldo5 {
579f126890aSEmmanuel Vadot					regulator-name = "+3.3V_USB";
580f126890aSEmmanuel Vadot					regulator-min-microvolt = <3300000>;
581f126890aSEmmanuel Vadot					regulator-max-microvolt = <3300000>;
582f126890aSEmmanuel Vadot					regulator-always-on;
583f126890aSEmmanuel Vadot				};
584f126890aSEmmanuel Vadot
585f126890aSEmmanuel Vadot				ldo6 {
586f126890aSEmmanuel Vadot					regulator-name = "AVDD_VDAC_2.85V";
587f126890aSEmmanuel Vadot					regulator-min-microvolt = <2850000>;
588f126890aSEmmanuel Vadot					regulator-max-microvolt = <2850000>;
589f126890aSEmmanuel Vadot				};
590f126890aSEmmanuel Vadot
591f126890aSEmmanuel Vadot				reg_3v3_avdd_hdmi: ldo7 {
592f126890aSEmmanuel Vadot					regulator-name = "AVDD_HDMI_3.3V";
593f126890aSEmmanuel Vadot					regulator-min-microvolt = <3300000>;
594f126890aSEmmanuel Vadot					regulator-max-microvolt = <3300000>;
595f126890aSEmmanuel Vadot				};
596f126890aSEmmanuel Vadot
597f126890aSEmmanuel Vadot				reg_1v8_avdd_hdmi_pll: ldo8 {
598f126890aSEmmanuel Vadot					regulator-name = "AVDD_HDMI_PLL_1.8V";
599f126890aSEmmanuel Vadot					regulator-min-microvolt = <1800000>;
600f126890aSEmmanuel Vadot					regulator-max-microvolt = <1800000>;
601f126890aSEmmanuel Vadot				};
602f126890aSEmmanuel Vadot
603f126890aSEmmanuel Vadot				ldo9 {
604f126890aSEmmanuel Vadot					regulator-name = "VDDIO_RX_DDR_2.85V";
605f126890aSEmmanuel Vadot					regulator-min-microvolt = <2850000>;
606f126890aSEmmanuel Vadot					regulator-max-microvolt = <2850000>;
607f126890aSEmmanuel Vadot					regulator-always-on;
608f126890aSEmmanuel Vadot				};
609f126890aSEmmanuel Vadot
610f126890aSEmmanuel Vadot				ldo_rtc {
611f126890aSEmmanuel Vadot					regulator-name = "VCC_BATT";
612f126890aSEmmanuel Vadot					regulator-min-microvolt = <3300000>;
613f126890aSEmmanuel Vadot					regulator-max-microvolt = <3300000>;
614f126890aSEmmanuel Vadot					regulator-always-on;
615f126890aSEmmanuel Vadot				};
616f126890aSEmmanuel Vadot			};
617f126890aSEmmanuel Vadot		};
618f126890aSEmmanuel Vadot
619f126890aSEmmanuel Vadot		/* LM95245 temperature sensor */
620f126890aSEmmanuel Vadot		temp-sensor@4c {
621f126890aSEmmanuel Vadot			compatible = "national,lm95245";
622f126890aSEmmanuel Vadot			reg = <0x4c>;
623f126890aSEmmanuel Vadot		};
624f126890aSEmmanuel Vadot	};
625f126890aSEmmanuel Vadot
626f126890aSEmmanuel Vadot	pmc@7000e400 {
627f126890aSEmmanuel Vadot		nvidia,suspend-mode = <1>;
628f126890aSEmmanuel Vadot		nvidia,cpu-pwr-good-time = <5000>;
629f126890aSEmmanuel Vadot		nvidia,cpu-pwr-off-time = <5000>;
630f126890aSEmmanuel Vadot		nvidia,core-pwr-good-time = <3845 3845>;
631f126890aSEmmanuel Vadot		nvidia,core-pwr-off-time = <3875>;
632f126890aSEmmanuel Vadot		nvidia,sys-clock-req-active-high;
633f126890aSEmmanuel Vadot		core-supply = <&vdd_core>;
634f126890aSEmmanuel Vadot
635f126890aSEmmanuel Vadot		/* Set SLEEP MODE bit in SUPPLYENE register of TPS658643 PMIC */
636f126890aSEmmanuel Vadot		i2c-thermtrip {
637f126890aSEmmanuel Vadot			nvidia,i2c-controller-id = <3>;
638f126890aSEmmanuel Vadot			nvidia,bus-addr = <0x34>;
639f126890aSEmmanuel Vadot			nvidia,reg-addr = <0x14>;
640f126890aSEmmanuel Vadot			nvidia,reg-data = <0x8>;
641f126890aSEmmanuel Vadot		};
642f126890aSEmmanuel Vadot	};
643f126890aSEmmanuel Vadot
644f126890aSEmmanuel Vadot	memory-controller@7000f400 {
645f126890aSEmmanuel Vadot		emc-table@83250 {
646f126890aSEmmanuel Vadot			reg = <83250>;
647f126890aSEmmanuel Vadot			compatible = "nvidia,tegra20-emc-table";
648f126890aSEmmanuel Vadot			clock-frequency = <83250>;
649f126890aSEmmanuel Vadot			nvidia,emc-registers =   <0x00000005 0x00000011
650f126890aSEmmanuel Vadot				0x00000004 0x00000002 0x00000004 0x00000004
651f126890aSEmmanuel Vadot				0x00000001 0x0000000a 0x00000002 0x00000002
652f126890aSEmmanuel Vadot				0x00000001 0x00000001 0x00000003 0x00000004
653f126890aSEmmanuel Vadot				0x00000003 0x00000009 0x0000000c 0x0000025f
654f126890aSEmmanuel Vadot				0x00000000 0x00000003 0x00000003 0x00000002
655f126890aSEmmanuel Vadot				0x00000002 0x00000001 0x00000008 0x000000c8
656f126890aSEmmanuel Vadot				0x00000003 0x00000005 0x00000003 0x0000000c
657f126890aSEmmanuel Vadot				0x00000002 0x00000000 0x00000000 0x00000002
658f126890aSEmmanuel Vadot				0x00000000 0x00000000 0x00000083 0x00520006
659f126890aSEmmanuel Vadot				0x00000010 0x00000008 0x00000000 0x00000000
660f126890aSEmmanuel Vadot				0x00000000 0x00000000 0x00000000 0x00000000>;
661f126890aSEmmanuel Vadot		};
662f126890aSEmmanuel Vadot		emc-table@133200 {
663f126890aSEmmanuel Vadot			reg = <133200>;
664f126890aSEmmanuel Vadot			compatible = "nvidia,tegra20-emc-table";
665f126890aSEmmanuel Vadot			clock-frequency = <133200>;
666f126890aSEmmanuel Vadot			nvidia,emc-registers =   <0x00000008 0x00000019
667f126890aSEmmanuel Vadot				0x00000006 0x00000002 0x00000004 0x00000004
668f126890aSEmmanuel Vadot				0x00000001 0x0000000a 0x00000002 0x00000002
669f126890aSEmmanuel Vadot				0x00000002 0x00000001 0x00000003 0x00000004
670f126890aSEmmanuel Vadot				0x00000003 0x00000009 0x0000000c 0x0000039f
671f126890aSEmmanuel Vadot				0x00000000 0x00000003 0x00000003 0x00000002
672f126890aSEmmanuel Vadot				0x00000002 0x00000001 0x00000008 0x000000c8
673f126890aSEmmanuel Vadot				0x00000003 0x00000007 0x00000003 0x0000000c
674f126890aSEmmanuel Vadot				0x00000002 0x00000000 0x00000000 0x00000002
675f126890aSEmmanuel Vadot				0x00000000 0x00000000 0x00000083 0x00510006
676f126890aSEmmanuel Vadot				0x00000010 0x00000008 0x00000000 0x00000000
677f126890aSEmmanuel Vadot				0x00000000 0x00000000 0x00000000 0x00000000>;
678f126890aSEmmanuel Vadot		};
679f126890aSEmmanuel Vadot		emc-table@166500 {
680f126890aSEmmanuel Vadot			reg = <166500>;
681f126890aSEmmanuel Vadot			compatible = "nvidia,tegra20-emc-table";
682f126890aSEmmanuel Vadot			clock-frequency = <166500>;
683f126890aSEmmanuel Vadot			nvidia,emc-registers =   <0x0000000a 0x00000021
684f126890aSEmmanuel Vadot				0x00000008 0x00000003 0x00000004 0x00000004
685f126890aSEmmanuel Vadot				0x00000002 0x0000000a 0x00000003 0x00000003
686f126890aSEmmanuel Vadot				0x00000002 0x00000001 0x00000003 0x00000004
687f126890aSEmmanuel Vadot				0x00000003 0x00000009 0x0000000c 0x000004df
688f126890aSEmmanuel Vadot				0x00000000 0x00000003 0x00000003 0x00000003
689f126890aSEmmanuel Vadot				0x00000003 0x00000001 0x00000009 0x000000c8
690f126890aSEmmanuel Vadot				0x00000003 0x00000009 0x00000004 0x0000000c
691f126890aSEmmanuel Vadot				0x00000002 0x00000000 0x00000000 0x00000002
692f126890aSEmmanuel Vadot				0x00000000 0x00000000 0x00000083 0x004f0006
693f126890aSEmmanuel Vadot				0x00000010 0x00000008 0x00000000 0x00000000
694f126890aSEmmanuel Vadot				0x00000000 0x00000000 0x00000000 0x00000000>;
695f126890aSEmmanuel Vadot		};
696f126890aSEmmanuel Vadot		emc-table@333000 {
697f126890aSEmmanuel Vadot			reg = <333000>;
698f126890aSEmmanuel Vadot			compatible = "nvidia,tegra20-emc-table";
699f126890aSEmmanuel Vadot			clock-frequency = <333000>;
700f126890aSEmmanuel Vadot			nvidia,emc-registers =   <0x00000014 0x00000041
701f126890aSEmmanuel Vadot				0x0000000f 0x00000005 0x00000004 0x00000005
702f126890aSEmmanuel Vadot				0x00000003 0x0000000a 0x00000005 0x00000005
703f126890aSEmmanuel Vadot				0x00000004 0x00000001 0x00000003 0x00000004
704f126890aSEmmanuel Vadot				0x00000003 0x00000009 0x0000000c 0x000009ff
705f126890aSEmmanuel Vadot				0x00000000 0x00000003 0x00000003 0x00000005
706f126890aSEmmanuel Vadot				0x00000005 0x00000001 0x0000000e 0x000000c8
707f126890aSEmmanuel Vadot				0x00000003 0x00000011 0x00000006 0x0000000c
708f126890aSEmmanuel Vadot				0x00000002 0x00000000 0x00000000 0x00000002
709f126890aSEmmanuel Vadot				0x00000000 0x00000000 0x00000083 0x00380006
710f126890aSEmmanuel Vadot				0x00000010 0x00000008 0x00000000 0x00000000
711f126890aSEmmanuel Vadot				0x00000000 0x00000000 0x00000000 0x00000000>;
712f126890aSEmmanuel Vadot		};
713f126890aSEmmanuel Vadot	};
714f126890aSEmmanuel Vadot
715f126890aSEmmanuel Vadot	/* EHCI instance 1: ULPI PHY -> AX88772B (On-module) */
716f126890aSEmmanuel Vadot	usb@c5004000 {
717f126890aSEmmanuel Vadot		status = "okay";
718f126890aSEmmanuel Vadot		#address-cells = <1>;
719f126890aSEmmanuel Vadot		#size-cells = <0>;
720f126890aSEmmanuel Vadot
721f126890aSEmmanuel Vadot		ethernet@1 {
722f126890aSEmmanuel Vadot			compatible = "usbb95,772b";
723f126890aSEmmanuel Vadot			reg = <1>;
724f126890aSEmmanuel Vadot			local-mac-address = [00 00 00 00 00 00];
725f126890aSEmmanuel Vadot		};
726f126890aSEmmanuel Vadot	};
727f126890aSEmmanuel Vadot
728f126890aSEmmanuel Vadot	usb-phy@c5004000 {
729f126890aSEmmanuel Vadot		status = "okay";
730f126890aSEmmanuel Vadot		nvidia,phy-reset-gpio =
731f126890aSEmmanuel Vadot			<&gpio TEGRA_GPIO(V, 1) GPIO_ACTIVE_LOW>;
732f126890aSEmmanuel Vadot		vbus-supply = <&reg_lan_v_bus>;
733f126890aSEmmanuel Vadot	};
734f126890aSEmmanuel Vadot
735f126890aSEmmanuel Vadot	clk32k_in: clock-xtal3 {
736f126890aSEmmanuel Vadot		compatible = "fixed-clock";
737f126890aSEmmanuel Vadot		#clock-cells = <0>;
738f126890aSEmmanuel Vadot		clock-frequency = <32768>;
739f126890aSEmmanuel Vadot	};
740f126890aSEmmanuel Vadot
741f126890aSEmmanuel Vadot	opp-table-emc {
742f126890aSEmmanuel Vadot		/delete-node/ opp-760000000;
743f126890aSEmmanuel Vadot	};
744f126890aSEmmanuel Vadot
745f126890aSEmmanuel Vadot	reg_lan_v_bus: regulator-lan-v-bus {
746f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
747f126890aSEmmanuel Vadot		regulator-name = "LAN_V_BUS";
748f126890aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
749f126890aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
750f126890aSEmmanuel Vadot		enable-active-high;
751f126890aSEmmanuel Vadot		gpio = <&gpio TEGRA_GPIO(BB, 1) GPIO_ACTIVE_HIGH>;
752f126890aSEmmanuel Vadot	};
753f126890aSEmmanuel Vadot
754f126890aSEmmanuel Vadot	reg_module_3v3: regulator-module-3v3 {
755f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
756f126890aSEmmanuel Vadot		regulator-name = "+V3.3";
757f126890aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
758f126890aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
759f126890aSEmmanuel Vadot		regulator-always-on;
760f126890aSEmmanuel Vadot	};
761f126890aSEmmanuel Vadot
762f126890aSEmmanuel Vadot	sound {
763f126890aSEmmanuel Vadot		compatible = "nvidia,tegra-audio-wm9712-colibri_t20",
764f126890aSEmmanuel Vadot			     "nvidia,tegra-audio-wm9712";
765f126890aSEmmanuel Vadot		nvidia,model = "Toradex Colibri T20";
766f126890aSEmmanuel Vadot		nvidia,audio-routing =
767f126890aSEmmanuel Vadot			"Headphone", "HPOUTL",
768f126890aSEmmanuel Vadot			"Headphone", "HPOUTR",
769f126890aSEmmanuel Vadot			"LineIn", "LINEINL",
770f126890aSEmmanuel Vadot			"LineIn", "LINEINR",
771f126890aSEmmanuel Vadot			"Mic", "MIC1";
772f126890aSEmmanuel Vadot		nvidia,ac97-controller = <&tegra_ac97>;
773f126890aSEmmanuel Vadot		clocks = <&tegra_car TEGRA20_CLK_PLL_A>,
774f126890aSEmmanuel Vadot			 <&tegra_car TEGRA20_CLK_PLL_A_OUT0>,
775f126890aSEmmanuel Vadot			 <&tegra_car TEGRA20_CLK_CDEV1>;
776f126890aSEmmanuel Vadot		clock-names = "pll_a", "pll_a_out0", "mclk";
777f126890aSEmmanuel Vadot	};
778f126890aSEmmanuel Vadot};
779