xref: /freebsd-src/sys/contrib/device-tree/src/arm/nvidia/tegra124-nyan.dtsi (revision 01950c46b8155250f64374fb72fc11faa44bf099)
1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h>
3f126890aSEmmanuel Vadot#include <dt-bindings/thermal/thermal.h>
4f126890aSEmmanuel Vadot#include "tegra124.dtsi"
5f126890aSEmmanuel Vadot
6f126890aSEmmanuel Vadot/ {
7f126890aSEmmanuel Vadot	aliases {
8f126890aSEmmanuel Vadot		rtc0 = "/i2c@7000d000/pmic@40";
9f126890aSEmmanuel Vadot		rtc1 = "/rtc@7000e000";
10f126890aSEmmanuel Vadot		serial0 = &uarta;
11f126890aSEmmanuel Vadot	};
12f126890aSEmmanuel Vadot
13f126890aSEmmanuel Vadot	chosen {
14f126890aSEmmanuel Vadot		stdout-path = "serial0:115200n8";
15f126890aSEmmanuel Vadot	};
16f126890aSEmmanuel Vadot
17f126890aSEmmanuel Vadot	/*
18f126890aSEmmanuel Vadot	 * Note that recent version of the device tree compiler (starting with
19f126890aSEmmanuel Vadot	 * version 1.4.2) warn about this node containing a reg property, but
20f126890aSEmmanuel Vadot	 * missing a unit-address. However, the bootloader on these Chromebook
21f126890aSEmmanuel Vadot	 * devices relies on the full name of this node to be exactly /memory.
22f126890aSEmmanuel Vadot	 * Adding the unit-address causes the bootloader to create a /memory
23f126890aSEmmanuel Vadot	 * node and write the memory bank configuration to that node, which in
24f126890aSEmmanuel Vadot	 * turn leads the kernel to believe that the device has 2 GiB of
25f126890aSEmmanuel Vadot	 * memory instead of the amount detected by the bootloader.
26f126890aSEmmanuel Vadot	 *
27f126890aSEmmanuel Vadot	 * The name of this node is effectively ABI and must not be changed.
28f126890aSEmmanuel Vadot	 */
29f126890aSEmmanuel Vadot	memory {
30f126890aSEmmanuel Vadot		device_type = "memory";
31f126890aSEmmanuel Vadot		reg = <0x0 0x80000000 0x0 0x80000000>;
32f126890aSEmmanuel Vadot	};
33f126890aSEmmanuel Vadot
34f126890aSEmmanuel Vadot	/delete-node/ memory@80000000;
35f126890aSEmmanuel Vadot
36f126890aSEmmanuel Vadot	host1x@50000000 {
37f126890aSEmmanuel Vadot		hdmi@54280000 {
38f126890aSEmmanuel Vadot			status = "okay";
39f126890aSEmmanuel Vadot
40f126890aSEmmanuel Vadot			vdd-supply = <&vdd_3v3_hdmi>;
41f126890aSEmmanuel Vadot			pll-supply = <&vdd_hdmi_pll>;
42f126890aSEmmanuel Vadot			hdmi-supply = <&vdd_5v0_hdmi>;
43f126890aSEmmanuel Vadot
44f126890aSEmmanuel Vadot			nvidia,ddc-i2c-bus = <&hdmi_ddc>;
45f126890aSEmmanuel Vadot			nvidia,hpd-gpio =
46f126890aSEmmanuel Vadot				<&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>;
47f126890aSEmmanuel Vadot		};
48f126890aSEmmanuel Vadot
49f126890aSEmmanuel Vadot		sor@54540000 {
50f126890aSEmmanuel Vadot			status = "okay";
51f126890aSEmmanuel Vadot
52f126890aSEmmanuel Vadot			avdd-io-hdmi-dp-supply = <&vdd_3v3_hdmi>;
53f126890aSEmmanuel Vadot			vdd-hdmi-dp-pll-supply = <&vdd_hdmi_pll>;
54f126890aSEmmanuel Vadot
55f126890aSEmmanuel Vadot			nvidia,dpaux = <&dpaux>;
56f126890aSEmmanuel Vadot			nvidia,panel = <&panel>;
57f126890aSEmmanuel Vadot		};
58f126890aSEmmanuel Vadot
59f126890aSEmmanuel Vadot		dpaux@545c0000 {
60f126890aSEmmanuel Vadot			vdd-supply = <&vdd_3v3_panel>;
61f126890aSEmmanuel Vadot			status = "okay";
62f126890aSEmmanuel Vadot		};
63f126890aSEmmanuel Vadot	};
64f126890aSEmmanuel Vadot
65f126890aSEmmanuel Vadot	gpu@57000000 {
66f126890aSEmmanuel Vadot		status = "okay";
67f126890aSEmmanuel Vadot
68f126890aSEmmanuel Vadot		vdd-supply = <&vdd_gpu>;
69f126890aSEmmanuel Vadot	};
70f126890aSEmmanuel Vadot
71f126890aSEmmanuel Vadot	serial@70006000 {
72f126890aSEmmanuel Vadot		/* Debug connector on the bottom of the board near SD card. */
73aa1a8ff2SEmmanuel Vadot		/delete-property/ dmas;
74aa1a8ff2SEmmanuel Vadot		/delete-property/ dma-names;
75f126890aSEmmanuel Vadot		status = "okay";
76f126890aSEmmanuel Vadot	};
77f126890aSEmmanuel Vadot
78f126890aSEmmanuel Vadot	pwm@7000a000 {
79f126890aSEmmanuel Vadot		status = "okay";
80f126890aSEmmanuel Vadot	};
81f126890aSEmmanuel Vadot
82f126890aSEmmanuel Vadot	i2c@7000c000 {
83f126890aSEmmanuel Vadot		status = "okay";
84f126890aSEmmanuel Vadot		clock-frequency = <100000>;
85f126890aSEmmanuel Vadot
86f126890aSEmmanuel Vadot		acodec: audio-codec@10 {
87f126890aSEmmanuel Vadot			compatible = "maxim,max98090";
88f126890aSEmmanuel Vadot			reg = <0x10>;
89f126890aSEmmanuel Vadot			interrupt-parent = <&gpio>;
90f126890aSEmmanuel Vadot			interrupts = <TEGRA_GPIO(H, 4) IRQ_TYPE_EDGE_FALLING>;
91f126890aSEmmanuel Vadot		};
92f126890aSEmmanuel Vadot
93f126890aSEmmanuel Vadot		tmp451: temperature-sensor@4c {
94f126890aSEmmanuel Vadot			compatible = "ti,tmp451";
95f126890aSEmmanuel Vadot			reg = <0x4c>;
96f126890aSEmmanuel Vadot			interrupt-parent = <&gpio>;
97f126890aSEmmanuel Vadot			interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_EDGE_FALLING>;
98f126890aSEmmanuel Vadot
99f126890aSEmmanuel Vadot			#thermal-sensor-cells = <1>;
100f126890aSEmmanuel Vadot		};
101f126890aSEmmanuel Vadot	};
102f126890aSEmmanuel Vadot
103f126890aSEmmanuel Vadot	i2c@7000c400 {
104f126890aSEmmanuel Vadot		status = "okay";
105f126890aSEmmanuel Vadot		clock-frequency = <100000>;
106f126890aSEmmanuel Vadot
107f126890aSEmmanuel Vadot		trackpad@15 {
108f126890aSEmmanuel Vadot			compatible = "elan,ekth3000";
109f126890aSEmmanuel Vadot			reg = <0x15>;
110f126890aSEmmanuel Vadot			interrupt-parent = <&gpio>;
111f126890aSEmmanuel Vadot			interrupts = <TEGRA_GPIO(W, 3) IRQ_TYPE_EDGE_FALLING>;
112f126890aSEmmanuel Vadot			wakeup-source;
113f126890aSEmmanuel Vadot		};
114f126890aSEmmanuel Vadot	};
115f126890aSEmmanuel Vadot
116f126890aSEmmanuel Vadot	i2c@7000c500 {
117f126890aSEmmanuel Vadot		status = "okay";
118f126890aSEmmanuel Vadot		clock-frequency = <400000>;
119f126890aSEmmanuel Vadot
120f126890aSEmmanuel Vadot		tpm@20 {
121f126890aSEmmanuel Vadot			compatible = "infineon,slb9645tt";
122f126890aSEmmanuel Vadot			reg = <0x20>;
123f126890aSEmmanuel Vadot		};
124f126890aSEmmanuel Vadot	};
125f126890aSEmmanuel Vadot
126f126890aSEmmanuel Vadot	hdmi_ddc: i2c@7000c700 {
127f126890aSEmmanuel Vadot		status = "okay";
128f126890aSEmmanuel Vadot		clock-frequency = <100000>;
129f126890aSEmmanuel Vadot	};
130f126890aSEmmanuel Vadot
131f126890aSEmmanuel Vadot	i2c@7000d000 {
132f126890aSEmmanuel Vadot		status = "okay";
133f126890aSEmmanuel Vadot		clock-frequency = <400000>;
134f126890aSEmmanuel Vadot
135f126890aSEmmanuel Vadot		pmic: pmic@40 {
136f126890aSEmmanuel Vadot			compatible = "ams,as3722";
137f126890aSEmmanuel Vadot			reg = <0x40>;
138f126890aSEmmanuel Vadot			interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>;
139f126890aSEmmanuel Vadot
140f126890aSEmmanuel Vadot			ams,system-power-controller;
141f126890aSEmmanuel Vadot
142f126890aSEmmanuel Vadot			#interrupt-cells = <2>;
143f126890aSEmmanuel Vadot			interrupt-controller;
144f126890aSEmmanuel Vadot
145f126890aSEmmanuel Vadot			gpio-controller;
146f126890aSEmmanuel Vadot			#gpio-cells = <2>;
147f126890aSEmmanuel Vadot
148f126890aSEmmanuel Vadot			pinctrl-names = "default";
149f126890aSEmmanuel Vadot			pinctrl-0 = <&as3722_default>;
150f126890aSEmmanuel Vadot
151f126890aSEmmanuel Vadot			as3722_default: pinmux {
152f126890aSEmmanuel Vadot				gpio0 {
153f126890aSEmmanuel Vadot					pins = "gpio0";
154f126890aSEmmanuel Vadot					function = "gpio";
155f126890aSEmmanuel Vadot					bias-pull-down;
156f126890aSEmmanuel Vadot				};
157f126890aSEmmanuel Vadot
158f126890aSEmmanuel Vadot				gpio1 {
159f126890aSEmmanuel Vadot					pins = "gpio1";
160f126890aSEmmanuel Vadot					function = "gpio";
161f126890aSEmmanuel Vadot					bias-pull-up;
162f126890aSEmmanuel Vadot				};
163f126890aSEmmanuel Vadot
164f126890aSEmmanuel Vadot				gpio2_4_7 {
165f126890aSEmmanuel Vadot					pins = "gpio2", "gpio4", "gpio7";
166f126890aSEmmanuel Vadot					function = "gpio";
167f126890aSEmmanuel Vadot					bias-pull-up;
168f126890aSEmmanuel Vadot				};
169f126890aSEmmanuel Vadot
170f126890aSEmmanuel Vadot				gpio3_6 {
171f126890aSEmmanuel Vadot					pins = "gpio3", "gpio6";
172f126890aSEmmanuel Vadot					bias-high-impedance;
173f126890aSEmmanuel Vadot				};
174f126890aSEmmanuel Vadot
175f126890aSEmmanuel Vadot				gpio5 {
176f126890aSEmmanuel Vadot					pins = "gpio5";
177f126890aSEmmanuel Vadot					function = "clk32k-out";
178f126890aSEmmanuel Vadot					bias-pull-down;
179f126890aSEmmanuel Vadot				};
180f126890aSEmmanuel Vadot			};
181f126890aSEmmanuel Vadot
182f126890aSEmmanuel Vadot			regulators {
183f126890aSEmmanuel Vadot				vsup-sd2-supply = <&vdd_5v0_sys>;
184f126890aSEmmanuel Vadot				vsup-sd3-supply = <&vdd_5v0_sys>;
185f126890aSEmmanuel Vadot				vsup-sd4-supply = <&vdd_5v0_sys>;
186f126890aSEmmanuel Vadot				vsup-sd5-supply = <&vdd_5v0_sys>;
187f126890aSEmmanuel Vadot				vin-ldo0-supply = <&vdd_1v35_lp0>;
188f126890aSEmmanuel Vadot				vin-ldo1-6-supply = <&vdd_3v3_run>;
189f126890aSEmmanuel Vadot				vin-ldo2-5-7-supply = <&vddio_1v8>;
190f126890aSEmmanuel Vadot				vin-ldo3-4-supply = <&vdd_3v3_sys>;
191f126890aSEmmanuel Vadot				vin-ldo9-10-supply = <&vdd_5v0_sys>;
192f126890aSEmmanuel Vadot				vin-ldo11-supply = <&vdd_3v3_run>;
193f126890aSEmmanuel Vadot
194f126890aSEmmanuel Vadot				vdd_cpu: sd0 {
195f126890aSEmmanuel Vadot					regulator-name = "+VDD_CPU_AP";
196f126890aSEmmanuel Vadot					regulator-min-microvolt = <700000>;
197f126890aSEmmanuel Vadot					regulator-max-microvolt = <1350000>;
198f126890aSEmmanuel Vadot					regulator-min-microamp = <3500000>;
199f126890aSEmmanuel Vadot					regulator-max-microamp = <3500000>;
200f126890aSEmmanuel Vadot					regulator-always-on;
201f126890aSEmmanuel Vadot					regulator-boot-on;
202f126890aSEmmanuel Vadot					ams,ext-control = <2>;
203f126890aSEmmanuel Vadot				};
204f126890aSEmmanuel Vadot
205f126890aSEmmanuel Vadot				sd1 {
206f126890aSEmmanuel Vadot					regulator-name = "+VDD_CORE";
207f126890aSEmmanuel Vadot					regulator-min-microvolt = <700000>;
208f126890aSEmmanuel Vadot					regulator-max-microvolt = <1350000>;
209f126890aSEmmanuel Vadot					regulator-min-microamp = <2500000>;
210f126890aSEmmanuel Vadot					regulator-max-microamp = <4000000>;
211f126890aSEmmanuel Vadot					regulator-always-on;
212f126890aSEmmanuel Vadot					regulator-boot-on;
213f126890aSEmmanuel Vadot					ams,ext-control = <1>;
214f126890aSEmmanuel Vadot				};
215f126890aSEmmanuel Vadot
216f126890aSEmmanuel Vadot				vdd_1v35_lp0: sd2 {
217f126890aSEmmanuel Vadot					regulator-name = "+1.35V_LP0(sd2)";
218f126890aSEmmanuel Vadot					regulator-min-microvolt = <1350000>;
219f126890aSEmmanuel Vadot					regulator-max-microvolt = <1350000>;
220f126890aSEmmanuel Vadot					regulator-always-on;
221f126890aSEmmanuel Vadot					regulator-boot-on;
222f126890aSEmmanuel Vadot				};
223f126890aSEmmanuel Vadot
224f126890aSEmmanuel Vadot				sd3 {
225f126890aSEmmanuel Vadot					regulator-name = "+1.35V_LP0(sd3)";
226f126890aSEmmanuel Vadot					regulator-min-microvolt = <1350000>;
227f126890aSEmmanuel Vadot					regulator-max-microvolt = <1350000>;
228f126890aSEmmanuel Vadot					regulator-always-on;
229f126890aSEmmanuel Vadot					regulator-boot-on;
230f126890aSEmmanuel Vadot				};
231f126890aSEmmanuel Vadot
232f126890aSEmmanuel Vadot				vdd_1v05_run: sd4 {
233f126890aSEmmanuel Vadot					regulator-name = "+1.05V_RUN";
234f126890aSEmmanuel Vadot					regulator-min-microvolt = <1050000>;
235f126890aSEmmanuel Vadot					regulator-max-microvolt = <1050000>;
236f126890aSEmmanuel Vadot				};
237f126890aSEmmanuel Vadot
238f126890aSEmmanuel Vadot				vddio_1v8: sd5 {
239f126890aSEmmanuel Vadot					regulator-name = "+1.8V_VDDIO";
240f126890aSEmmanuel Vadot					regulator-min-microvolt = <1800000>;
241f126890aSEmmanuel Vadot					regulator-max-microvolt = <1800000>;
242f126890aSEmmanuel Vadot					regulator-always-on;
243f126890aSEmmanuel Vadot				};
244f126890aSEmmanuel Vadot
245f126890aSEmmanuel Vadot				vdd_gpu: sd6 {
246f126890aSEmmanuel Vadot					regulator-name = "+VDD_GPU_AP";
247f126890aSEmmanuel Vadot					regulator-min-microvolt = <650000>;
248f126890aSEmmanuel Vadot					regulator-max-microvolt = <1200000>;
249f126890aSEmmanuel Vadot					regulator-min-microamp = <3500000>;
250f126890aSEmmanuel Vadot					regulator-max-microamp = <3500000>;
251f126890aSEmmanuel Vadot					regulator-boot-on;
252f126890aSEmmanuel Vadot					regulator-always-on;
253f126890aSEmmanuel Vadot				};
254f126890aSEmmanuel Vadot
255f126890aSEmmanuel Vadot				avdd_1v05_run: ldo0 {
256f126890aSEmmanuel Vadot					regulator-name = "+1.05V_RUN_AVDD";
257f126890aSEmmanuel Vadot					regulator-min-microvolt = <1050000>;
258f126890aSEmmanuel Vadot					regulator-max-microvolt = <1050000>;
259f126890aSEmmanuel Vadot					regulator-boot-on;
260f126890aSEmmanuel Vadot					regulator-always-on;
261f126890aSEmmanuel Vadot					ams,ext-control = <1>;
262f126890aSEmmanuel Vadot				};
263f126890aSEmmanuel Vadot
264f126890aSEmmanuel Vadot				ldo1 {
265f126890aSEmmanuel Vadot					regulator-name = "+1.8V_RUN_CAM";
266f126890aSEmmanuel Vadot					regulator-min-microvolt = <1800000>;
267f126890aSEmmanuel Vadot					regulator-max-microvolt = <1800000>;
268f126890aSEmmanuel Vadot				};
269f126890aSEmmanuel Vadot
270f126890aSEmmanuel Vadot				ldo2 {
271f126890aSEmmanuel Vadot					regulator-name = "+1.2V_GEN_AVDD";
272f126890aSEmmanuel Vadot					regulator-min-microvolt = <1200000>;
273f126890aSEmmanuel Vadot					regulator-max-microvolt = <1200000>;
274f126890aSEmmanuel Vadot					regulator-boot-on;
275f126890aSEmmanuel Vadot					regulator-always-on;
276f126890aSEmmanuel Vadot				};
277f126890aSEmmanuel Vadot
278f126890aSEmmanuel Vadot				ldo3 {
279f126890aSEmmanuel Vadot					regulator-name = "+1.00V_LP0_VDD_RTC";
280f126890aSEmmanuel Vadot					regulator-min-microvolt = <1000000>;
281f126890aSEmmanuel Vadot					regulator-max-microvolt = <1000000>;
282f126890aSEmmanuel Vadot					regulator-boot-on;
283f126890aSEmmanuel Vadot					regulator-always-on;
284f126890aSEmmanuel Vadot					ams,enable-tracking;
285f126890aSEmmanuel Vadot				};
286f126890aSEmmanuel Vadot
287f126890aSEmmanuel Vadot				vdd_run_cam: ldo4 {
288f126890aSEmmanuel Vadot					regulator-name = "+3.3V_RUN_CAM";
289f126890aSEmmanuel Vadot					regulator-min-microvolt = <2800000>;
290f126890aSEmmanuel Vadot					regulator-max-microvolt = <2800000>;
291f126890aSEmmanuel Vadot				};
292f126890aSEmmanuel Vadot
293f126890aSEmmanuel Vadot				ldo5 {
294f126890aSEmmanuel Vadot					regulator-name = "+1.2V_RUN_CAM_FRONT";
295f126890aSEmmanuel Vadot					regulator-min-microvolt = <1200000>;
296f126890aSEmmanuel Vadot					regulator-max-microvolt = <1200000>;
297f126890aSEmmanuel Vadot				};
298f126890aSEmmanuel Vadot
299f126890aSEmmanuel Vadot				vddio_sdmmc3: ldo6 {
300f126890aSEmmanuel Vadot					regulator-name = "+VDDIO_SDMMC3";
301f126890aSEmmanuel Vadot					regulator-min-microvolt = <1800000>;
302f126890aSEmmanuel Vadot					regulator-max-microvolt = <3300000>;
303f126890aSEmmanuel Vadot				};
304f126890aSEmmanuel Vadot
305f126890aSEmmanuel Vadot				ldo7 {
306f126890aSEmmanuel Vadot					regulator-name = "+1.05V_RUN_CAM_REAR";
307f126890aSEmmanuel Vadot					regulator-min-microvolt = <1050000>;
308f126890aSEmmanuel Vadot					regulator-max-microvolt = <1050000>;
309f126890aSEmmanuel Vadot				};
310f126890aSEmmanuel Vadot
311f126890aSEmmanuel Vadot				ldo9 {
312f126890aSEmmanuel Vadot					regulator-name = "+2.8V_RUN_TOUCH";
313f126890aSEmmanuel Vadot					regulator-min-microvolt = <2800000>;
314f126890aSEmmanuel Vadot					regulator-max-microvolt = <2800000>;
315f126890aSEmmanuel Vadot				};
316f126890aSEmmanuel Vadot
317f126890aSEmmanuel Vadot				ldo10 {
318f126890aSEmmanuel Vadot					regulator-name = "+2.8V_RUN_CAM_AF";
319f126890aSEmmanuel Vadot					regulator-min-microvolt = <2800000>;
320f126890aSEmmanuel Vadot					regulator-max-microvolt = <2800000>;
321f126890aSEmmanuel Vadot				};
322f126890aSEmmanuel Vadot
323f126890aSEmmanuel Vadot				ldo11 {
324f126890aSEmmanuel Vadot					regulator-name = "+1.8V_RUN_VPP_FUSE";
325f126890aSEmmanuel Vadot					regulator-min-microvolt = <1800000>;
326f126890aSEmmanuel Vadot					regulator-max-microvolt = <1800000>;
327f126890aSEmmanuel Vadot				};
328f126890aSEmmanuel Vadot			};
329f126890aSEmmanuel Vadot		};
330f126890aSEmmanuel Vadot	};
331f126890aSEmmanuel Vadot
332f126890aSEmmanuel Vadot	spi@7000d400 {
333f126890aSEmmanuel Vadot		status = "okay";
334f126890aSEmmanuel Vadot
335f126890aSEmmanuel Vadot		cros_ec: cros-ec@0 {
336f126890aSEmmanuel Vadot			compatible = "google,cros-ec-spi";
337f126890aSEmmanuel Vadot			spi-max-frequency = <3000000>;
338f126890aSEmmanuel Vadot			interrupt-parent = <&gpio>;
339f126890aSEmmanuel Vadot			interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>;
340f126890aSEmmanuel Vadot			reg = <0>;
341*01950c46SEmmanuel Vadot			wakeup-source;
342f126890aSEmmanuel Vadot
343f126890aSEmmanuel Vadot			google,cros-ec-spi-msg-delay = <2000>;
344f126890aSEmmanuel Vadot
345f126890aSEmmanuel Vadot			i2c-tunnel {
346f126890aSEmmanuel Vadot				compatible = "google,cros-ec-i2c-tunnel";
347f126890aSEmmanuel Vadot				#address-cells = <1>;
348f126890aSEmmanuel Vadot				#size-cells = <0>;
349f126890aSEmmanuel Vadot
350f126890aSEmmanuel Vadot				google,remote-bus = <0>;
351f126890aSEmmanuel Vadot
352f126890aSEmmanuel Vadot				charger: bq24735@9 {
353f126890aSEmmanuel Vadot					compatible = "ti,bq24735";
354f126890aSEmmanuel Vadot					reg = <0x9>;
355f126890aSEmmanuel Vadot					interrupt-parent = <&gpio>;
356f126890aSEmmanuel Vadot					interrupts = <TEGRA_GPIO(J, 0)
357f126890aSEmmanuel Vadot							IRQ_TYPE_EDGE_BOTH>;
358f126890aSEmmanuel Vadot					ti,ac-detect-gpios = <&gpio
359f126890aSEmmanuel Vadot							TEGRA_GPIO(J, 0)
360f126890aSEmmanuel Vadot							GPIO_ACTIVE_HIGH>;
361f126890aSEmmanuel Vadot					ti,external-control;
362f126890aSEmmanuel Vadot				};
363f126890aSEmmanuel Vadot
364f126890aSEmmanuel Vadot				battery: sbs-battery@b {
365f126890aSEmmanuel Vadot					compatible = "sbs,sbs-battery";
366f126890aSEmmanuel Vadot					reg = <0xb>;
367f126890aSEmmanuel Vadot					sbs,i2c-retry-count = <2>;
368f126890aSEmmanuel Vadot					sbs,poll-retry-count = <10>;
369f126890aSEmmanuel Vadot					power-supplies = <&charger>;
370f126890aSEmmanuel Vadot				};
371f126890aSEmmanuel Vadot			};
372f126890aSEmmanuel Vadot		};
373f126890aSEmmanuel Vadot	};
374f126890aSEmmanuel Vadot
375f126890aSEmmanuel Vadot	spi@7000da00 {
376f126890aSEmmanuel Vadot		status = "okay";
377f126890aSEmmanuel Vadot		spi-max-frequency = <25000000>;
378f126890aSEmmanuel Vadot
379f126890aSEmmanuel Vadot		flash@0 {
380f126890aSEmmanuel Vadot			compatible = "winbond,w25q32dw", "jedec,spi-nor";
381f126890aSEmmanuel Vadot			spi-max-frequency = <25000000>;
382f126890aSEmmanuel Vadot			reg = <0>;
383f126890aSEmmanuel Vadot		};
384f126890aSEmmanuel Vadot	};
385f126890aSEmmanuel Vadot
386f126890aSEmmanuel Vadot	pmc@7000e400 {
387f126890aSEmmanuel Vadot		nvidia,invert-interrupt;
388f126890aSEmmanuel Vadot		nvidia,suspend-mode = <0>;
389f126890aSEmmanuel Vadot		nvidia,cpu-pwr-good-time = <500>;
390f126890aSEmmanuel Vadot		nvidia,cpu-pwr-off-time = <300>;
391f126890aSEmmanuel Vadot		nvidia,core-pwr-good-time = <641 3845>;
392f126890aSEmmanuel Vadot		nvidia,core-pwr-off-time = <61036>;
393f126890aSEmmanuel Vadot		nvidia,core-power-req-active-high;
394f126890aSEmmanuel Vadot		nvidia,sys-clock-req-active-high;
395f126890aSEmmanuel Vadot	};
396f126890aSEmmanuel Vadot
397f126890aSEmmanuel Vadot	cec@70015000 {
398f126890aSEmmanuel Vadot		status = "okay";
399f126890aSEmmanuel Vadot	};
400f126890aSEmmanuel Vadot
401f126890aSEmmanuel Vadot	hda@70030000 {
402f126890aSEmmanuel Vadot		status = "okay";
403f126890aSEmmanuel Vadot	};
404f126890aSEmmanuel Vadot
405f126890aSEmmanuel Vadot	usb@70090000 {
406f126890aSEmmanuel Vadot		phys = <&{/padctl@7009f000/pads/usb2/lanes/usb2-0}>, /* 1st USB A */
407f126890aSEmmanuel Vadot		       <&{/padctl@7009f000/pads/usb2/lanes/usb2-1}>, /* Internal USB */
408f126890aSEmmanuel Vadot		       <&{/padctl@7009f000/pads/usb2/lanes/usb2-2}>, /* 2nd USB A */
409f126890aSEmmanuel Vadot		       <&{/padctl@7009f000/pads/pcie/lanes/pcie-0}>, /* 1st USB A */
410f126890aSEmmanuel Vadot		       <&{/padctl@7009f000/pads/pcie/lanes/pcie-1}>; /* 2nd USB A */
411f126890aSEmmanuel Vadot		phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-0", "usb3-1";
412f126890aSEmmanuel Vadot
413f126890aSEmmanuel Vadot		avddio-pex-supply = <&vdd_1v05_run>;
414f126890aSEmmanuel Vadot		dvddio-pex-supply = <&vdd_1v05_run>;
415f126890aSEmmanuel Vadot		avdd-usb-supply = <&vdd_3v3_lp0>;
416f126890aSEmmanuel Vadot		avdd-pll-utmip-supply = <&vddio_1v8>;
417f126890aSEmmanuel Vadot		avdd-pll-erefe-supply = <&avdd_1v05_run>;
418f126890aSEmmanuel Vadot		avdd-usb-ss-pll-supply = <&vdd_1v05_run>;
419f126890aSEmmanuel Vadot		hvdd-usb-ss-supply = <&vdd_3v3_lp0>;
420f126890aSEmmanuel Vadot		hvdd-usb-ss-pll-e-supply = <&vdd_3v3_lp0>;
421f126890aSEmmanuel Vadot
422f126890aSEmmanuel Vadot		status = "okay";
423f126890aSEmmanuel Vadot	};
424f126890aSEmmanuel Vadot
425f126890aSEmmanuel Vadot	padctl@7009f000 {
426f126890aSEmmanuel Vadot		status = "okay";
427f126890aSEmmanuel Vadot
428f126890aSEmmanuel Vadot		avdd-pll-utmip-supply = <&vddio_1v8>;
429f126890aSEmmanuel Vadot		avdd-pll-erefe-supply = <&avdd_1v05_run>;
430f126890aSEmmanuel Vadot		avdd-pex-pll-supply = <&vdd_1v05_run>;
431f126890aSEmmanuel Vadot		hvdd-pex-pll-e-supply = <&vdd_3v3_lp0>;
432f126890aSEmmanuel Vadot
433f126890aSEmmanuel Vadot		pads {
434f126890aSEmmanuel Vadot			usb2 {
435f126890aSEmmanuel Vadot				status = "okay";
436f126890aSEmmanuel Vadot
437f126890aSEmmanuel Vadot				lanes {
438f126890aSEmmanuel Vadot					usb2-0 {
439f126890aSEmmanuel Vadot						nvidia,function = "xusb";
440f126890aSEmmanuel Vadot						status = "okay";
441f126890aSEmmanuel Vadot					};
442f126890aSEmmanuel Vadot
443f126890aSEmmanuel Vadot					usb2-1 {
444f126890aSEmmanuel Vadot						nvidia,function = "xusb";
445f126890aSEmmanuel Vadot						status = "okay";
446f126890aSEmmanuel Vadot					};
447f126890aSEmmanuel Vadot
448f126890aSEmmanuel Vadot					usb2-2 {
449f126890aSEmmanuel Vadot						nvidia,function = "xusb";
450f126890aSEmmanuel Vadot						status = "okay";
451f126890aSEmmanuel Vadot					};
452f126890aSEmmanuel Vadot				};
453f126890aSEmmanuel Vadot			};
454f126890aSEmmanuel Vadot
455f126890aSEmmanuel Vadot			pcie {
456f126890aSEmmanuel Vadot				status = "okay";
457f126890aSEmmanuel Vadot
458f126890aSEmmanuel Vadot				lanes {
459f126890aSEmmanuel Vadot					pcie-0 {
460f126890aSEmmanuel Vadot						nvidia,function = "usb3-ss";
461f126890aSEmmanuel Vadot						status = "okay";
462f126890aSEmmanuel Vadot					};
463f126890aSEmmanuel Vadot
464f126890aSEmmanuel Vadot					pcie-1 {
465f126890aSEmmanuel Vadot						nvidia,function = "usb3-ss";
466f126890aSEmmanuel Vadot						status = "okay";
467f126890aSEmmanuel Vadot					};
468f126890aSEmmanuel Vadot				};
469f126890aSEmmanuel Vadot			};
470f126890aSEmmanuel Vadot		};
471f126890aSEmmanuel Vadot
472f126890aSEmmanuel Vadot		ports {
473f126890aSEmmanuel Vadot			usb2-0 {
474f126890aSEmmanuel Vadot				vbus-supply = <&vdd_usb1_vbus>;
475f126890aSEmmanuel Vadot				status = "okay";
476f126890aSEmmanuel Vadot				mode = "otg";
477f126890aSEmmanuel Vadot				usb-role-switch;
478f126890aSEmmanuel Vadot			};
479f126890aSEmmanuel Vadot
480f126890aSEmmanuel Vadot			usb2-1 {
481f126890aSEmmanuel Vadot				vbus-supply = <&vdd_run_cam>;
482f126890aSEmmanuel Vadot				status = "okay";
483f126890aSEmmanuel Vadot				mode = "host";
484f126890aSEmmanuel Vadot			};
485f126890aSEmmanuel Vadot
486f126890aSEmmanuel Vadot			usb2-2 {
487f126890aSEmmanuel Vadot				vbus-supply = <&vdd_usb3_vbus>;
488f126890aSEmmanuel Vadot				status = "okay";
489f126890aSEmmanuel Vadot				mode = "host";
490f126890aSEmmanuel Vadot			};
491f126890aSEmmanuel Vadot
492f126890aSEmmanuel Vadot			usb3-0 {
493f126890aSEmmanuel Vadot				nvidia,usb2-companion = <0>;
494f126890aSEmmanuel Vadot				status = "okay";
495f126890aSEmmanuel Vadot			};
496f126890aSEmmanuel Vadot
497f126890aSEmmanuel Vadot			usb3-1 {
498f126890aSEmmanuel Vadot				nvidia,usb2-companion = <1>;
499f126890aSEmmanuel Vadot				status = "okay";
500f126890aSEmmanuel Vadot			};
501f126890aSEmmanuel Vadot		};
502f126890aSEmmanuel Vadot	};
503f126890aSEmmanuel Vadot
504f126890aSEmmanuel Vadot	mmc@700b0000 { /* WiFi/BT on this bus */
505f126890aSEmmanuel Vadot		status = "okay";
506f126890aSEmmanuel Vadot		bus-width = <4>;
507f126890aSEmmanuel Vadot		no-1-8-v;
508f126890aSEmmanuel Vadot		non-removable;
509f126890aSEmmanuel Vadot		mmc-pwrseq = <&sdhci0_pwrseq>;
510f126890aSEmmanuel Vadot		vmmc-supply = <&vdd_3v3_lp0>;
511f126890aSEmmanuel Vadot		vqmmc-supply = <&vddio_1v8>;
512f126890aSEmmanuel Vadot		keep-power-in-suspend;
513f126890aSEmmanuel Vadot	};
514f126890aSEmmanuel Vadot
515f126890aSEmmanuel Vadot	mmc@700b0400 { /* SD Card on this bus */
516f126890aSEmmanuel Vadot		status = "okay";
517f126890aSEmmanuel Vadot		cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>;
518f126890aSEmmanuel Vadot		power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>;
519f126890aSEmmanuel Vadot		bus-width = <4>;
520f126890aSEmmanuel Vadot		no-1-8-v;
521f126890aSEmmanuel Vadot		vqmmc-supply = <&vddio_sdmmc3>;
522f126890aSEmmanuel Vadot	};
523f126890aSEmmanuel Vadot
524f126890aSEmmanuel Vadot	mmc@700b0600 { /* eMMC on this bus */
525f126890aSEmmanuel Vadot		status = "okay";
526f126890aSEmmanuel Vadot		bus-width = <8>;
527f126890aSEmmanuel Vadot		no-1-8-v;
528f126890aSEmmanuel Vadot		non-removable;
529f126890aSEmmanuel Vadot	};
530f126890aSEmmanuel Vadot
531f126890aSEmmanuel Vadot	/* CPU DFLL clock */
532f126890aSEmmanuel Vadot	clock@70110000 {
533f126890aSEmmanuel Vadot		status = "okay";
534f126890aSEmmanuel Vadot		vdd-cpu-supply = <&vdd_cpu>;
535f126890aSEmmanuel Vadot		nvidia,i2c-fs-rate = <400000>;
536f126890aSEmmanuel Vadot	};
537f126890aSEmmanuel Vadot
538f126890aSEmmanuel Vadot	ahub@70300000 {
539f126890aSEmmanuel Vadot		i2s@70301100 {
540f126890aSEmmanuel Vadot			status = "okay";
541f126890aSEmmanuel Vadot		};
542f126890aSEmmanuel Vadot	};
543f126890aSEmmanuel Vadot
544f126890aSEmmanuel Vadot	backlight: backlight {
545f126890aSEmmanuel Vadot		compatible = "pwm-backlight";
546f126890aSEmmanuel Vadot
547f126890aSEmmanuel Vadot		enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>;
548f126890aSEmmanuel Vadot		power-supply = <&vdd_led>;
549f126890aSEmmanuel Vadot		pwms = <&pwm 1 1000000>;
550f126890aSEmmanuel Vadot
551f126890aSEmmanuel Vadot		default-brightness-level = <224>;
552f126890aSEmmanuel Vadot		brightness-levels =
553f126890aSEmmanuel Vadot			<  0   1   2   3   4   5   6   7
554f126890aSEmmanuel Vadot			   8   9  10  11  12  13  14  15
555f126890aSEmmanuel Vadot			  16  17  18  19  20  21  22  23
556f126890aSEmmanuel Vadot			  24  25  26  27  28  29  30  31
557f126890aSEmmanuel Vadot			  32  33  34  35  36  37  38  39
558f126890aSEmmanuel Vadot			  40  41  42  43  44  45  46  47
559f126890aSEmmanuel Vadot			  48  49  50  51  52  53  54  55
560f126890aSEmmanuel Vadot			  56  57  58  59  60  61  62  63
561f126890aSEmmanuel Vadot			  64  65  66  67  68  69  70  71
562f126890aSEmmanuel Vadot			  72  73  74  75  76  77  78  79
563f126890aSEmmanuel Vadot			  80  81  82  83  84  85  86  87
564f126890aSEmmanuel Vadot			  88  89  90  91  92  93  94  95
565f126890aSEmmanuel Vadot			  96  97  98  99 100 101 102 103
566f126890aSEmmanuel Vadot			 104 105 106 107 108 109 110 111
567f126890aSEmmanuel Vadot			 112 113 114 115 116 117 118 119
568f126890aSEmmanuel Vadot			 120 121 122 123 124 125 126 127
569f126890aSEmmanuel Vadot			 128 129 130 131 132 133 134 135
570f126890aSEmmanuel Vadot			 136 137 138 139 140 141 142 143
571f126890aSEmmanuel Vadot			 144 145 146 147 148 149 150 151
572f126890aSEmmanuel Vadot			 152 153 154 155 156 157 158 159
573f126890aSEmmanuel Vadot			 160 161 162 163 164 165 166 167
574f126890aSEmmanuel Vadot			 168 169 170 171 172 173 174 175
575f126890aSEmmanuel Vadot			 176 177 178 179 180 181 182 183
576f126890aSEmmanuel Vadot			 184 185 186 187 188 189 190 191
577f126890aSEmmanuel Vadot			 192 193 194 195 196 197 198 199
578f126890aSEmmanuel Vadot			 200 201 202 203 204 205 206 207
579f126890aSEmmanuel Vadot			 208 209 210 211 212 213 214 215
580f126890aSEmmanuel Vadot			 216 217 218 219 220 221 222 223
581f126890aSEmmanuel Vadot			 224 225 226 227 228 229 230 231
582f126890aSEmmanuel Vadot			 232 233 234 235 236 237 238 239
583f126890aSEmmanuel Vadot			 240 241 242 243 244 245 246 247
584f126890aSEmmanuel Vadot			 248 249 250 251 252 253 254 255
585f126890aSEmmanuel Vadot			 256>;
586f126890aSEmmanuel Vadot	};
587f126890aSEmmanuel Vadot
588f126890aSEmmanuel Vadot	clk32k_in: clock-32k {
589f126890aSEmmanuel Vadot		compatible = "fixed-clock";
590f126890aSEmmanuel Vadot		clock-frequency = <32768>;
591f126890aSEmmanuel Vadot		#clock-cells = <0>;
592f126890aSEmmanuel Vadot	};
593f126890aSEmmanuel Vadot
594f126890aSEmmanuel Vadot	cpus {
595f126890aSEmmanuel Vadot		cpu0: cpu@0 {
596f126890aSEmmanuel Vadot			#cooling-cells = <2>;
597f126890aSEmmanuel Vadot			vdd-cpu-supply = <&vdd_cpu>;
598f126890aSEmmanuel Vadot		};
599f126890aSEmmanuel Vadot
600f126890aSEmmanuel Vadot		cpu1: cpu@1 {
601f126890aSEmmanuel Vadot			#cooling-cells = <2>;
602f126890aSEmmanuel Vadot		};
603f126890aSEmmanuel Vadot
604f126890aSEmmanuel Vadot		cpu2: cpu@2 {
605f126890aSEmmanuel Vadot			#cooling-cells = <2>;
606f126890aSEmmanuel Vadot		};
607f126890aSEmmanuel Vadot
608f126890aSEmmanuel Vadot		cpu3: cpu@3 {
609f126890aSEmmanuel Vadot			#cooling-cells = <2>;
610f126890aSEmmanuel Vadot		};
611f126890aSEmmanuel Vadot	};
612f126890aSEmmanuel Vadot
613f126890aSEmmanuel Vadot	gpio-keys {
614f126890aSEmmanuel Vadot		compatible = "gpio-keys";
615f126890aSEmmanuel Vadot
616f126890aSEmmanuel Vadot		key-power {
617f126890aSEmmanuel Vadot			label = "Power";
618f126890aSEmmanuel Vadot			gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>;
619f126890aSEmmanuel Vadot			linux,code = <KEY_POWER>;
620f126890aSEmmanuel Vadot			debounce-interval = <30>;
621f126890aSEmmanuel Vadot			wakeup-source;
622f126890aSEmmanuel Vadot		};
623f126890aSEmmanuel Vadot
624f126890aSEmmanuel Vadot		switch-lid {
625f126890aSEmmanuel Vadot			label = "Lid";
626f126890aSEmmanuel Vadot			gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>;
627f126890aSEmmanuel Vadot			linux,input-type = <5>;
628f126890aSEmmanuel Vadot			linux,code = <KEY_RESERVED>;
629f126890aSEmmanuel Vadot			debounce-interval = <1>;
630f126890aSEmmanuel Vadot			wakeup-source;
631f126890aSEmmanuel Vadot		};
632f126890aSEmmanuel Vadot	};
633f126890aSEmmanuel Vadot
634f126890aSEmmanuel Vadot	gpio-restart {
635f126890aSEmmanuel Vadot		compatible = "gpio-restart";
636f126890aSEmmanuel Vadot		gpios = <&gpio TEGRA_GPIO(I, 5) GPIO_ACTIVE_LOW>;
637f126890aSEmmanuel Vadot		priority = <200>;
638f126890aSEmmanuel Vadot	};
639f126890aSEmmanuel Vadot
640f126890aSEmmanuel Vadot	sdhci0_pwrseq: pwrseq-sdhci0 {
641f126890aSEmmanuel Vadot		compatible = "mmc-pwrseq-simple";
642f126890aSEmmanuel Vadot
643f126890aSEmmanuel Vadot		reset-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_LOW>;
644f126890aSEmmanuel Vadot	};
645f126890aSEmmanuel Vadot
646f126890aSEmmanuel Vadot	vdd_mux: regulator-mux {
647f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
648f126890aSEmmanuel Vadot		regulator-name = "+VDD_MUX";
649f126890aSEmmanuel Vadot		regulator-min-microvolt = <12000000>;
650f126890aSEmmanuel Vadot		regulator-max-microvolt = <12000000>;
651f126890aSEmmanuel Vadot		regulator-always-on;
652f126890aSEmmanuel Vadot		regulator-boot-on;
653f126890aSEmmanuel Vadot	};
654f126890aSEmmanuel Vadot
655f126890aSEmmanuel Vadot	vdd_5v0_sys: regulator-5v0sys {
656f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
657f126890aSEmmanuel Vadot		regulator-name = "+5V_SYS";
658f126890aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
659f126890aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
660f126890aSEmmanuel Vadot		regulator-always-on;
661f126890aSEmmanuel Vadot		regulator-boot-on;
662f126890aSEmmanuel Vadot		vin-supply = <&vdd_mux>;
663f126890aSEmmanuel Vadot	};
664f126890aSEmmanuel Vadot
665f126890aSEmmanuel Vadot	vdd_3v3_sys: regulator-3v3sys {
666f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
667f126890aSEmmanuel Vadot		regulator-name = "+3.3V_SYS";
668f126890aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
669f126890aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
670f126890aSEmmanuel Vadot		regulator-always-on;
671f126890aSEmmanuel Vadot		regulator-boot-on;
672f126890aSEmmanuel Vadot		vin-supply = <&vdd_mux>;
673f126890aSEmmanuel Vadot	};
674f126890aSEmmanuel Vadot
675f126890aSEmmanuel Vadot	vdd_3v3_run: regulator-3v3run {
676f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
677f126890aSEmmanuel Vadot		regulator-name = "+3.3V_RUN";
678f126890aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
679f126890aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
680f126890aSEmmanuel Vadot		regulator-always-on;
681f126890aSEmmanuel Vadot		regulator-boot-on;
682f126890aSEmmanuel Vadot		gpio = <&pmic 1 GPIO_ACTIVE_HIGH>;
683f126890aSEmmanuel Vadot		enable-active-high;
684f126890aSEmmanuel Vadot		vin-supply = <&vdd_3v3_sys>;
685f126890aSEmmanuel Vadot	};
686f126890aSEmmanuel Vadot
687f126890aSEmmanuel Vadot	vdd_3v3_hdmi: regulator-3v3hdmi {
688f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
689f126890aSEmmanuel Vadot		regulator-name = "+3.3V_AVDD_HDMI_AP_GATED";
690f126890aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
691f126890aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
692f126890aSEmmanuel Vadot		vin-supply = <&vdd_3v3_run>;
693f126890aSEmmanuel Vadot	};
694f126890aSEmmanuel Vadot
695f126890aSEmmanuel Vadot	vdd_led: regulator-led {
696f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
697f126890aSEmmanuel Vadot		regulator-name = "+VDD_LED";
698f126890aSEmmanuel Vadot		gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>;
699f126890aSEmmanuel Vadot		enable-active-high;
700f126890aSEmmanuel Vadot		vin-supply = <&vdd_mux>;
701f126890aSEmmanuel Vadot	};
702f126890aSEmmanuel Vadot
703f126890aSEmmanuel Vadot	vdd_5v0_ts: regulator-ts {
704f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
705f126890aSEmmanuel Vadot		regulator-name = "+5V_VDD_TS_SW";
706f126890aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
707f126890aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
708f126890aSEmmanuel Vadot		regulator-boot-on;
709f126890aSEmmanuel Vadot		gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>;
710f126890aSEmmanuel Vadot		enable-active-high;
711f126890aSEmmanuel Vadot		vin-supply = <&vdd_5v0_sys>;
712f126890aSEmmanuel Vadot	};
713f126890aSEmmanuel Vadot
714f126890aSEmmanuel Vadot	vdd_usb1_vbus: regulator-usb1 {
715f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
716f126890aSEmmanuel Vadot		regulator-name = "+5V_USB_HS";
717f126890aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
718f126890aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
719f126890aSEmmanuel Vadot		gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>;
720f126890aSEmmanuel Vadot		enable-active-high;
721f126890aSEmmanuel Vadot		gpio-open-drain;
722f126890aSEmmanuel Vadot		vin-supply = <&vdd_5v0_sys>;
723f126890aSEmmanuel Vadot	};
724f126890aSEmmanuel Vadot
725f126890aSEmmanuel Vadot	vdd_usb3_vbus: regulator-usb3 {
726f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
727f126890aSEmmanuel Vadot		regulator-name = "+5V_USB_SS";
728f126890aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
729f126890aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
730f126890aSEmmanuel Vadot		gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>;
731f126890aSEmmanuel Vadot		enable-active-high;
732f126890aSEmmanuel Vadot		gpio-open-drain;
733f126890aSEmmanuel Vadot		vin-supply = <&vdd_5v0_sys>;
734f126890aSEmmanuel Vadot	};
735f126890aSEmmanuel Vadot
736f126890aSEmmanuel Vadot	vdd_3v3_panel: regulator-panel {
737f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
738f126890aSEmmanuel Vadot		regulator-name = "+3.3V_PANEL";
739f126890aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
740f126890aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
741f126890aSEmmanuel Vadot		gpio = <&pmic 4 GPIO_ACTIVE_HIGH>;
742f126890aSEmmanuel Vadot		enable-active-high;
743f126890aSEmmanuel Vadot		vin-supply = <&vdd_3v3_run>;
744f126890aSEmmanuel Vadot	};
745f126890aSEmmanuel Vadot
746f126890aSEmmanuel Vadot	vdd_3v3_lp0: regulator-lp0 {
747f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
748f126890aSEmmanuel Vadot		regulator-name = "+3.3V_LP0";
749f126890aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
750f126890aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
751f126890aSEmmanuel Vadot		/*
752f126890aSEmmanuel Vadot		 * TODO: find a way to wire this up with the USB EHCI
753f126890aSEmmanuel Vadot		 * controllers so that it can be enabled on demand.
754f126890aSEmmanuel Vadot		 */
755f126890aSEmmanuel Vadot		regulator-always-on;
756f126890aSEmmanuel Vadot		gpio = <&pmic 2 GPIO_ACTIVE_HIGH>;
757f126890aSEmmanuel Vadot		enable-active-high;
758f126890aSEmmanuel Vadot		vin-supply = <&vdd_3v3_sys>;
759f126890aSEmmanuel Vadot	};
760f126890aSEmmanuel Vadot
761f126890aSEmmanuel Vadot	vdd_hdmi_pll: regulator-hdmipll {
762f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
763f126890aSEmmanuel Vadot		regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL";
764f126890aSEmmanuel Vadot		regulator-min-microvolt = <1050000>;
765f126890aSEmmanuel Vadot		regulator-max-microvolt = <1050000>;
766f126890aSEmmanuel Vadot		gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>;
767f126890aSEmmanuel Vadot		vin-supply = <&vdd_1v05_run>;
768f126890aSEmmanuel Vadot	};
769f126890aSEmmanuel Vadot
770f126890aSEmmanuel Vadot	vdd_5v0_hdmi: regulator-hdmicon {
771f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
772f126890aSEmmanuel Vadot		regulator-name = "+5V_HDMI_CON";
773f126890aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
774f126890aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
775f126890aSEmmanuel Vadot		gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>;
776f126890aSEmmanuel Vadot		enable-active-high;
777f126890aSEmmanuel Vadot		vin-supply = <&vdd_5v0_sys>;
778f126890aSEmmanuel Vadot	};
779f126890aSEmmanuel Vadot
780f126890aSEmmanuel Vadot	sound {
781f126890aSEmmanuel Vadot		nvidia,audio-routing =
782f126890aSEmmanuel Vadot			"Headphones", "HPR",
783f126890aSEmmanuel Vadot			"Headphones", "HPL",
784f126890aSEmmanuel Vadot			"Speakers", "SPKR",
785f126890aSEmmanuel Vadot			"Speakers", "SPKL",
786f126890aSEmmanuel Vadot			"Mic Jack", "MICBIAS",
787f126890aSEmmanuel Vadot			"DMICL", "Int Mic",
788f126890aSEmmanuel Vadot			"DMICR", "Int Mic",
789f126890aSEmmanuel Vadot			"IN34", "Mic Jack";
790f126890aSEmmanuel Vadot
791f126890aSEmmanuel Vadot		nvidia,i2s-controller = <&tegra_i2s1>;
792f126890aSEmmanuel Vadot		nvidia,audio-codec = <&acodec>;
793f126890aSEmmanuel Vadot
794f126890aSEmmanuel Vadot		clocks = <&tegra_car TEGRA124_CLK_PLL_A>,
795f126890aSEmmanuel Vadot			 <&tegra_car TEGRA124_CLK_PLL_A_OUT0>,
796f126890aSEmmanuel Vadot			 <&tegra_pmc TEGRA_PMC_CLK_OUT_1>;
797f126890aSEmmanuel Vadot		clock-names = "pll_a", "pll_a_out0", "mclk";
798f126890aSEmmanuel Vadot
799f126890aSEmmanuel Vadot		assigned-clocks = <&tegra_car TEGRA124_CLK_EXTERN1>,
800f126890aSEmmanuel Vadot				  <&tegra_pmc TEGRA_PMC_CLK_OUT_1>;
801f126890aSEmmanuel Vadot
802f126890aSEmmanuel Vadot		assigned-clock-parents = <&tegra_car TEGRA124_CLK_PLL_A_OUT0>,
803f126890aSEmmanuel Vadot					 <&tegra_car TEGRA124_CLK_EXTERN1>;
804f126890aSEmmanuel Vadot
805f126890aSEmmanuel Vadot		nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>;
806f126890aSEmmanuel Vadot		nvidia,mic-det-gpios =
807f126890aSEmmanuel Vadot				<&gpio TEGRA_GPIO(R, 7) GPIO_ACTIVE_HIGH>;
808f126890aSEmmanuel Vadot	};
809f126890aSEmmanuel Vadot
810f126890aSEmmanuel Vadot	thermal-zones {
811f126890aSEmmanuel Vadot		cpu-skin-thermal {
812f126890aSEmmanuel Vadot			polling-delay-passive = <1000>; /* milliseconds */
813f126890aSEmmanuel Vadot			polling-delay = <5000>; /* milliseconds */
814f126890aSEmmanuel Vadot
815f126890aSEmmanuel Vadot			thermal-sensors = <&tmp451 0>;
816f126890aSEmmanuel Vadot
817f126890aSEmmanuel Vadot			trips {
818f126890aSEmmanuel Vadot				cpu_passive_trip: cpu-alert0 {
819f126890aSEmmanuel Vadot					/* throttle at 70C until temperature drops to 69.8C */
820f126890aSEmmanuel Vadot					temperature = <70000>;
821f126890aSEmmanuel Vadot					hysteresis = <200>;
822f126890aSEmmanuel Vadot					type = "passive";
823f126890aSEmmanuel Vadot				};
824f126890aSEmmanuel Vadot			};
825f126890aSEmmanuel Vadot
826f126890aSEmmanuel Vadot			cooling-maps {
827f126890aSEmmanuel Vadot				map0 {
828f126890aSEmmanuel Vadot					trip = <&cpu_passive_trip>;
829f126890aSEmmanuel Vadot					cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
830f126890aSEmmanuel Vadot							 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
831f126890aSEmmanuel Vadot							 <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
832f126890aSEmmanuel Vadot							 <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
833f126890aSEmmanuel Vadot				};
834f126890aSEmmanuel Vadot			};
835f126890aSEmmanuel Vadot		};
836f126890aSEmmanuel Vadot	};
837f126890aSEmmanuel Vadot};
838f126890aSEmmanuel Vadot
839f126890aSEmmanuel Vadot#include "../cros-ec-keyboard.dtsi"
840