code:
// SPDX-License-Identifier: GPL-2.0
/dts-v1/;

#include <dt-bindings/input/linux-event-codes.h>
#include <dt-bindings/input/gpio-keys.h>

#include "tegra194-p2888.dtsi"

/ {
	model = "NVIDIA Jetson AGX Xavier Developer Kit";
	compatible = "nvidia,p2972-0000", "nvidia,tegra194";

	bus@0 {
		aconnect@2900000 {
			status = "okay";

			dma-controller@2930000 {
				status = "okay";
			};

			interrupt-controller@2a40000 {
				status = "okay";
			};

			ahub@2900800 {
				status = "okay";

				ports {
					#address-cells = <1>;
					#size-cells = <0>;

					port@0 {
						reg = <0x0>;

						xbar_admaif0_ep: endpoint {
							remote-endpoint = <&admaif0_ep>;
						};
					};

					port@1 {
						reg = <0x1>;

						xbar_admaif1_ep: endpoint {
							remote-endpoint = <&admaif1_ep>;
						};
					};

					port@2 {
						reg = <0x2>;

						xbar_admaif2_ep: endpoint {
							remote-endpoint = <&admaif2_ep>;
						};
					};

					port@3 {
						reg = <0x3>;

						xbar_admaif3_ep: endpoint {
							remote-endpoint = <&admaif3_ep>;
						};
					};

					port@4 {
						reg = <0x4>;

						xbar_admaif4_ep: endpoint {
							remote-endpoint = <&admaif4_ep>;
						};
					};

					port@5 {
						reg = <0x5>;

						xbar_admaif5_ep: endpoint {
							remote-endpoint = <&admaif5_ep>;
						};
					};

					port@6 {
						reg = <0x6>;

						xbar_admaif6_ep: endpoint {
							remote-endpoint = <&admaif6_ep>;
						};
					};

					port@7 {
						reg = <0x7>;

						xbar_admaif7_ep: endpoint {
							remote-endpoint = <&admaif7_ep>;
						};
					};

					port@8 {
						reg = <0x8>;

						xbar_admaif8_ep: endpoint {
							remote-endpoint = <&admaif8_ep>;
						};
					};

					port@9 {
						reg = <0x9>;

						xbar_admaif9_ep: endpoint {
							remote-endpoint = <&admaif9_ep>;
						};
					};

					port@a {
						reg = <0xa>;

						xbar_admaif10_ep: endpoint {
							remote-endpoint = <&admaif10_ep>;
						};
					};

					port@b {
						reg = <0xb>;

						xbar_admaif11_ep: endpoint {
							remote-endpoint = <&admaif11_ep>;
						};
					};

					port@c {
						reg = <0xc>;

						xbar_admaif12_ep: endpoint {
							remote-endpoint = <&admaif12_ep>;
						};
					};

					port@d {
						reg = <0xd>;

						xbar_admaif13_ep: endpoint {
							remote-endpoint = <&admaif13_ep>;
						};
					};

					port@e {
						reg = <0xe>;

						xbar_admaif14_ep: endpoint {
							remote-endpoint = <&admaif14_ep>;
						};
					};

					port@f {
						reg = <0xf>;

						xbar_admaif15_ep: endpoint {
							remote-endpoint = <&admaif15_ep>;
						};
					};

					port@10 {
						reg = <0x10>;

						xbar_admaif16_ep: endpoint {
							remote-endpoint = <&admaif16_ep>;
						};
					};

					port@11 {
						reg = <0x11>;

						xbar_admaif17_ep: endpoint {
							remote-endpoint = <&admaif17_ep>;
						};
					};

					port@12 {
						reg = <0x12>;

						xbar_admaif18_ep: endpoint {
							remote-endpoint = <&admaif18_ep>;
						};
					};

					port@13 {
						reg = <0x13>;

						xbar_admaif19_ep: endpoint {
							remote-endpoint = <&admaif19_ep>;
						};
					};

					xbar_i2s1_port: port@14 {
						reg = <0x14>;

						xbar_i2s1_ep: endpoint {
							remote-endpoint = <&i2s1_cif_ep>;
						};
					};

					xbar_i2s2_port: port@15 {
						reg = <0x15>;

						xbar_i2s2_ep: endpoint {
							remote-endpoint = <&i2s2_cif_ep>;
						};
					};

					xbar_i2s4_port: port@17 {
						reg = <0x17>;

						xbar_i2s4_ep: endpoint {
							remote-endpoint = <&i2s4_cif_ep>;
						};
					};

					xbar_i2s6_port: port@19 {
						reg = <0x19>;

						xbar_i2s6_ep: endpoint {
							remote-endpoint = <&i2s6_cif_ep>;
						};
					};

					xbar_dmic3_port: port@1c {
						reg = <0x1c>;

						xbar_dmic3_ep: endpoint {
							remote-endpoint = <&dmic3_cif_ep>;
						};
					};

					xbar_sfc1_in_port: port@20 {
						reg = <0x20>;

						xbar_sfc1_in_ep: endpoint {
							remote-endpoint = <&sfc1_cif_in_ep>;
						};
					};

					port@21 {
						reg = <0x21>;

						xbar_sfc1_out_ep: endpoint {
							remote-endpoint = <&sfc1_cif_out_ep>;
						};
					};

					xbar_sfc2_in_port: port@22 {
						reg = <0x22>;

						xbar_sfc2_in_ep: endpoint {
							remote-endpoint = <&sfc2_cif_in_ep>;
						};
					};

					port@23 {
						reg = <0x23>;

						xbar_sfc2_out_ep: endpoint {
							remote-endpoint = <&sfc2_cif_out_ep>;
						};
					};

					xbar_sfc3_in_port: port@24 {
						reg = <0x24>;

						xbar_sfc3_in_ep: endpoint {
							remote-endpoint = <&sfc3_cif_in_ep>;
						};
					};

					port@25 {
						reg = <0x25>;

						xbar_sfc3_out_ep: endpoint {
							remote-endpoint = <&sfc3_cif_out_ep>;
						};
					};

					xbar_sfc4_in_port: port@26 {
						reg = <0x26>;

						xbar_sfc4_in_ep: endpoint {
							remote-endpoint = <&sfc4_cif_in_ep>;
						};
					};

					port@27 {
						reg = <0x27>;

						xbar_sfc4_out_ep: endpoint {
							remote-endpoint = <&sfc4_cif_out_ep>;
						};
					};

					xbar_mvc1_in_port: port@28 {
						reg = <0x28>;

						xbar_mvc1_in_ep: endpoint {
							remote-endpoint = <&mvc1_cif_in_ep>;
						};
					};

					port@29 {
						reg = <0x29>;

						xbar_mvc1_out_ep: endpoint {
							remote-endpoint = <&mvc1_cif_out_ep>;
						};
					};

					xbar_mvc2_in_port: port@2a {
						reg = <0x2a>;

						xbar_mvc2_in_ep: endpoint {
							remote-endpoint = <&mvc2_cif_in_ep>;
						};
					};

					port@2b {
						reg = <0x2b>;

						xbar_mvc2_out_ep: endpoint {
							remote-endpoint = <&mvc2_cif_out_ep>;
						};
					};

					xbar_amx1_in1_port: port@2c {
						reg = <0x2c>;

						xbar_amx1_in1_ep: endpoint {
							remote-endpoint = <&amx1_in1_ep>;
						};
					};

					xbar_amx1_in2_port: port@2d {
						reg = <0x2d>;

						xbar_amx1_in2_ep: endpoint {
							remote-endpoint = <&amx1_in2_ep>;
						};
					};

					xbar_amx1_in3_port: port@2e {
						reg = <0x2e>;

						xbar_amx1_in3_ep: endpoint {
							remote-endpoint = <&amx1_in3_ep>;
						};
					};

					xbar_amx1_in4_port: port@2f {
						reg = <0x2f>;

						xbar_amx1_in4_ep: endpoint {
							remote-endpoint = <&amx1_in4_ep>;
						};
					};

					port@30 {
						reg = <0x30>;

						xbar_amx1_out_ep: endpoint {
							remote-endpoint = <&amx1_out_ep>;
						};
					};

					xbar_amx2_in1_port: port@31 {
						reg = <0x31>;

						xbar_amx2_in1_ep: endpoint {
							remote-endpoint = <&amx2_in1_ep>;
						};
					};

					xbar_amx2_in2_port: port@32 {
						reg = <0x32>;

						xbar_amx2_in2_ep: endpoint {
							remote-endpoint = <&amx2_in2_ep>;
						};
					};

					xbar_amx2_in3_port: port@33 {
						reg = <0x33>;

						xbar_amx2_in3_ep: endpoint {
							remote-endpoint = <&amx2_in3_ep>;
						};
					};

					xbar_amx2_in4_port: port@34 {
						reg = <0x34>;

						xbar_amx2_in4_ep: endpoint {
							remote-endpoint = <&amx2_in4_ep>;
						};
					};

					port@35 {
						reg = <0x35>;

						xbar_amx2_out_ep: endpoint {
							remote-endpoint = <&amx2_out_ep>;
						};
					};

					xbar_amx3_in1_port: port@36 {
						reg = <0x36>;

						xbar_amx3_in1_ep: endpoint {
							remote-endpoint = <&amx3_in1_ep>;
						};
					};

					xbar_amx3_in2_port: port@37 {
						reg = <0x37>;

						xbar_amx3_in2_ep: endpoint {
							remote-endpoint = <&amx3_in2_ep>;
						};
					};

					xbar_amx3_in3_port: port@38 {
						reg = <0x38>;

						xbar_amx3_in3_ep: endpoint {
							remote-endpoint = <&amx3_in3_ep>;
						};
					};

					xbar_amx3_in4_port: port@39 {
						reg = <0x39>;

						xbar_amx3_in4_ep: endpoint {
							remote-endpoint = <&amx3_in4_ep>;
						};
					};

					port@3a {
						reg = <0x3a>;

						xbar_amx3_out_ep: endpoint {
							remote-endpoint = <&amx3_out_ep>;
						};
					};

					xbar_amx4_in1_port: port@3b {
						reg = <0x3b>;

						xbar_amx4_in1_ep: endpoint {
							remote-endpoint = <&amx4_in1_ep>;
						};
					};

					xbar_amx4_in2_port: port@3c {
						reg = <0x3c>;

						xbar_amx4_in2_ep: endpoint {
							remote-endpoint = <&amx4_in2_ep>;
						};
					};

					xbar_amx4_in3_port: port@3d {
						reg = <0x3d>;

						xbar_amx4_in3_ep: endpoint {
							remote-endpoint = <&amx4_in3_ep>;
						};
					};

					xbar_amx4_in4_port: port@3e {
						reg = <0x3e>;

						xbar_amx4_in4_ep: endpoint {
							remote-endpoint = <&amx4_in4_ep>;
						};
					};

					port@3f {
						reg = <0x3f>;

						xbar_amx4_out_ep: endpoint {
							remote-endpoint = <&amx4_out_ep>;
						};
					};

					xbar_adx1_in_port: port@40 {
						reg = <0x40>;

						xbar_adx1_in_ep: endpoint {
							remote-endpoint = <&adx1_in_ep>;
						};
					};

					port@41 {
						reg = <0x41>;

						xbar_adx1_out1_ep: endpoint {
							remote-endpoint = <&adx1_out1_ep>;
						};
					};

					port@42 {
						reg = <0x42>;

						xbar_adx1_out2_ep: endpoint {
							remote-endpoint = <&adx1_out2_ep>;
						};
					};

					port@43 {
						reg = <0x43>;

						xbar_adx1_out3_ep: endpoint {
							remote-endpoint = <&adx1_out3_ep>;
						};
					};

					port@44 {
						reg = <0x44>;

						xbar_adx1_out4_ep: endpoint {
							remote-endpoint = <&adx1_out4_ep>;
						};
					};

					xbar_adx2_in_port: port@45 {
						reg = <0x45>;

						xbar_adx2_in_ep: endpoint {
							remote-endpoint = <&adx2_in_ep>;
						};
					};

					port@46 {
						reg = <0x46>;

						xbar_adx2_out1_ep: endpoint {
							remote-endpoint = <&adx2_out1_ep>;
						};
					};

					port@47 {
						reg = <0x47>;

						xbar_adx2_out2_ep: endpoint {
							remote-endpoint = <&adx2_out2_ep>;
						};
					};

					port@48 {
						reg = <0x48>;

						xbar_adx2_out3_ep: endpoint {
							remote-endpoint = <&adx2_out3_ep>;
						};
					};

					port@49 {
						reg = <0x49>;

						xbar_adx2_out4_ep: endpoint {
							remote-endpoint = <&adx2_out4_ep>;
						};
					};

					xbar_adx3_in_port: port@4a {
						reg = <0x4a>;

						xbar_adx3_in_ep: endpoint {
							remote-endpoint = <&adx3_in_ep>;
						};
					};

					port@4b {
						reg = <0x4b>;

						xbar_adx3_out1_ep: endpoint {
							remote-endpoint = <&adx3_out1_ep>;
						};
					};

					port@4c {
						reg = <0x4c>;

						xbar_adx3_out2_ep: endpoint {
							remote-endpoint = <&adx3_out2_ep>;
						};
					};

					port@4d {
						reg = <0x4d>;

						xbar_adx3_out3_ep: endpoint {
							remote-endpoint = <&adx3_out3_ep>;
						};
					};

					port@4e {
						reg = <0x4e>;

						xbar_adx3_out4_ep: endpoint {
							remote-endpoint = <&adx3_out4_ep>;
						};
					};

					xbar_adx4_in_port: port@4f {
						reg = <0x4f>;

						xbar_adx4_in_ep: endpoint {
							remote-endpoint = <&adx4_in_ep>;
						};
					};

					port@50 {
						reg = <0x50>;

						xbar_adx4_out1_ep: endpoint {
							remote-endpoint = <&adx4_out1_ep>;
						};
					};

					port@51 {
						reg = <0x51>;

						xbar_adx4_out2_ep: endpoint {
							remote-endpoint = <&adx4_out2_ep>;
						};
					};

					port@52 {
						reg = <0x52>;

						xbar_adx4_out3_ep: endpoint {
							remote-endpoint = <&adx4_out3_ep>;
						};
					};

					port@53 {
						reg = <0x53>;

						xbar_adx4_out4_ep: endpoint {
							remote-endpoint = <&adx4_out4_ep>;
						};
					};

					xbar_mixer_in1_port: port@54 {
						reg = <0x54>;

						xbar_mixer_in1_ep: endpoint {
							remote-endpoint = <&mixer_in1_ep>;
						};
					};

					xbar_mixer_in2_port: port@55 {
						reg = <0x55>;

						xbar_mixer_in2_ep: endpoint {
							remote-endpoint = <&mixer_in2_ep>;
						};
					};

					xbar_mixer_in3_port: port@56 {
						reg = <0x56>;

						xbar_mixer_in3_ep: endpoint {
							remote-endpoint = <&mixer_in3_ep>;
						};
					};

					xbar_mixer_in4_port: port@57 {
						reg = <0x57>;

						xbar_mixer_in4_ep: endpoint {
							remote-endpoint = <&mixer_in4_ep>;
						};
					};

					xbar_mixer_in5_port: port@58 {
						reg = <0x58>;

						xbar_mixer_in5_ep: endpoint {
							remote-endpoint = <&mixer_in5_ep>;
						};
					};

					xbar_mixer_in6_port: port@59 {
						reg = <0x59>;

						xbar_mixer_in6_ep: endpoint {
							remote-endpoint = <&mixer_in6_ep>;
						};
					};

					xbar_mixer_in7_port: port@5a {
						reg = <0x5a>;

						xbar_mixer_in7_ep: endpoint {
							remote-endpoint = <&mixer_in7_ep>;
						};
					};

					xbar_mixer_in8_port: port@5b {
						reg = <0x5b>;

						xbar_mixer_in8_ep: endpoint {
							remote-endpoint = <&mixer_in8_ep>;
						};
					};

					xbar_mixer_in9_port: port@5c {
						reg = <0x5c>;

						xbar_mixer_in9_ep: endpoint {
							remote-endpoint = <&mixer_in9_ep>;
						};
					};

					xbar_mixer_in10_port: port@5d {
						reg = <0x5d>;

						xbar_mixer_in10_ep: endpoint {
							remote-endpoint = <&mixer_in10_ep>;
						};
					};

					port@5e {
						reg = <0x5e>;

						xbar_mixer_out1_ep: endpoint {
							remote-endpoint = <&mixer_out1_ep>;
						};
					};

					port@5f {
						reg = <0x5f>;

						xbar_mixer_out2_ep: endpoint {
							remote-endpoint = <&mixer_out2_ep>;
						};
					};

					port@60 {
						reg = <0x60>;

						xbar_mixer_out3_ep: endpoint {
							remote-endpoint = <&mixer_out3_ep>;
						};
					};

					port@61 {
						reg = <0x61>;

						xbar_mixer_out4_ep: endpoint {
							remote-endpoint = <&mixer_out4_ep>;
						};
					};

					port@62 {
						reg = <0x62>;

						xbar_mixer_out5_ep: endpoint {
							remote-endpoint = <&mixer_out5_ep>;
						};
					};

					xbar_asrc_in1_port: port@63 {
						reg = <0x63>;

						xbar_asrc_in1_ep: endpoint {
							remote-endpoint = <&asrc_in1_ep>;
						};
					};

					port@64 {
						reg = <0x64>;

						xbar_asrc_out1_ep: endpoint {
							remote-endpoint = <&asrc_out1_ep>;
						};
					};

					xbar_asrc_in2_port: port@65 {
						reg = <0x65>;

						xbar_asrc_in2_ep: endpoint {
							remote-endpoint = <&asrc_in2_ep>;
						};
					};

					port@66 {
						reg = <0x66>;

						xbar_asrc_out2_ep: endpoint {
							remote-endpoint = <&asrc_out2_ep>;
						};
					};

					xbar_asrc_in3_port: port@67 {
						reg = <0x67>;

						xbar_asrc_in3_ep: endpoint {
							remote-endpoint = <&asrc_in3_ep>;
						};
					};

					port@68 {
						reg = <0x68>;

						xbar_asrc_out3_ep: endpoint {
							remote-endpoint = <&asrc_out3_ep>;
						};
					};

					xbar_asrc_in4_port: port@69 {
						reg = <0x69>;

						xbar_asrc_in4_ep: endpoint {
							remote-endpoint = <&asrc_in4_ep>;
						};
					};

					port@6a {
						reg = <0x6a>;

						xbar_asrc_out4_ep: endpoint {
							remote-endpoint = <&asrc_out4_ep>;
						};
					};

					xbar_asrc_in5_port: port@6b {
						reg = <0x6b>;

						xbar_asrc_in5_ep: endpoint {
							remote-endpoint = <&asrc_in5_ep>;
						};
					};

					port@6c {
						reg = <0x6c>;

						xbar_asrc_out5_ep: endpoint {
							remote-endpoint = <&asrc_out5_ep>;
						};
					};

					xbar_asrc_in6_port: port@6d {
						reg = <0x6d>;

						xbar_asrc_in6_ep: endpoint {
							remote-endpoint = <&asrc_in6_ep>;
						};
					};

					port@6e {
						reg = <0x6e>;

						xbar_asrc_out6_ep: endpoint {
							remote-endpoint = <&asrc_out6_ep>;
						};
					};

					xbar_asrc_in7_port: port@6f {
						reg = <0x6f>;

						xbar_asrc_in7_ep: endpoint {
							remote-endpoint = <&asrc_in7_ep>;
						};
					};

					xbar_ope1_in_port: port@70 {
						reg = <0x70>;

						xbar_ope1_in_ep: endpoint {
							remote-endpoint = <&ope1_cif_in_ep>;
						};
					};

					port@71 {
						reg = <0x71>;

						xbar_ope1_out_ep: endpoint {
							remote-endpoint = <&ope1_cif_out_ep>;
						};
					};
				};

				admaif@290f000 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						admaif0_port: port@0 {
							reg = <0x0>;

							admaif0_ep: endpoint {
								remote-endpoint = <&xbar_admaif0_ep>;
							};
						};

						admaif1_port: port@1 {
							reg = <0x1>;

							admaif1_ep: endpoint {
								remote-endpoint = <&xbar_admaif1_ep>;
							};
						};

						admaif2_port: port@2 {
							reg = <0x2>;

							admaif2_ep: endpoint {
								remote-endpoint = <&xbar_admaif2_ep>;
							};
						};

						admaif3_port: port@3 {
							reg = <0x3>;

							admaif3_ep: endpoint {
								remote-endpoint = <&xbar_admaif3_ep>;
							};
						};

						admaif4_port: port@4 {
							reg = <0x4>;

							admaif4_ep: endpoint {
								remote-endpoint = <&xbar_admaif4_ep>;
							};
						};

						admaif5_port: port@5 {
							reg = <0x5>;

							admaif5_ep: endpoint {
								remote-endpoint = <&xbar_admaif5_ep>;
							};
						};

						admaif6_port: port@6 {
							reg = <0x6>;

							admaif6_ep: endpoint {
								remote-endpoint = <&xbar_admaif6_ep>;
							};
						};

						admaif7_port: port@7 {
							reg = <0x7>;

							admaif7_ep: endpoint {
								remote-endpoint = <&xbar_admaif7_ep>;
							};
						};

						admaif8_port: port@8 {
							reg = <0x8>;

							admaif8_ep: endpoint {
								remote-endpoint = <&xbar_admaif8_ep>;
							};
						};

						admaif9_port: port@9 {
							reg = <0x9>;

							admaif9_ep: endpoint {
								remote-endpoint = <&xbar_admaif9_ep>;
							};
						};

						admaif10_port: port@a {
							reg = <0xa>;

							admaif10_ep: endpoint {
								remote-endpoint = <&xbar_admaif10_ep>;
							};
						};

						admaif11_port: port@b {
							reg = <0xb>;

							admaif11_ep: endpoint {
								remote-endpoint = <&xbar_admaif11_ep>;
							};
						};

						admaif12_port: port@c {
							reg = <0xc>;

							admaif12_ep: endpoint {
								remote-endpoint = <&xbar_admaif12_ep>;
							};
						};

						admaif13_port: port@d {
							reg = <0xd>;

							admaif13_ep: endpoint {
								remote-endpoint = <&xbar_admaif13_ep>;
							};
						};

						admaif14_port: port@e {
							reg = <0xe>;

							admaif14_ep: endpoint {
								remote-endpoint = <&xbar_admaif14_ep>;
							};
						};

						admaif15_port: port@f {
							reg = <0xf>;

							admaif15_ep: endpoint {
								remote-endpoint = <&xbar_admaif15_ep>;
							};
						};

						admaif16_port: port@10 {
							reg = <0x10>;

							admaif16_ep: endpoint {
								remote-endpoint = <&xbar_admaif16_ep>;
							};
						};

						admaif17_port: port@11 {
							reg = <0x11>;

							admaif17_ep: endpoint {
								remote-endpoint = <&xbar_admaif17_ep>;
							};
						};

						admaif18_port: port@12 {
							reg = <0x12>;

							admaif18_ep: endpoint {
								remote-endpoint = <&xbar_admaif18_ep>;
							};
						};

						admaif19_port: port@13 {
							reg = <0x13>;

							admaif19_ep: endpoint {
								remote-endpoint = <&xbar_admaif19_ep>;
							};
						};
					};
				};

				i2s@2901000 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							i2s1_cif_ep: endpoint {
								remote-endpoint = <&xbar_i2s1_ep>;
							};
						};

						i2s1_port: port@1 {
							reg = <1>;

							i2s1_dap_ep: endpoint {
								dai-format = "i2s";
								remote-endpoint = <&rt5658_ep>;
							};
						};
					};
				};

				i2s@2901100 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							i2s2_cif_ep: endpoint {
								remote-endpoint = <&xbar_i2s2_ep>;
							};
						};

						i2s2_port: port@1 {
							reg = <1>;

							i2s2_dap_ep: endpoint {
								dai-format = "i2s";
								/* Place holder for external Codec */
							};
						};
					};
				};

				i2s@2901300 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							i2s4_cif_ep: endpoint {
								remote-endpoint = <&xbar_i2s4_ep>;
							};
						};

						i2s4_port: port@1 {
							reg = <1>;

							i2s4_dap_ep: endpoint {
								dai-format = "i2s";
								/* Place holder for external Codec */
							};
						};
					};
				};

				i2s@2901500 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							i2s6_cif_ep: endpoint {
								remote-endpoint = <&xbar_i2s6_ep>;
							};
						};

						i2s6_port: port@1 {
							reg = <1>;

							i2s6_dap_ep: endpoint {
								dai-format = "i2s";
								/* Place holder for external Codec */
							};
						};
					};
				};

				dmic@2904200 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							dmic3_cif_ep: endpoint {
								remote-endpoint = <&xbar_dmic3_ep>;
							};
						};

						dmic3_port: port@1 {
							reg = <1>;

							dmic3_dap_ep: endpoint {
								/* Place holder for external Codec */
							};
						};
					};
				};

				sfc@2902000 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							sfc1_cif_in_ep: endpoint {
								remote-endpoint = <&xbar_sfc1_in_ep>;
							};
						};

						sfc1_out_port: port@1 {
							reg = <1>;

							sfc1_cif_out_ep: endpoint {
								remote-endpoint = <&xbar_sfc1_out_ep>;
							};
						};
					};
				};

				sfc@2902200 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							sfc2_cif_in_ep: endpoint {
								remote-endpoint = <&xbar_sfc2_in_ep>;
							};
						};

						sfc2_out_port: port@1 {
							reg = <1>;

							sfc2_cif_out_ep: endpoint {
								remote-endpoint = <&xbar_sfc2_out_ep>;
							};
						};
					};
				};

				sfc@2902400 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							sfc3_cif_in_ep: endpoint {
								remote-endpoint = <&xbar_sfc3_in_ep>;
							};
						};

						sfc3_out_port: port@1 {
							reg = <1>;

							sfc3_cif_out_ep: endpoint {
								remote-endpoint = <&xbar_sfc3_out_ep>;
							};
						};
					};
				};

				sfc@2902600 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							sfc4_cif_in_ep: endpoint {
								remote-endpoint = <&xbar_sfc4_in_ep>;
							};
						};

						sfc4_out_port: port@1 {
							reg = <1>;

							sfc4_cif_out_ep: endpoint {
								remote-endpoint = <&xbar_sfc4_out_ep>;
							};
						};
					};
				};

				mvc@290a000 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							mvc1_cif_in_ep: endpoint {
								remote-endpoint = <&xbar_mvc1_in_ep>;
							};
						};

						mvc1_out_port: port@1 {
							reg = <1>;

							mvc1_cif_out_ep: endpoint {
								remote-endpoint = <&xbar_mvc1_out_ep>;
							};
						};
					};
				};

				mvc@290a200 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							mvc2_cif_in_ep: endpoint {
								remote-endpoint = <&xbar_mvc2_in_ep>;
							};
						};

						mvc2_out_port: port@1 {
							reg = <1>;

							mvc2_cif_out_ep: endpoint {
								remote-endpoint = <&xbar_mvc2_out_ep>;
							};
						};
					};
				};

				amx@2903000 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							amx1_in1_ep: endpoint {
								remote-endpoint = <&xbar_amx1_in1_ep>;
							};
						};

						port@1 {
							reg = <1>;

							amx1_in2_ep: endpoint {
								remote-endpoint = <&xbar_amx1_in2_ep>;
							};
						};

						port@2 {
							reg = <2>;

							amx1_in3_ep: endpoint {
								remote-endpoint = <&xbar_amx1_in3_ep>;
							};
						};

						port@3 {
							reg = <3>;

							amx1_in4_ep: endpoint {
								remote-endpoint = <&xbar_amx1_in4_ep>;
							};
						};

						amx1_out_port: port@4 {
							reg = <4>;

							amx1_out_ep: endpoint {
								remote-endpoint = <&xbar_amx1_out_ep>;
							};
						};
					};
				};

				amx@2903100 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							amx2_in1_ep: endpoint {
								remote-endpoint = <&xbar_amx2_in1_ep>;
							};
						};

						port@1 {
							reg = <1>;

							amx2_in2_ep: endpoint {
								remote-endpoint = <&xbar_amx2_in2_ep>;
							};
						};

						amx2_in3_port: port@2 {
							reg = <2>;

							amx2_in3_ep: endpoint {
								remote-endpoint = <&xbar_amx2_in3_ep>;
							};
						};

						amx2_in4_port: port@3 {
							reg = <3>;

							amx2_in4_ep: endpoint {
								remote-endpoint = <&xbar_amx2_in4_ep>;
							};
						};

						amx2_out_port: port@4 {
							reg = <4>;

							amx2_out_ep: endpoint {
								remote-endpoint = <&xbar_amx2_out_ep>;
							};
						};
					};
				};

				amx@2903200 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							amx3_in1_ep: endpoint {
								remote-endpoint = <&xbar_amx3_in1_ep>;
							};
						};

						port@1 {
							reg = <1>;

							amx3_in2_ep: endpoint {
								remote-endpoint = <&xbar_amx3_in2_ep>;
							};
						};

						port@2 {
							reg = <2>;

							amx3_in3_ep: endpoint {
								remote-endpoint = <&xbar_amx3_in3_ep>;
							};
						};

						port@3 {
							reg = <3>;

							amx3_in4_ep: endpoint {
								remote-endpoint = <&xbar_amx3_in4_ep>;
							};
						};

						amx3_out_port: port@4 {
							reg = <4>;

							amx3_out_ep: endpoint {
								remote-endpoint = <&xbar_amx3_out_ep>;
							};
						};
					};
				};

				amx@2903300 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							amx4_in1_ep: endpoint {
								remote-endpoint = <&xbar_amx4_in1_ep>;
							};
						};

						port@1 {
							reg = <1>;

							amx4_in2_ep: endpoint {
								remote-endpoint = <&xbar_amx4_in2_ep>;
							};
						};

						port@2 {
							reg = <2>;

							amx4_in3_ep: endpoint {
								remote-endpoint = <&xbar_amx4_in3_ep>;
							};
						};

						port@3 {
							reg = <3>;

							amx4_in4_ep: endpoint {
								remote-endpoint = <&xbar_amx4_in4_ep>;
							};
						};

						amx4_out_port: port@4 {
							reg = <4>;

							amx4_out_ep: endpoint {
								remote-endpoint = <&xbar_amx4_out_ep>;
							};
						};
					};
				};

				adx@2903800 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							adx1_in_ep: endpoint {
								remote-endpoint = <&xbar_adx1_in_ep>;
							};
						};

						adx1_out1_port: port@1 {
							reg = <1>;

							adx1_out1_ep: endpoint {
								remote-endpoint = <&xbar_adx1_out1_ep>;
							};
						};

						adx1_out2_port: port@2 {
							reg = <2>;

							adx1_out2_ep: endpoint {
								remote-endpoint = <&xbar_adx1_out2_ep>;
							};
						};

						adx1_out3_port: port@3 {
							reg = <3>;

							adx1_out3_ep: endpoint {
								remote-endpoint = <&xbar_adx1_out3_ep>;
							};
						};

						adx1_out4_port: port@4 {
							reg = <4>;

							adx1_out4_ep: endpoint {
								remote-endpoint = <&xbar_adx1_out4_ep>;
							};
						};
					};
				};

				adx@2903900 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							adx2_in_ep: endpoint {
								remote-endpoint = <&xbar_adx2_in_ep>;
							};
						};

						adx2_out1_port: port@1 {
							reg = <1>;

							adx2_out1_ep: endpoint {
								remote-endpoint = <&xbar_adx2_out1_ep>;
							};
						};

						adx2_out2_port: port@2 {
							reg = <2>;

							adx2_out2_ep: endpoint {
								remote-endpoint = <&xbar_adx2_out2_ep>;
							};
						};

						adx2_out3_port: port@3 {
							reg = <3>;

							adx2_out3_ep: endpoint {
								remote-endpoint = <&xbar_adx2_out3_ep>;
							};
						};

						adx2_out4_port: port@4 {
							reg = <4>;

							adx2_out4_ep: endpoint {
								remote-endpoint = <&xbar_adx2_out4_ep>;
							};
						};
					};
				};

				adx@2903a00 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							adx3_in_ep: endpoint {
								remote-endpoint = <&xbar_adx3_in_ep>;
							};
						};

						adx3_out1_port: port@1 {
							reg = <1>;

							adx3_out1_ep: endpoint {
								remote-endpoint = <&xbar_adx3_out1_ep>;
							};
						};

						adx3_out2_port: port@2 {
							reg = <2>;

							adx3_out2_ep: endpoint {
								remote-endpoint = <&xbar_adx3_out2_ep>;
							};
						};

						adx3_out3_port: port@3 {
							reg = <3>;

							adx3_out3_ep: endpoint {
								remote-endpoint = <&xbar_adx3_out3_ep>;
							};
						};

						adx3_out4_port: port@4 {
							reg = <4>;

							adx3_out4_ep: endpoint {
								remote-endpoint = <&xbar_adx3_out4_ep>;
							};
						};
					};
				};

				adx@2903b00 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							adx4_in_ep: endpoint {
								remote-endpoint = <&xbar_adx4_in_ep>;
							};
						};

						adx4_out1_port: port@1 {
							reg = <1>;

							adx4_out1_ep: endpoint {
								remote-endpoint = <&xbar_adx4_out1_ep>;
							};
						};

						adx4_out2_port: port@2 {
							reg = <2>;

							adx4_out2_ep: endpoint {
								remote-endpoint = <&xbar_adx4_out2_ep>;
							};
						};

						adx4_out3_port: port@3 {
							reg = <3>;

							adx4_out3_ep: endpoint {
								remote-endpoint = <&xbar_adx4_out3_ep>;
							};
						};

						adx4_out4_port: port@4 {
							reg = <4>;

							adx4_out4_ep: endpoint {
								remote-endpoint = <&xbar_adx4_out4_ep>;
							};
						};
					};
				};

				processing-engine@2908000 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0x0>;

							ope1_cif_in_ep: endpoint {
								remote-endpoint = <&xbar_ope1_in_ep>;
							};
						};

						ope1_out_port: port@1 {
							reg = <0x1>;

							ope1_cif_out_ep: endpoint {
								remote-endpoint = <&xbar_ope1_out_ep>;
							};
						};
					};
				};

				amixer@290bb00 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0x0>;

							mixer_in1_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in1_ep>;
							};
						};

						port@1 {
							reg = <0x1>;

							mixer_in2_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in2_ep>;
							};
						};

						port@2 {
							reg = <0x2>;

							mixer_in3_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in3_ep>;
							};
						};

						port@3 {
							reg = <0x3>;

							mixer_in4_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in4_ep>;
							};
						};

						port@4 {
							reg = <0x4>;

							mixer_in5_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in5_ep>;
							};
						};

						port@5 {
							reg = <0x5>;

							mixer_in6_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in6_ep>;
							};
						};

						port@6 {
							reg = <0x6>;

							mixer_in7_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in7_ep>;
							};
						};

						port@7 {
							reg = <0x7>;

							mixer_in8_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in8_ep>;
							};
						};

						port@8 {
							reg = <0x8>;

							mixer_in9_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in9_ep>;
							};
						};

						port@9 {
							reg = <0x9>;

							mixer_in10_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in10_ep>;
							};
						};

						mixer_out1_port: port@a {
							reg = <0xa>;

							mixer_out1_ep: endpoint {
								remote-endpoint = <&xbar_mixer_out1_ep>;
							};
						};

						mixer_out2_port: port@b {
							reg = <0xb>;

							mixer_out2_ep: endpoint {
								remote-endpoint = <&xbar_mixer_out2_ep>;
							};
						};

						mixer_out3_port: port@c {
							reg = <0xc>;

							mixer_out3_ep: endpoint {
								remote-endpoint = <&xbar_mixer_out3_ep>;
							};
						};

						mixer_out4_port: port@d {
							reg = <0xd>;

							mixer_out4_ep: endpoint {
								remote-endpoint = <&xbar_mixer_out4_ep>;
							};
						};

						mixer_out5_port: port@e {
							reg = <0xe>;

							mixer_out5_ep: endpoint {
								remote-endpoint = <&xbar_mixer_out5_ep>;
							};
						};
					};
				};

				asrc@2910000 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0x0>;

							asrc_in1_ep: endpoint {
								remote-endpoint = <&xbar_asrc_in1_ep>;
							};
						};

						port@1 {
							reg = <0x1>;

							asrc_in2_ep: endpoint {
								remote-endpoint = <&xbar_asrc_in2_ep>;
							};
						};

						port@2 {
							reg = <0x2>;

							asrc_in3_ep: endpoint {
								remote-endpoint = <&xbar_asrc_in3_ep>;
							};
						};

						port@3 {
							reg = <0x3>;

							asrc_in4_ep: endpoint {
								remote-endpoint = <&xbar_asrc_in4_ep>;
							};
						};

						port@4 {
							reg = <0x4>;

							asrc_in5_ep: endpoint {
								remote-endpoint = <&xbar_asrc_in5_ep>;
							};
						};

						port@5 {
							reg = <0x5>;

							asrc_in6_ep: endpoint {
								remote-endpoint = <&xbar_asrc_in6_ep>;
							};
						};

						port@6 {
							reg = <0x6>;

							asrc_in7_ep: endpoint {
								remote-endpoint = <&xbar_asrc_in7_ep>;
							};
						};

						asrc_out1_port: port@7 {
							reg = <0x7>;

							asrc_out1_ep: endpoint {
								remote-endpoint = <&xbar_asrc_out1_ep>;
							};
						};

						asrc_out2_port: port@8 {
							reg = <0x8>;

							asrc_out2_ep: endpoint {
								remote-endpoint = <&xbar_asrc_out2_ep>;
							};
						};

						asrc_out3_port: port@9 {
							reg = <0x9>;

							asrc_out3_ep: endpoint {
								remote-endpoint = <&xbar_asrc_out3_ep>;
							};
						};

						asrc_out4_port: port@a {
							reg = <0xa>;

							asrc_out4_ep: endpoint {
								remote-endpoint = <&xbar_asrc_out4_ep>;
							};
						};

						asrc_out5_port: port@b {
							reg = <0xb>;

							asrc_out5_ep: endpoint {
								remote-endpoint = <&xbar_asrc_out5_ep>;
							};
						};

						asrc_out6_port:	port@c {
							reg = <0xc>;

							asrc_out6_ep: endpoint {
								remote-endpoint = <&xbar_asrc_out6_ep>;
							};
						};
					};
				};
			};
		};

		i2c@3160000 {
			eeprom@56 {
				compatible = "atmel,24c02";
				reg = <0x56>;

				label = "system";
				vcc-supply = <&vdd_1v8ls>;
				address-width = <8>;
				pagesize = <8>;
				size = <256>;
				read-only;
			};
		};

		ddc: i2c@31c0000 {
			status = "okay";
		};

		/* SDMMC1 (SD/MMC) */
		mmc@3400000 {
			status = "okay";
		};

		hda@3510000 {
			nvidia,model = "NVIDIA Jetson AGX Xavier HDA";
			status = "okay";
		};

		padctl@3520000 {
			status = "okay";

			pads {
				usb2 {
					lanes {
						usb2-0 {
							status = "okay";
						};

						usb2-1 {
							status = "okay";
						};

						usb2-3 {
							status = "okay";
						};
					};
				};

				usb3 {
					lanes {
						usb3-0 {
							status = "okay";
						};

						usb3-2 {
							status = "okay";
						};

						usb3-3 {
							status = "okay";
						};
					};
				};
			};

			ports {
				usb2-0 {
					mode = "host";
					status = "okay";
				};

				usb2-1 {
					mode = "host";
					status = "okay";
				};

				usb2-3 {
					mode = "host";
					status = "okay";
				};

				usb3-0 {
					nvidia,usb2-companion = <1>;
					status = "okay";
				};

				usb3-2 {
					nvidia,usb2-companion = <0>;
					status = "okay";
				};

				usb3-3 {
					nvidia,usb2-companion = <3>;
					maximum-speed = "super-speed";
					status = "okay";
				};
			};
		};

		usb@3610000 {
			status = "okay";

			phys =	<&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>,
				<&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-1}>,
				<&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-3}>,
				<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-0}>,
				<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-2}>,
				<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-3}>;
			phy-names = "usb2-0", "usb2-1", "usb2-3", "usb3-0", "usb3-2", "usb3-3";
		};

		i2c@c250000 {
			status = "okay";

			rt5658: audio-codec@1a {
				status = "okay";

				compatible = "realtek,rt5658";
				reg = <0x1a>;
				interrupt-parent = <&gpio>;
				interrupts = <TEGRA194_MAIN_GPIO(S, 5) GPIO_ACTIVE_HIGH>;
				clocks = <&bpmp TEGRA194_CLK_AUD_MCLK>;
				clock-names = "mclk";
				realtek,jd-src = <2>;
				sound-name-prefix = "CVB-RT";

				port {
					rt5658_ep: endpoint {
						remote-endpoint = <&i2s1_dap_ep>;
						mclk-fs = <256>;
					};
				};
			};
		};

		pwm@c340000 {
			status = "okay";
		};

		host1x@13e00000 {
			display-hub@15200000 {
				status = "okay";
			};

			dpaux@155c0000 {
				status = "okay";
			};

			dpaux@155d0000 {
				status = "okay";
			};

			dpaux@155e0000 {
				status = "okay";
			};

			/* DP0 */
			sor@15b00000 {
				status = "okay";

				avdd-io-hdmi-dp-supply = <&vdd_1v0>;
				vdd-hdmi-dp-pll-supply = <&vdd_1v8hs>;

				nvidia,dpaux = <&dpaux0>;
			};

			/* DP1 */
			sor@15b40000 {
				status = "okay";

				avdd-io-hdmi-dp-supply = <&vdd_1v0>;
				vdd-hdmi-dp-pll-supply = <&vdd_1v8hs>;

				nvidia,dpaux = <&dpaux1>;
			};

			/* HDMI */
			sor@15b80000 {
				status = "okay";

				avdd-io-hdmi-dp-supply = <&vdd_1v0>;
				vdd-hdmi-dp-pll-supply = <&vdd_1v8hs>;
				hdmi-supply = <&vdd_hdmi>;

				nvidia,ddc-i2c-bus = <&ddc>;
				nvidia,hpd-gpio = <&gpio TEGRA194_MAIN_GPIO(M, 2)
							 GPIO_ACTIVE_LOW>;
			};
		};
	};

	pcie@14100000 {
		status = "okay";

		vddio-pex-ctl-supply = <&vdd_1v8ao>;

		phys = <&p2u_hsio_0>;
		phy-names = "p2u-0";
	};

	pcie@14140000 {
		status = "okay";

		vddio-pex-ctl-supply = <&vdd_1v8ao>;

		phys = <&p2u_hsio_7>;
		phy-names = "p2u-0";
	};

	pcie@14180000 {
		status = "okay";

		vddio-pex-ctl-supply = <&vdd_1v8ao>;

		phys = <&p2u_hsio_2>, <&p2u_hsio_3>, <&p2u_hsio_4>,
		       <&p2u_hsio_5>;
		phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3";
	};

	pcie@141a0000 {
		status = "okay";

		vddio-pex-ctl-supply = <&vdd_1v8ao>;
		vpcie3v3-supply = <&vdd_3v3_pcie>;
		vpcie12v-supply = <&vdd_12v_pcie>;

		phys = <&p2u_nvhs_0>, <&p2u_nvhs_1>, <&p2u_nvhs_2>,
		       <&p2u_nvhs_3>, <&p2u_nvhs_4>, <&p2u_nvhs_5>,
		       <&p2u_nvhs_6>, <&p2u_nvhs_7>;

		phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4",
			    "p2u-5", "p2u-6", "p2u-7";
	};

	pcie-ep@141a0000 {
		status = "disabled";

		vddio-pex-ctl-supply = <&vdd_1v8ao>;

		reset-gpios = <&gpio TEGRA194_MAIN_GPIO(GG, 1) GPIO_ACTIVE_LOW>;

		nvidia,refclk-select-gpios = <&gpio_aon TEGRA194_AON_GPIO(AA, 5)
					      GPIO_ACTIVE_HIGH>;

		phys = <&p2u_nvhs_0>, <&p2u_nvhs_1>, <&p2u_nvhs_2>,
		       <&p2u_nvhs_3>, <&p2u_nvhs_4>, <&p2u_nvhs_5>,
		       <&p2u_nvhs_6>, <&p2u_nvhs_7>;

		phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4",
			    "p2u-5", "p2u-6", "p2u-7";
	};

	fan: pwm-fan {
		compatible = "pwm-fan";
		pwms = <&pwm4 0 45334>;

		cooling-levels = <0 64 128 255>;
		#cooling-cells = <2>;
	};

	gpio-keys {
		compatible = "gpio-keys";

		key-force-recovery {
			label = "Force Recovery";
			gpios = <&gpio TEGRA194_MAIN_GPIO(G, 0)
				       GPIO_ACTIVE_LOW>;
			linux,input-type = <EV_KEY>;
			linux,code = <KEY_SLEEP>;
			debounce-interval = <10>;
		};

		key-power {
			label = "Power";
			gpios = <&gpio_aon TEGRA194_AON_GPIO(EE, 4)
					   GPIO_ACTIVE_LOW>;
			linux,input-type = <EV_KEY>;
			linux,code = <KEY_POWER>;
			debounce-interval = <10>;
			wakeup-event-action = <EV_ACT_ASSERTED>;
			wakeup-source;
		};
	};

	sound {
		compatible = "nvidia,tegra186-audio-graph-card";
		status = "okay";

		dais = /* ADMAIF (FE) Ports */
		       <&admaif0_port>, <&admaif1_port>, <&admaif2_port>, <&admaif3_port>,
		       <&admaif4_port>, <&admaif5_port>, <&admaif6_port>, <&admaif7_port>,
		       <&admaif8_port>, <&admaif9_port>, <&admaif10_port>, <&admaif11_port>,
		       <&admaif12_port>, <&admaif13_port>, <&admaif14_port>, <&admaif15_port>,
		       <&admaif16_port>, <&admaif17_port>, <&admaif18_port>, <&admaif19_port>,
		       /* XBAR Ports */
		       <&xbar_i2s1_port>, <&xbar_i2s2_port>, <&xbar_i2s4_port>,
		       <&xbar_i2s6_port>, <&xbar_dmic3_port>,
		       <&xbar_sfc1_in_port>, <&xbar_sfc2_in_port>,
		       <&xbar_sfc3_in_port>, <&xbar_sfc4_in_port>,
		       <&xbar_mvc1_in_port>, <&xbar_mvc2_in_port>,
		       <&xbar_amx1_in1_port>, <&xbar_amx1_in2_port>,
		       <&xbar_amx1_in3_port>, <&xbar_amx1_in4_port>,
		       <&xbar_amx2_in1_port>, <&xbar_amx2_in2_port>,
		       <&xbar_amx2_in3_port>, <&xbar_amx2_in4_port>,
		       <&xbar_amx3_in1_port>, <&xbar_amx3_in2_port>,
		       <&xbar_amx3_in3_port>, <&xbar_amx3_in4_port>,
		       <&xbar_amx4_in1_port>, <&xbar_amx4_in2_port>,
		       <&xbar_amx4_in3_port>, <&xbar_amx4_in4_port>,
		       <&xbar_adx1_in_port>, <&xbar_adx2_in_port>,
		       <&xbar_adx3_in_port>, <&xbar_adx4_in_port>,
		       <&xbar_mixer_in1_port>, <&xbar_mixer_in2_port>,
		       <&xbar_mixer_in3_port>, <&xbar_mixer_in4_port>,
		       <&xbar_mixer_in5_port>, <&xbar_mixer_in6_port>,
		       <&xbar_mixer_in7_port>, <&xbar_mixer_in8_port>,
		       <&xbar_mixer_in9_port>, <&xbar_mixer_in10_port>,
		       <&xbar_asrc_in1_port>, <&xbar_asrc_in2_port>,
		       <&xbar_asrc_in3_port>, <&xbar_asrc_in4_port>,
		       <&xbar_asrc_in5_port>, <&xbar_asrc_in6_port>,
		       <&xbar_asrc_in7_port>,
		       <&xbar_ope1_in_port>,
		       /* HW accelerators */
		       <&sfc1_out_port>, <&sfc2_out_port>,
		       <&sfc3_out_port>, <&sfc4_out_port>,
		       <&mvc1_out_port>, <&mvc2_out_port>,
		       <&amx1_out_port>, <&amx2_out_port>,
		       <&amx3_out_port>, <&amx4_out_port>,
		       <&adx1_out1_port>, <&adx1_out2_port>,
		       <&adx1_out3_port>, <&adx1_out4_port>,
		       <&adx2_out1_port>, <&adx2_out2_port>,
		       <&adx2_out3_port>, <&adx2_out4_port>,
		       <&adx3_out1_port>, <&adx3_out2_port>,
		       <&adx3_out3_port>, <&adx3_out4_port>,
		       <&adx4_out1_port>, <&adx4_out2_port>,
		       <&adx4_out3_port>, <&adx4_out4_port>,
		       <&mixer_out1_port>, <&mixer_out2_port>, <&mixer_out3_port>,
		       <&mixer_out4_port>, <&mixer_out5_port>,
		       <&asrc_out1_port>, <&asrc_out2_port>, <&asrc_out3_port>,
		       <&asrc_out4_port>, <&asrc_out5_port>, <&asrc_out6_port>,
		       <&ope1_out_port>,
		       /* BE I/O Ports */
		       <&i2s1_port>, <&i2s2_port>, <&i2s4_port>, <&i2s6_port>,
		       <&dmic3_port>;

		label = "NVIDIA Jetson AGX Xavier APE";

		widgets =
			"Microphone",	"CVB-RT MIC Jack",
			"Microphone",	"CVB-RT MIC",
			"Headphone",	"CVB-RT HP Jack",
			"Speaker",	"CVB-RT SPK";

		routing =
			/* I2S1 <-> RT5658 */
			"CVB-RT AIF1 Playback",	"I2S1 DAP-Playback",
			"I2S1 DAP-Capture",	"CVB-RT AIF1 Capture",
			/* RT5658 Codec controls */
			"CVB-RT HP Jack",	"CVB-RT HPO L Playback",
			"CVB-RT HP Jack",	"CVB-RT HPO R Playback",
			"CVB-RT IN1P",		"CVB-RT MIC Jack",
			"CVB-RT IN2P",		"CVB-RT MIC Jack",
			"CVB-RT SPK",		"CVB-RT SPO Playback",
			"CVB-RT DMIC L1",	"CVB-RT MIC",
			"CVB-RT DMIC L2",	"CVB-RT MIC",
			"CVB-RT DMIC R1",	"CVB-RT MIC",
			"CVB-RT DMIC R2",	"CVB-RT MIC";
	};

	thermal-zones {
		cpu-thermal {
			polling-delay = <0>;
			polling-delay-passive = <500>;
			status = "okay";

			trips {
				cpu_trip_critical: critical {
					temperature = <96500>;
					hysteresis = <0>;
					type = "critical";
				};

				cpu_trip_hot: hot {
					temperature = <70000>;
					hysteresis = <2000>;
					type = "hot";
				};

				cpu_trip_active: active {
					temperature = <50000>;
					hysteresis = <2000>;
					type = "active";
				};

				cpu_trip_passive: passive {
					temperature = <30000>;
					hysteresis = <2000>;
					type = "passive";
				};
			};

			cooling-maps {
				cpu-critical {
					cooling-device = <&fan 3 3>;
					trip = <&cpu_trip_critical>;
				};

				cpu-hot {
					cooling-device = <&fan 2 2>;
					trip = <&cpu_trip_hot>;
				};

				cpu-active {
					cooling-device = <&fan 1 1>;
					trip = <&cpu_trip_active>;
				};

				cpu-passive {
					cooling-device = <&fan 0 0>;
					trip = <&cpu_trip_passive>;
				};
			};
		};

		gpu-thermal {
			polling-delay = <0>;
			polling-delay-passive = <500>;
			status = "okay";

			trips {
				gpu_alert0: critical {
					temperature = <99000>;
					hysteresis = <0>;
					type = "critical";
				};
			};
		};

		aux-thermal {
			polling-delay = <0>;
			polling-delay-passive = <500>;
			status = "okay";

			trips {
				aux_alert0: critical {
					temperature = <90000>;
					hysteresis = <0>;
					type = "critical";
				};
			};
		};
	};
};


