Merge tag 'sched_urgent_for_v5.15_rc1' of git://git.kernel.org/pub/scm/linux/kernel...
[linux-2.6-microblaze.git] / arch / arm64 / boot / dts / nvidia / tegra186-p3509-0000+p3636-0001.dts
1 // SPDX-License-Identifier: GPL-2.0
2 /dts-v1/;
3
4 #include <dt-bindings/input/linux-event-codes.h>
5 #include <dt-bindings/input/gpio-keys.h>
6 #include <dt-bindings/mfd/max77620.h>
7
8 #include "tegra186.dtsi"
9
10 / {
11         model = "NVIDIA Jetson TX2 NX Developer Kit";
12         compatible = "nvidia,p3509-0000+p3636-0001", "nvidia,tegra186";
13
14         aliases {
15                 ethernet0 = "/ethernet@2490000";
16                 i2c0 = "/bpmp/i2c";
17                 i2c1 = "/i2c@3160000";
18                 i2c2 = "/i2c@c240000";
19                 i2c3 = "/i2c@3180000";
20                 i2c4 = "/i2c@3190000";
21                 i2c5 = "/i2c@31c0000";
22                 i2c6 = "/i2c@c250000";
23                 i2c7 = "/i2c@31e0000";
24                 mmc0 = "/mmc@3460000";
25                 serial0 = &uarta;
26         };
27
28         chosen {
29                 bootargs = "earlycon console=ttyS0,115200n8";
30                 stdout-path = "serial0:115200n8";
31         };
32
33         memory@80000000 {
34                 device_type = "memory";
35                 reg = <0x0 0x80000000 0x0 0x70000000>;
36         };
37
38         ethernet@2490000 {
39                 status = "okay";
40
41                 phy-reset-gpios = <&gpio_aon TEGRA186_AON_GPIO(AA, 6) GPIO_ACTIVE_LOW>;
42                 phy-handle = <&phy>;
43                 phy-mode = "rgmii-id";
44
45                 mdio {
46                         #address-cells = <1>;
47                         #size-cells = <0>;
48
49                         phy: phy@0 {
50                                 compatible = "ethernet-phy-ieee802.3-c22";
51                                 reg = <0x0>;
52                                 interrupt-parent = <&gpio_aon>;
53                                 interrupts = <TEGRA186_AON_GPIO(AA, 7) IRQ_TYPE_LEVEL_LOW>;
54                                 #phy-cells = <0>;
55                         };
56                 };
57         };
58
59         memory-controller@2c00000 {
60                 status = "okay";
61         };
62
63         timer@3010000 {
64                 status = "okay";
65         };
66
67         serial@3100000 {
68                 status = "okay";
69         };
70
71         i2c@3160000 {
72                 status = "okay";
73         };
74
75         i2c@3180000 {
76                 status = "okay";
77
78                 power-monitor@40 {
79                         compatible = "ti,ina3221";
80                         reg = <0x40>;
81                         #address-cells = <1>;
82                         #size-cells = <0>;
83
84                         channel@0 {
85                                 reg = <0>;
86                                 label = "VDD_IN";
87                                 shunt-resistor-micro-ohms = <5>;
88                         };
89
90                         channel@1 {
91                                 reg = <1>;
92                                 label = "VDD_CPU_GPU";
93                                 shunt-resistor-micro-ohms = <5>;
94                         };
95
96                         channel@2 {
97                                 reg = <2>;
98                                 label = "VDD_SOC";
99                                 shunt-resistor-micro-ohms = <>;
100                         };
101                 };
102         };
103
104         ddc: i2c@3190000 {
105                 status = "okay";
106         };
107
108         i2c@31c0000 {
109                 status = "okay";
110         };
111
112         i2c@31e0000 {
113                 status = "okay";
114         };
115
116         /* SDMMC4 (eMMC) */
117         mmc@3460000 {
118                 status = "okay";
119                 bus-width = <8>;
120                 non-removable;
121
122                 vqmmc-supply = <&vdd_1v8_ap>;
123                 vmmc-supply = <&vdd_3v3_sys>;
124         };
125
126         hda@3510000 {
127                 nvidia,model = "jetson-tx2-hda";
128                 status = "okay";
129         };
130
131         padctl@3520000 {
132                 status = "okay";
133
134                 avdd-pll-erefeut-supply = <&vdd_1v8_pll>;
135                 avdd-usb-supply = <&vdd_3v3_sys>;
136                 vclamp-usb-supply = <&vdd_1v8>;
137                 vddio-hsic-supply = <&gnd>;
138
139                 pads {
140                         usb2 {
141                                 status = "okay";
142
143                                 lanes {
144                                         micro_b: usb2-0 {
145                                                 nvidia,function = "xusb";
146                                                 status = "okay";
147                                         };
148
149                                         usb2-1 {
150                                                 nvidia,function = "xusb";
151                                                 status = "okay";
152                                         };
153
154                                         usb2-2 {
155                                                 nvidia,function = "xusb";
156                                                 status = "okay";
157                                         };
158                                 };
159                         };
160
161                         usb3 {
162                                 status = "okay";
163
164                                 lanes {
165                                         usb3-1 {
166                                                 nvidia,function = "xusb";
167                                                 status = "okay";
168                                         };
169                                 };
170                         };
171                 };
172
173                 ports {
174                         usb2-0 {
175                                 status = "okay";
176                                 mode = "otg";
177                                 vbus-supply = <&vdd_5v0_sys>;
178                                 usb-role-switch;
179
180                                 connector {
181                                         compatible = "gpio-usb-b-connector",
182                                                      "usb-b-connector";
183                                         label = "micro-USB";
184                                         type = "micro";
185                                         vbus-gpios = <&gpio
186                                                       TEGRA186_MAIN_GPIO(L, 4)
187                                                       GPIO_ACTIVE_LOW>;
188                                         id-gpios = <&pmic 0 GPIO_ACTIVE_HIGH>;
189                                 };
190                         };
191
192                         usb2-1 {
193                                 status = "okay";
194                                 mode = "host";
195
196                                 vbus-supply = <&vdd_5v0_sys>;
197                         };
198
199                         usb2-2 {
200                                 status = "okay";
201                                 mode = "host";
202
203                                 vbus-supply = <&vdd_5v0_sys>;
204                         };
205
206                         usb3-1 {
207                                 nvidia,usb2-companion = <1>;
208                                 vbus-supply = <&vdd_5v0_sys>;
209                                 status = "okay";
210                         };
211                 };
212         };
213
214         usb@3530000 {
215                 status = "okay";
216
217                 phys = <&{/padctl@3520000/pads/usb2/lanes/usb2-0}>,
218                        <&{/padctl@3520000/pads/usb2/lanes/usb2-1}>,
219                        <&{/padctl@3520000/pads/usb2/lanes/usb2-2}>,
220                        <&{/padctl@3520000/pads/usb3/lanes/usb3-1}>;
221                 phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-1";
222         };
223
224         usb@3550000 {
225                 status = "okay";
226
227                 phys = <&micro_b>;
228                 phy-names = "usb2-0";
229         };
230
231         hsp@3c00000 {
232                 status = "okay";
233         };
234
235         i2c@c240000 {
236                 status = "okay";
237         };
238
239         i2c@c250000 {
240                 status = "okay";
241
242                 /* module ID EEPROM */
243                 eeprom@50 {
244                         compatible = "atmel,24c02";
245                         reg = <0x50>;
246
247                         label = "module";
248                         vcc-supply = <&vdd_1v8>;
249                         address-width = <8>;
250                         pagesize = <8>;
251                         size = <256>;
252                         read-only;
253                 };
254
255                 /* carrier board ID EEPROM */
256                 eeprom@57 {
257                         compatible = "atmel,24c02";
258                         reg = <0x57>;
259
260                         label = "system";
261                         vcc-supply = <&vdd_1v8>;
262                         address-width = <8>;
263                         pagesize = <8>;
264                         size = <256>;
265                         read-only;
266                 };
267         };
268
269         rtc@c2a0000 {
270                 status = "okay";
271         };
272
273         pwm@c340000 {
274                 status = "okay";
275         };
276
277         pmc@c360000 {
278                 nvidia,invert-interrupt;
279         };
280
281         pcie@10003000 {
282                 status = "okay";
283
284                 dvdd-pex-supply = <&vdd_pex>;
285                 hvdd-pex-pll-supply = <&vdd_1v8>;
286                 hvdd-pex-supply = <&vdd_1v8>;
287                 vddio-pexctl-aud-supply = <&vdd_1v8>;
288
289                 pci@1,0 {
290                         nvidia,num-lanes = <2>;
291                         status = "okay";
292                 };
293
294                 pci@2,0 {
295                         nvidia,num-lanes = <1>;
296                         status = "disabled";
297                 };
298
299                 pci@3,0 {
300                         nvidia,num-lanes = <1>;
301                         status = "okay";
302                 };
303         };
304
305         host1x@13e00000 {
306                 status = "okay";
307
308                 dpaux@15040000 {
309                         status = "okay";
310                 };
311
312                 display-hub@15200000 {
313                         status = "okay";
314                 };
315
316                 dsi@15300000 {
317                         status = "disabled";
318                 };
319
320                 /* DP */
321                 sor@15540000 {
322                         status = "okay";
323
324                         avdd-io-hdmi-dp-supply = <&vdd_hdmi_1v05>;
325                         vdd-hdmi-dp-pll-supply = <&vdd_1v8_ap>;
326
327                         nvidia,dpaux = <&dpaux>;
328                 };
329
330                 /* HDMI */
331                 sor@15580000 {
332                         status = "okay";
333
334                         avdd-io-hdmi-dp-supply = <&vdd_hdmi_1v05>;
335                         vdd-hdmi-dp-pll-supply = <&vdd_1v8_ap>;
336                         hdmi-supply = <&vdd_hdmi>;
337
338                         nvidia,ddc-i2c-bus = <&ddc>;
339                         nvidia,hpd-gpio = <&gpio TEGRA186_MAIN_GPIO(P, 1)
340                                                  GPIO_ACTIVE_LOW>;
341                 };
342
343                 dpaux@155c0000 {
344                         status = "okay";
345                 };
346         };
347
348         gpu@17000000 {
349                 status = "okay";
350         };
351
352         fan: fan {
353                 compatible = "pwm-fan";
354                 pwms = <&pwm4 0 45334>;
355
356                 cooling-levels = <0 64 128 255>;
357                 #cooling-cells = <2>;
358         };
359
360         gpio-keys {
361                 compatible = "gpio-keys";
362
363                 power {
364                         label = "Power";
365                         gpios = <&gpio_aon TEGRA186_AON_GPIO(FF, 0)
366                                            GPIO_ACTIVE_LOW>;
367                         linux,input-type = <EV_KEY>;
368                         linux,code = <KEY_POWER>;
369                         debounce-interval = <10>;
370                         wakeup-event-action = <EV_ACT_ASSERTED>;
371                         wakeup-source;
372                 };
373
374                 volume-up {
375                         label = "Volume Up";
376                         gpios = <&gpio_aon TEGRA186_AON_GPIO(FF, 1)
377                                            GPIO_ACTIVE_LOW>;
378                         linux,input-type = <EV_KEY>;
379                         linux,code = <KEY_VOLUMEUP>;
380                         debounce-interval = <10>;
381                 };
382
383                 volume-down {
384                         label = "Volume Down";
385                         gpios = <&gpio_aon TEGRA186_AON_GPIO(FF, 2)
386                                            GPIO_ACTIVE_LOW>;
387                         linux,input-type = <EV_KEY>;
388                         linux,code = <KEY_VOLUMEDOWN>;
389                         debounce-interval = <10>;
390                 };
391         };
392
393         cpus {
394                 cpu@0 {
395                         enable-method = "psci";
396                 };
397
398                 cpu@1 {
399                         enable-method = "psci";
400                 };
401
402                 cpu@2 {
403                         enable-method = "psci";
404                 };
405
406                 cpu@3 {
407                         enable-method = "psci";
408                 };
409
410                 cpu@4 {
411                         enable-method = "psci";
412                 };
413
414                 cpu@5 {
415                         enable-method = "psci";
416                 };
417         };
418
419         bpmp {
420                 i2c {
421                         status = "okay";
422
423                         pmic: pmic@3c {
424                                 compatible = "maxim,max77620";
425                                 reg = <0x3c>;
426
427                                 interrupt-parent = <&pmc>;
428                                 interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
429                                 #interrupt-cells = <2>;
430                                 interrupt-controller;
431
432                                 #gpio-cells = <2>;
433                                 gpio-controller;
434
435                                 pinctrl-names = "default";
436                                 pinctrl-0 = <&max77620_default>;
437
438                                 max77620_default: pinmux {
439                                         gpio0 {
440                                                 pins = "gpio0";
441                                                 function = "gpio";
442                                         };
443
444                                         gpio1 {
445                                                 pins = "gpio1";
446                                                 function = "fps-out";
447                                                 maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
448                                         };
449
450                                         gpio2 {
451                                                 pins = "gpio2";
452                                                 function = "fps-out";
453                                                 maxim,active-fps-source = <MAX77620_FPS_SRC_1>;
454                                         };
455
456                                         gpio3 {
457                                                 pins = "gpio3";
458                                                 function = "fps-out";
459                                                 maxim,active-fps-source = <MAX77620_FPS_SRC_1>;
460                                         };
461
462                                         gpio4 {
463                                                 pins = "gpio4";
464                                                 function = "32k-out1";
465                                                 drive-push-pull = <1>;
466                                         };
467
468                                         gpio5 {
469                                                 pins = "gpio5";
470                                                 function = "gpio";
471                                                 drive-push-pull = <0>;
472                                         };
473
474                                         gpio6 {
475                                                 pins = "gpio6";
476                                                 function = "gpio";
477                                                 drive-push-pull = <1>;
478                                         };
479
480                                         gpio7 {
481                                                 pins = "gpio7";
482                                                 function = "gpio";
483                                                 drive-push-pull = <1>;
484                                         };
485                                 };
486
487                                 fps {
488                                         fps0 {
489                                                 maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
490                                                 maxim,shutdown-fps-time-period-us = <640>;
491                                         };
492
493                                         fps1 {
494                                                 maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN1>;
495                                                 maxim,shutdown-fps-time-period-us = <640>;
496                                         };
497
498                                         fps2 {
499                                                 maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
500                                                 maxim,shutdown-fps-time-period-us = <640>;
501                                         };
502                                 };
503
504                                 regulators {
505                                         in-sd0-supply = <&vdd_5v0_sys>;
506                                         in-sd1-supply = <&vdd_5v0_sys>;
507                                         in-sd2-supply = <&vdd_5v0_sys>;
508                                         in-sd3-supply = <&vdd_5v0_sys>;
509
510                                         in-ldo0-1-supply = <&vdd_5v0_sys>;
511                                         in-ldo2-supply = <&vdd_5v0_sys>;
512                                         in-ldo3-5-supply = <&vdd_5v0_sys>;
513                                         in-ldo4-6-supply = <&vdd_1v8>;
514                                         in-ldo7-8-supply = <&avdd_dsi_csi>;
515
516                                         sd0 {
517                                                 regulator-name = "VDD_DDR_1V1_PMIC";
518                                                 regulator-min-microvolt = <1100000>;
519                                                 regulator-max-microvolt = <1100000>;
520                                                 regulator-always-on;
521                                                 regulator-boot-on;
522                                         };
523
524                                         avdd_dsi_csi: sd1 {
525                                                 regulator-name = "AVDD_DSI_CSI_1V2";
526                                                 regulator-min-microvolt = <1200000>;
527                                                 regulator-max-microvolt = <1200000>;
528                                         };
529
530                                         vdd_1v8: sd2 {
531                                                 regulator-name = "VDD_1V8";
532                                                 regulator-min-microvolt = <1800000>;
533                                                 regulator-max-microvolt = <1800000>;
534                                         };
535
536                                         vdd_3v3_sys: sd3 {
537                                                 regulator-name = "VDD_3V3_SYS";
538                                                 regulator-min-microvolt = <3300000>;
539                                                 regulator-max-microvolt = <3300000>;
540                                         };
541
542                                         vdd_1v8_pll: ldo0 {
543                                                 regulator-name = "VDD_1V8_AP_PLL";
544                                                 regulator-min-microvolt = <1800000>;
545                                                 regulator-max-microvolt = <1800000>;
546                                         };
547
548                                         ldo2 {
549                                                 regulator-name = "VDDIO_3V3_AOHV";
550                                                 regulator-min-microvolt = <3300000>;
551                                                 regulator-max-microvolt = <3300000>;
552                                                 regulator-always-on;
553                                                 regulator-boot-on;
554                                         };
555
556                                         vddio_sdmmc1: ldo3 {
557                                                 regulator-name = "VDDIO_SDMMC1_AP";
558                                                 regulator-min-microvolt = <1800000>;
559                                                 regulator-max-microvolt = <3300000>;
560                                         };
561
562                                         ldo4 {
563                                                 regulator-name = "VDD_RTC";
564                                                 regulator-min-microvolt = <1000000>;
565                                                 regulator-max-microvolt = <1000000>;
566                                         };
567
568                                         vddio_sdmmc3: ldo5 {
569                                                 regulator-name = "VDDIO_SDMMC3_AP";
570                                                 regulator-min-microvolt = <2800000>;
571                                                 regulator-max-microvolt = <2800000>;
572                                         };
573
574                                         vdd_hdmi_1v05: ldo7 {
575                                                 regulator-name = "VDD_HDMI_1V05";
576                                                 regulator-min-microvolt = <1050000>;
577                                                 regulator-max-microvolt = <1050000>;
578                                         };
579
580                                         vdd_pex: ldo8 {
581                                                 regulator-name = "VDD_PEX_1V05";
582                                                 regulator-min-microvolt = <1050000>;
583                                                 regulator-max-microvolt = <1050000>;
584                                         };
585                                 };
586                         };
587                 };
588         };
589
590         psci {
591                 compatible = "arm,psci-1.0";
592                 status = "okay";
593                 method = "smc";
594         };
595
596         gnd: regulator@0 {
597                 compatible = "regulator-fixed";
598                 regulator-name = "GND";
599                 regulator-min-microvolt = <0>;
600                 regulator-max-microvolt = <0>;
601                 regulator-always-on;
602                 regulator-boot-on;
603         };
604
605         vdd_5v0_sys: regulator@1 {
606                 compatible = "regulator-fixed";
607                 regulator-name = "VDD_5V0_SYS";
608                 regulator-min-microvolt = <5000000>;
609                 regulator-max-microvolt = <5000000>;
610                 regulator-always-on;
611                 regulator-boot-on;
612         };
613
614         vdd_1v8_ap: regulator@2 {
615                 compatible = "regulator-fixed";
616                 regulator-name = "VDD_1V8_AP";
617                 regulator-min-microvolt = <1800000>;
618                 regulator-max-microvolt = <1800000>;
619
620                 gpio = <&pmic 1 GPIO_ACTIVE_HIGH>;
621                 enable-active-high;
622
623                 vin-supply = <&vdd_1v8>;
624         };
625
626         vdd_hdmi: regulator@3 {
627                 compatible = "regulator-fixed";
628                 regulator-name = "VDD_5V0_HDMI_CON";
629                 regulator-min-microvolt = <5000000>;
630                 regulator-max-microvolt = <5000000>;
631
632                 vin-supply = <&vdd_5v0_sys>;
633         };
634
635         thermal-zones {
636                 cpu {
637                         polling-delay = <0>;
638                         polling-delay-passive = <500>;
639                         status = "okay";
640
641                         trips {
642                                 cpu_trip_critical: critical {
643                                         temperature = <96500>;
644                                         hysteresis = <0>;
645                                         type = "critical";
646                                 };
647
648                                 cpu_trip_hot: hot {
649                                         temperature = <79000>;
650                                         hysteresis = <2000>;
651                                         type = "hot";
652                                 };
653
654                                 cpu_trip_active: active {
655                                         temperature = <62000>;
656                                         hysteresis = <2000>;
657                                         type = "active";
658                                 };
659
660                                 cpu_trip_passive: passive {
661                                         temperature = <45000>;
662                                         hysteresis = <2000>;
663                                         type = "passive";
664                                 };
665                         };
666
667                         cooling-maps {
668                                 cpu-critical {
669                                         cooling-device = <&fan 3 3>;
670                                         trip = <&cpu_trip_critical>;
671                                 };
672
673                                 cpu-hot {
674                                         cooling-device = <&fan 2 2>;
675                                         trip = <&cpu_trip_hot>;
676                                 };
677
678                                 cpu-active {
679                                         cooling-device = <&fan 1 1>;
680                                         trip = <&cpu_trip_active>;
681                                 };
682
683                                 cpu-passive {
684                                         cooling-device = <&fan 0 0>;
685                                         trip = <&cpu_trip_passive>;
686                                 };
687                         };
688                 };
689
690                 gpu {
691                         polling-delay = <0>;
692                         polling-delay-passive = <500>;
693                         status = "okay";
694
695                         trips {
696                                 gpu_alert0: critical {
697                                         temperature = <99000>;
698                                         hysteresis = <0>;
699                                         type = "critical";
700                                 };
701                         };
702                 };
703
704                 aux {
705                         polling-delay = <0>;
706                         polling-delay-passive = <500>;
707                         status = "okay";
708
709                         trips {
710                                 aux_alert0: critical {
711                                         temperature = <90000>;
712                                         hysteresis = <0>;
713                                         type = "critical";
714                                 };
715                         };
716                 };
717         };
718 };