mirror of
git://nv-tegra.nvidia.com/device/hardware/nvidia/t23x-public-dts.git
synced 2025-12-22 09:12:02 +03:00
Add IGX500 dts support to nv-public
Bug 5018940
Change-Id: Ida4a7de3d060dc660acbbdbf9b5020ba198dc5d3
Signed-off-by: Hiteshkumar Patel <hiteshkumarg@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3271404
(cherry picked from commit 34a5de4f2c)
Reviewed-on: https://git-master.nvidia.com/r/c/device/hardware/nvidia/t23x-public-dts/+/3275750
Reviewed-by: Dipen Patel <dipenp@nvidia.com>
Reviewed-by: Brad Griffis <bgriffis@nvidia.com>
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
388 lines
9.7 KiB
Devicetree
388 lines
9.7 KiB
Devicetree
// SPDX-License-Identifier: GPL-2.0-only
|
|
// SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
|
|
#include <dt-bindings/input/linux-event-codes.h>
|
|
#include <dt-bindings/input/gpio-keys.h>
|
|
#include "tegra234-dcb-p3971-0000+p3701-0000.dtsi"
|
|
#include <dt-bindings/sound/rt5640.h>
|
|
|
|
/ {
|
|
bus@0 {
|
|
aconnect@2900000 {
|
|
ahub@2900800 {
|
|
i2s@2901300 {
|
|
ports {
|
|
port@1 {
|
|
endpoint {
|
|
dai-format = "i2s";
|
|
remote-endpoint = <&rt5640_ep>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
hda@3510000 {
|
|
nvidia,model = "NVIDIA IGX500 Orin HDA";
|
|
status = "okay";
|
|
};
|
|
|
|
i2c@3160000 {
|
|
status = "okay";
|
|
|
|
eeprom@56 {
|
|
compatible = "atmel,24c02";
|
|
reg = <0x56>;
|
|
|
|
label = "system";
|
|
vcc-supply = <&vdd_1v8_cvb>;
|
|
address-width = <8>;
|
|
pagesize = <8>;
|
|
size = <256>;
|
|
read-only;
|
|
};
|
|
};
|
|
|
|
i2c@31b0000 {
|
|
status = "okay";
|
|
};
|
|
|
|
host1x@13e00000 {
|
|
tsec@15500000 {
|
|
status = "okay";
|
|
};
|
|
};
|
|
|
|
i2c@31c0000 {
|
|
status = "okay";
|
|
|
|
rt5640: audio-codec@1c {
|
|
compatible = "realtek,rt5640";
|
|
reg = <0x1c>;
|
|
|
|
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>;
|
|
|
|
/* Codec IRQ output */
|
|
interrupt-parent = <&gpio>;
|
|
interrupts = <TEGRA234_MAIN_GPIO(F, 3) GPIO_ACTIVE_HIGH>;
|
|
|
|
#sound-dai-cells = <1>;
|
|
sound-name-prefix = "CVB-RT";
|
|
|
|
status = "okay";
|
|
|
|
port {
|
|
rt5640_ep: endpoint {
|
|
remote-endpoint = <&i2s4_dap>;
|
|
mclk-fs = <256>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
/* SPI1 in 40 pin conn */
|
|
spi@3210000 {
|
|
status = "okay";
|
|
spi@0 { /* chip select 0 */
|
|
compatible = "tegra-spidev";
|
|
reg = <0x0>;
|
|
spi-max-frequency = <50000000>;
|
|
};
|
|
|
|
spi@1 { /* chips select 1 */
|
|
compatible = "tegra-spidev";
|
|
reg = <0x1>;
|
|
spi-max-frequency = <50000000>;
|
|
};
|
|
};
|
|
|
|
/* SPI3 is connected to Aurix */
|
|
spi@3230000 {
|
|
status = "disabled";
|
|
};
|
|
|
|
pwm@3280000 {
|
|
status = "okay";
|
|
};
|
|
|
|
|
|
pwm@32f0000 {
|
|
status = "okay";
|
|
};
|
|
|
|
/* Enable fan PWM */
|
|
pwm@32a0000 {
|
|
status = "okay";
|
|
};
|
|
|
|
/*
|
|
* This is on 40-pin header (pin-18)
|
|
* On Orin, the pad control configures it as GPIO/SDMMC.
|
|
* No pwm support.
|
|
*/
|
|
pwm@32c0000 {
|
|
status = "disabled";
|
|
};
|
|
|
|
tachometer@39c0000 {
|
|
status = "okay";
|
|
};
|
|
|
|
pcie@14100000 {
|
|
status = "okay";
|
|
|
|
vddio-pex-ctl-supply = <&vdd_3v3_ao_cvb>;
|
|
|
|
phys = <&p2u_hsio_3>;
|
|
phy-names = "p2u-0";
|
|
};
|
|
|
|
pcie@14160000 {
|
|
status = "okay";
|
|
|
|
vddio-pex-ctl-supply = <&vdd_3v3_ao_cvb>;
|
|
|
|
phys = <&p2u_hsio_4>, <&p2u_hsio_5>, <&p2u_hsio_6>,
|
|
<&p2u_hsio_7>;
|
|
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3";
|
|
};
|
|
|
|
pcie@141a0000 {
|
|
status = "okay";
|
|
|
|
vddio-pex-ctl-supply = <&vdd_3v3_ao_cvb>;
|
|
|
|
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_3v3_ao_cvb>;
|
|
|
|
phys = <&p2u_gbe_0>, <&p2u_gbe_1>, <&p2u_gbe_2>, <&p2u_gbe_3>,
|
|
<&p2u_gbe_4>, <&p2u_gbe_5>, <&p2u_gbe_6>, <&p2u_gbe_7>;
|
|
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4",
|
|
"p2u-5", "p2u-6", "p2u-7";
|
|
};
|
|
|
|
ufshci@2500000 {
|
|
status = "okay";
|
|
};
|
|
};
|
|
|
|
chosen {
|
|
bootargs = "console=ttyTCU0,115200n8";
|
|
stdout-path = "serial0:115200n8";
|
|
};
|
|
|
|
display@13800000 {
|
|
status = "okay";
|
|
};
|
|
|
|
eeprom-manager {
|
|
data-size = <0x100>;
|
|
bus@0 {
|
|
i2c-bus = <&gen1_i2c>;
|
|
eeprom@1 {
|
|
slave-address = <0x56>;
|
|
label = "cvb";
|
|
};
|
|
};
|
|
};
|
|
|
|
fan: pwm-fan {
|
|
compatible = "pwm-fan";
|
|
pwms = <&pwm3 0 45334>;
|
|
#cooling-cells = <2>;
|
|
};
|
|
|
|
/* fan_nvme is no-stuff, same PWM instance is routed to 40-pin header */
|
|
fan_nvme: pwm-fan-nvme {
|
|
compatible = "pwm-fan";
|
|
pwms = <&pwm8 0 45334>;
|
|
#cooling-cells = <2>;
|
|
status = "disabled";
|
|
};
|
|
|
|
gpio-keys {
|
|
compatible = "gpio-keys";
|
|
|
|
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;
|
|
};
|
|
};
|
|
|
|
vcc_src_20v_cvb: regulator-vcc-src-fet {
|
|
compatible = "regulator-fixed";
|
|
reg = <1>;
|
|
regulator-name = "VCC_SRC_FET";
|
|
regulator-min-microvolt = <20000000>;
|
|
regulator-max-microvolt = <20000000>;
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
};
|
|
|
|
vdd_5v_cvb: vdd_5v_ao_cvb: regulator-vdd-5v-ao {
|
|
compatible = "regulator-fixed";
|
|
reg = <2>;
|
|
regulator-name = "VDD_5V_AO";
|
|
regulator-min-microvolt = <5000000>;
|
|
regulator-max-microvolt = <5000000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
vdd_3v3_cbv: regulator-vdd-3v3 {
|
|
compatible = "regulator-fixed";
|
|
reg = <3>;
|
|
regulator-name = "VDD_3V3";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
};
|
|
|
|
vdd_3v3_ao_cvb: regulator-vdd-3v3-ao {
|
|
compatible = "regulator-fixed";
|
|
reg = <4>;
|
|
regulator-name = "VDD_3V3_AO";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
vdd_1v8_cvb: regulator-vdd-1v8 {
|
|
compatible = "regulator-fixed";
|
|
reg = <5>;
|
|
regulator-name = "VDD_1V8";
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1800000>;
|
|
};
|
|
|
|
vdd_12v_cvb: regulator-vdd-12v {
|
|
compatible = "regulator-fixed";
|
|
reg = <6>;
|
|
regulator-name = "VDD_12V";
|
|
regulator-min-microvolt = <12000000>;
|
|
regulator-max-microvolt = <12000000>;
|
|
gpio = <&gpio TEGRA234_MAIN_GPIO(A, 1) GPIO_ACTIVE_LOW>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
vdd_3v3_dp_en: regulator-vdd-3v3-dp-en {
|
|
compatible = "regulator-fixed";
|
|
reg = <7>;
|
|
regulator-name = "VDD_3V3_DP_EN";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
gpio = <&gpio TEGRA234_MAIN_GPIO(H, 6) GPIO_ACTIVE_HIGH>;
|
|
regulator-always-on;
|
|
enable-active-high;
|
|
};
|
|
|
|
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 IGX500 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";
|
|
};
|
|
};
|