arm64: tegra: Device tree changes for v6.12-rc1

This contains a slew of cleanups and consolidation changes for several
 Orin boards and also fix some minor issues and enable more features on
 the Jetson TX1.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAmbR0fIACgkQ3SOs138+
 s6HAWw//cB9J6sjY289VRdfS9rMiI7wzVhe6F/FzUljSfTX5cMou2J/SeJQruYyK
 f058WzlWlseR91TIf11AFDNDPbMzAHyReU4aE0PD2fiyQE1jor8AhlmISXwvpqMZ
 pxFmKkDrO0YTODam5xFPDFjyt/lIe1UpcIIXfx/19/dTinLoiXmLuaIPM5xkMh5G
 DsRlN1Zfh99QwJQXCtPa/Y0IWYWngqr8i98k+xB5TTFSUaM1L61PJL3zYqaSSI4v
 1XFCbZ/XhOL1vbg23sY0mXSl62SKAvrRP1hlij2o5YHoB8rT/qVvoXuTwEkrhOoV
 qeRRsmt6F1pZLto+feRelauxQDy5EVkQTxJbeABoud5EhaBXCqgr44/bD8PxynX0
 Ye7NWNrr32YPytgmiMDlxAMW5jZm+oL+G+bCG5TIeTFW08+Jvxm2A+2cnhZMoqey
 3Un3wjHByXfkdGov28p9XSkeCk1y3VUPyjt18A3CR5JqE7lMlvyrCxuvpNJ/BsqN
 FGeHlmRffRx1Z7Kv6kJ2qp4dwqAAMg1lMlkNaYzv9fH1mZS4nzzOenSRofLgg9S4
 ZXBqcoiRvfWM8oBUME08MQw4f/AYgS6qxhGONxmC1tCnYBEUIanDWxfVr9bJrQwP
 dvRdQbCeOVSXF9kP3PkCEUngPApW7l6iC5uAQBNGDogGtHYfaAg=
 =9eOb
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmbW5kcACgkQYKtH/8kJ
 Uif7ERAA4PtYrX7BxGAWOJVdiNKv43WDaDNq8t2S0nwQbfa6TWap6hiCSxevK9da
 yescLLRLxTPPQZ2xbBTYBuV6I1NlI/JqcSTmQfrBGzpps2xj1dGG4wkNSOMx1MIW
 kAcYRQPWOMkmNwr+lyPM4LNVGe3Xis/5oLXVOMOtaQNvDxxnJeZTlLevqpHljLku
 ZKHGW88CS+wVHqhU6ozDPD6TPOT3zEy5+1wQ44gxYEpMY49GAgup35rqbhKvXP7h
 PIl2fuESW9mgENG5jpfxK5trqprlAf0tdFlu6PbyOnsCcNxXpSQ9C3OsOg4iAdS3
 c1qhksIC1F4pwxqiHDyN9ucDlzPJY95RpGf59MlAcBwLZU/2w75a4TDTgw2y72yy
 67RYXnkOph++N8259tkF+EN2+CZuyXBVwUMBFJLGwtYGl+JhKYkyfLuq5QRTCoEU
 6fFStTWUI5NcBqjpSc+mF5aftDCTx41IZTz1PGBW7vAdMnQ0AsGdRZKWR2ezNw/j
 yVjqEkj+DKiBUkC0qx4g6blE71tRm9wB3ub64vwzt7uoB4QlXXwO28q5UaGW71ao
 fn4x4rwa/uND4/HXiRcLjAyv07hRJXhmtMQrkKeRERMBhMeyJmgwNEq8WgVmJAMe
 Cb37obFW3c0BXFS80IJWqfkEIRKoDDescfqNsCNtgejF839/m2c=
 =MPzU
 -----END PGP SIGNATURE-----

Merge tag 'tegra-for-6.12-arm64-dt' of https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/dt

arm64: tegra: Device tree changes for v6.12-rc1

This contains a slew of cleanups and consolidation changes for several
Orin boards and also fix some minor issues and enable more features on
the Jetson TX1.

