0001 // SPDX-License-Identifier: GPL-2.0
0002 /dts-v1/;
0003
0004 #include <dt-bindings/input/linux-event-codes.h>
0005 #include <dt-bindings/input/gpio-keys.h>
0006 #include <dt-bindings/mfd/max77620.h>
0007
0008 #include "tegra186.dtsi"
0009
0010 / {
0011 model = "NVIDIA Jetson TX2 NX Developer Kit";
0012 compatible = "nvidia,p3509-0000+p3636-0001", "nvidia,tegra186";
0013
0014 aliases {
0015 ethernet0 = "/ethernet@2490000";
0016 i2c0 = "/bpmp/i2c";
0017 i2c1 = "/i2c@3160000";
0018 i2c2 = "/i2c@c240000";
0019 i2c3 = "/i2c@3180000";
0020 i2c4 = "/i2c@3190000";
0021 i2c5 = "/i2c@31c0000";
0022 i2c6 = "/i2c@c250000";
0023 i2c7 = "/i2c@31e0000";
0024 mmc0 = "/mmc@3460000";
0025 serial0 = &uarta;
0026 };
0027
0028 chosen {
0029 bootargs = "earlycon console=ttyS0,115200n8";
0030 stdout-path = "serial0:115200n8";
0031 };
0032
0033 memory@80000000 {
0034 device_type = "memory";
0035 reg = <0x0 0x80000000 0x0 0x70000000>;
0036 };
0037
0038 ethernet@2490000 {
0039 status = "okay";
0040
0041 phy-reset-gpios = <&gpio_aon TEGRA186_AON_GPIO(AA, 6) GPIO_ACTIVE_LOW>;
0042 phy-handle = <&phy>;
0043 phy-mode = "rgmii-id";
0044
0045 mdio {
0046 #address-cells = <1>;
0047 #size-cells = <0>;
0048
0049 phy: ethernet-phy@0 {
0050 compatible = "ethernet-phy-ieee802.3-c22";
0051 reg = <0x0>;
0052 interrupt-parent = <&gpio_aon>;
0053 interrupts = <TEGRA186_AON_GPIO(AA, 7) IRQ_TYPE_LEVEL_LOW>;
0054 #phy-cells = <0>;
0055 };
0056 };
0057 };
0058
0059 memory-controller@2c00000 {
0060 status = "okay";
0061 };
0062
0063 timer@3010000 {
0064 status = "okay";
0065 };
0066
0067 serial@3100000 {
0068 status = "okay";
0069 };
0070
0071 i2c@3160000 {
0072 status = "okay";
0073 };
0074
0075 i2c@3180000 {
0076 status = "okay";
0077
0078 power-monitor@40 {
0079 compatible = "ti,ina3221";
0080 reg = <0x40>;
0081 #address-cells = <1>;
0082 #size-cells = <0>;
0083
0084 input@0 {
0085 reg = <0>;
0086 label = "VDD_IN";
0087 shunt-resistor-micro-ohms = <5>;
0088 };
0089
0090 input@1 {
0091 reg = <1>;
0092 label = "VDD_CPU_GPU";
0093 shunt-resistor-micro-ohms = <5>;
0094 };
0095
0096 input@2 {
0097 reg = <2>;
0098 label = "VDD_SOC";
0099 shunt-resistor-micro-ohms = <5>;
0100 };
0101 };
0102 };
0103
0104 ddc: i2c@3190000 {
0105 status = "okay";
0106 };
0107
0108 i2c@31c0000 {
0109 status = "okay";
0110 };
0111
0112 i2c@31e0000 {
0113 status = "okay";
0114 };
0115
0116 /* SDMMC4 (eMMC) */
0117 mmc@3460000 {
0118 status = "okay";
0119 bus-width = <8>;
0120 non-removable;
0121
0122 vqmmc-supply = <&vdd_1v8_ap>;
0123 vmmc-supply = <&vdd_3v3_sys>;
0124 };
0125
0126 hda@3510000 {
0127 nvidia,model = "NVIDIA Jetson TX2 NX HDA";
0128 status = "okay";
0129 };
0130
0131 padctl@3520000 {
0132 status = "okay";
0133
0134 avdd-pll-erefeut-supply = <&vdd_1v8_pll>;
0135 avdd-usb-supply = <&vdd_3v3_sys>;
0136 vclamp-usb-supply = <&vdd_1v8>;
0137 vddio-hsic-supply = <&gnd>;
0138
0139 pads {
0140 usb2 {
0141 status = "okay";
0142
0143 lanes {
0144 micro_b: usb2-0 {
0145 nvidia,function = "xusb";
0146 status = "okay";
0147 };
0148
0149 usb2-1 {
0150 nvidia,function = "xusb";
0151 status = "okay";
0152 };
0153
0154 usb2-2 {
0155 nvidia,function = "xusb";
0156 status = "okay";
0157 };
0158 };
0159 };
0160
0161 usb3 {
0162 status = "okay";
0163
0164 lanes {
0165 usb3-1 {
0166 nvidia,function = "xusb";
0167 status = "okay";
0168 };
0169 };
0170 };
0171 };
0172
0173 ports {
0174 usb2-0 {
0175 status = "okay";
0176 mode = "otg";
0177 vbus-supply = <&vdd_5v0_sys>;
0178 usb-role-switch;
0179
0180 connector {
0181 compatible = "gpio-usb-b-connector",
0182 "usb-b-connector";
0183 label = "micro-USB";
0184 type = "micro";
0185 vbus-gpios = <&gpio
0186 TEGRA186_MAIN_GPIO(L, 4)
0187 GPIO_ACTIVE_LOW>;
0188 id-gpios = <&pmic 0 GPIO_ACTIVE_HIGH>;
0189 };
0190 };
0191
0192 usb2-1 {
0193 status = "okay";
0194 mode = "host";
0195
0196 vbus-supply = <&vdd_5v0_sys>;
0197 };
0198
0199 usb2-2 {
0200 status = "okay";
0201 mode = "host";
0202
0203 vbus-supply = <&vdd_5v0_sys>;
0204 };
0205
0206 usb3-1 {
0207 nvidia,usb2-companion = <1>;
0208 vbus-supply = <&vdd_5v0_sys>;
0209 status = "okay";
0210 };
0211 };
0212 };
0213
0214 usb@3530000 {
0215 status = "okay";
0216
0217 phys = <&{/padctl@3520000/pads/usb2/lanes/usb2-0}>,
0218 <&{/padctl@3520000/pads/usb2/lanes/usb2-1}>,
0219 <&{/padctl@3520000/pads/usb2/lanes/usb2-2}>,
0220 <&{/padctl@3520000/pads/usb3/lanes/usb3-1}>;
0221 phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-1";
0222 };
0223
0224 usb@3550000 {
0225 status = "okay";
0226
0227 phys = <µ_b>;
0228 phy-names = "usb2-0";
0229 };
0230
0231 hsp@3c00000 {
0232 status = "okay";
0233 };
0234
0235 i2c@c240000 {
0236 status = "okay";
0237 };
0238
0239 i2c@c250000 {
0240 status = "okay";
0241
0242 /* module ID EEPROM */
0243 eeprom@50 {
0244 compatible = "atmel,24c02";
0245 reg = <0x50>;
0246
0247 label = "module";
0248 vcc-supply = <&vdd_1v8>;
0249 address-width = <8>;
0250 pagesize = <8>;
0251 size = <256>;
0252 read-only;
0253 };
0254
0255 /* carrier board ID EEPROM */
0256 eeprom@57 {
0257 compatible = "atmel,24c02";
0258 reg = <0x57>;
0259
0260 label = "system";
0261 vcc-supply = <&vdd_1v8>;
0262 address-width = <8>;
0263 pagesize = <8>;
0264 size = <256>;
0265 read-only;
0266 };
0267 };
0268
0269 rtc@c2a0000 {
0270 status = "okay";
0271 };
0272
0273 pwm@c340000 {
0274 status = "okay";
0275 };
0276
0277 pmc@c360000 {
0278 nvidia,invert-interrupt;
0279 };
0280
0281 pcie@10003000 {
0282 status = "okay";
0283
0284 dvdd-pex-supply = <&vdd_pex>;
0285 hvdd-pex-pll-supply = <&vdd_1v8>;
0286 hvdd-pex-supply = <&vdd_1v8>;
0287 vddio-pexctl-aud-supply = <&vdd_1v8>;
0288
0289 pci@1,0 {
0290 nvidia,num-lanes = <2>;
0291 status = "okay";
0292 };
0293
0294 pci@2,0 {
0295 nvidia,num-lanes = <1>;
0296 status = "disabled";
0297 };
0298
0299 pci@3,0 {
0300 nvidia,num-lanes = <1>;
0301 status = "okay";
0302 };
0303 };
0304
0305 host1x@13e00000 {
0306 status = "okay";
0307
0308 dpaux@15040000 {
0309 status = "okay";
0310 };
0311
0312 display-hub@15200000 {
0313 status = "okay";
0314 };
0315
0316 dsi@15300000 {
0317 status = "disabled";
0318 };
0319
0320 /* DP */
0321 sor@15540000 {
0322 status = "okay";
0323
0324 avdd-io-hdmi-dp-supply = <&vdd_hdmi_1v05>;
0325 vdd-hdmi-dp-pll-supply = <&vdd_1v8_ap>;
0326
0327 nvidia,dpaux = <&dpaux>;
0328 };
0329
0330 /* HDMI */
0331 sor@15580000 {
0332 status = "okay";
0333
0334 avdd-io-hdmi-dp-supply = <&vdd_hdmi_1v05>;
0335 vdd-hdmi-dp-pll-supply = <&vdd_1v8_ap>;
0336 hdmi-supply = <&vdd_hdmi>;
0337
0338 nvidia,ddc-i2c-bus = <&ddc>;
0339 nvidia,hpd-gpio = <&gpio TEGRA186_MAIN_GPIO(P, 1)
0340 GPIO_ACTIVE_LOW>;
0341 };
0342
0343 dpaux@155c0000 {
0344 status = "okay";
0345 };
0346 };
0347
0348 gpu@17000000 {
0349 status = "okay";
0350 };
0351
0352 fan: pwm-fan {
0353 compatible = "pwm-fan";
0354 pwms = <&pwm4 0 45334>;
0355
0356 cooling-levels = <0 64 128 255>;
0357 #cooling-cells = <2>;
0358 };
0359
0360 gpio-keys {
0361 compatible = "gpio-keys";
0362
0363 key-power {
0364 label = "Power";
0365 gpios = <&gpio_aon TEGRA186_AON_GPIO(FF, 0)
0366 GPIO_ACTIVE_LOW>;
0367 linux,input-type = <EV_KEY>;
0368 linux,code = <KEY_POWER>;
0369 debounce-interval = <10>;
0370 wakeup-event-action = <EV_ACT_ASSERTED>;
0371 wakeup-source;
0372 };
0373
0374 key-volume-up {
0375 label = "Volume Up";
0376 gpios = <&gpio_aon TEGRA186_AON_GPIO(FF, 1)
0377 GPIO_ACTIVE_LOW>;
0378 linux,input-type = <EV_KEY>;
0379 linux,code = <KEY_VOLUMEUP>;
0380 debounce-interval = <10>;
0381 };
0382
0383 key-volume-down {
0384 label = "Volume Down";
0385 gpios = <&gpio_aon TEGRA186_AON_GPIO(FF, 2)
0386 GPIO_ACTIVE_LOW>;
0387 linux,input-type = <EV_KEY>;
0388 linux,code = <KEY_VOLUMEDOWN>;
0389 debounce-interval = <10>;
0390 };
0391 };
0392
0393 cpus {
0394 cpu@0 {
0395 enable-method = "psci";
0396 };
0397
0398 cpu@1 {
0399 enable-method = "psci";
0400 };
0401
0402 cpu@2 {
0403 enable-method = "psci";
0404 };
0405
0406 cpu@3 {
0407 enable-method = "psci";
0408 };
0409
0410 cpu@4 {
0411 enable-method = "psci";
0412 };
0413
0414 cpu@5 {
0415 enable-method = "psci";
0416 };
0417 };
0418
0419 bpmp {
0420 i2c {
0421 status = "okay";
0422
0423 pmic: pmic@3c {
0424 compatible = "maxim,max77620";
0425 reg = <0x3c>;
0426
0427 interrupt-parent = <&pmc>;
0428 interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
0429 #interrupt-cells = <2>;
0430 interrupt-controller;
0431
0432 #gpio-cells = <2>;
0433 gpio-controller;
0434
0435 pinctrl-names = "default";
0436 pinctrl-0 = <&max77620_default>;
0437
0438 max77620_default: pinmux {
0439 gpio0 {
0440 pins = "gpio0";
0441 function = "gpio";
0442 };
0443
0444 gpio1 {
0445 pins = "gpio1";
0446 function = "fps-out";
0447 maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
0448 };
0449
0450 gpio2 {
0451 pins = "gpio2";
0452 function = "fps-out";
0453 maxim,active-fps-source = <MAX77620_FPS_SRC_1>;
0454 };
0455
0456 gpio3 {
0457 pins = "gpio3";
0458 function = "fps-out";
0459 maxim,active-fps-source = <MAX77620_FPS_SRC_1>;
0460 };
0461
0462 gpio4 {
0463 pins = "gpio4";
0464 function = "32k-out1";
0465 drive-push-pull = <1>;
0466 };
0467
0468 gpio5 {
0469 pins = "gpio5";
0470 function = "gpio";
0471 drive-push-pull = <0>;
0472 };
0473
0474 gpio6 {
0475 pins = "gpio6";
0476 function = "gpio";
0477 drive-push-pull = <1>;
0478 };
0479
0480 gpio7 {
0481 pins = "gpio7";
0482 function = "gpio";
0483 drive-push-pull = <1>;
0484 };
0485 };
0486
0487 fps {
0488 fps0 {
0489 maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
0490 maxim,shutdown-fps-time-period-us = <640>;
0491 };
0492
0493 fps1 {
0494 maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN1>;
0495 maxim,shutdown-fps-time-period-us = <640>;
0496 };
0497
0498 fps2 {
0499 maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
0500 maxim,shutdown-fps-time-period-us = <640>;
0501 };
0502 };
0503
0504 regulators {
0505 in-sd0-supply = <&vdd_5v0_sys>;
0506 in-sd1-supply = <&vdd_5v0_sys>;
0507 in-sd2-supply = <&vdd_5v0_sys>;
0508 in-sd3-supply = <&vdd_5v0_sys>;
0509
0510 in-ldo0-1-supply = <&vdd_5v0_sys>;
0511 in-ldo2-supply = <&vdd_5v0_sys>;
0512 in-ldo3-5-supply = <&vdd_5v0_sys>;
0513 in-ldo4-6-supply = <&vdd_1v8>;
0514 in-ldo7-8-supply = <&avdd_dsi_csi>;
0515
0516 sd0 {
0517 regulator-name = "VDD_DDR_1V1_PMIC";
0518 regulator-min-microvolt = <1100000>;
0519 regulator-max-microvolt = <1100000>;
0520 regulator-always-on;
0521 regulator-boot-on;
0522 };
0523
0524 avdd_dsi_csi: sd1 {
0525 regulator-name = "AVDD_DSI_CSI_1V2";
0526 regulator-min-microvolt = <1200000>;
0527 regulator-max-microvolt = <1200000>;
0528 };
0529
0530 vdd_1v8: sd2 {
0531 regulator-name = "VDD_1V8";
0532 regulator-min-microvolt = <1800000>;
0533 regulator-max-microvolt = <1800000>;
0534 };
0535
0536 vdd_3v3_sys: sd3 {
0537 regulator-name = "VDD_3V3_SYS";
0538 regulator-min-microvolt = <3300000>;
0539 regulator-max-microvolt = <3300000>;
0540 };
0541
0542 vdd_1v8_pll: ldo0 {
0543 regulator-name = "VDD_1V8_AP_PLL";
0544 regulator-min-microvolt = <1800000>;
0545 regulator-max-microvolt = <1800000>;
0546 };
0547
0548 ldo2 {
0549 regulator-name = "VDDIO_3V3_AOHV";
0550 regulator-min-microvolt = <3300000>;
0551 regulator-max-microvolt = <3300000>;
0552 regulator-always-on;
0553 regulator-boot-on;
0554 };
0555
0556 vddio_sdmmc1: ldo3 {
0557 regulator-name = "VDDIO_SDMMC1_AP";
0558 regulator-min-microvolt = <1800000>;
0559 regulator-max-microvolt = <3300000>;
0560 };
0561
0562 ldo4 {
0563 regulator-name = "VDD_RTC";
0564 regulator-min-microvolt = <1000000>;
0565 regulator-max-microvolt = <1000000>;
0566 };
0567
0568 vddio_sdmmc3: ldo5 {
0569 regulator-name = "VDDIO_SDMMC3_AP";
0570 regulator-min-microvolt = <2800000>;
0571 regulator-max-microvolt = <2800000>;
0572 };
0573
0574 vdd_hdmi_1v05: ldo7 {
0575 regulator-name = "VDD_HDMI_1V05";
0576 regulator-min-microvolt = <1050000>;
0577 regulator-max-microvolt = <1050000>;
0578 };
0579
0580 vdd_pex: ldo8 {
0581 regulator-name = "VDD_PEX_1V05";
0582 regulator-min-microvolt = <1050000>;
0583 regulator-max-microvolt = <1050000>;
0584 };
0585 };
0586 };
0587 };
0588 };
0589
0590 psci {
0591 compatible = "arm,psci-1.0";
0592 status = "okay";
0593 method = "smc";
0594 };
0595
0596 gnd: regulator-gnd {
0597 compatible = "regulator-fixed";
0598 regulator-name = "GND";
0599 regulator-min-microvolt = <0>;
0600 regulator-max-microvolt = <0>;
0601 regulator-always-on;
0602 regulator-boot-on;
0603 };
0604
0605 vdd_5v0_sys: regulator-vdd-5v0-sys {
0606 compatible = "regulator-fixed";
0607 regulator-name = "VDD_5V0_SYS";
0608 regulator-min-microvolt = <5000000>;
0609 regulator-max-microvolt = <5000000>;
0610 regulator-always-on;
0611 regulator-boot-on;
0612 };
0613
0614 vdd_1v8_ap: regulator-vdd-1v8-ap {
0615 compatible = "regulator-fixed";
0616 regulator-name = "VDD_1V8_AP";
0617 regulator-min-microvolt = <1800000>;
0618 regulator-max-microvolt = <1800000>;
0619
0620 gpio = <&pmic 1 GPIO_ACTIVE_HIGH>;
0621 enable-active-high;
0622
0623 vin-supply = <&vdd_1v8>;
0624 };
0625
0626 vdd_hdmi: regulator-vdd-hdmi {
0627 compatible = "regulator-fixed";
0628 regulator-name = "VDD_5V0_HDMI_CON";
0629 regulator-min-microvolt = <5000000>;
0630 regulator-max-microvolt = <5000000>;
0631
0632 vin-supply = <&vdd_5v0_sys>;
0633 };
0634
0635 thermal-zones {
0636 cpu-thermal {
0637 polling-delay = <0>;
0638 polling-delay-passive = <500>;
0639 status = "okay";
0640
0641 trips {
0642 cpu_trip_critical: critical {
0643 temperature = <96500>;
0644 hysteresis = <0>;
0645 type = "critical";
0646 };
0647
0648 cpu_trip_hot: hot {
0649 temperature = <79000>;
0650 hysteresis = <2000>;
0651 type = "hot";
0652 };
0653
0654 cpu_trip_active: active {
0655 temperature = <62000>;
0656 hysteresis = <2000>;
0657 type = "active";
0658 };
0659
0660 cpu_trip_passive: passive {
0661 temperature = <45000>;
0662 hysteresis = <2000>;
0663 type = "passive";
0664 };
0665 };
0666
0667 cooling-maps {
0668 cpu-critical {
0669 cooling-device = <&fan 3 3>;
0670 trip = <&cpu_trip_critical>;
0671 };
0672
0673 cpu-hot {
0674 cooling-device = <&fan 2 2>;
0675 trip = <&cpu_trip_hot>;
0676 };
0677
0678 cpu-active {
0679 cooling-device = <&fan 1 1>;
0680 trip = <&cpu_trip_active>;
0681 };
0682
0683 cpu-passive {
0684 cooling-device = <&fan 0 0>;
0685 trip = <&cpu_trip_passive>;
0686 };
0687 };
0688 };
0689
0690 aux-thermal {
0691 polling-delay = <0>;
0692 polling-delay-passive = <500>;
0693 status = "okay";
0694
0695 trips {
0696 aux_alert0: critical {
0697 temperature = <90000>;
0698 hysteresis = <0>;
0699 type = "critical";
0700 };
0701 };
0702 };
0703
0704 gpu-thermal {
0705 polling-delay = <0>;
0706 polling-delay-passive = <500>;
0707 status = "okay";
0708
0709 trips {
0710 gpu_alert0: critical {
0711 temperature = <99000>;
0712 hysteresis = <0>;
0713 type = "critical";
0714 };
0715 };
0716 };
0717 };
0718
0719 aconnect@2900000 {
0720 status = "okay";
0721
0722 dma-controller@2930000 {
0723 status = "okay";
0724 };
0725
0726 interrupt-controller@2a40000 {
0727 status = "okay";
0728 };
0729
0730 ahub@2900800 {
0731 status = "okay";
0732
0733 ports {
0734 #address-cells = <1>;
0735 #size-cells = <0>;
0736
0737 port@0 {
0738 reg = <0x0>;
0739
0740 xbar_admaif0_ep: endpoint {
0741 remote-endpoint = <&admaif0_ep>;
0742 };
0743 };
0744
0745 port@1 {
0746 reg = <0x1>;
0747
0748 xbar_admaif1_ep: endpoint {
0749 remote-endpoint = <&admaif1_ep>;
0750 };
0751 };
0752
0753 port@2 {
0754 reg = <0x2>;
0755
0756 xbar_admaif2_ep: endpoint {
0757 remote-endpoint = <&admaif2_ep>;
0758 };
0759 };
0760
0761 port@3 {
0762 reg = <0x3>;
0763
0764 xbar_admaif3_ep: endpoint {
0765 remote-endpoint = <&admaif3_ep>;
0766 };
0767 };
0768
0769 port@4 {
0770 reg = <0x4>;
0771
0772 xbar_admaif4_ep: endpoint {
0773 remote-endpoint = <&admaif4_ep>;
0774 };
0775 };
0776
0777 port@5 {
0778 reg = <0x5>;
0779
0780 xbar_admaif5_ep: endpoint {
0781 remote-endpoint = <&admaif5_ep>;
0782 };
0783 };
0784
0785 port@6 {
0786 reg = <0x6>;
0787
0788 xbar_admaif6_ep: endpoint {
0789 remote-endpoint = <&admaif6_ep>;
0790 };
0791 };
0792
0793 port@7 {
0794 reg = <0x7>;
0795
0796 xbar_admaif7_ep: endpoint {
0797 remote-endpoint = <&admaif7_ep>;
0798 };
0799 };
0800
0801 port@8 {
0802 reg = <0x8>;
0803
0804 xbar_admaif8_ep: endpoint {
0805 remote-endpoint = <&admaif8_ep>;
0806 };
0807 };
0808
0809 port@9 {
0810 reg = <0x9>;
0811
0812 xbar_admaif9_ep: endpoint {
0813 remote-endpoint = <&admaif9_ep>;
0814 };
0815 };
0816
0817 port@a {
0818 reg = <0xa>;
0819
0820 xbar_admaif10_ep: endpoint {
0821 remote-endpoint = <&admaif10_ep>;
0822 };
0823 };
0824
0825 port@b {
0826 reg = <0xb>;
0827
0828 xbar_admaif11_ep: endpoint {
0829 remote-endpoint = <&admaif11_ep>;
0830 };
0831 };
0832
0833 port@c {
0834 reg = <0xc>;
0835
0836 xbar_admaif12_ep: endpoint {
0837 remote-endpoint = <&admaif12_ep>;
0838 };
0839 };
0840
0841 port@d {
0842 reg = <0xd>;
0843
0844 xbar_admaif13_ep: endpoint {
0845 remote-endpoint = <&admaif13_ep>;
0846 };
0847 };
0848
0849 port@e {
0850 reg = <0xe>;
0851
0852 xbar_admaif14_ep: endpoint {
0853 remote-endpoint = <&admaif14_ep>;
0854 };
0855 };
0856
0857 port@f {
0858 reg = <0xf>;
0859
0860 xbar_admaif15_ep: endpoint {
0861 remote-endpoint = <&admaif15_ep>;
0862 };
0863 };
0864
0865 port@10 {
0866 reg = <0x10>;
0867
0868 xbar_admaif16_ep: endpoint {
0869 remote-endpoint = <&admaif16_ep>;
0870 };
0871 };
0872
0873 port@11 {
0874 reg = <0x11>;
0875
0876 xbar_admaif17_ep: endpoint {
0877 remote-endpoint = <&admaif17_ep>;
0878 };
0879 };
0880
0881 port@12 {
0882 reg = <0x12>;
0883
0884 xbar_admaif18_ep: endpoint {
0885 remote-endpoint = <&admaif18_ep>;
0886 };
0887 };
0888
0889 port@13 {
0890 reg = <0x13>;
0891
0892 xbar_admaif19_ep: endpoint {
0893 remote-endpoint = <&admaif19_ep>;
0894 };
0895 };
0896
0897 xbar_i2s1_port: port@14 {
0898 reg = <0x14>;
0899
0900 xbar_i2s1_ep: endpoint {
0901 remote-endpoint = <&i2s1_cif_ep>;
0902 };
0903 };
0904
0905 xbar_i2s3_port: port@16 {
0906 reg = <0x16>;
0907
0908 xbar_i2s3_ep: endpoint {
0909 remote-endpoint = <&i2s3_cif_ep>;
0910 };
0911 };
0912
0913 xbar_dmic1_port: port@1a {
0914 reg = <0x1a>;
0915
0916 xbar_dmic1_ep: endpoint {
0917 remote-endpoint = <&dmic1_cif_ep>;
0918 };
0919 };
0920
0921 xbar_dmic2_port: port@1b {
0922 reg = <0x1b>;
0923
0924 xbar_dmic2_ep: endpoint {
0925 remote-endpoint = <&dmic2_cif_ep>;
0926 };
0927 };
0928 };
0929
0930 admaif@290f000 {
0931 status = "okay";
0932
0933 ports {
0934 #address-cells = <1>;
0935 #size-cells = <0>;
0936
0937 admaif0_port: port@0 {
0938 reg = <0x0>;
0939
0940 admaif0_ep: endpoint {
0941 remote-endpoint = <&xbar_admaif0_ep>;
0942 };
0943 };
0944
0945 admaif1_port: port@1 {
0946 reg = <0x1>;
0947
0948 admaif1_ep: endpoint {
0949 remote-endpoint = <&xbar_admaif1_ep>;
0950 };
0951 };
0952
0953 admaif2_port: port@2 {
0954 reg = <0x2>;
0955
0956 admaif2_ep: endpoint {
0957 remote-endpoint = <&xbar_admaif2_ep>;
0958 };
0959 };
0960
0961 admaif3_port: port@3 {
0962 reg = <0x3>;
0963
0964 admaif3_ep: endpoint {
0965 remote-endpoint = <&xbar_admaif3_ep>;
0966 };
0967 };
0968
0969 admaif4_port: port@4 {
0970 reg = <0x4>;
0971
0972 admaif4_ep: endpoint {
0973 remote-endpoint = <&xbar_admaif4_ep>;
0974 };
0975 };
0976
0977 admaif5_port: port@5 {
0978 reg = <0x5>;
0979
0980 admaif5_ep: endpoint {
0981 remote-endpoint = <&xbar_admaif5_ep>;
0982 };
0983 };
0984
0985 admaif6_port: port@6 {
0986 reg = <0x6>;
0987
0988 admaif6_ep: endpoint {
0989 remote-endpoint = <&xbar_admaif6_ep>;
0990 };
0991 };
0992
0993 admaif7_port: port@7 {
0994 reg = <0x7>;
0995
0996 admaif7_ep: endpoint {
0997 remote-endpoint = <&xbar_admaif7_ep>;
0998 };
0999 };
1000
1001 admaif8_port: port@8 {
1002 reg = <0x8>;
1003
1004 admaif8_ep: endpoint {
1005 remote-endpoint = <&xbar_admaif8_ep>;
1006 };
1007 };
1008
1009 admaif9_port: port@9 {
1010 reg = <0x9>;
1011
1012 admaif9_ep: endpoint {
1013 remote-endpoint = <&xbar_admaif9_ep>;
1014 };
1015 };
1016
1017 admaif10_port: port@a {
1018 reg = <0xa>;
1019
1020 admaif10_ep: endpoint {
1021 remote-endpoint = <&xbar_admaif10_ep>;
1022 };
1023 };
1024
1025 admaif11_port: port@b {
1026 reg = <0xb>;
1027
1028 admaif11_ep: endpoint {
1029 remote-endpoint = <&xbar_admaif11_ep>;
1030 };
1031 };
1032
1033 admaif12_port: port@c {
1034 reg = <0xc>;
1035
1036 admaif12_ep: endpoint {
1037 remote-endpoint = <&xbar_admaif12_ep>;
1038 };
1039 };
1040
1041 admaif13_port: port@d {
1042 reg = <0xd>;
1043
1044 admaif13_ep: endpoint {
1045 remote-endpoint = <&xbar_admaif13_ep>;
1046 };
1047 };
1048
1049 admaif14_port: port@e {
1050 reg = <0xe>;
1051
1052 admaif14_ep: endpoint {
1053 remote-endpoint = <&xbar_admaif14_ep>;
1054 };
1055 };
1056
1057 admaif15_port: port@f {
1058 reg = <0xf>;
1059
1060 admaif15_ep: endpoint {
1061 remote-endpoint = <&xbar_admaif15_ep>;
1062 };
1063 };
1064
1065 admaif16_port: port@10 {
1066 reg = <0x10>;
1067
1068 admaif16_ep: endpoint {
1069 remote-endpoint = <&xbar_admaif16_ep>;
1070 };
1071 };
1072
1073 admaif17_port: port@11 {
1074 reg = <0x11>;
1075
1076 admaif17_ep: endpoint {
1077 remote-endpoint = <&xbar_admaif17_ep>;
1078 };
1079 };
1080
1081 admaif18_port: port@12 {
1082 reg = <0x12>;
1083
1084 admaif18_ep: endpoint {
1085 remote-endpoint = <&xbar_admaif18_ep>;
1086 };
1087 };
1088
1089 admaif19_port: port@13 {
1090 reg = <0x13>;
1091
1092 admaif19_ep: endpoint {
1093 remote-endpoint = <&xbar_admaif19_ep>;
1094 };
1095 };
1096 };
1097 };
1098
1099 i2s@2901000 {
1100 status = "okay";
1101
1102 ports {
1103 #address-cells = <1>;
1104 #size-cells = <0>;
1105
1106 port@0 {
1107 reg = <0>;
1108
1109 i2s1_cif_ep: endpoint {
1110 remote-endpoint = <&xbar_i2s1_ep>;
1111 };
1112 };
1113
1114 i2s1_port: port@1 {
1115 reg = <1>;
1116
1117 i2s1_dap_ep: endpoint {
1118 dai-format = "i2s";
1119 /* Placeholder for external Codec */
1120 };
1121 };
1122 };
1123 };
1124
1125 i2s@2901200 {
1126 status = "okay";
1127
1128 ports {
1129 #address-cells = <1>;
1130 #size-cells = <0>;
1131
1132 port@0 {
1133 reg = <0>;
1134
1135 i2s3_cif_ep: endpoint {
1136 remote-endpoint = <&xbar_i2s3_ep>;
1137 };
1138 };
1139
1140 i2s3_port: port@1 {
1141 reg = <1>;
1142
1143 i2s3_dap_ep: endpoint {
1144 dai-format = "i2s";
1145 /* Placeholder for external Codec */
1146 };
1147 };
1148 };
1149 };
1150
1151 dmic@2904000 {
1152 status = "okay";
1153
1154 ports {
1155 #address-cells = <1>;
1156 #size-cells = <0>;
1157
1158 port@0 {
1159 reg = <0>;
1160
1161 dmic1_cif_ep: endpoint {
1162 remote-endpoint = <&xbar_dmic1_ep>;
1163 };
1164 };
1165
1166 dmic1_port: port@1 {
1167 reg = <1>;
1168
1169 dmic1_dap_ep: endpoint {
1170 /* Place holder for external Codec */
1171 };
1172 };
1173 };
1174 };
1175
1176 dmic@2904100 {
1177 status = "okay";
1178
1179 ports {
1180 #address-cells = <1>;
1181 #size-cells = <0>;
1182
1183 port@0 {
1184 reg = <0>;
1185
1186 dmic2_cif_ep: endpoint {
1187 remote-endpoint = <&xbar_dmic2_ep>;
1188 };
1189 };
1190
1191 dmic2_port: port@1 {
1192 reg = <1>;
1193
1194 dmic2_dap_ep: endpoint {
1195 /* Place holder for external Codec */
1196 };
1197 };
1198 };
1199 };
1200 };
1201 };
1202
1203 sound {
1204 compatible = "nvidia,tegra186-audio-graph-card";
1205 status = "okay";
1206
1207 dais = /* FE */
1208 <&admaif0_port>, <&admaif1_port>, <&admaif2_port>, <&admaif3_port>,
1209 <&admaif4_port>, <&admaif5_port>, <&admaif6_port>, <&admaif7_port>,
1210 <&admaif8_port>, <&admaif9_port>, <&admaif10_port>, <&admaif11_port>,
1211 <&admaif12_port>, <&admaif13_port>, <&admaif14_port>, <&admaif15_port>,
1212 <&admaif16_port>, <&admaif17_port>, <&admaif18_port>, <&admaif19_port>,
1213 /* Router */
1214 <&xbar_i2s1_port>, <&xbar_i2s3_port>,
1215 <&xbar_dmic1_port>, <&xbar_dmic2_port>,
1216 /* I/O */
1217 <&i2s1_port>, <&i2s3_port>,
1218 <&dmic1_port>, <&dmic2_port>;
1219
1220 label = "NVIDIA Jetson TX2 NX APE";
1221 };
1222 };