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