* tag 'tegra-for-6.12-arm64-dt' of https://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
  arm64: tegra: Add thermal nodes to AGX Orin SKU8
  arm64: tegra: Move BPMP nodes to AGX Orin module
  arm64: tegra: Move padctl supply nodes to AGX Orin module
  arm64: tegra: Move AGX Orin nodes to correct location
  arm64: tegra: Combine IGX Orin board files
  arm64: tegra: Combine AGX Orin board files
  arm64: tegra: Add common nodes to AGX Orin module
  arm64: tegra: Wire up WiFi on Jetson TX1 module
  arm64: tegra: Wire up Bluetooth on Jetson TX1 module
  arm64: tegra: Wire up power sensors on Jetson TX1 DevKit
  arm64: tegra: Add p3767 PCIe C4 EP details
  arm64: tegra: Add Tegra234 PCIe C4 EP definition
  arm64: tegra: Add wp-gpio for P2597's external card slot
  arm64: tegra: Fix gpio for P2597 vmmc regulator
  arm64: tegra: Correct location of power-sensors for IGX Orin
  arm64: tegra: enable same UARTs for Orin NX/Nano
  arm64: tegra: Add DMA properties for Tegra234 UARTA

Link: https://lore.kernel.org/r/20240830141004.3195210-5-thierry.reding@gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Arnd Bergmann 2024-09-03 10:34:39 +00:00
commit d3f92f5d8e
12 changed files with 648 additions and 590 deletions

View File

