mirror of
git://nv-tegra.nvidia.com/device/hardware/nvidia/t23x-public-dts.git
synced 2025-12-22 09:12:02 +03:00
Some discrete graphics cards such as the NVIDIA RTX A6000 support resizable BARs. When connecting an A6000 card to the NVIDIA IGX Orin platform, resizing the BAR1 aperture to 8GB fails because the current device-tree configuration for the PCIe C5 slot cannot support this. Fix this by updating the device-tree 'reg' and 'ranges' properties for the PCIe C5 slot to support this. Signed-off-by: Jon Hunter <jonathanh@nvidia.com> Link: https://lore.kernel.org/r/20250116151903.476047-1-jonathanh@nvidia.com Signed-off-by: Thierry Reding <treding@nvidia.com> (cherry picked from commit 6d4bfe6d86af1ef52bdb4592c9afb2037f24f2c4 mainline) Bug 4309882 Change-Id: If6f66d5ee77ac3e7b13a31e9aed958b3008c2e45 Signed-off-by: Yi Ju Huang <yijuh@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3344136 Reviewed-by: Brad Griffis <bgriffis@nvidia.com> GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
477 lines
11 KiB
Devicetree
477 lines
11 KiB
Devicetree
// SPDX-License-Identifier: GPL-2.0
|
|
/dts-v1/;
|
|
|
|
#include <dt-bindings/input/linux-event-codes.h>
|
|
#include <dt-bindings/input/gpio-keys.h>
|
|
#include <dt-bindings/sound/rt5640.h>
|
|
#include "tegra234-p3701-0008.dtsi"
|
|
|
|
/ {
|
|
model = "NVIDIA IGX Orin Development Kit";
|
|
compatible = "nvidia,p3740-0002+p3701-0008", "nvidia,p3701-0008", "nvidia,tegra234";
|
|
|
|
aliases {
|
|
serial0 = &tcu;
|
|
serial1 = &uarta;
|
|
};
|
|
|
|
chosen {
|
|
stdout-path = "serial0:115200n8";
|
|
};
|
|
|
|
bus@0 {
|
|
aconnect@2900000 {
|
|
ahub@2900800 {
|
|
i2s@2901300 {
|
|
ports {
|
|
port@1 {
|
|
endpoint {
|
|
dai-format = "i2s";
|
|
remote-endpoint = <&rt5640_ep>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
i2s@2901500 {
|
|
ports {
|
|
port@1 {
|
|
endpoint {
|
|
bitclock-master;
|
|
frame-master;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
serial@3100000 {
|
|
compatible = "nvidia,tegra194-hsuart";
|
|
reset-names = "serial";
|
|
status = "okay";
|
|
};
|
|
|
|
i2c@3160000 {
|
|
status = "okay";
|
|
};
|
|
|
|
i2c@3180000 {
|
|
status = "okay";
|
|
};
|
|
|
|
i2c@3190000 {
|
|
status = "okay";
|
|
};
|
|
|
|
i2c@31b0000 {
|
|
status = "okay";
|
|
};
|
|
|
|
i2c@31c0000 {
|
|
status = "okay";
|
|
|
|
rt5640: audio-codec@1c {
|
|
compatible = "realtek,rt5640";
|
|
reg = <0x1c>;
|
|
interrupt-parent = <&gpio>;
|
|
interrupts = <TEGRA234_MAIN_GPIO(F, 3) GPIO_ACTIVE_HIGH>;
|
|
clocks = <&bpmp TEGRA234_CLK_AUD_MCLK>;
|
|
clock-names = "mclk";
|
|
|
|
realtek,dmic1-data-pin = <RT5640_DMIC1_DATA_PIN_NONE>;
|
|
realtek,dmic2-data-pin = <RT5640_DMIC2_DATA_PIN_NONE>;
|
|
realtek,jack-detect-source = <RT5640_JD_SRC_HDA_HEADER>;
|
|
|
|
sound-name-prefix = "CVB-RT";
|
|
|
|
port {
|
|
rt5640_ep: endpoint {
|
|
remote-endpoint = <&i2s4_dap>;
|
|
mclk-fs = <256>;
|
|
};
|
|
};
|
|
};
|
|
|
|
/* carrier board ID EEPROM */
|
|
eeprom@55 {
|
|
compatible = "atmel,24c02";
|
|
reg = <0x55>;
|
|
|
|
label = "system";
|
|
vcc-supply = <&vdd_1v8_ls>;
|
|
address-width = <8>;
|
|
pagesize = <8>;
|
|
size = <256>;
|
|
read-only;
|
|
};
|
|
};
|
|
|
|
i2c@31e0000 {
|
|
status = "okay";
|
|
};
|
|
|
|
spi@3270000 {
|
|
status = "okay";
|
|
};
|
|
|
|
hda@3510000 {
|
|
nvidia,model = "NVIDIA IGX Orin HDA";
|
|
status = "okay";
|
|
};
|
|
|
|
padctl@3520000 {
|
|
status = "okay";
|
|
|
|
pads {
|
|
usb2 {
|
|
lanes {
|
|
usb2-0 {
|
|
nvidia,function = "xusb";
|
|
status = "okay";
|
|
};
|
|
|
|
usb2-1 {
|
|
nvidia,function = "xusb";
|
|
status = "okay";
|
|
};
|
|
|
|
usb2-2 {
|
|
nvidia,function = "xusb";
|
|
status = "okay";
|
|
};
|
|
|
|
usb2-3 {
|
|
nvidia,function = "xusb";
|
|
status = "okay";
|
|
};
|
|
};
|
|
};
|
|
|
|
usb3 {
|
|
lanes {
|
|
usb3-0 {
|
|
nvidia,function = "xusb";
|
|
status = "okay";
|
|
};
|
|
|
|
usb3-1 {
|
|
nvidia,function = "xusb";
|
|
status = "okay";
|
|
};
|
|
|
|
usb3-2 {
|
|
nvidia,function = "xusb";
|
|
status = "okay";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
ports {
|
|
usb2-0 {
|
|
mode = "otg";
|
|
usb-role-switch;
|
|
status = "okay";
|
|
};
|
|
|
|
usb2-1 {
|
|
mode = "host";
|
|
status = "okay";
|
|
};
|
|
|
|
usb2-2 {
|
|
mode = "host";
|
|
status = "okay";
|
|
};
|
|
|
|
usb2-3 {
|
|
mode = "host";
|
|
status = "okay";
|
|
};
|
|
|
|
usb3-0 {
|
|
nvidia,usb2-companion = <2>;
|
|
status = "okay";
|
|
};
|
|
|
|
usb3-1 {
|
|
nvidia,usb2-companion = <0>;
|
|
status = "okay";
|
|
};
|
|
|
|
usb3-2 {
|
|
nvidia,usb2-companion = <1>;
|
|
status = "okay";
|
|
};
|
|
};
|
|
};
|
|
|
|
usb@3550000 {
|
|
status = "okay";
|
|
|
|
phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>,
|
|
<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>;
|
|
phy-names = "usb2-0", "usb3-0";
|
|
};
|
|
|
|
usb@3610000 {
|
|
status = "okay";
|
|
|
|
phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>,
|
|
<&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-1}>,
|
|
<&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-2}>,
|
|
<&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-3}>,
|
|
<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-0}>,
|
|
<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>,
|
|
<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-2}>;
|
|
phy-names = "usb2-0", "usb2-1", "usb2-2", "usb2-3",
|
|
"usb3-0", "usb3-1", "usb3-2";
|
|
};
|
|
|
|
fuse@3810000 {
|
|
status = "okay";
|
|
};
|
|
|
|
i2c@c240000 {
|
|
status = "okay";
|
|
};
|
|
|
|
i2c@c250000 {
|
|
status = "okay";
|
|
|
|
power-sensor@41 {
|
|
compatible = "ti,ina3221";
|
|
reg = <0x41>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
input@0 {
|
|
reg = <0x0>;
|
|
label = "CVB_ATX_12V";
|
|
shunt-resistor-micro-ohms = <2000>;
|
|
};
|
|
|
|
input@1 {
|
|
reg = <0x1>;
|
|
label = "CVB_ATX_3V3";
|
|
shunt-resistor-micro-ohms = <2000>;
|
|
};
|
|
|
|
input@2 {
|
|
reg = <0x2>;
|
|
label = "CVB_ATX_5V";
|
|
shunt-resistor-micro-ohms = <2000>;
|
|
};
|
|
};
|
|
|
|
power-sensor@44 {
|
|
compatible = "ti,ina219";
|
|
reg = <0x44>;
|
|
shunt-resistor = <2000>;
|
|
};
|
|
};
|
|
|
|
host1x@13e00000 {
|
|
nvdec@15480000 {
|
|
status = "okay";
|
|
};
|
|
};
|
|
|
|
pcie@140e0000 {
|
|
status = "okay";
|
|
vddio-pex-ctl-supply = <&vdd_1v8_ls>;
|
|
phys = <&p2u_gbe_4>, <&p2u_gbe_5>;
|
|
phy-names = "p2u-0", "p2u-1";
|
|
};
|
|
|
|
pcie@14100000 {
|
|
status = "okay";
|
|
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
|
|
vpcie3v3-supply = <&vdd_3v3_wifi>;
|
|
phys = <&p2u_hsio_3>;
|
|
phy-names = "p2u-0";
|
|
};
|
|
|
|
pcie@14160000 {
|
|
status = "okay";
|
|
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
|
|
phys = <&p2u_hsio_7>, <&p2u_hsio_6>, <&p2u_hsio_5>,
|
|
<&p2u_hsio_4>;
|
|
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3";
|
|
};
|
|
|
|
pcie@141a0000 {
|
|
reg = <0x00 0x141a0000 0x0 0x00020000 /* appl registers (128K) */
|
|
0x00 0x3a000000 0x0 0x00040000 /* configuration space (256K) */
|
|
0x00 0x3a040000 0x0 0x00040000 /* iATU_DMA reg space (256K) */
|
|
0x00 0x3a080000 0x0 0x00040000 /* DBI reg space (256K) */
|
|
0x2e 0x20000000 0x0 0x10000000>; /* ECAM (256MB) */
|
|
|
|
ranges = <0x81000000 0x00 0x3a100000 0x00 0x3a100000 0x0 0x00100000 /* downstream I/O (1MB) */
|
|
0x82000000 0x00 0x40000000 0x2e 0x30000000 0x0 0x08000000 /* non-prefetchable memory (128MB) */
|
|
0xc3000000 0x28 0x00000000 0x28 0x00000000 0x6 0x20000000>; /* prefetchable memory (25088MB) */
|
|
|
|
status = "okay";
|
|
vddio-pex-ctl-supply = <&vdd_1v8_ls>;
|
|
phys = <&p2u_nvhs_0>, <&p2u_nvhs_1>, <&p2u_nvhs_2>,
|
|
<&p2u_nvhs_3>, <&p2u_nvhs_4>, <&p2u_nvhs_5>,
|
|
<&p2u_nvhs_6>, <&p2u_nvhs_7>;
|
|
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4",
|
|
"p2u-5", "p2u-6", "p2u-7";
|
|
};
|
|
|
|
pcie@141e0000 {
|
|
status = "okay";
|
|
vddio-pex-ctl-supply = <&vdd_1v8_ls>;
|
|
phys = <&p2u_gbe_0>, <&p2u_gbe_1>;
|
|
phy-names = "p2u-0", "p2u-1";
|
|
};
|
|
};
|
|
|
|
gpio-keys {
|
|
compatible = "gpio-keys";
|
|
status = "okay";
|
|
|
|
key-force-recovery {
|
|
label = "Force Recovery";
|
|
gpios = <&gpio TEGRA234_MAIN_GPIO(G, 0) GPIO_ACTIVE_LOW>;
|
|
linux,input-type = <EV_KEY>;
|
|
linux,code = <BTN_1>;
|
|
};
|
|
|
|
key-power {
|
|
label = "Power";
|
|
gpios = <&gpio_aon TEGRA234_AON_GPIO(EE, 4) GPIO_ACTIVE_LOW>;
|
|
linux,input-type = <EV_KEY>;
|
|
linux,code = <KEY_POWER>;
|
|
wakeup-event-action = <EV_ACT_ASSERTED>;
|
|
wakeup-source;
|
|
};
|
|
|
|
key-suspend {
|
|
label = "Suspend";
|
|
gpios = <&gpio TEGRA234_MAIN_GPIO(G, 2) GPIO_ACTIVE_LOW>;
|
|
linux,input-type = <EV_KEY>;
|
|
linux,code = <KEY_SLEEP>;
|
|
};
|
|
};
|
|
|
|
serial {
|
|
status = "okay";
|
|
};
|
|
|
|
sound {
|
|
status = "okay";
|
|
|
|
compatible = "nvidia,tegra186-audio-graph-card";
|
|
|
|
dais = /* ADMAIF (FE) Ports */
|
|
<&admaif0_port>, <&admaif1_port>, <&admaif2_port>, <&admaif3_port>,
|
|
<&admaif4_port>, <&admaif5_port>, <&admaif6_port>, <&admaif7_port>,
|
|
<&admaif8_port>, <&admaif9_port>, <&admaif10_port>, <&admaif11_port>,
|
|
<&admaif12_port>, <&admaif13_port>, <&admaif14_port>, <&admaif15_port>,
|
|
<&admaif16_port>, <&admaif17_port>, <&admaif18_port>, <&admaif19_port>,
|
|
/* XBAR Ports */
|
|
<&xbar_i2s1_port>, <&xbar_i2s2_port>, <&xbar_i2s4_port>,
|
|
<&xbar_i2s6_port>, <&xbar_dmic3_port>,
|
|
<&xbar_sfc1_in_port>, <&xbar_sfc2_in_port>,
|
|
<&xbar_sfc3_in_port>, <&xbar_sfc4_in_port>,
|
|
<&xbar_mvc1_in_port>, <&xbar_mvc2_in_port>,
|
|
<&xbar_amx1_in1_port>, <&xbar_amx1_in2_port>,
|
|
<&xbar_amx1_in3_port>, <&xbar_amx1_in4_port>,
|
|
<&xbar_amx2_in1_port>, <&xbar_amx2_in2_port>,
|
|
<&xbar_amx2_in3_port>, <&xbar_amx2_in4_port>,
|
|
<&xbar_amx3_in1_port>, <&xbar_amx3_in2_port>,
|
|
<&xbar_amx3_in3_port>, <&xbar_amx3_in4_port>,
|
|
<&xbar_amx4_in1_port>, <&xbar_amx4_in2_port>,
|
|
<&xbar_amx4_in3_port>, <&xbar_amx4_in4_port>,
|
|
<&xbar_adx1_in_port>, <&xbar_adx2_in_port>,
|
|
<&xbar_adx3_in_port>, <&xbar_adx4_in_port>,
|
|
<&xbar_mix_in1_port>, <&xbar_mix_in2_port>,
|
|
<&xbar_mix_in3_port>, <&xbar_mix_in4_port>,
|
|
<&xbar_mix_in5_port>, <&xbar_mix_in6_port>,
|
|
<&xbar_mix_in7_port>, <&xbar_mix_in8_port>,
|
|
<&xbar_mix_in9_port>, <&xbar_mix_in10_port>,
|
|
<&xbar_asrc_in1_port>, <&xbar_asrc_in2_port>,
|
|
<&xbar_asrc_in3_port>, <&xbar_asrc_in4_port>,
|
|
<&xbar_asrc_in5_port>, <&xbar_asrc_in6_port>,
|
|
<&xbar_asrc_in7_port>,
|
|
<&xbar_ope1_in_port>,
|
|
/* HW accelerators */
|
|
<&sfc1_out_port>, <&sfc2_out_port>,
|
|
<&sfc3_out_port>, <&sfc4_out_port>,
|
|
<&mvc1_out_port>, <&mvc2_out_port>,
|
|
<&amx1_out_port>, <&amx2_out_port>,
|
|
<&amx3_out_port>, <&amx4_out_port>,
|
|
<&adx1_out1_port>, <&adx1_out2_port>,
|
|
<&adx1_out3_port>, <&adx1_out4_port>,
|
|
<&adx2_out1_port>, <&adx2_out2_port>,
|
|
<&adx2_out3_port>, <&adx2_out4_port>,
|
|
<&adx3_out1_port>, <&adx3_out2_port>,
|
|
<&adx3_out3_port>, <&adx3_out4_port>,
|
|
<&adx4_out1_port>, <&adx4_out2_port>,
|
|
<&adx4_out3_port>, <&adx4_out4_port>,
|
|
<&mix_out1_port>, <&mix_out2_port>, <&mix_out3_port>,
|
|
<&mix_out4_port>, <&mix_out5_port>,
|
|
<&asrc_out1_port>, <&asrc_out2_port>, <&asrc_out3_port>,
|
|
<&asrc_out4_port>, <&asrc_out5_port>, <&asrc_out6_port>,
|
|
<&ope1_out_port>,
|
|
/* BE I/O Ports */
|
|
<&i2s1_port>, <&i2s2_port>, <&i2s4_port>, <&i2s6_port>,
|
|
<&dmic3_port>;
|
|
|
|
label = "NVIDIA IGX Orin APE";
|
|
|
|
widgets = "Microphone", "CVB-RT MIC Jack",
|
|
"Microphone", "CVB-RT MIC",
|
|
"Headphone", "CVB-RT HP Jack",
|
|
"Speaker", "CVB-RT SPK";
|
|
|
|
routing = /* I2S4 <-> RT5640 */
|
|
"CVB-RT AIF1 Playback", "I2S4 DAP-Playback",
|
|
"I2S4 DAP-Capture", "CVB-RT AIF1 Capture",
|
|
/* RT5640 codec controls */
|
|
"CVB-RT HP Jack", "CVB-RT HPOL",
|
|
"CVB-RT HP Jack", "CVB-RT HPOR",
|
|
"CVB-RT IN1P", "CVB-RT MIC Jack",
|
|
"CVB-RT IN2P", "CVB-RT MIC Jack",
|
|
"CVB-RT IN2N", "CVB-RT MIC Jack",
|
|
"CVB-RT IN3P", "CVB-RT MIC Jack",
|
|
"CVB-RT SPK", "CVB-RT SPOLP",
|
|
"CVB-RT SPK", "CVB-RT SPORP",
|
|
"CVB-RT SPK", "CVB-RT LOUTL",
|
|
"CVB-RT SPK", "CVB-RT LOUTR",
|
|
"CVB-RT DMIC1", "CVB-RT MIC",
|
|
"CVB-RT DMIC2", "CVB-RT MIC";
|
|
};
|
|
|
|
vdd_3v3_dp: regulator-vdd-3v3-dp {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "VDD_3V3_DP";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
vin-supply = <&vdd_3v3_sys>;
|
|
gpio = <&gpio TEGRA234_MAIN_GPIO(H, 6) 0>;
|
|
enable-active-high;
|
|
regulator-always-on;
|
|
};
|
|
|
|
vdd_3v3_sys: regulator-vdd-3v3-sys {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "VDD_3V3_SYS";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
};
|
|
|
|
vdd_3v3_wifi: regulator-vdd-3v3-wifi {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "VDD_3V3_WIFI";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
gpio = <&gpio TEGRA234_MAIN_GPIO(G, 3) GPIO_ACTIVE_HIGH>;
|
|
regulator-boot-on;
|
|
enable-active-high;
|
|
};
|
|
};
|