Linux Audio

Check our new training course

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