1 // SPDX-License-Identifier: GPL-2.0
2 #include <dt-bindings/input/input.h>
3 #include "tegra124.dtsi"
7 rtc0 = "/i2c@7000d000/pmic@40";
8 rtc1 = "/rtc@7000e000";
13 stdout-path = "serial0:115200n8";
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.
26 * The name of this node is effectively ABI and must not be changed.
29 device_type = "memory";
30 reg = <0x0 0x80000000 0x0 0x80000000>;
33 /delete-node/ memory@80000000;
39 vdd-supply = <&vdd_3v3_hdmi>;
40 pll-supply = <&vdd_hdmi_pll>;
41 hdmi-supply = <&vdd_5v0_hdmi>;
43 nvidia,ddc-i2c-bus = <&hdmi_ddc>;
45 <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>;
51 nvidia,dpaux = <&dpaux>;
52 nvidia,panel = <&panel>;
56 vdd-supply = <&vdd_3v3_panel>;
64 vdd-supply = <&vdd_gpu>;
68 /* Debug connector on the bottom of the board near SD card. */
78 clock-frequency = <100000>;
80 acodec: audio-codec@10 {
81 compatible = "maxim,max98090";
83 interrupt-parent = <&gpio>;
84 interrupts = <TEGRA_GPIO(H, 4) IRQ_TYPE_EDGE_FALLING>;
87 temperature-sensor@4c {
88 compatible = "ti,tmp451";
90 interrupt-parent = <&gpio>;
91 interrupts = <TEGRA_GPIO(I, 6) IRQ_TYPE_LEVEL_LOW>;
93 #thermal-sensor-cells = <1>;
99 clock-frequency = <100000>;
102 compatible = "elan,ekth3000";
104 interrupt-parent = <&gpio>;
105 interrupts = <TEGRA_GPIO(W, 3) IRQ_TYPE_EDGE_FALLING>;
112 clock-frequency = <400000>;
115 compatible = "infineon,slb9645tt";
120 hdmi_ddc: i2c@7000c700 {
122 clock-frequency = <100000>;
127 clock-frequency = <400000>;
130 compatible = "ams,as3722";
132 interrupts = <0 86 IRQ_TYPE_LEVEL_HIGH>;
134 ams,system-power-controller;
136 #interrupt-cells = <2>;
137 interrupt-controller;
142 pinctrl-names = "default";
143 pinctrl-0 = <&as3722_default>;
145 as3722_default: pinmux {
159 pins = "gpio2", "gpio4", "gpio7";
165 pins = "gpio3", "gpio6";
171 function = "clk32k-out";
177 vsup-sd2-supply = <&vdd_5v0_sys>;
178 vsup-sd3-supply = <&vdd_5v0_sys>;
179 vsup-sd4-supply = <&vdd_5v0_sys>;
180 vsup-sd5-supply = <&vdd_5v0_sys>;
181 vin-ldo0-supply = <&vdd_1v35_lp0>;
182 vin-ldo1-6-supply = <&vdd_3v3_run>;
183 vin-ldo2-5-7-supply = <&vddio_1v8>;
184 vin-ldo3-4-supply = <&vdd_3v3_sys>;
185 vin-ldo9-10-supply = <&vdd_5v0_sys>;
186 vin-ldo11-supply = <&vdd_3v3_run>;
189 regulator-name = "+VDD_CPU_AP";
190 regulator-min-microvolt = <700000>;
191 regulator-max-microvolt = <1350000>;
192 regulator-min-microamp = <3500000>;
193 regulator-max-microamp = <3500000>;
196 ams,ext-control = <2>;
200 regulator-name = "+VDD_CORE";
201 regulator-min-microvolt = <700000>;
202 regulator-max-microvolt = <1350000>;
203 regulator-min-microamp = <2500000>;
204 regulator-max-microamp = <4000000>;
207 ams,ext-control = <1>;
211 regulator-name = "+1.35V_LP0(sd2)";
212 regulator-min-microvolt = <1350000>;
213 regulator-max-microvolt = <1350000>;
219 regulator-name = "+1.35V_LP0(sd3)";
220 regulator-min-microvolt = <1350000>;
221 regulator-max-microvolt = <1350000>;
227 regulator-name = "+1.05V_RUN";
228 regulator-min-microvolt = <1050000>;
229 regulator-max-microvolt = <1050000>;
233 regulator-name = "+1.8V_VDDIO";
234 regulator-min-microvolt = <1800000>;
235 regulator-max-microvolt = <1800000>;
240 regulator-name = "+VDD_GPU_AP";
241 regulator-min-microvolt = <650000>;
242 regulator-max-microvolt = <1200000>;
243 regulator-min-microamp = <3500000>;
244 regulator-max-microamp = <3500000>;
249 avdd_1v05_run: ldo0 {
250 regulator-name = "+1.05V_RUN_AVDD";
251 regulator-min-microvolt = <1050000>;
252 regulator-max-microvolt = <1050000>;
255 ams,ext-control = <1>;
259 regulator-name = "+1.8V_RUN_CAM";
260 regulator-min-microvolt = <1800000>;
261 regulator-max-microvolt = <1800000>;
265 regulator-name = "+1.2V_GEN_AVDD";
266 regulator-min-microvolt = <1200000>;
267 regulator-max-microvolt = <1200000>;
273 regulator-name = "+1.00V_LP0_VDD_RTC";
274 regulator-min-microvolt = <1000000>;
275 regulator-max-microvolt = <1000000>;
282 regulator-name = "+3.3V_RUN_CAM";
283 regulator-min-microvolt = <2800000>;
284 regulator-max-microvolt = <2800000>;
288 regulator-name = "+1.2V_RUN_CAM_FRONT";
289 regulator-min-microvolt = <1200000>;
290 regulator-max-microvolt = <1200000>;
294 regulator-name = "+VDDIO_SDMMC3";
295 regulator-min-microvolt = <1800000>;
296 regulator-max-microvolt = <3300000>;
300 regulator-name = "+1.05V_RUN_CAM_REAR";
301 regulator-min-microvolt = <1050000>;
302 regulator-max-microvolt = <1050000>;
306 regulator-name = "+2.8V_RUN_TOUCH";
307 regulator-min-microvolt = <2800000>;
308 regulator-max-microvolt = <2800000>;
312 regulator-name = "+2.8V_RUN_CAM_AF";
313 regulator-min-microvolt = <2800000>;
314 regulator-max-microvolt = <2800000>;
318 regulator-name = "+1.8V_RUN_VPP_FUSE";
319 regulator-min-microvolt = <1800000>;
320 regulator-max-microvolt = <1800000>;
330 compatible = "google,cros-ec-spi";
331 spi-max-frequency = <3000000>;
332 interrupt-parent = <&gpio>;
333 interrupts = <TEGRA_GPIO(C, 7) IRQ_TYPE_LEVEL_LOW>;
336 google,cros-ec-spi-msg-delay = <2000>;
339 compatible = "google,cros-ec-i2c-tunnel";
340 #address-cells = <1>;
343 google,remote-bus = <0>;
346 compatible = "ti,bq24735";
348 interrupt-parent = <&gpio>;
349 interrupts = <TEGRA_GPIO(J, 0)
351 ti,ac-detect-gpios = <&gpio
357 battery: sbs-battery@b {
358 compatible = "sbs,sbs-battery";
360 sbs,i2c-retry-count = <2>;
361 sbs,poll-retry-count = <10>;
362 power-supplies = <&charger>;
370 spi-max-frequency = <25000000>;
373 compatible = "winbond,w25q32dw", "jedec,spi-nor";
374 spi-max-frequency = <25000000>;
380 nvidia,invert-interrupt;
381 nvidia,suspend-mode = <0>;
382 nvidia,cpu-pwr-good-time = <500>;
383 nvidia,cpu-pwr-off-time = <300>;
384 nvidia,core-pwr-good-time = <641 3845>;
385 nvidia,core-pwr-off-time = <61036>;
386 nvidia,core-power-req-active-high;
387 nvidia,sys-clock-req-active-high;
395 phys = <&{/padctl@7009f000/pads/usb2/lanes/usb2-0}>, /* 1st USB A */
396 <&{/padctl@7009f000/pads/usb2/lanes/usb2-1}>, /* Internal USB */
397 <&{/padctl@7009f000/pads/usb2/lanes/usb2-2}>, /* 2nd USB A */
398 <&{/padctl@7009f000/pads/pcie/lanes/pcie-0}>, /* 1st USB A */
399 <&{/padctl@7009f000/pads/pcie/lanes/pcie-1}>; /* 2nd USB A */
400 phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-0", "usb3-1";
402 avddio-pex-supply = <&vdd_1v05_run>;
403 dvddio-pex-supply = <&vdd_1v05_run>;
404 avdd-usb-supply = <&vdd_3v3_lp0>;
405 avdd-pll-utmip-supply = <&vddio_1v8>;
406 avdd-pll-erefe-supply = <&avdd_1v05_run>;
407 avdd-usb-ss-pll-supply = <&vdd_1v05_run>;
408 hvdd-usb-ss-supply = <&vdd_3v3_lp0>;
409 hvdd-usb-ss-pll-e-supply = <&vdd_3v3_lp0>;
417 avdd-pll-utmip-supply = <&vddio_1v8>;
418 avdd-pll-erefe-supply = <&avdd_1v05_run>;
419 avdd-pex-pll-supply = <&vdd_1v05_run>;
420 hvdd-pex-pll-e-supply = <&vdd_3v3_lp0>;
428 nvidia,function = "xusb";
433 nvidia,function = "xusb";
438 nvidia,function = "xusb";
449 nvidia,function = "usb3-ss";
454 nvidia,function = "usb3-ss";
463 vbus-supply = <&vdd_usb1_vbus>;
469 vbus-supply = <&vdd_run_cam>;
475 vbus-supply = <&vdd_usb3_vbus>;
481 nvidia,usb2-companion = <0>;
486 nvidia,usb2-companion = <1>;
492 sdhci0_pwrseq: sdhci0_pwrseq {
493 compatible = "mmc-pwrseq-simple";
495 reset-gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_LOW>;
498 sdhci@700b0000 { /* WiFi/BT on this bus */
503 mmc-pwrseq = <&sdhci0_pwrseq>;
504 vmmc-supply = <&vdd_3v3_lp0>;
505 vqmmc-supply = <&vddio_1v8>;
506 keep-power-in-suspend;
509 sdhci@700b0400 { /* SD Card on this bus */
511 cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>;
512 power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>;
515 vqmmc-supply = <&vddio_sdmmc3>;
518 sdhci@700b0600 { /* eMMC on this bus */
528 vdd-cpu-supply = <&vdd_cpu>;
529 nvidia,i2c-fs-rate = <400000>;
538 backlight: backlight {
539 compatible = "pwm-backlight";
541 enable-gpios = <&gpio TEGRA_GPIO(H, 2) GPIO_ACTIVE_HIGH>;
542 power-supply = <&vdd_led>;
543 pwms = <&pwm 1 1000000>;
545 default-brightness-level = <224>;
548 8 9 10 11 12 13 14 15
549 16 17 18 19 20 21 22 23
550 24 25 26 27 28 29 30 31
551 32 33 34 35 36 37 38 39
552 40 41 42 43 44 45 46 47
553 48 49 50 51 52 53 54 55
554 56 57 58 59 60 61 62 63
555 64 65 66 67 68 69 70 71
556 72 73 74 75 76 77 78 79
557 80 81 82 83 84 85 86 87
558 88 89 90 91 92 93 94 95
559 96 97 98 99 100 101 102 103
560 104 105 106 107 108 109 110 111
561 112 113 114 115 116 117 118 119
562 120 121 122 123 124 125 126 127
563 128 129 130 131 132 133 134 135
564 136 137 138 139 140 141 142 143
565 144 145 146 147 148 149 150 151
566 152 153 154 155 156 157 158 159
567 160 161 162 163 164 165 166 167
568 168 169 170 171 172 173 174 175
569 176 177 178 179 180 181 182 183
570 184 185 186 187 188 189 190 191
571 192 193 194 195 196 197 198 199
572 200 201 202 203 204 205 206 207
573 208 209 210 211 212 213 214 215
574 216 217 218 219 220 221 222 223
575 224 225 226 227 228 229 230 231
576 232 233 234 235 236 237 238 239
577 240 241 242 243 244 245 246 247
578 248 249 250 251 252 253 254 255
583 compatible = "simple-bus";
584 #address-cells = <1>;
588 compatible = "fixed-clock";
591 clock-frequency = <32768>;
597 vdd-cpu-supply = <&vdd_cpu>;
602 compatible = "gpio-keys";
606 gpios = <&gpio TEGRA_GPIO(R, 4) GPIO_ACTIVE_LOW>;
607 linux,input-type = <5>;
608 linux,code = <KEY_RESERVED>;
609 debounce-interval = <1>;
615 gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>;
616 linux,code = <KEY_POWER>;
617 debounce-interval = <30>;
623 compatible = "simple-bus";
624 #address-cells = <1>;
627 vdd_mux: regulator@0 {
628 compatible = "regulator-fixed";
630 regulator-name = "+VDD_MUX";
631 regulator-min-microvolt = <12000000>;
632 regulator-max-microvolt = <12000000>;
637 vdd_5v0_sys: regulator@1 {
638 compatible = "regulator-fixed";
640 regulator-name = "+5V_SYS";
641 regulator-min-microvolt = <5000000>;
642 regulator-max-microvolt = <5000000>;
645 vin-supply = <&vdd_mux>;
648 vdd_3v3_sys: regulator@2 {
649 compatible = "regulator-fixed";
651 regulator-name = "+3.3V_SYS";
652 regulator-min-microvolt = <3300000>;
653 regulator-max-microvolt = <3300000>;
656 vin-supply = <&vdd_mux>;
659 vdd_3v3_run: regulator@3 {
660 compatible = "regulator-fixed";
662 regulator-name = "+3.3V_RUN";
663 regulator-min-microvolt = <3300000>;
664 regulator-max-microvolt = <3300000>;
667 gpio = <&pmic 1 GPIO_ACTIVE_HIGH>;
669 vin-supply = <&vdd_3v3_sys>;
672 vdd_3v3_hdmi: regulator@4 {
673 compatible = "regulator-fixed";
675 regulator-name = "+3.3V_AVDD_HDMI_AP_GATED";
676 regulator-min-microvolt = <3300000>;
677 regulator-max-microvolt = <3300000>;
678 vin-supply = <&vdd_3v3_run>;
681 vdd_led: regulator@5 {
682 compatible = "regulator-fixed";
684 regulator-name = "+VDD_LED";
685 gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>;
687 vin-supply = <&vdd_mux>;
690 vdd_5v0_ts: regulator@6 {
691 compatible = "regulator-fixed";
693 regulator-name = "+5V_VDD_TS_SW";
694 regulator-min-microvolt = <5000000>;
695 regulator-max-microvolt = <5000000>;
697 gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>;
699 vin-supply = <&vdd_5v0_sys>;
702 vdd_usb1_vbus: regulator@7 {
703 compatible = "regulator-fixed";
705 regulator-name = "+5V_USB_HS";
706 regulator-min-microvolt = <5000000>;
707 regulator-max-microvolt = <5000000>;
708 gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>;
711 vin-supply = <&vdd_5v0_sys>;
714 vdd_usb3_vbus: regulator@8 {
715 compatible = "regulator-fixed";
717 regulator-name = "+5V_USB_SS";
718 regulator-min-microvolt = <5000000>;
719 regulator-max-microvolt = <5000000>;
720 gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>;
723 vin-supply = <&vdd_5v0_sys>;
726 vdd_3v3_panel: regulator@9 {
727 compatible = "regulator-fixed";
729 regulator-name = "+3.3V_PANEL";
730 regulator-min-microvolt = <3300000>;
731 regulator-max-microvolt = <3300000>;
732 gpio = <&pmic 4 GPIO_ACTIVE_HIGH>;
734 vin-supply = <&vdd_3v3_run>;
737 vdd_3v3_lp0: regulator@10 {
738 compatible = "regulator-fixed";
740 regulator-name = "+3.3V_LP0";
741 regulator-min-microvolt = <3300000>;
742 regulator-max-microvolt = <3300000>;
744 * TODO: find a way to wire this up with the USB EHCI
745 * controllers so that it can be enabled on demand.
748 gpio = <&pmic 2 GPIO_ACTIVE_HIGH>;
750 vin-supply = <&vdd_3v3_sys>;
753 vdd_hdmi_pll: regulator@11 {
754 compatible = "regulator-fixed";
756 regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL";
757 regulator-min-microvolt = <1050000>;
758 regulator-max-microvolt = <1050000>;
759 gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_LOW>;
760 vin-supply = <&vdd_1v05_run>;
763 vdd_5v0_hdmi: regulator@12 {
764 compatible = "regulator-fixed";
766 regulator-name = "+5V_HDMI_CON";
767 regulator-min-microvolt = <5000000>;
768 regulator-max-microvolt = <5000000>;
769 gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>;
771 vin-supply = <&vdd_5v0_sys>;
776 nvidia,audio-routing =
781 "Mic Jack", "MICBIAS",
786 nvidia,i2s-controller = <&tegra_i2s1>;
787 nvidia,audio-codec = <&acodec>;
789 clocks = <&tegra_car TEGRA124_CLK_PLL_A>,
790 <&tegra_car TEGRA124_CLK_PLL_A_OUT0>,
791 <&tegra_car TEGRA124_CLK_EXTERN1>;
792 clock-names = "pll_a", "pll_a_out0", "mclk";
794 nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(I, 7) GPIO_ACTIVE_HIGH>;
795 nvidia,mic-det-gpios =
796 <&gpio TEGRA_GPIO(R, 7) GPIO_ACTIVE_HIGH>;
800 compatible = "gpio-restart";
801 gpios = <&gpio TEGRA_GPIO(I, 5) GPIO_ACTIVE_LOW>;
806 #include "cros-ec-keyboard.dtsi"