@ -33,6 +33,51 @@ serial@70006000 {
status = "okay";
};
serial@70006300 {
/delete-property/ reg-shift;
status = "okay";
compatible = "nvidia,tegra30-hsuart";
reset-names = "serial";
bluetooth {
compatible = "brcm,bcm43540-bt";
device-wakeup-gpios = <&gpio TEGRA_GPIO(H, 3) GPIO_ACTIVE_HIGH>;
shutdown-gpios = <&gpio TEGRA_GPIO(H, 4) GPIO_ACTIVE_HIGH>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA_GPIO(H, 5) IRQ_TYPE_LEVEL_LOW>;
interrupt-names = "host-wakeup";
};
};
i2c@7000c400 {
status = "okay";
power-sensor@40 {
compatible = "ti,ina3221";
reg = <0x40>;
#address-cells = <1>;
#size-cells = <0>;
input@0 {
reg = <0x0>;
label = "VDD_IN";
shunt-resistor-micro-ohms = <20000>;
};
input@1 {
reg = <0x1>;
label = "VDD_GPU";
shunt-resistor-micro-ohms = <10000>;
};
input@2 {
reg = <0x2>;
label = "VDD_CPU";
shunt-resistor-micro-ohms = <10000>;
};
};
};
i2c@7000c500 {
status = "okay";
@ -295,6 +340,25 @@ pmc@7000e400 {
nvidia,sys-clock-req-active-high;
};
mmc@700b0200 {
status = "okay";
bus-width = <4>;
non-removable;
power-gpios = <&gpio TEGRA_GPIO(H, 0) GPIO_ACTIVE_HIGH>;
vqmmc-supply = <&vdd_1v8>;
vmmc-supply = <&vdd_3v3_sys>;
#address-cells = <1>;
#size-cells = <0>;
wifi@1 {
compatible = "brcm,bcm4354-fmac";
reg = <1>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA_GPIO(H, 2) IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "host-wake";
};
};
/* eMMC */
mmc@700b0600 {
status = "okay";

View File

@ -1319,6 +1319,56 @@ i2c@7000c400 {
status = "okay";
clock-frequency = <100000>;
power-sensor@42 {
compatible = "ti,ina3221";
reg = <0x42>;
#address-cells = <1>;
#size-cells = <0>;
input@0 {
reg = <0x0>;
label = "VDD_MUX";
shunt-resistor-micro-ohms = <20000>;
};
input@1 {
reg = <0x1>;
label = "VDD_5V_IO_SYS";
shunt-resistor-micro-ohms = <5000>;
};
input@2 {
reg = <0x2>;
label = "VDD_3V3_SYS";
shunt-resistor-micro-ohms = <10000>;
};
};
power-sensor@43 {
compatible = "ti,ina3221";
reg = <0x43>;
#address-cells = <1>;
#size-cells = <0>;
input@0 {
reg = <0x0>;
label = "VDD_3V3_IO";
shunt-resistor-micro-ohms = <10000>;
};
input@1 {
reg = <0x1>;
label = "VDD_1V8_IO";
shunt-resistor-micro-ohms = <10000>;
};
input@2 {
reg = <0x2>;
label = "VDD_M2_IN";
shunt-resistor-micro-ohms = <10000>;
};
};
exp1: gpio@74 {
compatible = "ti,tca9539";
reg = <0x74>;
@ -1517,6 +1567,7 @@ mmc@700b0000 {
bus-width = <4>;
cd-gpios = <&gpio TEGRA_GPIO(Z, 1) GPIO_ACTIVE_LOW>;
wp-gpios = <&gpio TEGRA_GPIO(Z, 4) GPIO_ACTIVE_HIGH>;
vqmmc-supply = <&vddio_sdmmc>;
vmmc-supply = <&vdd_3v3_sd>;
@ -1603,7 +1654,7 @@ vdd_3v3_sd: regulator-vdd-3v3-sd {
regulator-name = "VDD_3V3_SD";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio TEGRA_GPIO(Z, 4) GPIO_ACTIVE_HIGH>;
gpio = <&gpio TEGRA_GPIO(Z, 3) GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_3v3_sys>;

View File

@ -1,146 +1,11 @@
// SPDX-License-Identifier: GPL-2.0
#include "tegra234.dtsi"
#include "tegra234-p3701.dtsi"
/ {
model = "NVIDIA Jetson AGX Orin";
compatible = "nvidia,p3701-0000", "nvidia,tegra234";
bus@0 {
i2c@3160000 {
status = "okay";
eeprom@50 {
compatible = "atmel,24c02";
reg = <0x50>;
label = "module";
vcc-supply = <&vdd_1v8_hs>;
address-width = <8>;
pagesize = <8>;
size = <256>;
read-only;
};
};
spi@3270000 {
status = "okay";
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <102000000>;
spi-tx-bus-width = <4>;
spi-rx-bus-width = <4>;
};
};
mmc@3400000 {
status = "okay";
bus-width = <4>;
cd-gpios = <&gpio TEGRA234_MAIN_GPIO(G, 7) GPIO_ACTIVE_LOW>;
disable-wp;
};
mmc@3460000 {
status = "okay";
bus-width = <8>;
non-removable;
};
padctl@3520000 {
vclamp-usb-supply = <&vdd_1v8_ao>;
avdd-usb-supply = <&vdd_3v3_ao>;
ports {
usb2-0 {
vbus-supply = <&vdd_5v0_sys>;
};
usb2-1 {
vbus-supply = <&vdd_5v0_sys>;
};
usb2-2 {
vbus-supply = <&vdd_5v0_sys>;
};
usb2-3 {
vbus-supply = <&vdd_5v0_sys>;
};
};
};
rtc@c2a0000 {
status = "okay";
};
pmc@c360000 {
nvidia,invert-interrupt;
};
};
vdd_5v0_sys: regulator-vdd-5v0-sys {
compatible = "regulator-fixed";
regulator-name = "VIN_SYS_5V0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
};
vdd_1v8_ls: regulator-vdd-1v8-ls {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_LS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_1v8_hs: regulator-vdd-1v8-hs {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_HS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_1v8_ao: regulator-vdd-1v8-ao {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_AO";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_3v3_ao: regulator-vdd-3v3-ao {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_AO";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
vdd_3v3_pcie: regulator-vdd-3v3-pcie {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_PCIE";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio TEGRA234_MAIN_GPIO(H, 4) GPIO_ACTIVE_HIGH>;
regulator-boot-on;
enable-active-high;
};
vdd_12v_pcie: regulator-vdd-12v-pcie {
compatible = "regulator-fixed";
regulator-name = "VDD_12V_PCIE";
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
gpio = <&gpio TEGRA234_MAIN_GPIO(A, 1) GPIO_ACTIVE_LOW>;
regulator-boot-on;
};
thermal-zones {
tj-thermal {
polling-delay = <1000>;

View File

@ -1,145 +1,29 @@
// SPDX-License-Identifier: GPL-2.0
#include "tegra234.dtsi"
#include "tegra234-p3701.dtsi"
/ {
compatible = "nvidia,p3701-0008", "nvidia,tegra234";
bus@0 {
i2c@3160000 {
thermal-zones {
tj-thermal {
polling-delay = <1000>;
polling-delay-passive = <1000>;
status = "okay";
eeprom@50 {
compatible = "atmel,24c02";
reg = <0x50>;
label = "module";
vcc-supply = <&vdd_1v8_hs>;
address-width = <8>;
pagesize = <8>;
size = <256>;
read-only;
};
};
spi@3270000 {
status = "okay";
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <102000000>;
spi-tx-bus-width = <4>;
spi-rx-bus-width = <4>;
};
};
mmc@3460000 {
status = "okay";
bus-width = <8>;
non-removable;
};
i2c@c240000 {
status = "okay";
};
i2c@c250000 {
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>;
trips {
tj_trip_active0: active-0 {
temperature = <85000>;
hysteresis = <4000>;
type = "active";
};
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>;
tj_trip_active1: active-1 {
temperature = <105000>;
hysteresis = <4000>;
type = "active";
};
};
power-sensor@44 {
compatible = "ti,ina219";
reg = <0x44>;
shunt-resistor = <2000>;
};
};
rtc@c2a0000 {
status = "okay";
};
pmc@c360000 {
nvidia,invert-interrupt;
};
};
bpmp {
i2c {
status = "okay";
thermal-sensor@4c {
status = "okay";
reg = <0x4c>;
vcc-supply = <&vdd_1v8_ao>;
};
};
thermal {
status = "okay";
};
};
vdd_1v8_ao: regulator-vdd-1v8-ao {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_AO";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_1v8_hs: regulator-vdd-1v8-hs {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_HS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_1v8_ls: regulator-vdd-1v8-ls {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_LS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_3v3_ao: regulator-vdd-3v3-ao {
compatible = "regulator-fixed";
regulator-name = "vdd-AO-3v3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
vdd_5v0_sys: regulator-vdd-5v0-sys {
compatible = "regulator-fixed";
regulator-name = "VIN_SYS_5V0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
};
};

View File

@ -1,5 +1,7 @@
// SPDX-License-Identifier: GPL-2.0
#include "tegra234.dtsi"
/ {
compatible = "nvidia,p3701", "nvidia,tegra234";
@ -45,6 +47,63 @@ interrupt-controller@2a40000 {
};
};
i2c@3160000 {
status = "okay";
eeprom@50 {
compatible = "atmel,24c02";
reg = <0x50>;
label = "module";
vcc-supply = <&vdd_1v8_hs>;
address-width = <8>;
pagesize = <8>;
size = <256>;
read-only;
};
};
spi@3270000 {
status = "okay";
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-max-frequency = <102000000>;
spi-tx-bus-width = <4>;
spi-rx-bus-width = <4>;
};
};
mmc@3460000 {
status = "okay";
bus-width = <8>;
non-removable;
};
padctl@3520000 {
vclamp-usb-supply = <&vdd_1v8_ao>;
avdd-usb-supply = <&vdd_3v3_ao>;
ports {
usb2-0 {
vbus-supply = <&vdd_5v0_sys>;
};
usb2-1 {
vbus-supply = <&vdd_5v0_sys>;
};
usb2-2 {
vbus-supply = <&vdd_5v0_sys>;
};
usb2-3 {
vbus-supply = <&vdd_5v0_sys>;
};
};
};
i2c@c240000 {
status = "okay";
@ -97,5 +156,71 @@ input@2 {
};
};
};
rtc@c2a0000 {
status = "okay";
};
pmc@c360000 {
nvidia,invert-interrupt;
};
};
bpmp {
i2c {
status = "okay";
thermal-sensor@4c {
compatible = "ti,tmp451";
status = "okay";
reg = <0x4c>;
vcc-supply = <&vdd_1v8_ao>;
};
};
thermal {
status = "okay";
};
};
vdd_1v8_ao: regulator-vdd-1v8-ao {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_AO";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_1v8_hs: regulator-vdd-1v8-hs {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_HS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_1v8_ls: regulator-vdd-1v8-ls {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_LS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_3v3_ao: regulator-vdd-3v3-ao {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_AO";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
vdd_5v0_sys: regulator-vdd-5v0-sys {
compatible = "regulator-fixed";
regulator-name = "VIN_SYS_5V0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
};
};

View File

@ -3,9 +3,9 @@
#include <dt-bindings/input/linux-event-codes.h>
#include <dt-bindings/input/gpio-keys.h>
#include <dt-bindings/sound/rt5640.h>
#include "tegra234-p3701-0000.dtsi"
#include "tegra234-p3737-0000.dtsi"
/ {
model = "NVIDIA Jetson AGX Orin Developer Kit";
@ -22,23 +22,97 @@ chosen {
};
bus@0 {
aconnect@2900000 {
ahub@2900800 {
i2s@2901000 {
ports {
port@1 {
endpoint {
dai-format = "i2s";
remote-endpoint = <&rt5640_ep>;
};
};
};
};
};
};
serial@3100000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
i2c@3160000 {
status = "okay";
eeprom@56 {
compatible = "atmel,24c02";
reg = <0x56>;
label = "system";
vcc-supply = <&vdd_1v8_sys>;
address-width = <8>;
pagesize = <8>;
size = <256>;
read-only;
};
};
serial@31d0000 {
current-speed = <115200>;
status = "okay";
};
i2c@31e0000 {
status = "okay";
audio-codec@1c {
compatible = "realtek,rt5640";
reg = <0x1c>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(AC, 5) 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 = <&i2s1_dap>;
mclk-fs = <256>;
};
};
};
};
pwm@3280000 {
status = "okay";
};
pwm@32a0000 {
assigned-clocks = <&bpmp TEGRA234_CLK_PWM3>;
assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLP_OUT0>;
status = "okay";
};
pwm@32c0000 {
status = "okay";
};
pwm@32f0000 {
status = "okay";
};
mmc@3400000 {
status = "okay";
bus-width = <4>;
cd-gpios = <&gpio TEGRA234_MAIN_GPIO(G, 7) GPIO_ACTIVE_LOW>;
disable-wp;
};
hda@3510000 {
nvidia,model = "NVIDIA Jetson AGX Orin HDA";
status = "okay";
@ -341,8 +415,11 @@ key-suspend {
};
};
pwm-fan {
fan: pwm-fan {
compatible = "pwm-fan";
cooling-levels = <66 215 255>;
pwms = <&pwm3 0 45334>;
#cooling-cells = <2>;
};
serial {
@ -444,4 +521,31 @@ map-active-1 {
};
};
};
vdd_1v8_sys: regulator-vdd-1v8-sys {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_SYS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
vdd_3v3_pcie: regulator-vdd-3v3-pcie {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_PCIE";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio TEGRA234_MAIN_GPIO(H, 4) GPIO_ACTIVE_HIGH>;
regulator-boot-on;
enable-active-high;
};
vdd_12v_pcie: regulator-vdd-12v-pcie {
compatible = "regulator-fixed";
regulator-name = "VDD_12V_PCIE";
regulator-min-microvolt = <12000000>;
regulator-max-microvolt = <12000000>;
gpio = <&gpio TEGRA234_MAIN_GPIO(A, 1) GPIO_ACTIVE_LOW>;
regulator-boot-on;
};
};

View File

@ -1,90 +0,0 @@
// SPDX-License-Identifier: GPL-2.0
#include <dt-bindings/sound/rt5640.h>
/ {
compatible = "nvidia,p3737-0000";
bus@0 {
aconnect@2900000 {
ahub@2900800 {
i2s@2901000 {
ports {
port@1 {
endpoint {
dai-format = "i2s";
remote-endpoint = <&rt5640_ep>;
};
};
};
};
};
};
i2c@3160000 {
status = "okay";
eeprom@56 {
compatible = "atmel,24c02";
reg = <0x56>;
label = "system";
vcc-supply = <&vdd_1v8_sys>;
address-width = <8>;
pagesize = <8>;
size = <256>;
read-only;
};
};
i2c@31e0000 {
status = "okay";
audio-codec@1c {
compatible = "realtek,rt5640";
reg = <0x1c>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA234_MAIN_GPIO(AC, 5) 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 = <&i2s1_dap>;
mclk-fs = <256>;
};
};
};
};
pwm@3280000 {
status = "okay";
};
pwm@32c0000 {
status = "okay";
};
pwm@32f0000 {
status = "okay";
};
};
fan: pwm-fan {
compatible = "pwm-fan";
pwms = <&pwm3 0 45334>;
#cooling-cells = <2>;
};
vdd_1v8_sys: regulator-vdd-1v8-sys {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8_SYS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
};
};

View File

@ -3,8 +3,8 @@
#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"
#include "tegra234-p3740-0002.dtsi"
/ {
model = "NVIDIA IGX Orin Development Kit";
@ -20,6 +20,32 @@ chosen {
};
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";
@ -45,6 +71,40 @@ i2c@31b0000 {
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 {
@ -60,6 +120,115 @@ hda@3510000 {
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";
};
@ -70,6 +239,37 @@ i2c@c240000 {
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 {
@ -235,4 +435,32 @@ sound {
"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;
};
};

View File

@ -1,215 +0,0 @@
// SPDX-License-Identifier: GPL-2.0
#include <dt-bindings/sound/rt5640.h>
/ {
compatible = "nvidia,p3740-0002";
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;
};
};
};
};
};
};
i2c@31c0000 {
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;
};
};
padctl@3520000 {
vclamp-usb-supply = <&vdd_1v8_ao>;
avdd-usb-supply = <&vdd_3v3_ao>;
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";
vbus-supply = <&vdd_5v0_sys>;
};
usb2-1 {
mode = "host";
status = "okay";
vbus-supply = <&vdd_5v0_sys>;
};
usb2-2 {
mode = "host";
status = "okay";
vbus-supply = <&vdd_5v0_sys>;
};
usb2-3 {
mode = "host";
status = "okay";
vbus-supply = <&vdd_5v0_sys>;
};
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";
};
};
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;
};
};

View File

@ -7,24 +7,7 @@ / {
compatible = "nvidia,p3768-0000+p3767-0000", "nvidia,p3767-0000", "nvidia,tegra234";
model = "NVIDIA Jetson Orin NX Engineering Reference Developer Kit";
aliases {
serial1 = &uarta;
serial2 = &uarte;
};
bus@0 {
serial@3100000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
serial@3140000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
hda@3510000 {
nvidia,model = "NVIDIA Jetson Orin NX HDA";
};

View File

@ -9,6 +9,8 @@ / {
aliases {
serial0 = &tcu;
serial1 = &uarta;
serial2 = &uarte;
};
chosen {
@ -16,6 +18,18 @@ chosen {
};
bus@0 {
serial@3100000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
serial@3140000 {
compatible = "nvidia,tegra194-hsuart";
reset-names = "serial";
status = "okay";
};
i2c@3160000 {
status = "okay";
@ -172,6 +186,18 @@ pcie@14160000 {
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3";
};
pcie-ep@14160000 {/* C4 - End Point */
phys = <&p2u_hsio_4>, <&p2u_hsio_5>, <&p2u_hsio_6>,
<&p2u_hsio_7>;
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3";
reset-gpios = <&gpio
TEGRA234_MAIN_GPIO(L, 1)
GPIO_ACTIVE_LOW>;
nvidia,refclk-select-gpios = <&gpio_aon
TEGRA234_AON_GPIO(AA, 4)
GPIO_ACTIVE_HIGH>;
};
/* C7 - M.2 Key-M */
pcie@141e0000 {
status = "okay";

View File

@ -2763,6 +2763,8 @@ uarta: serial@3100000 {
interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&bpmp TEGRA234_CLK_UARTA>;
resets = <&bpmp TEGRA234_RESET_UARTA>;
dmas = <&gpcdma 8>, <&gpcdma 8>;
dma-names = "rx", "tx";
status = "disabled";
};
@ -4840,6 +4842,37 @@ pcie@14160000 {
status = "disabled";
};
pcie-ep@14160000 {
compatible = "nvidia,tegra234-pcie-ep";
power-domains = <&bpmp TEGRA234_POWER_DOMAIN_PCIEX4BB>;
reg = <0x00 0x14160000 0x0 0x00020000 /* appl registers (128K) */
0x00 0x36040000 0x0 0x00040000 /* iATU_DMA reg space (256K) */
0x00 0x36080000 0x0 0x00040000 /* DBI space (256K) */
0x21 0x40000000 0x3 0x00000000>; /* Address Space (12G) */
reg-names = "appl", "atu_dma", "dbi", "addr_space";
num-lanes = <4>;
clocks = <&bpmp TEGRA234_CLK_PEX0_C4_CORE>;
clock-names = "core";
resets = <&bpmp TEGRA234_RESET_PEX0_CORE_4_APB>,
<&bpmp TEGRA234_RESET_PEX0_CORE_4>;
reset-names = "apb", "core";
interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; /* controller interrupt */
interrupt-names = "intr";
nvidia,bpmp = <&bpmp 4>;
nvidia,enable-ext-refclk;
nvidia,aspm-cmrt-us = <60>;
nvidia,aspm-pwr-on-t-us = <20>;
nvidia,aspm-l0s-entrance-latency-us = <3>;
interconnects = <&mc TEGRA234_MEMORY_CLIENT_PCIE4R &emc>,
<&mc TEGRA234_MEMORY_CLIENT_PCIE4W &emc>;
interconnect-names = "dma-mem", "write";
iommus = <&smmu_niso0 TEGRA234_SID_PCIE4>;
dma-coherent;
status = "disabled";
};
pcie@14180000 {
compatible = "nvidia,tegra234-pcie";
power-domains = <&bpmp TEGRA234_POWER_DOMAIN_PCIEX4BA>;