code:
// SPDX-License-Identifier: GPL-2.0
/dts-v1/;

#include "tegra194-p3668-0000.dtsi"
#include "tegra194-p3509-0000.dtsi"

/ {
	model = "NVIDIA Jetson Xavier NX Developer Kit (SD-card)";
	compatible = "nvidia,p3509-0000+p3668-0000", "nvidia,tegra194";
};

repo_name: angery/linux


code:
// SPDX-License-Identifier: GPL-2.0
/dts-v1/;

#include "tegra194-p3668-0001.dtsi"
#include "tegra194-p3509-0000.dtsi"

/ {
	model = "NVIDIA Jetson Xavier NX Developer Kit (eMMC)";
	compatible = "nvidia,p3509-0000+p3668-0001", "nvidia,tegra194";
};


code:
// SPDX-License-Identifier: GPL-2.0

#include <dt-bindings/input/linux-event-codes.h>
#include <dt-bindings/input/gpio-keys.h>

/ {
	bus@0 {
		aconnect@2900000 {
			status = "okay";

			dma-controller@2930000 {
				status = "okay";
			};

			interrupt-controller@2a40000 {
				status = "okay";
			};

			ahub@2900800 {
				status = "okay";

				ports {
					#address-cells = <1>;
					#size-cells = <0>;

					port@0 {
						reg = <0x0>;

						xbar_admaif0_ep: endpoint {
							remote-endpoint = <&admaif0_ep>;
						};
					};

					port@1 {
						reg = <0x1>;

						xbar_admaif1_ep: endpoint {
							remote-endpoint = <&admaif1_ep>;
						};
					};

					port@2 {
						reg = <0x2>;

						xbar_admaif2_ep: endpoint {
							remote-endpoint = <&admaif2_ep>;
						};
					};

					port@3 {
						reg = <0x3>;

						xbar_admaif3_ep: endpoint {
							remote-endpoint = <&admaif3_ep>;
						};
					};

					port@4 {
						reg = <0x4>;

						xbar_admaif4_ep: endpoint {
							remote-endpoint = <&admaif4_ep>;
						};
					};

					port@5 {
						reg = <0x5>;

						xbar_admaif5_ep: endpoint {
							remote-endpoint = <&admaif5_ep>;
						};
					};

					port@6 {
						reg = <0x6>;

						xbar_admaif6_ep: endpoint {
							remote-endpoint = <&admaif6_ep>;
						};
					};

					port@7 {
						reg = <0x7>;

						xbar_admaif7_ep: endpoint {
							remote-endpoint = <&admaif7_ep>;
						};
					};

					port@8 {
						reg = <0x8>;

						xbar_admaif8_ep: endpoint {
							remote-endpoint = <&admaif8_ep>;
						};
					};

					port@9 {
						reg = <0x9>;

						xbar_admaif9_ep: endpoint {
							remote-endpoint = <&admaif9_ep>;
						};
					};

					port@a {
						reg = <0xa>;

						xbar_admaif10_ep: endpoint {
							remote-endpoint = <&admaif10_ep>;
						};
					};

					port@b {
						reg = <0xb>;

						xbar_admaif11_ep: endpoint {
							remote-endpoint = <&admaif11_ep>;
						};
					};

					port@c {
						reg = <0xc>;

						xbar_admaif12_ep: endpoint {
							remote-endpoint = <&admaif12_ep>;
						};
					};

					port@d {
						reg = <0xd>;

						xbar_admaif13_ep: endpoint {
							remote-endpoint = <&admaif13_ep>;
						};
					};

					port@e {
						reg = <0xe>;

						xbar_admaif14_ep: endpoint {
							remote-endpoint = <&admaif14_ep>;
						};
					};

					port@f {
						reg = <0xf>;

						xbar_admaif15_ep: endpoint {
							remote-endpoint = <&admaif15_ep>;
						};
					};

					port@10 {
						reg = <0x10>;

						xbar_admaif16_ep: endpoint {
							remote-endpoint = <&admaif16_ep>;
						};
					};

					port@11 {
						reg = <0x11>;

						xbar_admaif17_ep: endpoint {
							remote-endpoint = <&admaif17_ep>;
						};
					};

					port@12 {
						reg = <0x12>;

						xbar_admaif18_ep: endpoint {
							remote-endpoint = <&admaif18_ep>;
						};
					};

					port@13 {
						reg = <0x13>;

						xbar_admaif19_ep: endpoint {
							remote-endpoint = <&admaif19_ep>;
						};
					};

					xbar_i2s3_port: port@16 {
						reg = <0x16>;

						xbar_i2s3_ep: endpoint {
							remote-endpoint = <&i2s3_cif_ep>;
						};
					};

					xbar_i2s5_port: port@18 {
						reg = <0x18>;

						xbar_i2s5_ep: endpoint {
							remote-endpoint = <&i2s5_cif_ep>;
						};
					};

					xbar_dmic1_port: port@1a {
						reg = <0x1a>;

						xbar_dmic1_ep: endpoint {
							remote-endpoint = <&dmic1_cif_ep>;
						};
					};

					xbar_dmic2_port: port@1b {
						reg = <0x1b>;

						xbar_dmic2_ep: endpoint {
							remote-endpoint = <&dmic2_cif_ep>;
						};
					};

					xbar_dmic4_port: port@1d {
						reg = <0x1d>;

						xbar_dmic4_ep: endpoint {
							remote-endpoint = <&dmic4_cif_ep>;
						};
					};

					xbar_dspk1_port: port@1e {
						reg = <0x1e>;

						xbar_dspk1_ep: endpoint {
							remote-endpoint = <&dspk1_cif_ep>;
						};
					};

					xbar_dspk2_port: port@1f {
						reg = <0x1f>;

						xbar_dspk2_ep: endpoint {
							remote-endpoint = <&dspk2_cif_ep>;
						};
					};

					xbar_sfc1_in_port: port@20 {
						reg = <0x20>;

						xbar_sfc1_in_ep: endpoint {
							remote-endpoint = <&sfc1_cif_in_ep>;
						};
					};

					port@21 {
						reg = <0x21>;

						xbar_sfc1_out_ep: endpoint {
							remote-endpoint = <&sfc1_cif_out_ep>;
						};
					};

					xbar_sfc2_in_port: port@22 {
						reg = <0x22>;

						xbar_sfc2_in_ep: endpoint {
							remote-endpoint = <&sfc2_cif_in_ep>;
						};
					};

					port@23 {
						reg = <0x23>;

						xbar_sfc2_out_ep: endpoint {
							remote-endpoint = <&sfc2_cif_out_ep>;
						};
					};

					xbar_sfc3_in_port: port@24 {
						reg = <0x24>;

						xbar_sfc3_in_ep: endpoint {
							remote-endpoint = <&sfc3_cif_in_ep>;
						};
					};

					port@25 {
						reg = <0x25>;

						xbar_sfc3_out_ep: endpoint {
							remote-endpoint = <&sfc3_cif_out_ep>;
						};
					};

					xbar_sfc4_in_port: port@26 {
						reg = <0x26>;

						xbar_sfc4_in_ep: endpoint {
							remote-endpoint = <&sfc4_cif_in_ep>;
						};
					};

					port@27 {
						reg = <0x27>;

						xbar_sfc4_out_ep: endpoint {
							remote-endpoint = <&sfc4_cif_out_ep>;
						};
					};

					xbar_mvc1_in_port: port@28 {
						reg = <0x28>;

						xbar_mvc1_in_ep: endpoint {
							remote-endpoint = <&mvc1_cif_in_ep>;
						};
					};

					port@29 {
						reg = <0x29>;

						xbar_mvc1_out_ep: endpoint {
							remote-endpoint = <&mvc1_cif_out_ep>;
						};
					};

					xbar_mvc2_in_port: port@2a {
						reg = <0x2a>;

						xbar_mvc2_in_ep: endpoint {
							remote-endpoint = <&mvc2_cif_in_ep>;
						};
					};

					port@2b {
						reg = <0x2b>;

						xbar_mvc2_out_ep: endpoint {
							remote-endpoint = <&mvc2_cif_out_ep>;
						};
					};

					xbar_amx1_in1_port: port@2c {
						reg = <0x2c>;

						xbar_amx1_in1_ep: endpoint {
							remote-endpoint = <&amx1_in1_ep>;
						};
					};

					xbar_amx1_in2_port: port@2d {
						reg = <0x2d>;

						xbar_amx1_in2_ep: endpoint {
							remote-endpoint = <&amx1_in2_ep>;
						};
					};

					xbar_amx1_in3_port: port@2e {
						reg = <0x2e>;

						xbar_amx1_in3_ep: endpoint {
							remote-endpoint = <&amx1_in3_ep>;
						};
					};

					xbar_amx1_in4_port: port@2f {
						reg = <0x2f>;

						xbar_amx1_in4_ep: endpoint {
							remote-endpoint = <&amx1_in4_ep>;
						};
					};

					port@30 {
						reg = <0x30>;

						xbar_amx1_out_ep: endpoint {
							remote-endpoint = <&amx1_out_ep>;
						};
					};

					xbar_amx2_in1_port: port@31 {
						reg = <0x31>;

						xbar_amx2_in1_ep: endpoint {
							remote-endpoint = <&amx2_in1_ep>;
						};
					};

					xbar_amx2_in2_port: port@32 {
						reg = <0x32>;

						xbar_amx2_in2_ep: endpoint {
							remote-endpoint = <&amx2_in2_ep>;
						};
					};

					xbar_amx2_in3_port: port@33 {
						reg = <0x33>;

						xbar_amx2_in3_ep: endpoint {
							remote-endpoint = <&amx2_in3_ep>;
						};
					};

					xbar_amx2_in4_port: port@34 {
						reg = <0x34>;

						xbar_amx2_in4_ep: endpoint {
							remote-endpoint = <&amx2_in4_ep>;
						};
					};

					port@35 {
						reg = <0x35>;

						xbar_amx2_out_ep: endpoint {
							remote-endpoint = <&amx2_out_ep>;
						};
					};

					xbar_amx3_in1_port: port@36 {
						reg = <0x36>;

						xbar_amx3_in1_ep: endpoint {
							remote-endpoint = <&amx3_in1_ep>;
						};
					};

					xbar_amx3_in2_port: port@37 {
						reg = <0x37>;

						xbar_amx3_in2_ep: endpoint {
							remote-endpoint = <&amx3_in2_ep>;
						};
					};

					xbar_amx3_in3_port: port@38 {
						reg = <0x38>;

						xbar_amx3_in3_ep: endpoint {
							remote-endpoint = <&amx3_in3_ep>;
						};
					};

					xbar_amx3_in4_port: port@39 {
						reg = <0x39>;

						xbar_amx3_in4_ep: endpoint {
							remote-endpoint = <&amx3_in4_ep>;
						};
					};

					port@3a {
						reg = <0x3a>;

						xbar_amx3_out_ep: endpoint {
							remote-endpoint = <&amx3_out_ep>;
						};
					};

					xbar_amx4_in1_port: port@3b {
						reg = <0x3b>;

						xbar_amx4_in1_ep: endpoint {
							remote-endpoint = <&amx4_in1_ep>;
						};
					};

					xbar_amx4_in2_port: port@3c {
						reg = <0x3c>;

						xbar_amx4_in2_ep: endpoint {
							remote-endpoint = <&amx4_in2_ep>;
						};
					};

					xbar_amx4_in3_port: port@3d {
						reg = <0x3d>;

						xbar_amx4_in3_ep: endpoint {
							remote-endpoint = <&amx4_in3_ep>;
						};
					};

					xbar_amx4_in4_port: port@3e {
						reg = <0x3e>;

						xbar_amx4_in4_ep: endpoint {
							remote-endpoint = <&amx4_in4_ep>;
						};
					};

					port@3f {
						reg = <0x3f>;

						xbar_amx4_out_ep: endpoint {
							remote-endpoint = <&amx4_out_ep>;
						};
					};

					xbar_adx1_in_port: port@40 {
						reg = <0x40>;

						xbar_adx1_in_ep: endpoint {
							remote-endpoint = <&adx1_in_ep>;
						};
					};

					port@41 {
						reg = <0x41>;

						xbar_adx1_out1_ep: endpoint {
							remote-endpoint = <&adx1_out1_ep>;
						};
					};

					port@42 {
						reg = <0x42>;

						xbar_adx1_out2_ep: endpoint {
							remote-endpoint = <&adx1_out2_ep>;
						};
					};

					port@43 {
						reg = <0x43>;

						xbar_adx1_out3_ep: endpoint {
							remote-endpoint = <&adx1_out3_ep>;
						};
					};

					port@44 {
						reg = <0x44>;

						xbar_adx1_out4_ep: endpoint {
							remote-endpoint = <&adx1_out4_ep>;
						};
					};

					xbar_adx2_in_port: port@45 {
						reg = <0x45>;

						xbar_adx2_in_ep: endpoint {
							remote-endpoint = <&adx2_in_ep>;
						};
					};

					port@46 {
						reg = <0x46>;

						xbar_adx2_out1_ep: endpoint {
							remote-endpoint = <&adx2_out1_ep>;
						};
					};

					port@47 {
						reg = <0x47>;

						xbar_adx2_out2_ep: endpoint {
							remote-endpoint = <&adx2_out2_ep>;
						};
					};

					port@48 {
						reg = <0x48>;

						xbar_adx2_out3_ep: endpoint {
							remote-endpoint = <&adx2_out3_ep>;
						};
					};

					port@49 {
						reg = <0x49>;

						xbar_adx2_out4_ep: endpoint {
							remote-endpoint = <&adx2_out4_ep>;
						};
					};

					xbar_adx3_in_port: port@4a {
						reg = <0x4a>;

						xbar_adx3_in_ep: endpoint {
							remote-endpoint = <&adx3_in_ep>;
						};
					};

					port@4b {
						reg = <0x4b>;

						xbar_adx3_out1_ep: endpoint {
							remote-endpoint = <&adx3_out1_ep>;
						};
					};

					port@4c {
						reg = <0x4c>;

						xbar_adx3_out2_ep: endpoint {
							remote-endpoint = <&adx3_out2_ep>;
						};
					};

					port@4d {
						reg = <0x4d>;

						xbar_adx3_out3_ep: endpoint {
							remote-endpoint = <&adx3_out3_ep>;
						};
					};

					port@4e {
						reg = <0x4e>;

						xbar_adx3_out4_ep: endpoint {
							remote-endpoint = <&adx3_out4_ep>;
						};
					};

					xbar_adx4_in_port: port@4f {
						reg = <0x4f>;

						xbar_adx4_in_ep: endpoint {
							remote-endpoint = <&adx4_in_ep>;
						};
					};

					port@50 {
						reg = <0x50>;

						xbar_adx4_out1_ep: endpoint {
							remote-endpoint = <&adx4_out1_ep>;
						};
					};

					port@51 {
						reg = <0x51>;

						xbar_adx4_out2_ep: endpoint {
							remote-endpoint = <&adx4_out2_ep>;
						};
					};

					port@52 {
						reg = <0x52>;

						xbar_adx4_out3_ep: endpoint {
							remote-endpoint = <&adx4_out3_ep>;
						};
					};

					port@53 {
						reg = <0x53>;

						xbar_adx4_out4_ep: endpoint {
							remote-endpoint = <&adx4_out4_ep>;
						};
					};

					xbar_mixer_in1_port: port@54 {
						reg = <0x54>;

						xbar_mixer_in1_ep: endpoint {
							remote-endpoint = <&mixer_in1_ep>;
						};
					};

					xbar_mixer_in2_port: port@55 {
						reg = <0x55>;

						xbar_mixer_in2_ep: endpoint {
							remote-endpoint = <&mixer_in2_ep>;
						};
					};

					xbar_mixer_in3_port: port@56 {
						reg = <0x56>;

						xbar_mixer_in3_ep: endpoint {
							remote-endpoint = <&mixer_in3_ep>;
						};
					};

					xbar_mixer_in4_port: port@57 {
						reg = <0x57>;

						xbar_mixer_in4_ep: endpoint {
							remote-endpoint = <&mixer_in4_ep>;
						};
					};

					xbar_mixer_in5_port: port@58 {
						reg = <0x58>;

						xbar_mixer_in5_ep: endpoint {
							remote-endpoint = <&mixer_in5_ep>;
						};
					};

					xbar_mixer_in6_port: port@59 {
						reg = <0x59>;

						xbar_mixer_in6_ep: endpoint {
							remote-endpoint = <&mixer_in6_ep>;
						};
					};

					xbar_mixer_in7_port: port@5a {
						reg = <0x5a>;

						xbar_mixer_in7_ep: endpoint {
							remote-endpoint = <&mixer_in7_ep>;
						};
					};

					xbar_mixer_in8_port: port@5b {
						reg = <0x5b>;

						xbar_mixer_in8_ep: endpoint {
							remote-endpoint = <&mixer_in8_ep>;
						};
					};

					xbar_mixer_in9_port: port@5c {
						reg = <0x5c>;

						xbar_mixer_in9_ep: endpoint {
							remote-endpoint = <&mixer_in9_ep>;
						};
					};

					xbar_mixer_in10_port: port@5d {
						reg = <0x5d>;

						xbar_mixer_in10_ep: endpoint {
							remote-endpoint = <&mixer_in10_ep>;
						};
					};

					port@5e {
						reg = <0x5e>;

						xbar_mixer_out1_ep: endpoint {
							remote-endpoint = <&mixer_out1_ep>;
						};
					};

					port@5f {
						reg = <0x5f>;

						xbar_mixer_out2_ep: endpoint {
							remote-endpoint = <&mixer_out2_ep>;
						};
					};

					port@60 {
						reg = <0x60>;

						xbar_mixer_out3_ep: endpoint {
							remote-endpoint = <&mixer_out3_ep>;
						};
					};

					port@61 {
						reg = <0x61>;

						xbar_mixer_out4_ep: endpoint {
							remote-endpoint = <&mixer_out4_ep>;
						};
					};

					port@62 {
						reg = <0x62>;

						xbar_mixer_out5_ep: endpoint {
							remote-endpoint = <&mixer_out5_ep>;
						};
					};

					xbar_asrc_in1_port: port@63 {
						reg = <0x63>;

						xbar_asrc_in1_ep: endpoint {
							remote-endpoint = <&asrc_in1_ep>;
						};
					};

					port@64 {
						reg = <0x64>;

						xbar_asrc_out1_ep: endpoint {
							remote-endpoint = <&asrc_out1_ep>;
						};
					};

					xbar_asrc_in2_port: port@65 {
						reg = <0x65>;

						xbar_asrc_in2_ep: endpoint {
							remote-endpoint = <&asrc_in2_ep>;
						};
					};

					port@66 {
						reg = <0x66>;

						xbar_asrc_out2_ep: endpoint {
							remote-endpoint = <&asrc_out2_ep>;
						};
					};

					xbar_asrc_in3_port: port@67 {
						reg = <0x67>;

						xbar_asrc_in3_ep: endpoint {
							remote-endpoint = <&asrc_in3_ep>;
						};
					};

					port@68 {
						reg = <0x68>;

						xbar_asrc_out3_ep: endpoint {
							remote-endpoint = <&asrc_out3_ep>;
						};
					};

					xbar_asrc_in4_port: port@69 {
						reg = <0x69>;

						xbar_asrc_in4_ep: endpoint {
							remote-endpoint = <&asrc_in4_ep>;
						};
					};

					port@6a {
						reg = <0x6a>;

						xbar_asrc_out4_ep: endpoint {
							remote-endpoint = <&asrc_out4_ep>;
						};
					};

					xbar_asrc_in5_port: port@6b {
						reg = <0x6b>;

						xbar_asrc_in5_ep: endpoint {
							remote-endpoint = <&asrc_in5_ep>;
						};
					};

					port@6c {
						reg = <0x6c>;

						xbar_asrc_out5_ep: endpoint {
							remote-endpoint = <&asrc_out5_ep>;
						};
					};

					xbar_asrc_in6_port: port@6d {
						reg = <0x6d>;

						xbar_asrc_in6_ep: endpoint {
							remote-endpoint = <&asrc_in6_ep>;
						};
					};

					port@6e {
						reg = <0x6e>;

						xbar_asrc_out6_ep: endpoint {
							remote-endpoint = <&asrc_out6_ep>;
						};
					};

					xbar_asrc_in7_port: port@6f {
						reg = <0x6f>;

						xbar_asrc_in7_ep: endpoint {
							remote-endpoint = <&asrc_in7_ep>;
						};
					};

					xbar_ope1_in_port: port@70 {
						reg = <0x70>;

						xbar_ope1_in_ep: endpoint {
							remote-endpoint = <&ope1_cif_in_ep>;
						};
					};

					port@71 {
						reg = <0x71>;

						xbar_ope1_out_ep: endpoint {
							remote-endpoint = <&ope1_cif_out_ep>;
						};
					};
				};

				admaif@290f000 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						admaif0_port: port@0 {
							reg = <0x0>;

							admaif0_ep: endpoint {
								remote-endpoint = <&xbar_admaif0_ep>;
							};
						};

						admaif1_port: port@1 {
							reg = <0x1>;

							admaif1_ep: endpoint {
								remote-endpoint = <&xbar_admaif1_ep>;
							};
						};

						admaif2_port: port@2 {
							reg = <0x2>;

							admaif2_ep: endpoint {
								remote-endpoint = <&xbar_admaif2_ep>;
							};
						};

						admaif3_port: port@3 {
							reg = <0x3>;

							admaif3_ep: endpoint {
								remote-endpoint = <&xbar_admaif3_ep>;
							};
						};

						admaif4_port: port@4 {
							reg = <0x4>;

							admaif4_ep: endpoint {
								remote-endpoint = <&xbar_admaif4_ep>;
							};
						};

						admaif5_port: port@5 {
							reg = <0x5>;

							admaif5_ep: endpoint {
								remote-endpoint = <&xbar_admaif5_ep>;
							};
						};

						admaif6_port: port@6 {
							reg = <0x6>;

							admaif6_ep: endpoint {
								remote-endpoint = <&xbar_admaif6_ep>;
							};
						};

						admaif7_port: port@7 {
							reg = <0x7>;

							admaif7_ep: endpoint {
								remote-endpoint = <&xbar_admaif7_ep>;
							};
						};

						admaif8_port: port@8 {
							reg = <0x8>;

							admaif8_ep: endpoint {
								remote-endpoint = <&xbar_admaif8_ep>;
							};
						};

						admaif9_port: port@9 {
							reg = <0x9>;

							admaif9_ep: endpoint {
								remote-endpoint = <&xbar_admaif9_ep>;
							};
						};

						admaif10_port: port@a {
							reg = <0xa>;

							admaif10_ep: endpoint {
								remote-endpoint = <&xbar_admaif10_ep>;
							};
						};

						admaif11_port: port@b {
							reg = <0xb>;

							admaif11_ep: endpoint {
								remote-endpoint = <&xbar_admaif11_ep>;
							};
						};

						admaif12_port: port@c {
							reg = <0xc>;

							admaif12_ep: endpoint {
								remote-endpoint = <&xbar_admaif12_ep>;
							};
						};

						admaif13_port: port@d {
							reg = <0xd>;

							admaif13_ep: endpoint {
								remote-endpoint = <&xbar_admaif13_ep>;
							};
						};

						admaif14_port: port@e {
							reg = <0xe>;

							admaif14_ep: endpoint {
								remote-endpoint = <&xbar_admaif14_ep>;
							};
						};

						admaif15_port: port@f {
							reg = <0xf>;

							admaif15_ep: endpoint {
								remote-endpoint = <&xbar_admaif15_ep>;
							};
						};

						admaif16_port: port@10 {
							reg = <0x10>;

							admaif16_ep: endpoint {
								remote-endpoint = <&xbar_admaif16_ep>;
							};
						};

						admaif17_port: port@11 {
							reg = <0x11>;

							admaif17_ep: endpoint {
								remote-endpoint = <&xbar_admaif17_ep>;
							};
						};

						admaif18_port: port@12 {
							reg = <0x12>;

							admaif18_ep: endpoint {
								remote-endpoint = <&xbar_admaif18_ep>;
							};
						};

						admaif19_port: port@13 {
							reg = <0x13>;

							admaif19_ep: endpoint {
								remote-endpoint = <&xbar_admaif19_ep>;
							};
						};
					};
				};

				i2s@2901200 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							i2s3_cif_ep: endpoint {
								remote-endpoint = <&xbar_i2s3_ep>;
							};
						};

						i2s3_port: port@1 {
							reg = <1>;

							i2s3_dap_ep: endpoint {
								dai-format = "i2s";
								/* Place holder for external Codec */
							};
						};
					};
				};

				i2s@2901400 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							i2s5_cif_ep: endpoint {
								remote-endpoint = <&xbar_i2s5_ep>;
							};
						};

						i2s5_port: port@1 {
							reg = <1>;

							i2s5_dap_ep: endpoint {
								dai-format = "i2s";
								/* Place holder for external Codec */
							};
						};
					};
				};

				dmic@2904000 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							dmic1_cif_ep: endpoint {
								remote-endpoint = <&xbar_dmic1_ep>;
							};
						};

						dmic1_port: port@1 {
							reg = <1>;

							dmic1_dap_ep: endpoint {
								/* Place holder for external Codec */
							};
						};
					};
				};

				dmic@2904100 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							dmic2_cif_ep: endpoint {
								remote-endpoint = <&xbar_dmic2_ep>;
							};
						};

						dmic2_port: port@1 {
							reg = <1>;

							dmic2_dap_ep: endpoint {
								/* Place holder for external Codec */
							};
						};
					};
				};

				dmic@2904300 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							dmic4_cif_ep: endpoint {
								remote-endpoint = <&xbar_dmic4_ep>;
							};
						};

						dmic4_port: port@1 {
							reg = <1>;

							dmic4_dap_ep: endpoint {
								/* Place holder for external Codec */
							};
						};
					};
				};

				dspk@2905000 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							dspk1_cif_ep: endpoint {
								remote-endpoint = <&xbar_dspk1_ep>;
							};
						};

						dspk1_port: port@1 {
							reg = <1>;

							dspk1_dap_ep: endpoint {
								/* Place holder for external Codec */
							};
						};
					};
				};

				dspk@2905100 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							dspk2_cif_ep: endpoint {
								remote-endpoint = <&xbar_dspk2_ep>;
							};
						};

						dspk2_port: port@1 {
							reg = <1>;

							dspk2_dap_ep: endpoint {
								/* Place holder for external Codec */
							};
						};
					};
				};

				sfc@2902000 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							sfc1_cif_in_ep: endpoint {
								remote-endpoint = <&xbar_sfc1_in_ep>;
								convert-rate = <44100>;
							};
						};

						sfc1_out_port: port@1 {
							reg = <1>;

							sfc1_cif_out_ep: endpoint {
								remote-endpoint = <&xbar_sfc1_out_ep>;
								convert-rate = <48000>;
							};
						};
					};
				};

				sfc@2902200 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							sfc2_cif_in_ep: endpoint {
								remote-endpoint = <&xbar_sfc2_in_ep>;
							};
						};

						sfc2_out_port: port@1 {
							reg = <1>;

							sfc2_cif_out_ep: endpoint {
								remote-endpoint = <&xbar_sfc2_out_ep>;
							};
						};
					};
				};

				sfc@2902400 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							sfc3_cif_in_ep: endpoint {
								remote-endpoint = <&xbar_sfc3_in_ep>;
							};
						};

						sfc3_out_port: port@1 {
							reg = <1>;

							sfc3_cif_out_ep: endpoint {
								remote-endpoint = <&xbar_sfc3_out_ep>;
							};
						};
					};
				};

				sfc@2902600 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							sfc4_cif_in_ep: endpoint {
								remote-endpoint = <&xbar_sfc4_in_ep>;
							};
						};

						sfc4_out_port: port@1 {
							reg = <1>;

							sfc4_cif_out_ep: endpoint {
								remote-endpoint = <&xbar_sfc4_out_ep>;
							};
						};
					};
				};

				mvc@290a000 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							mvc1_cif_in_ep: endpoint {
								remote-endpoint = <&xbar_mvc1_in_ep>;
							};
						};

						mvc1_out_port: port@1 {
							reg = <1>;

							mvc1_cif_out_ep: endpoint {
								remote-endpoint = <&xbar_mvc1_out_ep>;
							};
						};
					};
				};

				mvc@290a200 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							mvc2_cif_in_ep: endpoint {
								remote-endpoint = <&xbar_mvc2_in_ep>;
							};
						};

						mvc2_out_port: port@1 {
							reg = <1>;

							mvc2_cif_out_ep: endpoint {
								remote-endpoint = <&xbar_mvc2_out_ep>;
							};
						};
					};
				};

				amx@2903000 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							amx1_in1_ep: endpoint {
								remote-endpoint = <&xbar_amx1_in1_ep>;
							};
						};

						port@1 {
							reg = <1>;

							amx1_in2_ep: endpoint {
								remote-endpoint = <&xbar_amx1_in2_ep>;
							};
						};

						port@2 {
							reg = <2>;

							amx1_in3_ep: endpoint {
								remote-endpoint = <&xbar_amx1_in3_ep>;
							};
						};

						port@3 {
							reg = <3>;

							amx1_in4_ep: endpoint {
								remote-endpoint = <&xbar_amx1_in4_ep>;
							};
						};

						amx1_out_port: port@4 {
							reg = <4>;

							amx1_out_ep: endpoint {
								remote-endpoint = <&xbar_amx1_out_ep>;
							};
						};
					};
				};

				amx@2903100 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							amx2_in1_ep: endpoint {
								remote-endpoint = <&xbar_amx2_in1_ep>;
							};
						};

						port@1 {
							reg = <1>;

							amx2_in2_ep: endpoint {
								remote-endpoint = <&xbar_amx2_in2_ep>;
							};
						};

						amx2_in3_port: port@2 {
							reg = <2>;

							amx2_in3_ep: endpoint {
								remote-endpoint = <&xbar_amx2_in3_ep>;
							};
						};

						amx2_in4_port: port@3 {
							reg = <3>;

							amx2_in4_ep: endpoint {
								remote-endpoint = <&xbar_amx2_in4_ep>;
							};
						};

						amx2_out_port: port@4 {
							reg = <4>;

							amx2_out_ep: endpoint {
								remote-endpoint = <&xbar_amx2_out_ep>;
							};
						};
					};
				};

				amx@2903200 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							amx3_in1_ep: endpoint {
								remote-endpoint = <&xbar_amx3_in1_ep>;
							};
						};

						port@1 {
							reg = <1>;

							amx3_in2_ep: endpoint {
								remote-endpoint = <&xbar_amx3_in2_ep>;
							};
						};

						port@2 {
							reg = <2>;

							amx3_in3_ep: endpoint {
								remote-endpoint = <&xbar_amx3_in3_ep>;
							};
						};

						port@3 {
							reg = <3>;

							amx3_in4_ep: endpoint {
								remote-endpoint = <&xbar_amx3_in4_ep>;
							};
						};

						amx3_out_port: port@4 {
							reg = <4>;

							amx3_out_ep: endpoint {
								remote-endpoint = <&xbar_amx3_out_ep>;
							};
						};
					};
				};

				amx@2903300 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							amx4_in1_ep: endpoint {
								remote-endpoint = <&xbar_amx4_in1_ep>;
							};
						};

						port@1 {
							reg = <1>;

							amx4_in2_ep: endpoint {
								remote-endpoint = <&xbar_amx4_in2_ep>;
							};
						};

						port@2 {
							reg = <2>;

							amx4_in3_ep: endpoint {
								remote-endpoint = <&xbar_amx4_in3_ep>;
							};
						};

						port@3 {
							reg = <3>;

							amx4_in4_ep: endpoint {
								remote-endpoint = <&xbar_amx4_in4_ep>;
							};
						};

						amx4_out_port: port@4 {
							reg = <4>;

							amx4_out_ep: endpoint {
								remote-endpoint = <&xbar_amx4_out_ep>;
							};
						};
					};
				};

				adx@2903800 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							adx1_in_ep: endpoint {
								remote-endpoint = <&xbar_adx1_in_ep>;
							};
						};

						adx1_out1_port: port@1 {
							reg = <1>;

							adx1_out1_ep: endpoint {
								remote-endpoint = <&xbar_adx1_out1_ep>;
							};
						};

						adx1_out2_port: port@2 {
							reg = <2>;

							adx1_out2_ep: endpoint {
								remote-endpoint = <&xbar_adx1_out2_ep>;
							};
						};

						adx1_out3_port: port@3 {
							reg = <3>;

							adx1_out3_ep: endpoint {
								remote-endpoint = <&xbar_adx1_out3_ep>;
							};
						};

						adx1_out4_port: port@4 {
							reg = <4>;

							adx1_out4_ep: endpoint {
								remote-endpoint = <&xbar_adx1_out4_ep>;
							};
						};
					};
				};

				adx@2903900 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							adx2_in_ep: endpoint {
								remote-endpoint = <&xbar_adx2_in_ep>;
							};
						};

						adx2_out1_port: port@1 {
							reg = <1>;

							adx2_out1_ep: endpoint {
								remote-endpoint = <&xbar_adx2_out1_ep>;
							};
						};

						adx2_out2_port: port@2 {
							reg = <2>;

							adx2_out2_ep: endpoint {
								remote-endpoint = <&xbar_adx2_out2_ep>;
							};
						};

						adx2_out3_port: port@3 {
							reg = <3>;

							adx2_out3_ep: endpoint {
								remote-endpoint = <&xbar_adx2_out3_ep>;
							};
						};

						adx2_out4_port: port@4 {
							reg = <4>;

							adx2_out4_ep: endpoint {
								remote-endpoint = <&xbar_adx2_out4_ep>;
							};
						};
					};
				};

				adx@2903a00 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							adx3_in_ep: endpoint {
								remote-endpoint = <&xbar_adx3_in_ep>;
							};
						};

						adx3_out1_port: port@1 {
							reg = <1>;

							adx3_out1_ep: endpoint {
								remote-endpoint = <&xbar_adx3_out1_ep>;
							};
						};

						adx3_out2_port: port@2 {
							reg = <2>;

							adx3_out2_ep: endpoint {
								remote-endpoint = <&xbar_adx3_out2_ep>;
							};
						};

						adx3_out3_port: port@3 {
							reg = <3>;

							adx3_out3_ep: endpoint {
								remote-endpoint = <&xbar_adx3_out3_ep>;
							};
						};

						adx3_out4_port: port@4 {
							reg = <4>;

							adx3_out4_ep: endpoint {
								remote-endpoint = <&xbar_adx3_out4_ep>;
							};
						};
					};
				};

				adx@2903b00 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0>;

							adx4_in_ep: endpoint {
								remote-endpoint = <&xbar_adx4_in_ep>;
							};
						};

						adx4_out1_port: port@1 {
							reg = <1>;

							adx4_out1_ep: endpoint {
								remote-endpoint = <&xbar_adx4_out1_ep>;
							};
						};

						adx4_out2_port: port@2 {
							reg = <2>;

							adx4_out2_ep: endpoint {
								remote-endpoint = <&xbar_adx4_out2_ep>;
							};
						};

						adx4_out3_port: port@3 {
							reg = <3>;

							adx4_out3_ep: endpoint {
								remote-endpoint = <&xbar_adx4_out3_ep>;
							};
						};

						adx4_out4_port: port@4 {
							reg = <4>;

							adx4_out4_ep: endpoint {
								remote-endpoint = <&xbar_adx4_out4_ep>;
							};
						};
					};
				};

				processing-engine@2908000 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0x0>;

							ope1_cif_in_ep: endpoint {
								remote-endpoint = <&xbar_ope1_in_ep>;
							};
						};

						ope1_out_port: port@1 {
							reg = <0x1>;

							ope1_cif_out_ep: endpoint {
								remote-endpoint = <&xbar_ope1_out_ep>;
							};
						};
					};
				};

				amixer@290bb00 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0x0>;

							mixer_in1_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in1_ep>;
							};
						};

						port@1 {
							reg = <0x1>;

							mixer_in2_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in2_ep>;
							};
						};

						port@2 {
							reg = <0x2>;

							mixer_in3_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in3_ep>;
							};
						};

						port@3 {
							reg = <0x3>;

							mixer_in4_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in4_ep>;
							};
						};

						port@4 {
							reg = <0x4>;

							mixer_in5_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in5_ep>;
							};
						};

						port@5 {
							reg = <0x5>;

							mixer_in6_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in6_ep>;
							};
						};

						port@6 {
							reg = <0x6>;

							mixer_in7_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in7_ep>;
							};
						};

						port@7 {
							reg = <0x7>;

							mixer_in8_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in8_ep>;
							};
						};

						port@8 {
							reg = <0x8>;

							mixer_in9_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in9_ep>;
							};
						};

						port@9 {
							reg = <0x9>;

							mixer_in10_ep: endpoint {
								remote-endpoint = <&xbar_mixer_in10_ep>;
							};
						};

						mixer_out1_port: port@a {
							reg = <0xa>;

							mixer_out1_ep: endpoint {
								remote-endpoint = <&xbar_mixer_out1_ep>;
							};
						};

						mixer_out2_port: port@b {
							reg = <0xb>;

							mixer_out2_ep: endpoint {
								remote-endpoint = <&xbar_mixer_out2_ep>;
							};
						};

						mixer_out3_port: port@c {
							reg = <0xc>;

							mixer_out3_ep: endpoint {
								remote-endpoint = <&xbar_mixer_out3_ep>;
							};
						};

						mixer_out4_port: port@d {
							reg = <0xd>;

							mixer_out4_ep: endpoint {
								remote-endpoint = <&xbar_mixer_out4_ep>;
							};
						};

						mixer_out5_port: port@e {
							reg = <0xe>;

							mixer_out5_ep: endpoint {
								remote-endpoint = <&xbar_mixer_out5_ep>;
							};
						};
					};
				};

				asrc@2910000 {
					status = "okay";

					ports {
						#address-cells = <1>;
						#size-cells = <0>;

						port@0 {
							reg = <0x0>;

							asrc_in1_ep: endpoint {
								remote-endpoint = <&xbar_asrc_in1_ep>;
							};
						};

						port@1 {
							reg = <0x1>;

							asrc_in2_ep: endpoint {
								remote-endpoint = <&xbar_asrc_in2_ep>;
							};
						};

						port@2 {
							reg = <0x2>;

							asrc_in3_ep: endpoint {
								remote-endpoint = <&xbar_asrc_in3_ep>;
							};
						};

						port@3 {
							reg = <0x3>;

							asrc_in4_ep: endpoint {
								remote-endpoint = <&xbar_asrc_in4_ep>;
							};
						};

						port@4 {
							reg = <0x4>;

							asrc_in5_ep: endpoint {
								remote-endpoint = <&xbar_asrc_in5_ep>;
							};
						};

						port@5 {
							reg = <0x5>;

							asrc_in6_ep: endpoint {
								remote-endpoint = <&xbar_asrc_in6_ep>;
							};
						};

						port@6 {
							reg = <0x6>;

							asrc_in7_ep: endpoint {
								remote-endpoint = <&xbar_asrc_in7_ep>;
							};
						};

						asrc_out1_port: port@7 {
							reg = <0x7>;

							asrc_out1_ep: endpoint {
								remote-endpoint = <&xbar_asrc_out1_ep>;
							};
						};

						asrc_out2_port: port@8 {
							reg = <0x8>;

							asrc_out2_ep: endpoint {
								remote-endpoint = <&xbar_asrc_out2_ep>;
							};
						};

						asrc_out3_port: port@9 {
							reg = <0x9>;

							asrc_out3_ep: endpoint {
								remote-endpoint = <&xbar_asrc_out3_ep>;
							};
						};

						asrc_out4_port: port@a {
							reg = <0xa>;

							asrc_out4_ep: endpoint {
								remote-endpoint = <&xbar_asrc_out4_ep>;
							};
						};

						asrc_out5_port: port@b {
							reg = <0xb>;

							asrc_out5_ep: endpoint {
								remote-endpoint = <&xbar_asrc_out5_ep>;
							};
						};

						asrc_out6_port:	port@c {
							reg = <0xc>;

							asrc_out6_ep: endpoint {
								remote-endpoint = <&xbar_asrc_out6_ep>;
							};
						};
					};
				};
			};
		};

		ddc: i2c@3190000 {
			status = "okay";
		};

		i2c@3160000 {
			eeprom@57 {
				compatible = "atmel,24c02";
				reg = <0x57>;

				label = "system";
				vcc-supply = <&vdd_1v8>;
				address-width = <8>;
				pagesize = <8>;
				size = <256>;
				read-only;
			};
		};

		hda@3510000 {
			nvidia,model = "NVIDIA Jetson Xavier NX HDA";
			status = "okay";
		};

		padctl@3520000 {
			status = "okay";

			pads {
				usb2 {
					lanes {
						usb2-0 {
							status = "okay";
						};

						usb2-1 {
							status = "okay";
						};

						usb2-2 {
							status = "okay";
						};
					};
				};

				usb3 {
					lanes {
						usb3-2 {
							status = "okay";
						};
					};
				};
			};

			ports {
				usb2-0 {
					mode = "otg";
					status = "okay";
					usb-role-switch;
					connector {
						compatible = "gpio-usb-b-connector",
							"usb-b-connector";
						label = "micro-USB";
						type = "micro";
						vbus-gpios = <&gpio TEGRA194_MAIN_GPIO(Z, 1)
								    GPIO_ACTIVE_LOW>;
					};
				};

				usb2-1 {
					mode = "host";
					status = "okay";
				};

				usb2-2 {
					mode = "host";
					vbus-supply = <&vdd_5v0_sys>;
					status = "okay";
				};

				usb3-2 {
					nvidia,usb2-companion = <1>;
					vbus-supply = <&vdd_5v0_sys>;
					status = "okay";
				};
			};
		};

		usb@3610000 {
			status = "okay";

			phys =	<&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-1}>,
				<&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-2}>,
				<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-2}>;
			phy-names = "usb2-1", "usb2-2", "usb3-2";
		};

		usb@3550000 {
			status = "okay";

			phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>;
			phy-names = "usb2-0";
		};

		spi@3270000 {
			status = "okay";

			flash@0 {
				compatible = "jedec,spi-nor";
				reg = <0>;
				spi-max-frequency = <102000000>;
				spi-tx-bus-width = <4>;
				spi-rx-bus-width = <4>;
			};
		};

		pwm@32d0000 {
			status = "okay";
		};

		host1x@13e00000 {
			display-hub@15200000 {
				status = "okay";
			};

			dpaux@155c0000 {
				status = "okay";
			};

			dpaux@155d0000 {
				status = "okay";
			};

			/* DP0 */
			sor@15b00000 {
				status = "okay";

				avdd-io-hdmi-dp-supply = <&vdd_1v0>;
				vdd-hdmi-dp-pll-supply = <&vdd_1v8hs>;

				nvidia,dpaux = <&dpaux0>;
			};

			/* HDMI */
			sor@15b40000 {
				status = "okay";

				avdd-io-hdmi-dp-supply = <&vdd_1v0>;
				vdd-hdmi-dp-pll-supply = <&vdd_1v8hs>;
				hdmi-supply = <&vdd_hdmi>;

				nvidia,ddc-i2c-bus = <&ddc>;
				nvidia,hpd-gpio = <&gpio TEGRA194_MAIN_GPIO(M, 1)
							 GPIO_ACTIVE_LOW>;
			};
		};
	};

	pcie@14160000 {
		status = "okay";

		vddio-pex-ctl-supply = <&vdd_1v8ao>;

		phys = <&p2u_hsio_11>;
		phy-names = "p2u-0";
	};

	pcie@141a0000 {
		status = "okay";

		vddio-pex-ctl-supply = <&vdd_1v8ao>;

		phys = <&p2u_nvhs_0>, <&p2u_nvhs_1>, <&p2u_nvhs_2>,
		       <&p2u_nvhs_3>, <&p2u_nvhs_4>, <&p2u_nvhs_5>,
		       <&p2u_nvhs_6>, <&p2u_nvhs_7>;

		phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4",
			    "p2u-5", "p2u-6", "p2u-7";
	};

	pcie-ep@141a0000 {
		status = "disabled";

		vddio-pex-ctl-supply = <&vdd_1v8ao>;

		reset-gpios = <&gpio TEGRA194_MAIN_GPIO(GG, 1) GPIO_ACTIVE_LOW>;

		nvidia,refclk-select-gpios = <&gpio_aon TEGRA194_AON_GPIO(AA, 5)
					      GPIO_ACTIVE_HIGH>;

		phys = <&p2u_nvhs_0>, <&p2u_nvhs_1>, <&p2u_nvhs_2>,
		       <&p2u_nvhs_3>, <&p2u_nvhs_4>, <&p2u_nvhs_5>,
		       <&p2u_nvhs_6>, <&p2u_nvhs_7>;

		phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4",
			    "p2u-5", "p2u-6", "p2u-7";
	};

	fan: pwm-fan {
		compatible = "pwm-fan";
		pwms = <&pwm6 0 45334>;

		cooling-levels = <0 64 128 255>;
		#cooling-cells = <2>;
	};

	gpio-keys {
		compatible = "gpio-keys";

		key-force-recovery {
			label = "Force Recovery";
			gpios = <&gpio TEGRA194_MAIN_GPIO(G, 0)
				       GPIO_ACTIVE_LOW>;
			linux,input-type = <EV_KEY>;
			linux,code = <KEY_SLEEP>;
			debounce-interval = <10>;
		};

		key-power {
			label = "Power";
			gpios = <&gpio_aon TEGRA194_AON_GPIO(EE, 4)
					   GPIO_ACTIVE_LOW>;
			linux,input-type = <EV_KEY>;
			linux,code = <KEY_POWER>;
			debounce-interval = <10>;
			wakeup-event-action = <EV_ACT_ASSERTED>;
			wakeup-source;
		};
	};

	vdd_5v0_sys: regulator-vdd-5v0-sys {
		compatible = "regulator-fixed";
		regulator-name = "VDD_5V_SYS";
		regulator-min-microvolt = <5000000>;
		regulator-max-microvolt = <5000000>;
		regulator-always-on;
		regulator-boot-on;
	};

	vdd_3v3_sys: regulator-vdd-3v3-sys {
		compatible = "regulator-fixed";
		regulator-name = "VDD_3V3_SYS";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		regulator-always-on;
		regulator-boot-on;
	};

	vdd_3v3_ao: regulator-vdd-3v3-ao {
		compatible = "regulator-fixed";
		regulator-name = "VDD_3V3_AO";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		regulator-always-on;
		regulator-boot-on;
	};

	vdd_1v8: regulator-vdd-1v8 {
		compatible = "regulator-fixed";
		regulator-name = "VDD_1V8";
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;
		regulator-always-on;
		regulator-boot-on;
	};

	vdd_hdmi: regulator-vdd-hdmi {
		compatible = "regulator-fixed";
		regulator-name = "VDD_5V0_HDMI_CON";
		regulator-min-microvolt = <5000000>;
		regulator-max-microvolt = <5000000>;
		regulator-always-on;
		regulator-boot-on;
	};

	sound {
		compatible = "nvidia,tegra186-audio-graph-card";
		status = "okay";

		dais = /* ADMAIF (FE) Ports */
		       <&admaif0_port>, <&admaif1_port>, <&admaif2_port>, <&admaif3_port>,
		       <&admaif4_port>, <&admaif5_port>, <&admaif6_port>, <&admaif7_port>,
		       <&admaif8_port>, <&admaif9_port>, <&admaif10_port>, <&admaif11_port>,
		       <&admaif12_port>, <&admaif13_port>, <&admaif14_port>, <&admaif15_port>,
		       <&admaif16_port>, <&admaif17_port>, <&admaif18_port>, <&admaif19_port>,
		       /* XBAR Ports */
		       <&xbar_i2s3_port>, <&xbar_i2s5_port>,
		       <&xbar_dmic1_port>, <&xbar_dmic2_port>, <&xbar_dmic4_port>,
		       <&xbar_dspk1_port>, <&xbar_dspk2_port>,
		       <&xbar_sfc1_in_port>, <&xbar_sfc2_in_port>,
		       <&xbar_sfc3_in_port>, <&xbar_sfc4_in_port>,
		       <&xbar_mvc1_in_port>, <&xbar_mvc2_in_port>,
		       <&xbar_amx1_in1_port>, <&xbar_amx1_in2_port>,
		       <&xbar_amx1_in3_port>, <&xbar_amx1_in4_port>,
		       <&xbar_amx2_in1_port>, <&xbar_amx2_in2_port>,
		       <&xbar_amx2_in3_port>, <&xbar_amx2_in4_port>,
		       <&xbar_amx3_in1_port>, <&xbar_amx3_in2_port>,
		       <&xbar_amx3_in3_port>, <&xbar_amx3_in4_port>,
		       <&xbar_amx4_in1_port>, <&xbar_amx4_in2_port>,
		       <&xbar_amx4_in3_port>, <&xbar_amx4_in4_port>,
		       <&xbar_adx1_in_port>, <&xbar_adx2_in_port>,
		       <&xbar_adx3_in_port>, <&xbar_adx4_in_port>,
		       <&xbar_mixer_in1_port>, <&xbar_mixer_in2_port>,
		       <&xbar_mixer_in3_port>, <&xbar_mixer_in4_port>,
		       <&xbar_mixer_in5_port>, <&xbar_mixer_in6_port>,
		       <&xbar_mixer_in7_port>, <&xbar_mixer_in8_port>,
		       <&xbar_mixer_in9_port>, <&xbar_mixer_in10_port>,
		       <&xbar_asrc_in1_port>, <&xbar_asrc_in2_port>,
		       <&xbar_asrc_in3_port>, <&xbar_asrc_in4_port>,
		       <&xbar_asrc_in5_port>, <&xbar_asrc_in6_port>,
		       <&xbar_asrc_in7_port>,
		       <&xbar_ope1_in_port>,
		       /* HW accelerators */
		       <&sfc1_out_port>, <&sfc2_out_port>,
		       <&sfc3_out_port>, <&sfc4_out_port>,
		       <&mvc1_out_port>, <&mvc2_out_port>,
		       <&amx1_out_port>, <&amx2_out_port>,
		       <&amx3_out_port>, <&amx4_out_port>,
		       <&adx1_out1_port>, <&adx1_out2_port>,
		       <&adx1_out3_port>, <&adx1_out4_port>,
		       <&adx2_out1_port>, <&adx2_out2_port>,
		       <&adx2_out3_port>, <&adx2_out4_port>,
		       <&adx3_out1_port>, <&adx3_out2_port>,
		       <&adx3_out3_port>, <&adx3_out4_port>,
		       <&adx4_out1_port>, <&adx4_out2_port>,
		       <&adx4_out3_port>, <&adx4_out4_port>,
		       <&mixer_out1_port>, <&mixer_out2_port>,
		       <&mixer_out3_port>, <&mixer_out4_port>,
		       <&mixer_out5_port>,
		       <&asrc_out1_port>, <&asrc_out2_port>, <&asrc_out3_port>,
		       <&asrc_out4_port>, <&asrc_out5_port>, <&asrc_out6_port>,
		       <&ope1_out_port>,
		       /* BE I/O Ports */
		       <&i2s3_port>, <&i2s5_port>,
		       <&dmic1_port>, <&dmic2_port>, <&dmic4_port>,
		       <&dspk1_port>, <&dspk2_port>;

		label = "NVIDIA Jetson Xavier NX APE";
	};

	thermal-zones {
		cpu-thermal {
			polling-delay = <0>;
			polling-delay-passive = <500>;
			status = "okay";

			trips {
				cpu_trip_critical: critical {
					temperature = <96500>;
					hysteresis = <0>;
					type = "critical";
				};

				cpu_trip_hot: hot {
					temperature = <70000>;
					hysteresis = <2000>;
					type = "hot";
				};

				cpu_trip_active: active {
					temperature = <50000>;
					hysteresis = <2000>;
					type = "active";
				};

				cpu_trip_passive: passive {
					temperature = <30000>;
					hysteresis = <2000>;
					type = "passive";
				};
			};

			cooling-maps {
				cpu-critical {
					cooling-device = <&fan 3 3>;
					trip = <&cpu_trip_critical>;
				};

				cpu-hot {
					cooling-device = <&fan 2 2>;
					trip = <&cpu_trip_hot>;
				};

				cpu-active {
					cooling-device = <&fan 1 1>;
					trip = <&cpu_trip_active>;
				};

				cpu-passive {
					cooling-device = <&fan 0 0>;
					trip = <&cpu_trip_passive>;
				};
			};
		};

		gpu-thermal {
			polling-delay = <0>;
			polling-delay-passive = <500>;
			status = "okay";

			trips {
				gpu_alert0: critical {
					temperature = <99000>;
					hysteresis = <0>;
					type = "critical";
				};
			};
		};

		aux-thermal {
			polling-delay = <0>;
			polling-delay-passive = <500>;
			status = "okay";

			trips {
				aux_alert0: critical {
					temperature = <90000>;
					hysteresis = <0>;
					type = "critical";
				};
			};
		};
	};
};


