Commit d1edc986 authored by Arnd Bergmann's avatar Arnd Bergmann

Merge tag 'tegra-for-5.16-arm64-dt' of...

Merge tag 'tegra-for-5.16-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into arm/dt

arm64: tegra: Device tree changes for v5.16-rc1

This enables additional interrupts on the Tegra194 GPIO controller for
better load balancing and/or virtualization, adds audio support on
Jetson TX2 NX, enables the NVDEC video decoder on Tegra186 and later and
enables more audio processors that are found on Tegra210 and later.

Various cleanups across the board top things off.

* tag 'tegra-for-5.16-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  arm64: tegra: Fix pcie-ep DT nodes
  arm64: tegra: Remove useless usb-ehci compatible string
  arm64: tegra: Extend APE audio support on Jetson platforms
  arm64: tegra: Add few AHUB devices for Tegra210 and later
  arm64: tegra: Remove unused backlight-boot-off property
  arm64: tegra: Add NVDEC to Tegra186/194 device trees
  arm64: tegra: Add new USB PHY properties on Tegra132
  arm64: tegra: Update HDA card name on Jetson TX2 NX
  arm64: tegra: Audio graph sound card for Jetson TX2 NX
  arm64: tegra: Add additional GPIO interrupt entries on Tegra194

Link: https://lore.kernel.org/r/20211008201132.1678814-7-thierry.reding@gmail.comSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents cda49040 b9e2404c
......@@ -1021,8 +1021,6 @@ backlight: backlight {
brightness-levels = <0 4 8 16 32 64 128 255>;
default-brightness-level = <6>;
backlight-boot-off;
};
clk32k_in: clock@0 {
......
......@@ -1107,7 +1107,7 @@ tegra_i2s4: i2s@70301400 {
};
usb@7d000000 {
compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci";
compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci";
reg = <0x0 0x7d000000 0x0 0x4000>;
interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
phy_type = "utmi";
......@@ -1123,6 +1123,7 @@ phy1: usb-phy@7d000000 {
compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy";
reg = <0x0 0x7d000000 0x0 0x4000>,
<0x0 0x7d000000 0x0 0x4000>;
interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
phy_type = "utmi";
clocks = <&tegra_car TEGRA124_CLK_USBD>,
<&tegra_car TEGRA124_CLK_PLL_U>,
......@@ -1142,11 +1143,12 @@ phy1: usb-phy@7d000000 {
nvidia,hsdiscon-level = <5>;
nvidia,xcvr-hsslew = <12>;
nvidia,has-utmi-pad-registers;
nvidia,pmc = <&tegra_pmc 0>;
status = "disabled";
};
usb@7d004000 {
compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci";
compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci";
reg = <0x0 0x7d004000 0x0 0x4000>;
interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
phy_type = "utmi";
......@@ -1162,6 +1164,7 @@ phy2: usb-phy@7d004000 {
compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy";
reg = <0x0 0x7d004000 0x0 0x4000>,
<0x0 0x7d000000 0x0 0x4000>;
interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
phy_type = "utmi";
clocks = <&tegra_car TEGRA124_CLK_USB2>,
<&tegra_car TEGRA124_CLK_PLL_U>,
......@@ -1180,11 +1183,12 @@ phy2: usb-phy@7d004000 {
nvidia,hssquelch-level = <2>;
nvidia,hsdiscon-level = <5>;
nvidia,xcvr-hsslew = <12>;
nvidia,pmc = <&tegra_pmc 1>;
status = "disabled";
};
usb@7d008000 {
compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci", "usb-ehci";
compatible = "nvidia,tegra124-ehci", "nvidia,tegra30-ehci";
reg = <0x0 0x7d008000 0x0 0x4000>;
interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
phy_type = "utmi";
......@@ -1200,6 +1204,7 @@ phy3: usb-phy@7d008000 {
compatible = "nvidia,tegra124-usb-phy", "nvidia,tegra30-usb-phy";
reg = <0x0 0x7d008000 0x0 0x4000>,
<0x0 0x7d000000 0x0 0x4000>;
interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
phy_type = "utmi";
clocks = <&tegra_car TEGRA124_CLK_USB3>,
<&tegra_car TEGRA124_CLK_PLL_U>,
......@@ -1218,6 +1223,7 @@ phy3: usb-phy@7d008000 {
nvidia,hssquelch-level = <2>;
nvidia,hsdiscon-level = <5>;
nvidia,xcvr-hsslew = <12>;
nvidia,pmc = <&tegra_pmc 2>;
status = "disabled";
};
......
......@@ -275,178 +275,1294 @@ 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>;
};
};
};
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";
/* Placeholder for external Codec */
};
};
};
};
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";
/* Placeholder for external Codec */
};
};
};
};
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";
/* Placeholder 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";
/* Placeholder 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";
/* Placeholder 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";
/* Placeholder 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 */
};
};
};
};
admaif@290f000 {
dmic@2904100 {
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
admaif0_port: port@0 {
reg = <0x0>;
port@0 {
reg = <0>;
admaif0_ep: endpoint {
remote-endpoint = <&xbar_admaif0_ep>;
dmic2_cif_ep: endpoint {
remote-endpoint = <&xbar_dmic2_ep>;
};
};
admaif1_port: port@1 {
reg = <0x1>;
dmic2_port: port@1 {
reg = <1>;
admaif1_ep: endpoint {
remote-endpoint = <&xbar_admaif1_ep>;
dmic2_dap_ep: endpoint {
/* Place holder for external Codec */
};
};
};
};
admaif2_port: port@2 {
reg = <0x2>;
dmic@2904200 {
status = "okay";
admaif2_ep: endpoint {
remote-endpoint = <&xbar_admaif2_ep>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
dmic3_cif_ep: endpoint {
remote-endpoint = <&xbar_dmic3_ep>;
};
};
admaif3_port: port@3 {
reg = <0x3>;
dmic3_port: port@1 {
reg = <1>;
admaif3_ep: endpoint {
remote-endpoint = <&xbar_admaif3_ep>;
dmic3_dap_ep: endpoint {
/* Place holder for external Codec */
};
};
};
};
admaif4_port: port@4 {
reg = <0x4>;
dspk@2905000 {
status = "okay";
admaif4_ep: endpoint {
remote-endpoint = <&xbar_admaif4_ep>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
dspk1_cif_ep: endpoint {
remote-endpoint = <&xbar_dspk1_ep>;
};
};
admaif5_port: port@5 {
reg = <0x5>;
dspk1_port: port@1 {
reg = <1>;
admaif5_ep: endpoint {
remote-endpoint = <&xbar_admaif5_ep>;
dspk1_dap_ep: endpoint {
/* Place holder for external Codec */
};
};
};
};
admaif6_port: port@6 {
reg = <0x6>;
dspk@2905100 {
status = "okay";
admaif6_ep: endpoint {
remote-endpoint = <&xbar_admaif6_ep>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
dspk2_cif_ep: endpoint {
remote-endpoint = <&xbar_dspk2_ep>;
};
};
admaif7_port: port@7 {
reg = <0x7>;
dspk2_port: port@1 {
reg = <1>;
admaif7_ep: endpoint {
remote-endpoint = <&xbar_admaif7_ep>;
dspk2_dap_ep: endpoint {
/* Place holder for external Codec */
};
};
};
};
admaif8_port: port@8 {
reg = <0x8>;
sfc@2902000 {
status = "okay";
admaif8_ep: endpoint {
remote-endpoint = <&xbar_admaif8_ep>;
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>;
};
};
admaif9_port: port@9 {
reg = <0x9>;
port@1 {
reg = <1>;
admaif9_ep: endpoint {
remote-endpoint = <&xbar_admaif9_ep>;
amx2_in2_ep: endpoint {
remote-endpoint = <&xbar_amx2_in2_ep>;
};
};
admaif10_port: port@a {
reg = <0xa>;
amx2_in3_port: port@2 {
reg = <2>;
admaif10_ep: endpoint {
remote-endpoint = <&xbar_admaif10_ep>;
amx2_in3_ep: endpoint {
remote-endpoint = <&xbar_amx2_in3_ep>;
};
};
admaif11_port: port@b {
reg = <0xb>;
amx2_in4_port: port@3 {
reg = <3>;
admaif11_ep: endpoint {
remote-endpoint = <&xbar_admaif11_ep>;
amx2_in4_ep: endpoint {
remote-endpoint = <&xbar_amx2_in4_ep>;
};
};
admaif12_port: port@c {
reg = <0xc>;
amx2_out_port: port@4 {
reg = <4>;
admaif12_ep: endpoint {
remote-endpoint = <&xbar_admaif12_ep>;
amx2_out_ep: endpoint {
remote-endpoint = <&xbar_amx2_out_ep>;
};
};
admaif13_port: port@d {
reg = <0xd>;
admaif13_ep: endpoint {
remote-endpoint = <&xbar_admaif13_ep>;
};
};
admaif14_port: port@e {
reg = <0xe>;
amx@2903200 {
status = "okay";
admaif14_ep: endpoint {
remote-endpoint = <&xbar_admaif14_ep>;
};
};
ports {
#address-cells = <1>;
#size-cells = <0>;
admaif15_port: port@f {
reg = <0xf>;
port@0 {
reg = <0>;
admaif15_ep: endpoint {
remote-endpoint = <&xbar_admaif15_ep>;
amx3_in1_ep: endpoint {
remote-endpoint = <&xbar_amx3_in1_ep>;
};
};
admaif16_port: port@10 {
reg = <0x10>;
port@1 {
reg = <1>;
admaif16_ep: endpoint {
remote-endpoint = <&xbar_admaif16_ep>;
amx3_in2_ep: endpoint {
remote-endpoint = <&xbar_amx3_in2_ep>;
};
};
admaif17_port: port@11 {
reg = <0x11>;
port@2 {
reg = <2>;
admaif17_ep: endpoint {
remote-endpoint = <&xbar_admaif17_ep>;
amx3_in3_ep: endpoint {
remote-endpoint = <&xbar_amx3_in3_ep>;
};
};
admaif18_port: port@12 {
reg = <0x12>;
port@3 {
reg = <3>;
admaif18_ep: endpoint {
remote-endpoint = <&xbar_admaif18_ep>;
amx3_in4_ep: endpoint {
remote-endpoint = <&xbar_amx3_in4_ep>;
};
};
admaif19_port: port@13 {
reg = <0x13>;
amx3_out_port: port@4 {
reg = <4>;
admaif19_ep: endpoint {
remote-endpoint = <&xbar_admaif19_ep>;
amx3_out_ep: endpoint {
remote-endpoint = <&xbar_amx3_out_ep>;
};
};
};
};
i2s@2901000 {
amx@2903300 {
status = "okay";
ports {
......@@ -456,49 +1572,46 @@ ports {
port@0 {
reg = <0>;
i2s1_cif_ep: endpoint {
remote-endpoint = <&xbar_i2s1_ep>;
amx4_in1_ep: endpoint {
remote-endpoint = <&xbar_amx4_in1_ep>;
};
};
i2s1_port: port@1 {
port@1 {
reg = <1>;
i2s1_dap_ep: endpoint {
dai-format = "i2s";
/* Placeholder for external Codec */
};
};
amx4_in2_ep: endpoint {
remote-endpoint = <&xbar_amx4_in2_ep>;
};
};
i2s@2901100 {
status = "okay";
port@2 {
reg = <2>;
ports {
#address-cells = <1>;
#size-cells = <0>;
amx4_in3_ep: endpoint {
remote-endpoint = <&xbar_amx4_in3_ep>;
};
};
port@0 {
reg = <0>;
port@3 {
reg = <3>;
i2s2_cif_ep: endpoint {
remote-endpoint = <&xbar_i2s2_ep>;
amx4_in4_ep: endpoint {
remote-endpoint = <&xbar_amx4_in4_ep>;
};
};
i2s2_port: port@1 {
reg = <1>;
amx4_out_port: port@4 {
reg = <4>;
i2s2_dap_ep: endpoint {
dai-format = "i2s";
/* Placeholder for external Codec */
amx4_out_ep: endpoint {
remote-endpoint = <&xbar_amx4_out_ep>;
};
};
};
};
i2s@2901200 {
adx@2903800 {
status = "okay";
ports {
......@@ -508,49 +1621,46 @@ ports {
port@0 {
reg = <0>;
i2s3_cif_ep: endpoint {
remote-endpoint = <&xbar_i2s3_ep>;
adx1_in_ep: endpoint {
remote-endpoint = <&xbar_adx1_in_ep>;
};
};
i2s3_port: port@1 {
adx1_out1_port: port@1 {
reg = <1>;
i2s3_dap_ep: endpoint {
dai-format = "i2s";
/* Placeholder for external Codec */
};
};
adx1_out1_ep: endpoint {
remote-endpoint = <&xbar_adx1_out1_ep>;
};
};
i2s@2901300 {
status = "okay";
adx1_out2_port: port@2 {
reg = <2>;
ports {
#address-cells = <1>;
#size-cells = <0>;
adx1_out2_ep: endpoint {
remote-endpoint = <&xbar_adx1_out2_ep>;
};
};
port@0 {
reg = <0>;
adx1_out3_port: port@3 {
reg = <3>;
i2s4_cif_ep: endpoint {
remote-endpoint = <&xbar_i2s4_ep>;
adx1_out3_ep: endpoint {
remote-endpoint = <&xbar_adx1_out3_ep>;
};
};
i2s4_port: port@1 {
reg = <1>;
adx1_out4_port: port@4 {
reg = <4>;
i2s4_dap_ep: endpoint {
dai-format = "i2s";
/* Placeholder for external Codec */
adx1_out4_ep: endpoint {
remote-endpoint = <&xbar_adx1_out4_ep>;
};
};
};
};
i2s@2901400 {
adx@2903900 {
status = "okay";
ports {
......@@ -560,23 +1670,46 @@ ports {
port@0 {
reg = <0>;
i2s5_cif_ep: endpoint {
remote-endpoint = <&xbar_i2s5_ep>;
adx2_in_ep: endpoint {
remote-endpoint = <&xbar_adx2_in_ep>;
};
};
i2s5_port: port@1 {
adx2_out1_port: port@1 {
reg = <1>;
i2s5_dap_ep: endpoint {
dai-format = "i2s";
/* Placeholder for external Codec */
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>;
};
};
i2s@2901500 {
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 {
......@@ -586,23 +1719,46 @@ ports {
port@0 {
reg = <0>;
i2s6_cif_ep: endpoint {
remote-endpoint = <&xbar_i2s6_ep>;
adx3_in_ep: endpoint {
remote-endpoint = <&xbar_adx3_in_ep>;
};
};
i2s6_port: port@1 {
adx3_out1_port: port@1 {
reg = <1>;
i2s6_dap_ep: endpoint {
dai-format = "i2s";
/* Placeholder for external Codec */
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>;
};
};
dmic@2904000 {
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 {
......@@ -612,22 +1768,46 @@ ports {
port@0 {
reg = <0>;
dmic1_cif_ep: endpoint {
remote-endpoint = <&xbar_dmic1_ep>;
adx4_in_ep: endpoint {
remote-endpoint = <&xbar_adx4_in_ep>;
};
};
dmic1_port: port@1 {
adx4_out1_port: port@1 {
reg = <1>;
dmic1_dap_ep: endpoint {
/* Place holder for external Codec */
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>;
};
};
dmic@2904100 {
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>;
};
};
};
};
amixer@290bb00 {
status = "okay";
ports {
......@@ -635,93 +1815,122 @@ ports {
#size-cells = <0>;
port@0 {
reg = <0>;
reg = <0x0>;
dmic2_cif_ep: endpoint {
remote-endpoint = <&xbar_dmic2_ep>;
mixer_in1_ep: endpoint {
remote-endpoint = <&xbar_mixer_in1_ep>;
};
};
dmic2_port: port@1 {
reg = <1>;
port@1 {
reg = <0x1>;
dmic2_dap_ep: endpoint {
/* Place holder for external Codec */
mixer_in2_ep: endpoint {
remote-endpoint = <&xbar_mixer_in2_ep>;
};
};
port@2 {
reg = <0x2>;
mixer_in3_ep: endpoint {
remote-endpoint = <&xbar_mixer_in3_ep>;
};
};
dmic@2904200 {
status = "okay";
port@3 {
reg = <0x3>;
ports {
#address-cells = <1>;
#size-cells = <0>;
mixer_in4_ep: endpoint {
remote-endpoint = <&xbar_mixer_in4_ep>;
};
};
port@0 {
reg = <0>;
port@4 {
reg = <0x4>;
dmic3_cif_ep: endpoint {
remote-endpoint = <&xbar_dmic3_ep>;
mixer_in5_ep: endpoint {
remote-endpoint = <&xbar_mixer_in5_ep>;
};
};
dmic3_port: port@1 {
reg = <1>;
port@5 {
reg = <0x5>;
dmic3_dap_ep: endpoint {
/* Place holder for external Codec */
mixer_in6_ep: endpoint {
remote-endpoint = <&xbar_mixer_in6_ep>;
};
};
port@6 {
reg = <0x6>;
mixer_in7_ep: endpoint {
remote-endpoint = <&xbar_mixer_in7_ep>;
};
};
dspk@2905000 {
status = "okay";
port@7 {
reg = <0x7>;
ports {
#address-cells = <1>;
#size-cells = <0>;
mixer_in8_ep: endpoint {
remote-endpoint = <&xbar_mixer_in8_ep>;
};
};
port@0 {
reg = <0>;
port@8 {
reg = <0x8>;
dspk1_cif_ep: endpoint {
remote-endpoint = <&xbar_dspk1_ep>;
mixer_in9_ep: endpoint {
remote-endpoint = <&xbar_mixer_in9_ep>;
};
};
dspk1_port: port@1 {
reg = <1>;
port@9 {
reg = <0x9>;
dspk1_dap_ep: endpoint {
/* Place holder for external Codec */
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>;
};
};
dspk@2905100 {
status = "okay";
mixer_out2_port: port@b {
reg = <0xb>;
ports {
#address-cells = <1>;
#size-cells = <0>;
mixer_out2_ep: endpoint {
remote-endpoint = <&xbar_mixer_out2_ep>;
};
};
port@0 {
reg = <0>;
mixer_out3_port: port@c {
reg = <0xc>;
dspk2_cif_ep: endpoint {
remote-endpoint = <&xbar_dspk2_ep>;
mixer_out3_ep: endpoint {
remote-endpoint = <&xbar_mixer_out3_ep>;
};
};
dspk2_port: port@1 {
reg = <1>;
mixer_out4_port: port@d {
reg = <0xd>;
dspk2_dap_ep: endpoint {
/* Place holder for external Codec */
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>;
};
};
};
......@@ -1104,6 +2313,41 @@ sound {
<&xbar_i2s4_port>, <&xbar_i2s5_port>, <&xbar_i2s6_port>,
<&xbar_dmic1_port>, <&xbar_dmic2_port>, <&xbar_dmic3_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>,
/* 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>,
/* I/O */
<&i2s1_port>, <&i2s2_port>, <&i2s3_port>, <&i2s4_port>,
<&i2s5_port>, <&i2s6_port>, <&dmic1_port>, <&dmic2_port>,
......
......@@ -124,7 +124,7 @@ mmc@3460000 {
};
hda@3510000 {
nvidia,model = "jetson-tx2-hda";
nvidia,model = "NVIDIA Jetson TX2 NX HDA";
status = "okay";
};
......@@ -715,4 +715,508 @@ aux_alert0: critical {
};
};
};
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_i2s3_port: port@16 {
reg = <0x16>;
xbar_i2s3_ep: endpoint {
remote-endpoint = <&i2s3_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>;
};
};
};
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";
/* Placeholder for external Codec */
};
};
};
};
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";
/* Placeholder 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 */
};
};
};
};
};
};
sound {
compatible = "nvidia,tegra186-audio-graph-card";
status = "okay";
dais = /* FE */
<&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>,
/* Router */
<&xbar_i2s1_port>, <&xbar_i2s3_port>,
<&xbar_dmic1_port>, <&xbar_dmic2_port>,
/* I/O */
<&i2s1_port>, <&i2s3_port>,
<&dmic1_port>, <&dmic2_port>;
label = "NVIDIA Jetson TX2 NX APE";
};
};
......@@ -354,6 +354,126 @@ tegra_dspk2: dspk@2905100 {
sound-name-prefix = "DSPK2";
status = "disabled";
};
tegra_sfc1: sfc@2902000 {
compatible = "nvidia,tegra186-sfc",
"nvidia,tegra210-sfc";
reg = <0x2902000 0x200>;
sound-name-prefix = "SFC1";
status = "disabled";
};
tegra_sfc2: sfc@2902200 {
compatible = "nvidia,tegra186-sfc",
"nvidia,tegra210-sfc";
reg = <0x2902200 0x200>;
sound-name-prefix = "SFC2";
status = "disabled";
};
tegra_sfc3: sfc@2902400 {
compatible = "nvidia,tegra186-sfc",
"nvidia,tegra210-sfc";
reg = <0x2902400 0x200>;
sound-name-prefix = "SFC3";
status = "disabled";
};
tegra_sfc4: sfc@2902600 {
compatible = "nvidia,tegra186-sfc",
"nvidia,tegra210-sfc";
reg = <0x2902600 0x200>;
sound-name-prefix = "SFC4";
status = "disabled";
};
tegra_mvc1: mvc@290a000 {
compatible = "nvidia,tegra186-mvc",
"nvidia,tegra210-mvc";
reg = <0x290a000 0x200>;
sound-name-prefix = "MVC1";
status = "disabled";
};
tegra_mvc2: mvc@290a200 {
compatible = "nvidia,tegra186-mvc",
"nvidia,tegra210-mvc";
reg = <0x290a200 0x200>;
sound-name-prefix = "MVC2";
status = "disabled";
};
tegra_amx1: amx@2903000 {
compatible = "nvidia,tegra186-amx",
"nvidia,tegra210-amx";
reg = <0x2903000 0x100>;
sound-name-prefix = "AMX1";
status = "disabled";
};
tegra_amx2: amx@2903100 {
compatible = "nvidia,tegra186-amx",
"nvidia,tegra210-amx";
reg = <0x2903100 0x100>;
sound-name-prefix = "AMX2";
status = "disabled";
};
tegra_amx3: amx@2903200 {
compatible = "nvidia,tegra186-amx",
"nvidia,tegra210-amx";
reg = <0x2903200 0x100>;
sound-name-prefix = "AMX3";
status = "disabled";
};
tegra_amx4: amx@2903300 {
compatible = "nvidia,tegra186-amx",
"nvidia,tegra210-amx";
reg = <0x2903300 0x100>;
sound-name-prefix = "AMX4";
status = "disabled";
};
tegra_adx1: adx@2903800 {
compatible = "nvidia,tegra186-adx",
"nvidia,tegra210-adx";
reg = <0x2903800 0x100>;
sound-name-prefix = "ADX1";
status = "disabled";
};
tegra_adx2: adx@2903900 {
compatible = "nvidia,tegra186-adx",
"nvidia,tegra210-adx";
reg = <0x2903900 0x100>;
sound-name-prefix = "ADX2";
status = "disabled";
};
tegra_adx3: adx@2903a00 {
compatible = "nvidia,tegra186-adx",
"nvidia,tegra210-adx";
reg = <0x2903a00 0x100>;
sound-name-prefix = "ADX3";
status = "disabled";
};
tegra_adx4: adx@2903b00 {
compatible = "nvidia,tegra186-adx",
"nvidia,tegra210-adx";
reg = <0x2903b00 0x100>;
sound-name-prefix = "ADX4";
status = "disabled";
};
tegra_amixer: amixer@290bb00 {
compatible = "nvidia,tegra186-amixer",
"nvidia,tegra210-amixer";
reg = <0x290bb00 0x800>;
sound-name-prefix = "MIXER1";
status = "disabled";
};
};
};
......@@ -1433,6 +1553,22 @@ dsib: dsi@15400000 {
power-domains = <&bpmp TEGRA186_POWER_DOMAIN_DISP>;
};
nvdec@15480000 {
compatible = "nvidia,tegra186-nvdec";
reg = <0x15480000 0x40000>;
clocks = <&bpmp TEGRA186_CLK_NVDEC>;
clock-names = "nvdec";
resets = <&bpmp TEGRA186_RESET_NVDEC>;
reset-names = "nvdec";
power-domains = <&bpmp TEGRA186_POWER_DOMAIN_NVDEC>;
interconnects = <&mc TEGRA186_MEMORY_CLIENT_NVDECSRD &emc>,
<&mc TEGRA186_MEMORY_CLIENT_NVDECSRD1 &emc>,
<&mc TEGRA186_MEMORY_CLIENT_NVDECSWR &emc>;
interconnect-names = "dma-mem", "read-1", "write";
iommus = <&smmu TEGRA186_SID_NVDEC>;
};
sor0: sor@15540000 {
compatible = "nvidia,tegra186-sor";
reg = <0x15540000 0x10000>;
......
......@@ -228,178 +228,1287 @@ 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>;
};
};
};
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@0 {
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>;
};
};
admaif@290f000 {
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>;
admaif0_port: port@0 {
reg = <0x0>;
port@0 {
reg = <0>;
admaif0_ep: endpoint {
remote-endpoint = <&xbar_admaif0_ep>;
amx3_in1_ep: endpoint {
remote-endpoint = <&xbar_amx3_in1_ep>;
};
};
admaif1_port: port@1 {
reg = <0x1>;
port@1 {
reg = <1>;
admaif1_ep: endpoint {
remote-endpoint = <&xbar_admaif1_ep>;
amx3_in2_ep: endpoint {
remote-endpoint = <&xbar_amx3_in2_ep>;
};
};
admaif2_port: port@2 {
reg = <0x2>;
port@2 {
reg = <2>;
admaif2_ep: endpoint {
remote-endpoint = <&xbar_admaif2_ep>;
amx3_in3_ep: endpoint {
remote-endpoint = <&xbar_amx3_in3_ep>;
};
};
admaif3_port: port@3 {
reg = <0x3>;
port@3 {
reg = <3>;
admaif3_ep: endpoint {
remote-endpoint = <&xbar_admaif3_ep>;
amx3_in4_ep: endpoint {
remote-endpoint = <&xbar_amx3_in4_ep>;
};
};
admaif4_port: port@4 {
reg = <0x4>;
amx3_out_port: port@4 {
reg = <4>;
admaif4_ep: endpoint {
remote-endpoint = <&xbar_admaif4_ep>;
amx3_out_ep: endpoint {
remote-endpoint = <&xbar_amx3_out_ep>;
};
};
};
};
admaif5_port: port@5 {
reg = <0x5>;
amx@2903300 {
status = "okay";
admaif5_ep: endpoint {
remote-endpoint = <&xbar_admaif5_ep>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
amx4_in1_ep: endpoint {
remote-endpoint = <&xbar_amx4_in1_ep>;
};
};
admaif6_port: port@6 {
reg = <0x6>;
port@1 {
reg = <1>;
admaif6_ep: endpoint {
remote-endpoint = <&xbar_admaif6_ep>;
amx4_in2_ep: endpoint {
remote-endpoint = <&xbar_amx4_in2_ep>;
};
};
admaif7_port: port@7 {
reg = <0x7>;
port@2 {
reg = <2>;
admaif7_ep: endpoint {
remote-endpoint = <&xbar_admaif7_ep>;
amx4_in3_ep: endpoint {
remote-endpoint = <&xbar_amx4_in3_ep>;
};
};
admaif8_port: port@8 {
reg = <0x8>;
port@3 {
reg = <3>;
admaif8_ep: endpoint {
remote-endpoint = <&xbar_admaif8_ep>;
amx4_in4_ep: endpoint {
remote-endpoint = <&xbar_amx4_in4_ep>;
};
};
admaif9_port: port@9 {
reg = <0x9>;
amx4_out_port: port@4 {
reg = <4>;
admaif9_ep: endpoint {
remote-endpoint = <&xbar_admaif9_ep>;
amx4_out_ep: endpoint {
remote-endpoint = <&xbar_amx4_out_ep>;
};
};
};
};
admaif10_port: port@a {
reg = <0xa>;
adx@2903800 {
status = "okay";
admaif10_ep: endpoint {
remote-endpoint = <&xbar_admaif10_ep>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
adx1_in_ep: endpoint {
remote-endpoint = <&xbar_adx1_in_ep>;
};
};
admaif11_port: port@b {
reg = <0xb>;
adx1_out1_port: port@1 {
reg = <1>;
admaif11_ep: endpoint {
remote-endpoint = <&xbar_admaif11_ep>;
adx1_out1_ep: endpoint {
remote-endpoint = <&xbar_adx1_out1_ep>;
};
};
admaif12_port: port@c {
reg = <0xc>;
adx1_out2_port: port@2 {
reg = <2>;
admaif12_ep: endpoint {
remote-endpoint = <&xbar_admaif12_ep>;
adx1_out2_ep: endpoint {
remote-endpoint = <&xbar_adx1_out2_ep>;
};
};
admaif13_port: port@d {
reg = <0xd>;
adx1_out3_port: port@3 {
reg = <3>;
admaif13_ep: endpoint {
remote-endpoint = <&xbar_admaif13_ep>;
adx1_out3_ep: endpoint {
remote-endpoint = <&xbar_adx1_out3_ep>;
};
};
admaif14_port: port@e {
reg = <0xe>;
adx1_out4_port: port@4 {
reg = <4>;
admaif14_ep: endpoint {
remote-endpoint = <&xbar_admaif14_ep>;
adx1_out4_ep: endpoint {
remote-endpoint = <&xbar_adx1_out4_ep>;
};
};
};
};
admaif15_port: port@f {
reg = <0xf>;
adx@2903900 {
status = "okay";
admaif15_ep: endpoint {
remote-endpoint = <&xbar_admaif15_ep>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
adx2_in_ep: endpoint {
remote-endpoint = <&xbar_adx2_in_ep>;
};
};
admaif16_port: port@10 {
reg = <0x10>;
adx2_out1_port: port@1 {
reg = <1>;
admaif16_ep: endpoint {
remote-endpoint = <&xbar_admaif16_ep>;
adx2_out1_ep: endpoint {
remote-endpoint = <&xbar_adx2_out1_ep>;
};
};
admaif17_port: port@11 {
reg = <0x11>;
adx2_out2_port: port@2 {
reg = <2>;
admaif17_ep: endpoint {
remote-endpoint = <&xbar_admaif17_ep>;
adx2_out2_ep: endpoint {
remote-endpoint = <&xbar_adx2_out2_ep>;
};
};
admaif18_port: port@12 {
reg = <0x12>;
adx2_out3_port: port@3 {
reg = <3>;
admaif18_ep: endpoint {
remote-endpoint = <&xbar_admaif18_ep>;
adx2_out3_ep: endpoint {
remote-endpoint = <&xbar_adx2_out3_ep>;
};
};
admaif19_port: port@13 {
reg = <0x13>;
adx2_out4_port: port@4 {
reg = <4>;
admaif19_ep: endpoint {
remote-endpoint = <&xbar_admaif19_ep>;
adx2_out4_ep: endpoint {
remote-endpoint = <&xbar_adx2_out4_ep>;
};
};
};
};
i2s@2901000 {
adx@2903a00 {
status = "okay";
ports {
......@@ -409,23 +1518,46 @@ ports {
port@0 {
reg = <0>;
i2s1_cif_ep: endpoint {
remote-endpoint = <&xbar_i2s1_ep>;
adx3_in_ep: endpoint {
remote-endpoint = <&xbar_adx3_in_ep>;
};
};
i2s1_port: port@1 {
adx3_out1_port: port@1 {
reg = <1>;
i2s1_dap_ep: endpoint {
dai-format = "i2s";
remote-endpoint = <&rt5658_ep>;
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>;
};
};
i2s@2901100 {
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 {
......@@ -435,23 +1567,46 @@ ports {
port@0 {
reg = <0>;
i2s2_cif_ep: endpoint {
remote-endpoint = <&xbar_i2s2_ep>;
adx4_in_ep: endpoint {
remote-endpoint = <&xbar_adx4_in_ep>;
};
};
i2s2_port: port@1 {
adx4_out1_port: port@1 {
reg = <1>;
i2s2_dap_ep: endpoint {
dai-format = "i2s";
/* Place holder for external Codec */
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>;
};
};
i2s@2901300 {
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>;
};
};
};
};
amixer@290bb00 {
status = "okay";
ports {
......@@ -459,70 +1614,122 @@ ports {
#size-cells = <0>;
port@0 {
reg = <0>;
reg = <0x0>;
i2s4_cif_ep: endpoint {
remote-endpoint = <&xbar_i2s4_ep>;
mixer_in1_ep: endpoint {
remote-endpoint = <&xbar_mixer_in1_ep>;
};
};
i2s4_port: port@1 {
reg = <1>;
port@1 {
reg = <0x1>;
i2s4_dap_ep: endpoint {
dai-format = "i2s";
/* Place holder for external Codec */
mixer_in2_ep: endpoint {
remote-endpoint = <&xbar_mixer_in2_ep>;
};
};
port@2 {
reg = <0x2>;
mixer_in3_ep: endpoint {
remote-endpoint = <&xbar_mixer_in3_ep>;
};
};
i2s@2901500 {
status = "okay";
port@3 {
reg = <0x3>;
ports {
#address-cells = <1>;
#size-cells = <0>;
mixer_in4_ep: endpoint {
remote-endpoint = <&xbar_mixer_in4_ep>;
};
};
port@0 {
reg = <0>;
port@4 {
reg = <0x4>;
i2s6_cif_ep: endpoint {
remote-endpoint = <&xbar_i2s6_ep>;
mixer_in5_ep: endpoint {
remote-endpoint = <&xbar_mixer_in5_ep>;
};
};
i2s6_port: port@1 {
reg = <1>;
port@5 {
reg = <0x5>;
i2s6_dap_ep: endpoint@0 {
dai-format = "i2s";
/* Place holder for external Codec */
mixer_in6_ep: endpoint {
remote-endpoint = <&xbar_mixer_in6_ep>;
};
};
port@6 {
reg = <0x6>;
mixer_in7_ep: endpoint {
remote-endpoint = <&xbar_mixer_in7_ep>;
};
};
dmic@2904200 {
status = "okay";
port@7 {
reg = <0x7>;
ports {
#address-cells = <1>;
#size-cells = <0>;
mixer_in8_ep: endpoint {
remote-endpoint = <&xbar_mixer_in8_ep>;
};
};
port@0 {
reg = <0>;
port@8 {
reg = <0x8>;
dmic3_cif_ep: endpoint {
remote-endpoint = <&xbar_dmic3_ep>;
mixer_in9_ep: endpoint {
remote-endpoint = <&xbar_mixer_in9_ep>;
};
};
dmic3_port: port@1 {
reg = <1>;
port@9 {
reg = <0x9>;
dmic3_dap_ep: endpoint {
/* Place holder for external Codec */
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>;
};
};
};
......@@ -764,7 +1971,7 @@ pcie@141a0000 {
"p2u-5", "p2u-6", "p2u-7";
};
pcie_ep@141a0000 {
pcie-ep@141a0000 {
status = "disabled";
vddio-pex-ctl-supply = <&vdd_1v8ao>;
......@@ -827,6 +2034,40 @@ sound {
/* 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>,
/* 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>,
/* BE I/O Ports */
<&i2s1_port>, <&i2s2_port>, <&i2s4_port>, <&i2s6_port>,
<&dmic3_port>;
......
......@@ -238,178 +238,1337 @@ 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>;
};
};
};
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@0 {
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>;
};
};
};
};
admaif@290f000 {
amx@2903200 {
status = "okay";
ports {
#address-cells = <1>;
#size-cells = <0>;
admaif0_port: port@0 {
reg = <0x0>;
port@0 {
reg = <0>;
admaif0_ep: endpoint {
remote-endpoint = <&xbar_admaif0_ep>;
amx3_in1_ep: endpoint {
remote-endpoint = <&xbar_amx3_in1_ep>;
};
};
admaif1_port: port@1 {
reg = <0x1>;
port@1 {
reg = <1>;
admaif1_ep: endpoint {
remote-endpoint = <&xbar_admaif1_ep>;
amx3_in2_ep: endpoint {
remote-endpoint = <&xbar_amx3_in2_ep>;
};
};
admaif2_port: port@2 {
reg = <0x2>;
port@2 {
reg = <2>;
admaif2_ep: endpoint {
remote-endpoint = <&xbar_admaif2_ep>;
amx3_in3_ep: endpoint {
remote-endpoint = <&xbar_amx3_in3_ep>;
};
};
admaif3_port: port@3 {
reg = <0x3>;
port@3 {
reg = <3>;
admaif3_ep: endpoint {
remote-endpoint = <&xbar_admaif3_ep>;
amx3_in4_ep: endpoint {
remote-endpoint = <&xbar_amx3_in4_ep>;
};
};
admaif4_port: port@4 {
reg = <0x4>;
amx3_out_port: port@4 {
reg = <4>;
admaif4_ep: endpoint {
remote-endpoint = <&xbar_admaif4_ep>;
amx3_out_ep: endpoint {
remote-endpoint = <&xbar_amx3_out_ep>;
};
};
};
};
admaif5_port: port@5 {
reg = <0x5>;
amx@2903300 {
status = "okay";
admaif5_ep: endpoint {
remote-endpoint = <&xbar_admaif5_ep>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
amx4_in1_ep: endpoint {
remote-endpoint = <&xbar_amx4_in1_ep>;
};
};
admaif6_port: port@6 {
reg = <0x6>;
port@1 {
reg = <1>;
admaif6_ep: endpoint {
remote-endpoint = <&xbar_admaif6_ep>;
amx4_in2_ep: endpoint {
remote-endpoint = <&xbar_amx4_in2_ep>;
};
};
admaif7_port: port@7 {
reg = <0x7>;
port@2 {
reg = <2>;
admaif7_ep: endpoint {
remote-endpoint = <&xbar_admaif7_ep>;
amx4_in3_ep: endpoint {
remote-endpoint = <&xbar_amx4_in3_ep>;
};
};
admaif8_port: port@8 {
reg = <0x8>;
port@3 {
reg = <3>;
admaif8_ep: endpoint {
remote-endpoint = <&xbar_admaif8_ep>;
amx4_in4_ep: endpoint {
remote-endpoint = <&xbar_amx4_in4_ep>;
};
};
admaif9_port: port@9 {
reg = <0x9>;
amx4_out_port: port@4 {
reg = <4>;
admaif9_ep: endpoint {
remote-endpoint = <&xbar_admaif9_ep>;
amx4_out_ep: endpoint {
remote-endpoint = <&xbar_amx4_out_ep>;
};
};
};
};
admaif10_port: port@a {
reg = <0xa>;
adx@2903800 {
status = "okay";
admaif10_ep: endpoint {
remote-endpoint = <&xbar_admaif10_ep>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
adx1_in_ep: endpoint {
remote-endpoint = <&xbar_adx1_in_ep>;
};
};
admaif11_port: port@b {
reg = <0xb>;
adx1_out1_port: port@1 {
reg = <1>;
admaif11_ep: endpoint {
remote-endpoint = <&xbar_admaif11_ep>;
adx1_out1_ep: endpoint {
remote-endpoint = <&xbar_adx1_out1_ep>;
};
};
admaif12_port: port@c {
reg = <0xc>;
adx1_out2_port: port@2 {
reg = <2>;
admaif12_ep: endpoint {
remote-endpoint = <&xbar_admaif12_ep>;
adx1_out2_ep: endpoint {
remote-endpoint = <&xbar_adx1_out2_ep>;
};
};
admaif13_port: port@d {
reg = <0xd>;
adx1_out3_port: port@3 {
reg = <3>;
admaif13_ep: endpoint {
remote-endpoint = <&xbar_admaif13_ep>;
adx1_out3_ep: endpoint {
remote-endpoint = <&xbar_adx1_out3_ep>;
};
};
admaif14_port: port@e {
reg = <0xe>;
adx1_out4_port: port@4 {
reg = <4>;
admaif14_ep: endpoint {
remote-endpoint = <&xbar_admaif14_ep>;
adx1_out4_ep: endpoint {
remote-endpoint = <&xbar_adx1_out4_ep>;
};
};
};
};
admaif15_port: port@f {
reg = <0xf>;
adx@2903900 {
status = "okay";
admaif15_ep: endpoint {
remote-endpoint = <&xbar_admaif15_ep>;
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
adx2_in_ep: endpoint {
remote-endpoint = <&xbar_adx2_in_ep>;
};
};
admaif16_port: port@10 {
reg = <0x10>;
adx2_out1_port: port@1 {
reg = <1>;
admaif16_ep: endpoint {
remote-endpoint = <&xbar_admaif16_ep>;
adx2_out1_ep: endpoint {
remote-endpoint = <&xbar_adx2_out1_ep>;
};
};
admaif17_port: port@11 {
reg = <0x11>;
adx2_out2_port: port@2 {
reg = <2>;
admaif17_ep: endpoint {
remote-endpoint = <&xbar_admaif17_ep>;
adx2_out2_ep: endpoint {
remote-endpoint = <&xbar_adx2_out2_ep>;
};
};
admaif18_port: port@12 {
reg = <0x12>;
adx2_out3_port: port@3 {
reg = <3>;
admaif18_ep: endpoint {
remote-endpoint = <&xbar_admaif18_ep>;
adx2_out3_ep: endpoint {
remote-endpoint = <&xbar_adx2_out3_ep>;
};
};
admaif19_port: port@13 {
reg = <0x13>;
adx2_out4_port: port@4 {
reg = <4>;
admaif19_ep: endpoint {
remote-endpoint = <&xbar_admaif19_ep>;
adx2_out4_ep: endpoint {
remote-endpoint = <&xbar_adx2_out4_ep>;
};
};
};
};
i2s@2901200 {
adx@2903a00 {
status = "okay";
ports {
......@@ -419,49 +1578,46 @@ ports {
port@0 {
reg = <0>;
i2s3_cif_ep: endpoint {
remote-endpoint = <&xbar_i2s3_ep>;
adx3_in_ep: endpoint {
remote-endpoint = <&xbar_adx3_in_ep>;
};
};
i2s3_port: port@1 {
adx3_out1_port: port@1 {
reg = <1>;
i2s3_dap_ep: endpoint {
dai-format = "i2s";
/* Place holder for external Codec */
};
};
adx3_out1_ep: endpoint {
remote-endpoint = <&xbar_adx3_out1_ep>;
};
};
i2s@2901400 {
status = "okay";
adx3_out2_port: port@2 {
reg = <2>;
ports {
#address-cells = <1>;
#size-cells = <0>;
adx3_out2_ep: endpoint {
remote-endpoint = <&xbar_adx3_out2_ep>;
};
};
port@0 {
reg = <0>;
adx3_out3_port: port@3 {
reg = <3>;
i2s5_cif_ep: endpoint {
remote-endpoint = <&xbar_i2s5_ep>;
adx3_out3_ep: endpoint {
remote-endpoint = <&xbar_adx3_out3_ep>;
};
};
i2s5_port: port@1 {
reg = <1>;
adx3_out4_port: port@4 {
reg = <4>;
i2s5_dap_ep: endpoint@0 {
dai-format = "i2s";
/* Place holder for external Codec */
adx3_out4_ep: endpoint {
remote-endpoint = <&xbar_adx3_out4_ep>;
};
};
};
};
dmic@2904000 {
adx@2903b00 {
status = "okay";
ports {
......@@ -471,22 +1627,46 @@ ports {
port@0 {
reg = <0>;
dmic1_cif_ep: endpoint {
remote-endpoint = <&xbar_dmic1_ep>;
adx4_in_ep: endpoint {
remote-endpoint = <&xbar_adx4_in_ep>;
};
};
dmic1_port: port@1 {
adx4_out1_port: port@1 {
reg = <1>;
dmic1_dap_ep: endpoint {
/* Place holder for external Codec */
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>;
};
};
dmic@2904100 {
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>;
};
};
};
};
amixer@290bb00 {
status = "okay";
ports {
......@@ -494,93 +1674,122 @@ ports {
#size-cells = <0>;
port@0 {
reg = <0>;
reg = <0x0>;
dmic2_cif_ep: endpoint {
remote-endpoint = <&xbar_dmic2_ep>;
mixer_in1_ep: endpoint {
remote-endpoint = <&xbar_mixer_in1_ep>;
};
};
dmic2_port: port@1 {
reg = <1>;
port@1 {
reg = <0x1>;
dmic2_dap_ep: endpoint {
/* Place holder for external Codec */
mixer_in2_ep: endpoint {
remote-endpoint = <&xbar_mixer_in2_ep>;
};
};
port@2 {
reg = <0x2>;
mixer_in3_ep: endpoint {
remote-endpoint = <&xbar_mixer_in3_ep>;
};
};
dmic@2904300 {
status = "okay";
port@3 {
reg = <0x3>;
ports {
#address-cells = <1>;
#size-cells = <0>;
mixer_in4_ep: endpoint {
remote-endpoint = <&xbar_mixer_in4_ep>;
};
};
port@0 {
reg = <0>;
port@4 {
reg = <0x4>;
dmic4_cif_ep: endpoint {
remote-endpoint = <&xbar_dmic4_ep>;
mixer_in5_ep: endpoint {
remote-endpoint = <&xbar_mixer_in5_ep>;
};
};
dmic4_port: port@1 {
reg = <1>;
port@5 {
reg = <0x5>;
dmic4_dap_ep: endpoint {
/* Place holder for external Codec */
mixer_in6_ep: endpoint {
remote-endpoint = <&xbar_mixer_in6_ep>;
};
};
port@6 {
reg = <0x6>;
mixer_in7_ep: endpoint {
remote-endpoint = <&xbar_mixer_in7_ep>;
};
};
dspk@2905000 {
status = "okay";
port@7 {
reg = <0x7>;
ports {
#address-cells = <1>;
#size-cells = <0>;
mixer_in8_ep: endpoint {
remote-endpoint = <&xbar_mixer_in8_ep>;
};
};
port@0 {
reg = <0>;
port@8 {
reg = <0x8>;
dspk1_cif_ep: endpoint {
remote-endpoint = <&xbar_dspk1_ep>;
mixer_in9_ep: endpoint {
remote-endpoint = <&xbar_mixer_in9_ep>;
};
};
dspk1_port: port@1 {
reg = <1>;
port@9 {
reg = <0x9>;
dspk1_dap_ep: endpoint {
/* Place holder for external Codec */
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>;
};
};
dspk@2905100 {
status = "okay";
mixer_out2_port: port@b {
reg = <0xb>;
ports {
#address-cells = <1>;
#size-cells = <0>;
mixer_out2_ep: endpoint {
remote-endpoint = <&xbar_mixer_out2_ep>;
};
};
port@0 {
reg = <0>;
mixer_out3_port: port@c {
reg = <0xc>;
dspk2_cif_ep: endpoint {
remote-endpoint = <&xbar_dspk2_ep>;
mixer_out3_ep: endpoint {
remote-endpoint = <&xbar_mixer_out3_ep>;
};
};
dspk2_port: port@1 {
reg = <1>;
mixer_out4_port: port@d {
reg = <0xd>;
dspk2_dap_ep: endpoint {
/* Place holder for external Codec */
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>;
};
};
};
......@@ -741,7 +1950,7 @@ pcie@141a0000 {
"p2u-5", "p2u-6", "p2u-7";
};
pcie_ep@141a0000 {
pcie-ep@141a0000 {
status = "disabled";
vddio-pex-ctl-supply = <&vdd_1v8ao>;
......@@ -850,6 +2059,41 @@ sound {
<&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>,
/* 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>,
/* BE I/O Ports */
<&i2s3_port>, <&i2s5_port>,
<&dmic1_port>, <&dmic2_port>, <&dmic4_port>,
......
......@@ -34,11 +34,53 @@ gpio: gpio@2200000 {
reg = <0x2200000 0x10000>,
<0x2210000 0x10000>;
interrupts = <GIC_SPI 288 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 289 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 290 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 291 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 292 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 293 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 294 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 295 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 296 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 298 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 299 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 301 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 302 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 303 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 306 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 307 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 308 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 309 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 310 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 311 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 312 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 313 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 314 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 316 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>;
<GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 322 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 323 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 333 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 334 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>;
#interrupt-cells = <2>;
interrupt-controller;
#gpio-cells = <2>;
......@@ -363,6 +405,122 @@ tegra_dspk2: dspk@2905100 {
sound-name-prefix = "DSPK2";
status = "disabled";
};
tegra_sfc1: sfc@2902000 {
compatible = "nvidia,tegra194-sfc",
"nvidia,tegra210-sfc";
reg = <0x2902000 0x200>;
sound-name-prefix = "SFC1";
status = "disabled";
};
tegra_sfc2: sfc@2902200 {
compatible = "nvidia,tegra194-sfc",
"nvidia,tegra210-sfc";
reg = <0x2902200 0x200>;
sound-name-prefix = "SFC2";
status = "disabled";
};
tegra_sfc3: sfc@2902400 {
compatible = "nvidia,tegra194-sfc",
"nvidia,tegra210-sfc";
reg = <0x2902400 0x200>;
sound-name-prefix = "SFC3";
status = "disabled";
};
tegra_sfc4: sfc@2902600 {
compatible = "nvidia,tegra194-sfc",
"nvidia,tegra210-sfc";
reg = <0x2902600 0x200>;
sound-name-prefix = "SFC4";
status = "disabled";
};
tegra_mvc1: mvc@290a000 {
compatible = "nvidia,tegra194-mvc",
"nvidia,tegra210-mvc";
reg = <0x290a000 0x200>;
sound-name-prefix = "MVC1";
status = "disabled";
};
tegra_mvc2: mvc@290a200 {
compatible = "nvidia,tegra194-mvc",
"nvidia,tegra210-mvc";
reg = <0x290a200 0x200>;
sound-name-prefix = "MVC2";
status = "disabled";
};
tegra_amx1: amx@2903000 {
compatible = "nvidia,tegra194-amx";
reg = <0x2903000 0x100>;
sound-name-prefix = "AMX1";
status = "disabled";
};
tegra_amx2: amx@2903100 {
compatible = "nvidia,tegra194-amx";
reg = <0x2903100 0x100>;
sound-name-prefix = "AMX2";
status = "disabled";
};
tegra_amx3: amx@2903200 {
compatible = "nvidia,tegra194-amx";
reg = <0x2903200 0x100>;
sound-name-prefix = "AMX3";
status = "disabled";
};
tegra_amx4: amx@2903300 {
compatible = "nvidia,tegra194-amx";
reg = <0x2903300 0x100>;
sound-name-prefix = "AMX4";
status = "disabled";
};
tegra_adx1: adx@2903800 {
compatible = "nvidia,tegra194-adx",
"nvidia,tegra210-adx";
reg = <0x2903800 0x100>;
sound-name-prefix = "ADX1";
status = "disabled";
};
tegra_adx2: adx@2903900 {
compatible = "nvidia,tegra194-adx",
"nvidia,tegra210-adx";
reg = <0x2903900 0x100>;
sound-name-prefix = "ADX2";
status = "disabled";
};
tegra_adx3: adx@2903a00 {
compatible = "nvidia,tegra194-adx",
"nvidia,tegra210-adx";
reg = <0x2903a00 0x100>;
sound-name-prefix = "ADX3";
status = "disabled";
};
tegra_adx4: adx@2903b00 {
compatible = "nvidia,tegra194-adx",
"nvidia,tegra210-adx";
reg = <0x2903b00 0x100>;
sound-name-prefix = "ADX4";
status = "disabled";
};
tegra_amixer: amixer@290bb00 {
compatible = "nvidia,tegra194-amixer",
"nvidia,tegra210-amixer";
reg = <0x290bb00 0x800>;
sound-name-prefix = "MIXER1";
status = "disabled";
};
};
};
......@@ -1281,7 +1439,10 @@ gpio_aon: gpio@c2f0000 {
reg-names = "security", "gpio";
reg = <0xc2f0000 0x1000>,
<0xc2f1000 0x1000>;
interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
gpio-controller;
#gpio-cells = <2>;
interrupt-controller;
......@@ -1412,6 +1573,25 @@ host1x@13e00000 {
interconnect-names = "dma-mem";
iommus = <&smmu TEGRA194_SID_HOST1X>;
nvdec@15140000 {
compatible = "nvidia,tegra194-nvdec";
reg = <0x15140000 0x00040000>;
clocks = <&bpmp TEGRA194_CLK_NVDEC1>;
clock-names = "nvdec";
resets = <&bpmp TEGRA194_RESET_NVDEC1>;
reset-names = "nvdec";
power-domains = <&bpmp TEGRA194_POWER_DOMAIN_NVDECB>;
interconnects = <&mc TEGRA194_MEMORY_CLIENT_NVDEC1SRD &emc>,
<&mc TEGRA194_MEMORY_CLIENT_NVDEC1SRD1 &emc>,
<&mc TEGRA194_MEMORY_CLIENT_NVDEC1SWR &emc>;
interconnect-names = "dma-mem", "read-1", "write";
iommus = <&smmu TEGRA194_SID_NVDEC1>;
dma-coherent;
nvidia,host1x-class = <0xf5>;
};
display-hub@15200000 {
compatible = "nvidia,tegra194-display";
reg = <0x15200000 0x00040000>;
......@@ -1525,6 +1705,25 @@ vic@15340000 {
iommus = <&smmu TEGRA194_SID_VIC>;
};
nvdec@15480000 {
compatible = "nvidia,tegra194-nvdec";
reg = <0x15480000 0x00040000>;
clocks = <&bpmp TEGRA194_CLK_NVDEC>;
clock-names = "nvdec";
resets = <&bpmp TEGRA194_RESET_NVDEC>;
reset-names = "nvdec";
power-domains = <&bpmp TEGRA194_POWER_DOMAIN_NVDECA>;
interconnects = <&mc TEGRA194_MEMORY_CLIENT_NVDECSRD &emc>,
<&mc TEGRA194_MEMORY_CLIENT_NVDECSRD1 &emc>,
<&mc TEGRA194_MEMORY_CLIENT_NVDECSWR &emc>;
interconnect-names = "dma-mem", "read-1", "write";
iommus = <&smmu TEGRA194_SID_NVDEC>;
dma-coherent;
nvidia,host1x-class = <0xf0>;
};
dpaux0: dpaux@155c0000 {
compatible = "nvidia,tegra194-dpaux";
reg = <0x155c0000 0x10000>;
......@@ -2121,7 +2320,7 @@ pcie@141a0000 {
dma-coherent;
};
pcie_ep@14160000 {
pcie-ep@14160000 {
compatible = "nvidia,tegra194-pcie-ep";
power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX4A>;
reg = <0x00 0x14160000 0x0 0x00020000>, /* appl registers (128K) */
......@@ -2161,7 +2360,7 @@ pcie_ep@14160000 {
dma-coherent;
};
pcie_ep@14180000 {
pcie-ep@14180000 {
compatible = "nvidia,tegra194-pcie-ep";
power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX8B>;
reg = <0x00 0x14180000 0x0 0x00020000>, /* appl registers (128K) */
......@@ -2201,7 +2400,7 @@ pcie_ep@14180000 {
dma-coherent;
};
pcie_ep@141a0000 {
pcie-ep@141a0000 {
compatible = "nvidia,tegra194-pcie-ep";
power-domains = <&bpmp TEGRA194_POWER_DOMAIN_PCIEX8A>;
reg = <0x00 0x141a0000 0x0 0x00020000>, /* appl registers (128K) */
......
......@@ -339,6 +339,481 @@ dmic3_dap_ep: endpoint {
};
};
sfc@702d2000 {
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@702d2200 {
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@702d2400 {
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@702d2600 {
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@702da000 {
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@702da200 {
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@702d3000 {
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@702d3100 {
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>;
};
};
};
};
adx@702d3800 {
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@702d3900 {
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>;
};
};
};
};
amixer@702dbb00 {
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>;
};
};
};
};
ports {
xbar_i2s1_port: port@a {
reg = <0xa>;
......@@ -403,6 +878,382 @@ xbar_dmic3_ep: endpoint {
remote-endpoint = <&dmic3_cif_ep>;
};
};
xbar_sfc1_in_port: port@12 {
reg = <0x12>;
xbar_sfc1_in_ep: endpoint {
remote-endpoint = <&sfc1_cif_in_ep>;
};
};
port@13 {
reg = <0x13>;
xbar_sfc1_out_ep: endpoint {
remote-endpoint = <&sfc1_cif_out_ep>;
};
};
xbar_sfc2_in_port: port@14 {
reg = <0x14>;
xbar_sfc2_in_ep: endpoint {
remote-endpoint = <&sfc2_cif_in_ep>;
};
};
port@15 {
reg = <0x15>;
xbar_sfc2_out_ep: endpoint {
remote-endpoint = <&sfc2_cif_out_ep>;
};
};
xbar_sfc3_in_port: port@16 {
reg = <0x16>;
xbar_sfc3_in_ep: endpoint {
remote-endpoint = <&sfc3_cif_in_ep>;
};
};
port@17 {
reg = <0x17>;
xbar_sfc3_out_ep: endpoint {
remote-endpoint = <&sfc3_cif_out_ep>;
};
};
xbar_sfc4_in_port: port@18 {
reg = <0x18>;
xbar_sfc4_in_ep: endpoint {
remote-endpoint = <&sfc4_cif_in_ep>;
};
};
port@19 {
reg = <0x19>;
xbar_sfc4_out_ep: endpoint {
remote-endpoint = <&sfc4_cif_out_ep>;
};
};
xbar_mvc1_in_port: port@1a {
reg = <0x1a>;
xbar_mvc1_in_ep: endpoint {
remote-endpoint = <&mvc1_cif_in_ep>;
};
};
port@1b {
reg = <0x1b>;
xbar_mvc1_out_ep: endpoint {
remote-endpoint = <&mvc1_cif_out_ep>;
};
};
xbar_mvc2_in_port: port@1c {
reg = <0x1c>;
xbar_mvc2_in_ep: endpoint {
remote-endpoint = <&mvc2_cif_in_ep>;
};
};
port@1d {
reg = <0x1d>;
xbar_mvc2_out_ep: endpoint {
remote-endpoint = <&mvc2_cif_out_ep>;
};
};
xbar_amx1_in1_port: port@1e {
reg = <0x1e>;
xbar_amx1_in1_ep: endpoint {
remote-endpoint = <&amx1_in1_ep>;
};
};
xbar_amx1_in2_port: port@1f {
reg = <0x1f>;
xbar_amx1_in2_ep: endpoint {
remote-endpoint = <&amx1_in2_ep>;
};
};
xbar_amx1_in3_port: port@20 {
reg = <0x20>;
xbar_amx1_in3_ep: endpoint {
remote-endpoint = <&amx1_in3_ep>;
};
};
xbar_amx1_in4_port: port@21 {
reg = <0x21>;
xbar_amx1_in4_ep: endpoint {
remote-endpoint = <&amx1_in4_ep>;
};
};
port@22 {
reg = <0x22>;
xbar_amx1_out_ep: endpoint {
remote-endpoint = <&amx1_out_ep>;
};
};
xbar_amx2_in1_port: port@23 {
reg = <0x23>;
xbar_amx2_in1_ep: endpoint {
remote-endpoint = <&amx2_in1_ep>;
};
};
xbar_amx2_in2_port: port@24 {
reg = <0x24>;
xbar_amx2_in2_ep: endpoint {
remote-endpoint = <&amx2_in2_ep>;
};
};
xbar_amx2_in3_port: port@25 {
reg = <0x25>;
xbar_amx2_in3_ep: endpoint {
remote-endpoint = <&amx2_in3_ep>;
};
};
xbar_amx2_in4_port: port@26 {
reg = <0x26>;
xbar_amx2_in4_ep: endpoint {
remote-endpoint = <&amx2_in4_ep>;
};
};
port@27 {
reg = <0x27>;
xbar_amx2_out_ep: endpoint {
remote-endpoint = <&amx2_out_ep>;
};
};
xbar_adx1_in_port: port@28 {
reg = <0x28>;
xbar_adx1_in_ep: endpoint {
remote-endpoint = <&adx1_in_ep>;
};
};
port@29 {
reg = <0x29>;
xbar_adx1_out1_ep: endpoint {
remote-endpoint = <&adx1_out1_ep>;
};
};
port@2a {
reg = <0x2a>;
xbar_adx1_out2_ep: endpoint {
remote-endpoint = <&adx1_out2_ep>;
};
};
port@2b {
reg = <0x2b>;
xbar_adx1_out3_ep: endpoint {
remote-endpoint = <&adx1_out3_ep>;
};
};
port@2c {
reg = <0x2c>;
xbar_adx1_out4_ep: endpoint {
remote-endpoint = <&adx1_out4_ep>;
};
};
xbar_adx2_in_port: port@2d {
reg = <0x2d>;
xbar_adx2_in_ep: endpoint {
remote-endpoint = <&adx2_in_ep>;
};
};
port@2e {
reg = <0x2e>;
xbar_adx2_out1_ep: endpoint {
remote-endpoint = <&adx2_out1_ep>;
};
};
port@2f {
reg = <0x2f>;
xbar_adx2_out2_ep: endpoint {
remote-endpoint = <&adx2_out2_ep>;
};
};
port@30 {
reg = <0x30>;
xbar_adx2_out3_ep: endpoint {
remote-endpoint = <&adx2_out3_ep>;
};
};
port@31 {
reg = <0x31>;
xbar_adx2_out4_ep: endpoint {
remote-endpoint = <&adx2_out4_ep>;
};
};
xbar_mixer_in1_port: port@32 {
reg = <0x32>;
xbar_mixer_in1_ep: endpoint {
remote-endpoint = <&mixer_in1_ep>;
};
};
xbar_mixer_in2_port: port@33 {
reg = <0x33>;
xbar_mixer_in2_ep: endpoint {
remote-endpoint = <&mixer_in2_ep>;
};
};
xbar_mixer_in3_port: port@34 {
reg = <0x34>;
xbar_mixer_in3_ep: endpoint {
remote-endpoint = <&mixer_in3_ep>;
};
};
xbar_mixer_in4_port: port@35 {
reg = <0x35>;
xbar_mixer_in4_ep: endpoint {
remote-endpoint = <&mixer_in4_ep>;
};
};
xbar_mixer_in5_port: port@36 {
reg = <0x36>;
xbar_mixer_in5_ep: endpoint {
remote-endpoint = <&mixer_in5_ep>;
};
};
xbar_mixer_in6_port: port@37 {
reg = <0x37>;
xbar_mixer_in6_ep: endpoint {
remote-endpoint = <&mixer_in6_ep>;
};
};
xbar_mixer_in7_port: port@38 {
reg = <0x38>;
xbar_mixer_in7_ep: endpoint {
remote-endpoint = <&mixer_in7_ep>;
};
};
xbar_mixer_in8_port: port@39 {
reg = <0x39>;
xbar_mixer_in8_ep: endpoint {
remote-endpoint = <&mixer_in8_ep>;
};
};
xbar_mixer_in9_port: port@3a {
reg = <0x3a>;
xbar_mixer_in9_ep: endpoint {
remote-endpoint = <&mixer_in9_ep>;
};
};
xbar_mixer_in10_port: port@3b {
reg = <0x3b>;
xbar_mixer_in10_ep: endpoint {
remote-endpoint = <&mixer_in10_ep>;
};
};
port@3c {
reg = <0x3c>;
xbar_mixer_out1_ep: endpoint {
remote-endpoint = <&mixer_out1_ep>;
};
};
port@3d {
reg = <0x3d>;
xbar_mixer_out2_ep: endpoint {
remote-endpoint = <&mixer_out2_ep>;
};
};
port@3e {
reg = <0x3e>;
xbar_mixer_out3_ep: endpoint {
remote-endpoint = <&mixer_out3_ep>;
};
};
port@3f {
reg = <0x3f>;
xbar_mixer_out4_ep: endpoint {
remote-endpoint = <&mixer_out4_ep>;
};
};
port@40 {
reg = <0x40>;
xbar_mixer_out5_ep: endpoint {
remote-endpoint = <&mixer_out5_ep>;
};
};
};
};
};
......@@ -420,6 +1271,31 @@ sound {
<&xbar_i2s1_port>, <&xbar_i2s2_port>, <&xbar_i2s3_port>,
<&xbar_i2s4_port>, <&xbar_i2s5_port>, <&xbar_dmic1_port>,
<&xbar_dmic2_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_adx1_in_port>, <&xbar_adx2_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>,
/* 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>,
<&adx1_out1_port>, <&adx1_out2_port>,
<&adx1_out3_port>, <&adx1_out4_port>,
<&adx2_out1_port>, <&adx2_out2_port>,
<&adx2_out3_port>, <&adx2_out4_port>,
<&mixer_out1_port>, <&mixer_out2_port>,
<&mixer_out3_port>, <&mixer_out4_port>,
<&mixer_out5_port>,
/* I/O DAP Ports */
<&i2s1_port>, <&i2s2_port>, <&i2s3_port>, <&i2s4_port>,
<&i2s5_port>, <&dmic1_port>, <&dmic2_port>, <&dmic3_port>;
......
......@@ -746,6 +746,481 @@ dmic2_dap_ep: endpoint@0 {
};
};
sfc@702d2000 {
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@702d2200 {
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@702d2400 {
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@702d2600 {
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@702da000 {
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@702da200 {
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@702d3000 {
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@702d3100 {
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>;
};
};
};
};
adx@702d3800 {
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@702d3900 {
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>;
};
};
};
};
amixer@702dbb00 {
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>;
};
};
};
};
ports {
xbar_i2s3_port: port@c {
reg = <0xc>;
......@@ -778,6 +1253,382 @@ xbar_dmic2_ep: endpoint {
remote-endpoint = <&dmic2_cif_ep>;
};
};
xbar_sfc1_in_port: port@12 {
reg = <0x12>;
xbar_sfc1_in_ep: endpoint {
remote-endpoint = <&sfc1_cif_in_ep>;
};
};
port@13 {
reg = <0x13>;
xbar_sfc1_out_ep: endpoint {
remote-endpoint = <&sfc1_cif_out_ep>;
};
};
xbar_sfc2_in_port: port@14 {
reg = <0x14>;
xbar_sfc2_in_ep: endpoint {
remote-endpoint = <&sfc2_cif_in_ep>;
};
};
port@15 {
reg = <0x15>;
xbar_sfc2_out_ep: endpoint {
remote-endpoint = <&sfc2_cif_out_ep>;
};
};
xbar_sfc3_in_port: port@16 {
reg = <0x16>;
xbar_sfc3_in_ep: endpoint {
remote-endpoint = <&sfc3_cif_in_ep>;
};
};
port@17 {
reg = <0x17>;
xbar_sfc3_out_ep: endpoint {
remote-endpoint = <&sfc3_cif_out_ep>;
};
};
xbar_sfc4_in_port: port@18 {
reg = <0x18>;
xbar_sfc4_in_ep: endpoint {
remote-endpoint = <&sfc4_cif_in_ep>;
};
};
port@19 {
reg = <0x19>;
xbar_sfc4_out_ep: endpoint {
remote-endpoint = <&sfc4_cif_out_ep>;
};
};
xbar_mvc1_in_port: port@1a {
reg = <0x1a>;
xbar_mvc1_in_ep: endpoint {
remote-endpoint = <&mvc1_cif_in_ep>;
};
};
port@1b {
reg = <0x1b>;
xbar_mvc1_out_ep: endpoint {
remote-endpoint = <&mvc1_cif_out_ep>;
};
};
xbar_mvc2_in_port: port@1c {
reg = <0x1c>;
xbar_mvc2_in_ep: endpoint {
remote-endpoint = <&mvc2_cif_in_ep>;
};
};
port@1d {
reg = <0x1d>;
xbar_mvc2_out_ep: endpoint {
remote-endpoint = <&mvc2_cif_out_ep>;
};
};
xbar_amx1_in1_port: port@1e {
reg = <0x1e>;
xbar_amx1_in1_ep: endpoint {
remote-endpoint = <&amx1_in1_ep>;
};
};
xbar_amx1_in2_port: port@1f {
reg = <0x1f>;
xbar_amx1_in2_ep: endpoint {
remote-endpoint = <&amx1_in2_ep>;
};
};
xbar_amx1_in3_port: port@20 {
reg = <0x20>;
xbar_amx1_in3_ep: endpoint {
remote-endpoint = <&amx1_in3_ep>;
};
};
xbar_amx1_in4_port: port@21 {
reg = <0x21>;
xbar_amx1_in4_ep: endpoint {
remote-endpoint = <&amx1_in4_ep>;
};
};
port@22 {
reg = <0x22>;
xbar_amx1_out_ep: endpoint {
remote-endpoint = <&amx1_out_ep>;
};
};
xbar_amx2_in1_port: port@23 {
reg = <0x23>;
xbar_amx2_in1_ep: endpoint {
remote-endpoint = <&amx2_in1_ep>;
};
};
xbar_amx2_in2_port: port@24 {
reg = <0x24>;
xbar_amx2_in2_ep: endpoint {
remote-endpoint = <&amx2_in2_ep>;
};
};
xbar_amx2_in3_port: port@25 {
reg = <0x25>;
xbar_amx2_in3_ep: endpoint {
remote-endpoint = <&amx2_in3_ep>;
};
};
xbar_amx2_in4_port: port@26 {
reg = <0x26>;
xbar_amx2_in4_ep: endpoint {
remote-endpoint = <&amx2_in4_ep>;
};
};
port@27 {
reg = <0x27>;
xbar_amx2_out_ep: endpoint {
remote-endpoint = <&amx2_out_ep>;
};
};
xbar_adx1_in_port: port@28 {
reg = <0x28>;
xbar_adx1_in_ep: endpoint {
remote-endpoint = <&adx1_in_ep>;
};
};
port@29 {
reg = <0x29>;
xbar_adx1_out1_ep: endpoint {
remote-endpoint = <&adx1_out1_ep>;
};
};
port@2a {
reg = <0x2a>;
xbar_adx1_out2_ep: endpoint {
remote-endpoint = <&adx1_out2_ep>;
};
};
port@2b {
reg = <0x2b>;
xbar_adx1_out3_ep: endpoint {
remote-endpoint = <&adx1_out3_ep>;
};
};
port@2c {
reg = <0x2c>;
xbar_adx1_out4_ep: endpoint {
remote-endpoint = <&adx1_out4_ep>;
};
};
xbar_adx2_in_port: port@2d {
reg = <0x2d>;
xbar_adx2_in_ep: endpoint {
remote-endpoint = <&adx2_in_ep>;
};
};
port@2e {
reg = <0x2e>;
xbar_adx2_out1_ep: endpoint {
remote-endpoint = <&adx2_out1_ep>;
};
};
port@2f {
reg = <0x2f>;
xbar_adx2_out2_ep: endpoint {
remote-endpoint = <&adx2_out2_ep>;
};
};
port@30 {
reg = <0x30>;
xbar_adx2_out3_ep: endpoint {
remote-endpoint = <&adx2_out3_ep>;
};
};
port@31 {
reg = <0x31>;
xbar_adx2_out4_ep: endpoint {
remote-endpoint = <&adx2_out4_ep>;
};
};
xbar_mixer_in1_port: port@32 {
reg = <0x32>;
xbar_mixer_in1_ep: endpoint {
remote-endpoint = <&mixer_in1_ep>;
};
};
xbar_mixer_in2_port: port@33 {
reg = <0x33>;
xbar_mixer_in2_ep: endpoint {
remote-endpoint = <&mixer_in2_ep>;
};
};
xbar_mixer_in3_port: port@34 {
reg = <0x34>;
xbar_mixer_in3_ep: endpoint {
remote-endpoint = <&mixer_in3_ep>;
};
};
xbar_mixer_in4_port: port@35 {
reg = <0x35>;
xbar_mixer_in4_ep: endpoint {
remote-endpoint = <&mixer_in4_ep>;
};
};
xbar_mixer_in5_port: port@36 {
reg = <0x36>;
xbar_mixer_in5_ep: endpoint {
remote-endpoint = <&mixer_in5_ep>;
};
};
xbar_mixer_in6_port: port@37 {
reg = <0x37>;
xbar_mixer_in6_ep: endpoint {
remote-endpoint = <&mixer_in6_ep>;
};
};
xbar_mixer_in7_port: port@38 {
reg = <0x38>;
xbar_mixer_in7_ep: endpoint {
remote-endpoint = <&mixer_in7_ep>;
};
};
xbar_mixer_in8_port: port@39 {
reg = <0x39>;
xbar_mixer_in8_ep: endpoint {
remote-endpoint = <&mixer_in8_ep>;
};
};
xbar_mixer_in9_port: port@3a {
reg = <0x3a>;
xbar_mixer_in9_ep: endpoint {
remote-endpoint = <&mixer_in9_ep>;
};
};
xbar_mixer_in10_port: port@3b {
reg = <0x3b>;
xbar_mixer_in10_ep: endpoint {
remote-endpoint = <&mixer_in10_ep>;
};
};
port@3c {
reg = <0x3c>;
xbar_mixer_out1_ep: endpoint {
remote-endpoint = <&mixer_out1_ep>;
};
};
port@3d {
reg = <0x3d>;
xbar_mixer_out2_ep: endpoint {
remote-endpoint = <&mixer_out2_ep>;
};
};
port@3e {
reg = <0x3e>;
xbar_mixer_out3_ep: endpoint {
remote-endpoint = <&mixer_out3_ep>;
};
};
port@3f {
reg = <0x3f>;
xbar_mixer_out4_ep: endpoint {
remote-endpoint = <&mixer_out4_ep>;
};
};
port@40 {
reg = <0x40>;
xbar_mixer_out5_ep: endpoint {
remote-endpoint = <&mixer_out5_ep>;
};
};
};
};
};
......@@ -1039,6 +1890,31 @@ sound {
/* Router */
<&xbar_i2s3_port>, <&xbar_i2s4_port>,
<&xbar_dmic1_port>, <&xbar_dmic2_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_adx1_in_port>, <&xbar_adx2_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>,
/* 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>,
<&adx1_out1_port>, <&adx1_out2_port>,
<&adx1_out3_port>, <&adx1_out4_port>,
<&adx2_out1_port>, <&adx2_out2_port>,
<&adx2_out3_port>, <&adx2_out4_port>,
<&mixer_out1_port>, <&mixer_out2_port>,
<&mixer_out3_port>, <&mixer_out4_port>,
<&mixer_out5_port>,
/* I/O DAP Ports */
<&i2s3_port>, <&i2s4_port>,
<&dmic1_port>, <&dmic2_port>;
......
......@@ -1641,6 +1641,83 @@ tegra_dmic3: dmic@702d4200 {
status = "disabled";
};
tegra_sfc1: sfc@702d2000 {
compatible = "nvidia,tegra210-sfc";
reg = <0x702d2000 0x200>;
sound-name-prefix = "SFC1";
status = "disabled";
};
tegra_sfc2: sfc@702d2200 {
compatible = "nvidia,tegra210-sfc";
reg = <0x702d2200 0x200>;
sound-name-prefix = "SFC2";
status = "disabled";
};
tegra_sfc3: sfc@702d2400 {
compatible = "nvidia,tegra210-sfc";
reg = <0x702d2400 0x200>;
sound-name-prefix = "SFC3";
status = "disabled";
};
tegra_sfc4: sfc@702d2600 {
compatible = "nvidia,tegra210-sfc";
reg = <0x702d2600 0x200>;
sound-name-prefix = "SFC4";
status = "disabled";
};
tegra_mvc1: mvc@702da000 {
compatible = "nvidia,tegra210-mvc";
reg = <0x702da000 0x200>;
sound-name-prefix = "MVC1";
status = "disabled";
};
tegra_mvc2: mvc@702da200 {
compatible = "nvidia,tegra210-mvc";
reg = <0x702da200 0x200>;
sound-name-prefix = "MVC2";
status = "disabled";
};
tegra_amx1: amx@702d3000 {
compatible = "nvidia,tegra210-amx";
reg = <0x702d3000 0x100>;
sound-name-prefix = "AMX1";
status = "disabled";
};
tegra_amx2: amx@702d3100 {
compatible = "nvidia,tegra210-amx";
reg = <0x702d3100 0x100>;
sound-name-prefix = "AMX2";
status = "disabled";
};
tegra_adx1: adx@702d3800 {
compatible = "nvidia,tegra210-adx";
reg = <0x702d3800 0x100>;
sound-name-prefix = "ADX1";
status = "disabled";
};
tegra_adx2: adx@702d3900 {
compatible = "nvidia,tegra210-adx";
reg = <0x702d3900 0x100>;
sound-name-prefix = "ADX2";
status = "disabled";
};
tegra_amixer: amixer@702dbb00 {
compatible = "nvidia,tegra210-amixer";
reg = <0x702dbb00 0x800>;
sound-name-prefix = "MIXER1";
status = "disabled";
};
ports {
#address-cells = <1>;
#size-cells = <0>;
......@@ -1743,7 +1820,7 @@ spi@70410000 {
};
usb@7d000000 {
compatible = "nvidia,tegra210-ehci", "nvidia,tegra30-ehci", "usb-ehci";
compatible = "nvidia,tegra210-ehci", "nvidia,tegra30-ehci";
reg = <0x0 0x7d000000 0x0 0x4000>;
interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
phy_type = "utmi";
......@@ -1781,7 +1858,7 @@ phy1: usb-phy@7d000000 {
};
usb@7d004000 {
compatible = "nvidia,tegra210-ehci", "nvidia,tegra30-ehci", "usb-ehci";
compatible = "nvidia,tegra210-ehci", "nvidia,tegra30-ehci";
reg = <0x0 0x7d004000 0x0 0x4000>;
interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
phy_type = "utmi";
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment