]> git.ipfire.org Git - people/ms/u-boot.git/blame - arch/arm/dts/tegra124-nyan.dtsi
Merge git://git.denx.de/u-boot-i2c
[people/ms/u-boot.git] / arch / arm / dts / tegra124-nyan.dtsi
CommitLineData
300e2353
SG
1#include <dt-bindings/input/input.h>
2#include "tegra124.dtsi"
3
4/ {
5 aliases {
eb631d7f
SW
6 rtc0 = "/i2c@7000d000/pmic@40";
7 rtc1 = "/rtc@7000e000";
300e2353
SG
8 serial0 = &uarta;
9 };
10
11 memory {
12 reg = <0x80000000 0x80000000>;
13 };
14
15 host1x@50000000 {
16 hdmi@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@54540000 {
29 status = "okay";
30
31 nvidia,dpaux = <&dpaux>;
32 nvidia,panel = <&panel>;
33 };
34
35 dpaux@545c0000 {
36 vdd-supply = <&vdd_3v3_panel>;
37 status = "okay";
38 };
39 };
40
41 serial@70006000 {
42 /* Debug connector on the bottom of the board near SD card. */
43 status = "okay";
44 };
45
46 pwm@7000a000 {
47 status = "okay";
48 };
49
50 i2c@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@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@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@7000c700 {
95 status = "okay";
96 clock-frequency = <100000>;
97 };
98
99 i2c@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@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@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@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@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@700b0000 { /* WiFi/BT on this bus */
374 status = "okay";
375 power-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_HIGH>;
376 bus-width = <4>;
377 no-1-8-v;
378 non-removable;
379 mmc-pwrseq = <&sdhci0_pwrseq>;
380 vmmc-supply = <&vdd_3v3_lp0>;
381 vqmmc-supply = <&vddio_1v8>;
382 keep-power-in-suspend;
383 };
384
385 sdhci@700b0400 { /* SD Card on this bus */
386 status = "okay";
387 cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>;
388 power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>;
389 wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_LOW>;
390 bus-width = <4>;
391 no-1-8-v;
392 vqmmc-supply = <&vddio_sdmmc3>;
393 };
394
395 sdhci@700b0600 { /* eMMC on this bus */
396 status = "okay";
397 bus-width = <8>;
398 no-1-8-v;
399 non-removable;
400 };
401
402 /* CPU DFLL clock */
403 clock@70110000 {
404 status = "disabled";
405 vdd-cpu-supply = <&vdd_cpu>;
406 nvidia,i2c-fs-rate = <400000>;
407 };
408
409 ahub@70300000 {
410 i2s@70301100 {
411 status = "okay";
412 };
413 };
414
415 usb@7d000000 { /* Rear external USB port. */
416 status = "okay";
417 nvidia,vbus-gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>;
418 };
419
420 usb-phy@7d000000 {
421 status = "okay";
422 vbus-supply = <&vdd_usb1_vbus>;
423 };
424
425 usb@7d004000 { /* Internal webcam. */
426 status = "okay";
3b8c1b3b 427 phy_type = "hsic";
300e2353
SG
428 };
429
430 usb-phy@7d004000 {
431 status = "okay";
3b8c1b3b 432 phy_type = "hsic";
300e2353
SG
433 vbus-supply = <&vdd_run_cam>;
434 };
435
436 usb@7d008000 { /* Left external USB port. */
437 status = "okay";
438 nvidia,vbus-gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>;
439 };
440
441 usb-phy@7d008000 {
442 status = "okay";
443 vbus-supply = <&vdd_usb3_vbus>;
444 };
445
446 backlight: backlight {
447 compatible = "pwm-backlight";
448
449 enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>;
450 power-supply = <&vdd_led>;
451 pwms = <&pwm 1 1000000>;
452
453 default-brightness-level = <224>;
454 brightness-levels =
455 < 0 1 2 3 4 5 6 7
456 8 9 10 11 12 13 14 15
457 16 17 18 19 20 21 22 23
458 24 25 26 27 28 29 30 31
459 32 33 34 35 36 37 38 39
460 40 41 42 43 44 45 46 47
461 48 49 50 51 52 53 54 55
462 56 57 58 59 60 61 62 63
463 64 65 66 67 68 69 70 71
464 72 73 74 75 76 77 78 79
465 80 81 82 83 84 85 86 87
466 88 89 90 91 92 93 94 95
467 96 97 98 99 100 101 102 103
468 104 105 106 107 108 109 110 111
469 112 113 114 115 116 117 118 119
470 120 121 122 123 124 125 126 127
471 128 129 130 131 132 133 134 135
472 136 137 138 139 140 141 142 143
473 144 145 146 147 148 149 150 151
474 152 153 154 155 156 157 158 159
475 160 161 162 163 164 165 166 167
476 168 169 170 171 172 173 174 175
477 176 177 178 179 180 181 182 183
478 184 185 186 187 188 189 190 191
479 192 193 194 195 196 197 198 199
480 200 201 202 203 204 205 206 207
481 208 209 210 211 212 213 214 215
482 216 217 218 219 220 221 222 223
483 224 225 226 227 228 229 230 231
484 232 233 234 235 236 237 238 239
485 240 241 242 243 244 245 246 247
486 248 249 250 251 252 253 254 255
487 256>;
488 };
489
490 clocks {
491 compatible = "simple-bus";
492 #address-cells = <1>;
493 #size-cells = <0>;
494
495 clk32k_in: clock@0 {
496 compatible = "fixed-clock";
497 reg = <0>;
498 #clock-cells = <0>;
499 clock-frequency = <32768>;
500 };
501 };
502
503 cpus {
504 cpu@0 {
505 vdd-cpu-supply = <&vdd_cpu>;
506 };
507 };
508
509 cpus {
510 cpu@0 {
511 vdd-cpu-supply = <&vdd_cpu>;
512 };
513 };
514
515 gpio-keys {
516 compatible = "gpio-keys";
517
518 lid {
519 label = "Lid";
520 gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>;
521 linux,input-type = <5>;
522 linux,code = <KEY_RESERVED>;
523 debounce-interval = <1>;
524 gpio-key,wakeup;
525 };
526
527 power {
528 label = "Power";
529 gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>;
530 linux,code = <KEY_POWER>;
531 debounce-interval = <30>;
532 gpio-key,wakeup;
533 };
534 };
535
536 regulators {
537 compatible = "simple-bus";
538 #address-cells = <1>;
539 #size-cells = <0>;
540
541 vdd_mux: regulator@0 {
542 compatible = "regulator-fixed";
543 reg = <0>;
544 regulator-name = "+VDD_MUX";
545 regulator-min-microvolt = <12000000>;
546 regulator-max-microvolt = <12000000>;
547 regulator-always-on;
548 regulator-boot-on;
549 };
550
551 vdd_5v0_sys: regulator@1 {
552 compatible = "regulator-fixed";
553 reg = <1>;
554 regulator-name = "+5V_SYS";
555 regulator-min-microvolt = <5000000>;
556 regulator-max-microvolt = <5000000>;
557 regulator-always-on;
558 regulator-boot-on;
559 vin-supply = <&vdd_mux>;
560 };
561
562 vdd_3v3_sys: regulator@2 {
563 compatible = "regulator-fixed";
564 reg = <2>;
565 regulator-name = "+3.3V_SYS";
566 regulator-min-microvolt = <3300000>;
567 regulator-max-microvolt = <3300000>;
568 regulator-always-on;
569 regulator-boot-on;
570 vin-supply = <&vdd_mux>;
571 };
572
573 vdd_3v3_run: regulator@3 {
574 compatible = "regulator-fixed";
575 reg = <3>;
576 regulator-name = "+3.3V_RUN";
577 regulator-min-microvolt = <3300000>;
578 regulator-max-microvolt = <3300000>;
579 regulator-always-on;
580 regulator-boot-on;
581 gpio = <&pmic 1 GPIO_ACTIVE_HIGH>;
582 enable-active-high;
583 vin-supply = <&vdd_3v3_sys>;
584 };
585
586 vdd_3v3_hdmi: regulator@4 {
587 compatible = "regulator-fixed";
588 reg = <4>;
589 regulator-name = "+3.3V_AVDD_HDMI_AP_GATED";
590 regulator-min-microvolt = <3300000>;
591 regulator-max-microvolt = <3300000>;
592 vin-supply = <&vdd_3v3_run>;
593 };
594
595 vdd_led: regulator@5 {
596 compatible = "regulator-fixed";
597 reg = <5>;
598 regulator-name = "+VDD_LED";
599 gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>;
600 enable-active-high;
601 vin-supply = <&vdd_mux>;
602 };
603
604 vdd_5v0_ts: regulator@6 {
605 compatible = "regulator-fixed";
606 reg = <6>;
607 regulator-name = "+5V_VDD_TS_SW";
608 regulator-min-microvolt = <5000000>;
609 regulator-max-microvolt = <5000000>;
610 regulator-boot-on;
611 gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>;
612 enable-active-high;
613 vin-supply = <&vdd_5v0_sys>;
614 };
615
616 vdd_usb1_vbus: regulator@7 {
617 compatible = "regulator-fixed";
618 reg = <7>;
619 regulator-name = "+5V_USB_HS";
620 regulator-min-microvolt = <5000000>;
621 regulator-max-microvolt = <5000000>;
622 gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>;
623 enable-active-high;
624 gpio-open-drain;
625 vin-supply = <&vdd_5v0_sys>;
626 };
627
628 vdd_usb3_vbus: regulator@8 {
629 compatible = "regulator-fixed";
630 reg = <8>;
631 regulator-name = "+5V_USB_SS";
632 regulator-min-microvolt = <5000000>;
633 regulator-max-microvolt = <5000000>;
634 gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>;
635 enable-active-high;
636 gpio-open-drain;
637 vin-supply = <&vdd_5v0_sys>;
638 };
639
640 vdd_3v3_panel: regulator@9 {
641 compatible = "regulator-fixed";
642 reg = <9>;
643 regulator-name = "+3.3V_PANEL";
644 regulator-min-microvolt = <3300000>;
645 regulator-max-microvolt = <3300000>;
646 gpio = <&pmic 4 GPIO_ACTIVE_HIGH>;
647 enable-active-high;
648 vin-supply = <&vdd_3v3_run>;
649 };
650
651 vdd_3v3_lp0: regulator@10 {
652 compatible = "regulator-fixed";
653 reg = <10>;
654 regulator-name = "+3.3V_LP0";
655 regulator-min-microvolt = <3300000>;
656 regulator-max-microvolt = <3300000>;
657 /*
658 * TODO: find a way to wire this up with the USB EHCI
659 * controllers so that it can be enabled on demand.
660 */
661 regulator-always-on;
662 gpio = <&pmic 2 GPIO_ACTIVE_HIGH>;
663 enable-active-high;
664 vin-supply = <&vdd_3v3_sys>;
665 };
666
667 vdd_hdmi_pll: regulator@11 {
668 compatible = "regulator-fixed";
669 reg = <11>;
670 regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL";
671 regulator-min-microvolt = <1050000>;
672 regulator-max-microvolt = <1050000>;
673 gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>;
674 vin-supply = <&vdd_1v05_run>;
675 };
676
677 vdd_5v0_hdmi: regulator@12 {
678 compatible = "regulator-fixed";
679 reg = <12>;
680 regulator-name = "+5V_HDMI_CON";
681 regulator-min-microvolt = <5000000>;
682 regulator-max-microvolt = <5000000>;
683 gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>;
684 enable-active-high;
685 vin-supply = <&vdd_5v0_sys>;
686 };
687 };
688
689 sound {
690 nvidia,audio-routing =
691 "Headphones", "HPR",
692 "Headphones", "HPL",
693 "Speakers", "SPKR",
694 "Speakers", "SPKL",
695 "Mic Jack", "MICBIAS",
696 "DMICL", "Int Mic",
697 "DMICR", "Int Mic",
698 "IN34", "Mic Jack";
699
700 nvidia,i2s-controller = <&tegra_i2s1>;
701 nvidia,audio-codec = <&acodec>;
702
703 clocks = <&tegra_car TEGRA124_CLK_PLL_A>,
704 <&tegra_car TEGRA124_CLK_PLL_A_OUT0>,
705 <&tegra_car TEGRA124_CLK_EXTERN1>;
706 clock-names = "pll_a", "pll_a_out0", "mclk";
707
708 nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>;
709 nvidia,mic-det-gpios =
710 <&gpio TEGRA_GPIO(R, 7) GPIO_ACTIVE_HIGH>;
711 };
712
713 gpio-restart {
714 compatible = "gpio-restart";
715 gpios = <&gpio TEGRA_GPIO(I, 5) GPIO_ACTIVE_LOW>;
716 priority = <200>;
717 };
718};
719
720#include "cros-ec-keyboard.dtsi"