code:
// SPDX-License-Identifier: GPL-2.0
#include "tegra194-p3668.dtsi"

/ {
	model = "NVIDIA Jetson Xavier NX (SD-card)";
	compatible = "nvidia,p3668-0000", "nvidia,tegra194";

	aliases {
		mmc0 = "/bus@0/mmc@3400000";
	};

	bus@0 {
		/* SDMMC1 (SD/MMC) */
		mmc@3400000 {
			status = "okay";
			bus-width = <4>;
			cd-gpios = <&gpio TEGRA194_MAIN_GPIO(G, 7) GPIO_ACTIVE_LOW>;
			disable-wp;
			vmmc-supply = <&vdd_3v3_sd>;
		};
	};

	vdd_3v3_sd: regulator-vdd-3v3-sd {
		compatible = "regulator-fixed";
		regulator-name = "VDD_3V3_SD";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		gpio = <&gpio TEGRA194_MAIN_GPIO(G, 2) GPIO_ACTIVE_HIGH>;
		regulator-boot-on;
		enable-active-high;
	};
};


code:
// SPDX-License-Identifier: GPL-2.0
#include "tegra194-p3668.dtsi"

/ {
	model = "NVIDIA Jetson Xavier NX (eMMC)";
	compatible = "nvidia,p3668-0001", "nvidia,tegra194";

	aliases {
		mmc0 = "/bus@0/mmc@3460000";
	};

	bus@0 {
		/* SDMMC4 (eMMC) */
		mmc@3460000 {
			status = "okay";
			bus-width = <8>;
			non-removable;

			vqmmc-supply = <&vdd_1v8ls>;
			vmmc-supply = <&vdd_emmc_3v3>;
		};
	};
};


code:
// SPDX-License-Identifier: GPL-2.0
#include "tegra194.dtsi"

#include <dt-bindings/mfd/max77620.h>

/ {
	aliases {
		ethernet0 = "/bus@0/ethernet@2490000";
		i2c0 = "/bpmp/i2c";
		i2c1 = "/bus@0/i2c@3160000";
		i2c2 = "/bus@0/i2c@c240000";
		i2c3 = "/bus@0/i2c@3180000";
		i2c4 = "/bus@0/i2c@3190000";
		i2c5 = "/bus@0/i2c@31c0000";
		i2c6 = "/bus@0/i2c@c250000";
		i2c7 = "/bus@0/i2c@31e0000";
		rtc0 = "/bpmp/i2c/pmic@3c";
		rtc1 = "/bus@0/rtc@c2a0000";
		serial0 = &tcu;
	};

	chosen {
		bootargs = "console=ttyTCU0,115200n8";
		stdout-path = "serial0:115200n8";
	};

	bus@0 {
		ethernet@2490000 {
			status = "okay";

			phy-reset-gpios = <&gpio TEGRA194_MAIN_GPIO(R, 1) GPIO_ACTIVE_LOW>;
			phy-handle = <&phy>;
			phy-mode = "rgmii-id";

			mdio {
				#address-cells = <1>;
				#size-cells = <0>;

				phy: ethernet-phy@0 {
					compatible = "ethernet-phy-ieee802.3-c22";
					reg = <0x0>;
					interrupt-parent = <&gpio>;
					interrupts = <TEGRA194_MAIN_GPIO(G, 4) IRQ_TYPE_LEVEL_LOW>;
					#phy-cells = <0>;
				};
			};
		};

		memory-controller@2c00000 {
			status = "okay";
		};

		serial@3100000 {
			status = "okay";
		};

		i2c@3160000 {
			status = "okay";

			eeprom@50 {
				compatible = "atmel,24c02";
				reg = <0x50>;

				label = "module";
				vcc-supply = <&vdd_1v8ls>;
				address-width = <8>;
				pagesize = <8>;
				size = <256>;
				read-only;
			};
		};

		padctl@3520000 {
			avdd-usb-supply = <&vdd_usb_3v3>;
			vclamp-usb-supply = <&vdd_1v8ao>;

			ports {
				usb2-1 {
					vbus-supply = <&vdd_5v0_sys>;
				};

				usb2-3 {
					vbus-supply = <&vdd_5v0_sys>;
				};

				usb3-0 {
					vbus-supply = <&vdd_5v0_sys>;
				};

				usb3-3 {
					vbus-supply = <&vdd_5v0_sys>;
				};
			};
		};

		rtc@c2a0000 {
			status = "okay";
		};

		pmc@c360000 {
			nvidia,invert-interrupt;
		};
	};

	bpmp {
		i2c {
			status = "okay";

			pmic: pmic@3c {
				compatible = "maxim,max20024";
				reg = <0x3c>;

				interrupt-parent = <&pmc>;
				interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
				#interrupt-cells = <2>;
				interrupt-controller;

				#gpio-cells = <2>;
				gpio-controller;

				pinctrl-names = "default";
				pinctrl-0 = <&max20024_default>;

				max20024_default: pinmux {
					gpio0 {
						pins = "gpio0";
						function = "gpio";
					};

					gpio1 {
						pins = "gpio1";
						function = "fps-out";
						maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
					};

					gpio2 {
						pins = "gpio2";
						function = "fps-out";
						maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
					};

					gpio3 {
						pins = "gpio3";
						function = "fps-out";
						maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
					};

					gpio4 {
						pins = "gpio4";
						function = "32k-out1";
						drive-push-pull = <1>;
					};

					gpio6 {
						pins = "gpio6";
						function = "gpio";
						drive-push-pull = <1>;
					};

					gpio7 {
						pins = "gpio7";
						function = "gpio";
						drive-push-pull = <0>;
					};
				};

				fps {
					fps0 {
						maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
						maxim,shutdown-fps-time-period-us = <640>;
					};

					fps1 {
						maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN1>;
						maxim,shutdown-fps-time-period-us = <640>;
						maxim,device-state-on-disabled-event = <MAX77620_FPS_INACTIVE_STATE_SLEEP>;
					};

					fps2 {
						maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
						maxim,shutdown-fps-time-period-us = <640>;
					};
				};

				regulators {
					in-sd0-supply = <&vdd_5v0_sys>;
					in-sd1-supply = <&vdd_5v0_sys>;
					in-sd2-supply = <&vdd_5v0_sys>;
					in-sd3-supply = <&vdd_5v0_sys>;
					in-sd4-supply = <&vdd_5v0_sys>;

					in-ldo0-1-supply = <&vdd_5v0_sys>;
					in-ldo2-supply = <&vdd_5v0_sys>;
					in-ldo3-5-supply = <&vdd_5v0_sys>;
					in-ldo4-6-supply = <&vdd_5v0_sys>;
					in-ldo7-8-supply = <&vdd_1v8ls>;

					vdd_1v0: sd0 {
						regulator-name = "VDDIO_SYS_1V0";
						regulator-min-microvolt = <1000000>;
						regulator-max-microvolt = <1000000>;
						regulator-always-on;
						regulator-boot-on;
					};

					vdd_1v8hs: sd1 {
						regulator-name = "VDDIO_SYS_1V8HS";
						regulator-min-microvolt = <1800000>;
						regulator-max-microvolt = <1800000>;
						regulator-always-on;
						regulator-boot-on;
					};

					vdd_1v8ls: sd2 {
						regulator-name = "VDDIO_SYS_1V8LS";
						regulator-min-microvolt = <1800000>;
						regulator-max-microvolt = <1800000>;
						regulator-always-on;
						regulator-boot-on;
					};

					vdd_1v8ao: sd3 {
						regulator-name = "VDDIO_AO_1V8";
						regulator-min-microvolt = <1800000>;
						regulator-max-microvolt = <1800000>;
						regulator-always-on;
						regulator-boot-on;
					};

					sd4 {
						regulator-name = "VDD_DDR_1V1";
						regulator-min-microvolt = <1100000>;
						regulator-max-microvolt = <1100000>;
						regulator-always-on;
						regulator-boot-on;
					};

					ldo0 {
						regulator-name = "VDD_RTC";
						regulator-min-microvolt = <800000>;
						regulator-max-microvolt = <800000>;
						regulator-always-on;
						regulator-boot-on;
					};

					ldo2 {
						regulator-name = "VDDIO_AO_3V3";
						regulator-min-microvolt = <3300000>;
						regulator-max-microvolt = <3300000>;
						regulator-always-on;
						regulator-boot-on;
					};

					vdd_emmc_3v3: ldo3 {
						regulator-name = "VDD_EMMC_3V3";
						regulator-min-microvolt = <3300000>;
						regulator-max-microvolt = <3300000>;
					};

					vdd_usb_3v3: ldo5 {
						regulator-name = "VDD_USB_3V3";
						regulator-min-microvolt = <3300000>;
						regulator-max-microvolt = <3300000>;
						regulator-always-on;
						regulator-boot-on;
					};

					ldo6 {
						regulator-name = "VDD_SDIO_3V3";
						regulator-min-microvolt = <3300000>;
						regulator-max-microvolt = <3300000>;
					};

					ldo7 {
						regulator-name = "AVDD_CSI_1V2";
						regulator-min-microvolt = <1200000>;
						regulator-max-microvolt = <1200000>;
					};
				};
			};
		};
	};
};