mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-09-22 04:31:58 +08:00
arm64: tegra: Device tree changes for v6.4-rc1
This adds support for the Jetson Orin NX and includes updates for Jetson AGX Orin (audio codec, USB Type-C support). -----BEGIN PGP SIGNATURE----- iQJHBAABCAAxFiEEiOrDCAFJzPfAjcif3SOs138+s6EFAmQuvmMTHHRyZWRpbmdA bnZpZGlhLmNvbQAKCRDdI6zXfz6zobhBD/91ilxKV1gNw07qyoLk+pp7vw/yi5p9 iIXCE5P/sPXzWDaVOUaqxk1v7C28IaAqMU1s11nd5oHq5y4pLigb9zslOWn4bFzO NBA4CrFdXTBX0oquuWYtAsDJQjhKhYrbSjTg6+J92ADSETqWBRabOfAOJH8m1Fu9 2ru+RhzqGftlyc+LGr2UVWLbAuvygTouuIpYJEO8b7ofF7iXHwaL4zRdDqkMgl0k ML7MijzdjynPD63YmKSYUajsyZILyNl8Vep43+Ae+gfzTL1vTQdzlx9p5Koo89fJ sa9Pui3vsPGCecaJau7plVLUY7YC0+x+G8lzPF3Ev9yA3ghwvglwHJV7wtkJOF2v 7FsC93GcduSfa74UZ5twT7dEKfJCyOzahtLHNvJPkNAw2RmqsJV5P9jbX6Id6cj+ Ap/dFJVqOQGt6yZXMpqniT46eO3Zb9wFok+jj7kxlnqGMvl6zSRmkGzWPqpgUug5 AnQgzY0+sozoalcpVPt28eYK1i/GtXny+XHPRRMsggWNBDUcY955MBbo1ZvPggmU ayAZpQ6OlOi+hWb58QIScvpftxwrSpM6wrub9LwhlX+L2CCbia6mvZB0jZM9XvoM k+zjuNk5qQ01w4mkxCyPu7eGPZtUTrHHmKrN6swCqzuJO6jcFfDOvDhG0RhViO0d UZC7AVR4a2aWGQ== =qCDN -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmQ5U6UACgkQYKtH/8kJ UieYJxAAtZHSqDiiz8wi1VSUUb/v0ibrmakdXzRur9tTYcgyBElJVGS04/DOkMZk rtkHonO1v/xawzHx74ezqLAHDS3Z/KqbFFQfUAJYNJ8vmrdxJXj62nK0bd7zBtDE faU5DfsTjfi9qx97hIp+3BjQ4cWvH2Q+KuJpG807fVhdKtDzVFbFx/j5hnEFP7t4 jffy0OtyhF9bKxk0OmhuJLgR0CxPQBLwrRu3+RYu32TbVMl0VOBWGdhYpAh6D/GZ KHX/xBJi9GYeJBvGvzLwxUJs7UWIMWkR1VPjzTJXRy7p9lm6VUSP9vyHf594snxF EUx9eTHiC556HvIFhv36sogxMWVHLV0vZcvqjjx5xqXPRs9yGLSBNc+mkaQZAgWz 6rs5fPp46q3agAbKouJ0V5v62cYff0SRo7+r4sCbW7kxQ4qxHW2O2ws05HnXEQfL Y+0bhTeOQfrq1V1dj/6UMQagVqJGyNeGXDlGwYF2HlQQs5Qt53FCdgvjbnzp5Apn LwRif+WBTbVgv5kj0tKz3q70WpHfXraNEsImLugweZOqvyrIFim4blAwhU4cfjYw SQWceP3WYclLkKFDjYLmbQXOl1H/59aGo3gT6d56mJSpS75Z6chFmUMzw/weTZEI iKFQHhKdsLh9oUFfEIR0fzzyBjb1TU9BTcFiK05TF9ND0rUaACU= =xfIt -----END PGP SIGNATURE----- Merge tag 'tegra-for-6.4-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into soc/dt arm64: tegra: Device tree changes for v6.4-rc1 This adds support for the Jetson Orin NX and includes updates for Jetson AGX Orin (audio codec, USB Type-C support). * tag 'tegra-for-6.4-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: arm64: tegra: Add vccmq on Jetson TX2 arm64: tegra: Populate USB Type-C Controller for Jetson AGX Orin arm64: tegra: Audio codec support on Jetson AGX Orin arm64: tegra: Support Jetson Orin NX reference platform arm64: tegra: Support Jetson Orin NX dt-bindings: tegra: Document Jetson Orin NX reference platform dt-bindings: tegra: Document Jetson Orin NX arm64: tegra: Add DSU PMUs for Tegra234 arm64: tegra: Drop serial clock-names and reset-names Link: https://lore.kernel.org/r/20230406124804.970394-6-thierry.reding@gmail.com Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
commit
acda89d621
@ -167,5 +167,14 @@ properties:
|
||||
- const: nvidia,p3737-0000+p3701-0000
|
||||
- const: nvidia,p3701-0000
|
||||
- const: nvidia,tegra234
|
||||
- description: Jetson Orin NX
|
||||
items:
|
||||
- const: nvidia,p3767-0000
|
||||
- const: nvidia,tegra234
|
||||
- description: Jetson Orin NX Engineering Reference Developer Kit
|
||||
items:
|
||||
- const: nvidia,p3768-0000+p3767-0000
|
||||
- const: nvidia,p3767-0000
|
||||
- const: nvidia,tegra234
|
||||
|
||||
additionalProperties: true
|
||||
|
@ -9,6 +9,7 @@ DTC_FLAGS_tegra194-p2972-0000 := -@
|
||||
DTC_FLAGS_tegra194-p3509-0000+p3668-0000 := -@
|
||||
DTC_FLAGS_tegra194-p3509-0000+p3668-0001 := -@
|
||||
DTC_FLAGS_tegra234-p3737-0000+p3701-0000 := -@
|
||||
DTC_FLAGS_tegra234-p3768-0000+p3767-0000 := -@
|
||||
|
||||
dtb-$(CONFIG_ARCH_TEGRA_132_SOC) += tegra132-norrin.dtb
|
||||
dtb-$(CONFIG_ARCH_TEGRA_210_SOC) += tegra210-p2371-0000.dtb
|
||||
@ -24,3 +25,4 @@ dtb-$(CONFIG_ARCH_TEGRA_194_SOC) += tegra194-p3509-0000+p3668-0000.dtb
|
||||
dtb-$(CONFIG_ARCH_TEGRA_194_SOC) += tegra194-p3509-0000+p3668-0001.dtb
|
||||
dtb-$(CONFIG_ARCH_TEGRA_234_SOC) += tegra234-sim-vdk.dtb
|
||||
dtb-$(CONFIG_ARCH_TEGRA_234_SOC) += tegra234-p3737-0000+p3701-0000.dtb
|
||||
dtb-$(CONFIG_ARCH_TEGRA_234_SOC) += tegra234-p3768-0000+p3767-0000.dtb
|
||||
|
@ -338,9 +338,7 @@
|
||||
reg-shift = <2>;
|
||||
interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&tegra_car TEGRA124_CLK_UARTA>;
|
||||
clock-names = "serial";
|
||||
resets = <&tegra_car 6>;
|
||||
reset-names = "serial";
|
||||
dmas = <&apbdma 8>, <&apbdma 8>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
@ -352,9 +350,7 @@
|
||||
reg-shift = <2>;
|
||||
interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&tegra_car TEGRA124_CLK_UARTB>;
|
||||
clock-names = "serial";
|
||||
resets = <&tegra_car 7>;
|
||||
reset-names = "serial";
|
||||
dmas = <&apbdma 9>, <&apbdma 9>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
@ -366,9 +362,7 @@
|
||||
reg-shift = <2>;
|
||||
interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&tegra_car TEGRA124_CLK_UARTC>;
|
||||
clock-names = "serial";
|
||||
resets = <&tegra_car 55>;
|
||||
reset-names = "serial";
|
||||
dmas = <&apbdma 10>, <&apbdma 10>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
@ -380,9 +374,7 @@
|
||||
reg-shift = <2>;
|
||||
interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&tegra_car TEGRA124_CLK_UARTD>;
|
||||
clock-names = "serial";
|
||||
resets = <&tegra_car 65>;
|
||||
reset-names = "serial";
|
||||
dmas = <&apbdma 19>, <&apbdma 19>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
|
@ -145,6 +145,7 @@
|
||||
/* SDMMC3 (SDIO) */
|
||||
mmc@3440000 {
|
||||
status = "okay";
|
||||
vqmmc-supply = <&vddio_sdmmc3>;
|
||||
};
|
||||
|
||||
/* SDMMC4 (eMMC) */
|
||||
|
@ -610,9 +610,7 @@
|
||||
reg-shift = <2>;
|
||||
interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&bpmp TEGRA186_CLK_UARTA>;
|
||||
clock-names = "serial";
|
||||
resets = <&bpmp TEGRA186_RESET_UARTA>;
|
||||
reset-names = "serial";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -745,9 +745,7 @@
|
||||
reg-shift = <2>;
|
||||
interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&bpmp TEGRA194_CLK_UARTA>;
|
||||
clock-names = "serial";
|
||||
resets = <&bpmp TEGRA194_RESET_UARTA>;
|
||||
reset-names = "serial";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
@ -757,9 +755,7 @@
|
||||
reg-shift = <2>;
|
||||
interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&bpmp TEGRA194_CLK_UARTB>;
|
||||
clock-names = "serial";
|
||||
resets = <&bpmp TEGRA194_RESET_UARTB>;
|
||||
reset-names = "serial";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
@ -618,9 +618,7 @@
|
||||
reg-shift = <2>;
|
||||
interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&tegra_car TEGRA210_CLK_UARTA>;
|
||||
clock-names = "serial";
|
||||
resets = <&tegra_car 6>;
|
||||
reset-names = "serial";
|
||||
dmas = <&apbdma 8>, <&apbdma 8>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
@ -632,9 +630,7 @@
|
||||
reg-shift = <2>;
|
||||
interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&tegra_car TEGRA210_CLK_UARTB>;
|
||||
clock-names = "serial";
|
||||
resets = <&tegra_car 7>;
|
||||
reset-names = "serial";
|
||||
dmas = <&apbdma 9>, <&apbdma 9>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
@ -646,9 +642,7 @@
|
||||
reg-shift = <2>;
|
||||
interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&tegra_car TEGRA210_CLK_UARTC>;
|
||||
clock-names = "serial";
|
||||
resets = <&tegra_car 55>;
|
||||
reset-names = "serial";
|
||||
dmas = <&apbdma 10>, <&apbdma 10>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
@ -660,9 +654,7 @@
|
||||
reg-shift = <2>;
|
||||
interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&tegra_car TEGRA210_CLK_UARTD>;
|
||||
clock-names = "serial";
|
||||
resets = <&tegra_car 65>;
|
||||
reset-names = "serial";
|
||||
dmas = <&apbdma 19>, <&apbdma 19>;
|
||||
dma-names = "rx", "tx";
|
||||
status = "disabled";
|
||||
|
@ -3,6 +3,7 @@
|
||||
|
||||
#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"
|
||||
@ -49,7 +50,7 @@
|
||||
|
||||
i2s1_dap: endpoint {
|
||||
dai-format = "i2s";
|
||||
/* placeholder for external codec */
|
||||
remote-endpoint = <&rt5640_ep>;
|
||||
};
|
||||
};
|
||||
};
|
||||
@ -2017,6 +2018,30 @@
|
||||
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@32a0000 {
|
||||
assigned-clocks = <&bpmp TEGRA234_CLK_PWM3>;
|
||||
assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLP_OUT0>;
|
||||
@ -2073,11 +2098,21 @@
|
||||
usb2-0 {
|
||||
mode = "host";
|
||||
status = "okay";
|
||||
port {
|
||||
hs_typec_p1: endpoint {
|
||||
remote-endpoint = <&hs_ucsi_ccg_p1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
usb2-1 {
|
||||
mode = "host";
|
||||
status = "okay";
|
||||
port {
|
||||
hs_typec_p0: endpoint {
|
||||
remote-endpoint = <&hs_ucsi_ccg_p0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
usb2-2 {
|
||||
@ -2093,11 +2128,21 @@
|
||||
usb3-0 {
|
||||
nvidia,usb2-companion = <1>;
|
||||
status = "okay";
|
||||
port {
|
||||
ss_typec_p0: endpoint {
|
||||
remote-endpoint = <&ss_ucsi_ccg_p0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
usb3-1 {
|
||||
nvidia,usb2-companion = <0>;
|
||||
status = "okay";
|
||||
port {
|
||||
ss_typec_p1: endpoint {
|
||||
remote-endpoint = <&ss_ucsi_ccg_p1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
usb3-2 {
|
||||
@ -2190,6 +2235,64 @@
|
||||
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3", "p2u-4",
|
||||
"p2u-5", "p2u-6", "p2u-7";
|
||||
};
|
||||
|
||||
i2c@c240000 {
|
||||
status = "okay";
|
||||
typec@8 {
|
||||
compatible = "cypress,cypd4226";
|
||||
reg = <0x08>;
|
||||
interrupt-parent = <&gpio>;
|
||||
interrupts = <TEGRA234_MAIN_GPIO(Y, 4) IRQ_TYPE_LEVEL_LOW>;
|
||||
firmware-name = "nvidia,jetson-agx-xavier";
|
||||
status = "okay";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
ccg_typec_con0: connector@0 {
|
||||
compatible = "usb-c-connector";
|
||||
reg = <0>;
|
||||
label = "USB-C";
|
||||
data-role = "host";
|
||||
ports {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
hs_ucsi_ccg_p0: endpoint {
|
||||
remote-endpoint = <&hs_typec_p0>;
|
||||
};
|
||||
};
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
ss_ucsi_ccg_p0: endpoint {
|
||||
remote-endpoint = <&ss_typec_p0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
ccg_typec_con1: connector@1 {
|
||||
compatible = "usb-c-connector";
|
||||
reg = <1>;
|
||||
label = "USB-C";
|
||||
data-role = "dual";
|
||||
ports {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
hs_ucsi_ccg_p1: endpoint {
|
||||
remote-endpoint = <&hs_typec_p1>;
|
||||
};
|
||||
};
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
ss_ucsi_ccg_p1: endpoint {
|
||||
remote-endpoint = <&ss_typec_p1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
gpio-keys {
|
||||
@ -2293,5 +2396,23 @@
|
||||
<&dmic3_port>;
|
||||
|
||||
label = "NVIDIA Jetson AGX Orin APE";
|
||||
|
||||
widgets = "Microphone", "CVB-RT MIC Jack",
|
||||
"Microphone", "CVB-RT MIC",
|
||||
"Headphone", "CVB-RT HP Jack",
|
||||
"Speaker", "CVB-RT SPK";
|
||||
|
||||
routing = /* I2S1 <-> RT5640 */
|
||||
"CVB-RT AIF1 Playback", "I2S1 DAP-Playback",
|
||||
"I2S1 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 SPK", "CVB-RT SPOLP",
|
||||
"CVB-RT SPK", "CVB-RT SPORP",
|
||||
"CVB-RT DMIC1", "CVB-RT MIC",
|
||||
"CVB-RT DMIC2", "CVB-RT MIC";
|
||||
};
|
||||
};
|
||||
|
14
arch/arm64/boot/dts/nvidia/tegra234-p3767-0000.dtsi
Normal file
14
arch/arm64/boot/dts/nvidia/tegra234-p3767-0000.dtsi
Normal file
@ -0,0 +1,14 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
|
||||
#include "tegra234-p3767.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "nvidia,p3767-0000", "nvidia,tegra234";
|
||||
model = "NVIDIA Jetson Orin NX";
|
||||
|
||||
bus@0 {
|
||||
hda@3510000 {
|
||||
nvidia,model = "NVIDIA Jetson Orin NX HDA";
|
||||
};
|
||||
};
|
||||
};
|
172
arch/arm64/boot/dts/nvidia/tegra234-p3767.dtsi
Normal file
172
arch/arm64/boot/dts/nvidia/tegra234-p3767.dtsi
Normal file
@ -0,0 +1,172 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
|
||||
#include "tegra234.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "nvidia,p3767", "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 = <136000000>;
|
||||
spi-tx-bus-width = <4>;
|
||||
spi-rx-bus-width = <4>;
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
* This only exists on Jetson Orin Nano Developer Kit (SKU 5)
|
||||
* but UEFI needs this and will remove it on devices where it
|
||||
* doesn't exist.
|
||||
*/
|
||||
mmc@3400000 {
|
||||
status = "okay";
|
||||
bus-width = <4>;
|
||||
cd-gpios = <&gpio TEGRA234_MAIN_GPIO(G, 7) GPIO_ACTIVE_HIGH>;
|
||||
disable-wp;
|
||||
};
|
||||
|
||||
hda@3510000 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
padctl@3520000 {
|
||||
vclamp-usb-supply = <&vdd_1v8_ao>;
|
||||
avdd-usb-supply = <&vdd_3v3_ao>;
|
||||
};
|
||||
|
||||
rtc@c2a0000 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
pmc@c360000 {
|
||||
nvidia,invert-interrupt;
|
||||
};
|
||||
};
|
||||
|
||||
vdd_5v0_sys: regulator-vdd-5v0-sys {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VDD_5V0_SYS";
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
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;
|
||||
vin-supply = <&vdd_5v0_sys>;
|
||||
};
|
||||
|
||||
vdd_3v3_ao: regulator-vdd-3v3-ao {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VDD_3V3_AO";
|
||||
regulator-min-microvolt = <33000000>;
|
||||
regulator-max-microvolt = <33000000>;
|
||||
regulator-always-on;
|
||||
vin-supply = <&vdd_5v0_sys>;
|
||||
};
|
||||
|
||||
thermal-zones {
|
||||
/*
|
||||
* This monitoring is far from optimal, but it's good enough
|
||||
* at this stage.
|
||||
*/
|
||||
cpu-thermal {
|
||||
polling-delay = <1000>;
|
||||
polling-delay-passive = <1000>;
|
||||
status = "okay";
|
||||
|
||||
trips {
|
||||
critical {
|
||||
temperature = <104500>;
|
||||
hysteresis = <0>;
|
||||
type = "critical";
|
||||
};
|
||||
|
||||
hot {
|
||||
temperature = <99000>;
|
||||
hysteresis = <1000>;
|
||||
type = "hot";
|
||||
};
|
||||
|
||||
board_trip_passive: passive {
|
||||
temperature = <95000>;
|
||||
hysteresis = <2000>;
|
||||
type = "passive";
|
||||
};
|
||||
|
||||
board_trip_active2: active-2 {
|
||||
temperature = <80000>;
|
||||
hysteresis = <4000>;
|
||||
type = "active";
|
||||
};
|
||||
|
||||
board_trip_active1: active-1 {
|
||||
temperature = <65000>;
|
||||
hysteresis = <4000>;
|
||||
type = "active";
|
||||
};
|
||||
|
||||
board_trip_active0: active-0 {
|
||||
temperature = <50000>;
|
||||
hysteresis = <4000>;
|
||||
type = "active";
|
||||
};
|
||||
};
|
||||
|
||||
cooling-maps {
|
||||
passive {
|
||||
cooling-device = <&fan 3 3>;
|
||||
trip = <&board_trip_passive>;
|
||||
};
|
||||
|
||||
active2 {
|
||||
cooling-device = <&fan 2 3>;
|
||||
trip = <&board_trip_active2>;
|
||||
};
|
||||
|
||||
active1 {
|
||||
cooling-device = <&fan 1 2>;
|
||||
trip = <&board_trip_active1>;
|
||||
};
|
||||
|
||||
active0 {
|
||||
cooling-device = <&fan 0 1>;
|
||||
trip = <&board_trip_active0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
134
arch/arm64/boot/dts/nvidia/tegra234-p3768-0000+p3767-0000.dts
Normal file
134
arch/arm64/boot/dts/nvidia/tegra234-p3768-0000+p3767-0000.dts
Normal file
@ -0,0 +1,134 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/input/linux-event-codes.h>
|
||||
#include <dt-bindings/input/gpio-keys.h>
|
||||
|
||||
#include "tegra234-p3767-0000.dtsi"
|
||||
#include "tegra234-p3768-0000.dtsi"
|
||||
|
||||
/ {
|
||||
compatible = "nvidia,p3768-0000+p3767-0000", "nvidia,p3767-0000", "nvidia,tegra234";
|
||||
model = "NVIDIA Jetson Orin NX Engineering Reference Developer Kit";
|
||||
|
||||
aliases {
|
||||
serial0 = &tcu;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
bus@0 {
|
||||
serial@31d0000 {
|
||||
current-speed = <115200>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
pwm@32a0000 {
|
||||
assigned-clocks = <&bpmp TEGRA234_CLK_PWM3>;
|
||||
assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLP_OUT0>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
hda@3510000 {
|
||||
nvidia,model = "NVIDIA Jetson Orin NX HDA";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
padctl@3520000 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* C1 - M.2 Key-E */
|
||||
pcie@14100000 {
|
||||
status = "okay";
|
||||
|
||||
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
|
||||
|
||||
phys = <&p2u_hsio_3>;
|
||||
phy-names = "p2u-0";
|
||||
};
|
||||
|
||||
/* C4 - M.2 Key-M */
|
||||
pcie@14160000 {
|
||||
status = "okay";
|
||||
|
||||
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
|
||||
|
||||
phys = <&p2u_hsio_4>, <&p2u_hsio_5>, <&p2u_hsio_6>,
|
||||
<&p2u_hsio_7>;
|
||||
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3";
|
||||
};
|
||||
|
||||
/* C8 - Ethernet */
|
||||
pcie@140a0000 {
|
||||
status = "okay";
|
||||
|
||||
num-lanes = <2>;
|
||||
|
||||
phys = <&p2u_gbe_2>, <&p2u_gbe_3>;
|
||||
phy-names = "p2u-0", "p2u-1";
|
||||
|
||||
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
|
||||
vpcie3v3-supply = <&vdd_3v3_pcie>;
|
||||
};
|
||||
|
||||
/* C7 - M.2 Key-M */
|
||||
pcie@141e0000 {
|
||||
status = "okay";
|
||||
|
||||
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
|
||||
|
||||
phys = <&p2u_gbe_0>, <&p2u_gbe_1>;
|
||||
phy-names = "p2u-0", "p2u-1";
|
||||
};
|
||||
};
|
||||
|
||||
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;
|
||||
};
|
||||
|
||||
key-suspend {
|
||||
label = "Suspend";
|
||||
gpios = <&gpio TEGRA234_MAIN_GPIO(G, 2) GPIO_ACTIVE_LOW>;
|
||||
linux,input-type = <EV_KEY>;
|
||||
linux,code = <KEY_SLEEP>;
|
||||
};
|
||||
};
|
||||
|
||||
fan: pwm-fan {
|
||||
compatible = "pwm-fan";
|
||||
pwms = <&pwm3 0 45334>;
|
||||
cooling-levels = <0 95 178 255>;
|
||||
#cooling-cells = <2>;
|
||||
};
|
||||
|
||||
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_aon TEGRA234_AON_GPIO(AA, 5) GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
serial {
|
||||
status = "okay";
|
||||
};
|
||||
};
|
245
arch/arm64/boot/dts/nvidia/tegra234-p3768-0000.dtsi
Normal file
245
arch/arm64/boot/dts/nvidia/tegra234-p3768-0000.dtsi
Normal file
@ -0,0 +1,245 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
|
||||
/ {
|
||||
compatible = "nvidia,p3768-0000";
|
||||
|
||||
aliases {
|
||||
serial0 = &tcu;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
bus@0 {
|
||||
i2c@3160000 {
|
||||
status = "okay";
|
||||
|
||||
eeprom@57 {
|
||||
compatible = "atmel,24c02";
|
||||
reg = <0x57>;
|
||||
|
||||
label = "system";
|
||||
vcc-supply = <&vdd_1v8_sys>;
|
||||
address-width = <8>;
|
||||
pagesize = <8>;
|
||||
size = <256>;
|
||||
read-only;
|
||||
};
|
||||
};
|
||||
|
||||
serial@31d0000 {
|
||||
current-speed = <115200>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
pwm@32a0000 {
|
||||
assigned-clocks = <&bpmp TEGRA234_CLK_PWM3>;
|
||||
assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLP_OUT0>;
|
||||
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";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
usb3 {
|
||||
lanes {
|
||||
usb3-0 {
|
||||
nvidia,function = "xusb";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
usb3-1 {
|
||||
nvidia,function = "xusb";
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
ports {
|
||||
/* recovery port */
|
||||
usb2-0 {
|
||||
mode = "otg";
|
||||
vbus-supply = <&vdd_5v0_sys>;
|
||||
status = "okay";
|
||||
usb-role-switch;
|
||||
};
|
||||
|
||||
/* hub */
|
||||
usb2-1 {
|
||||
mode = "host";
|
||||
vbus-supply = <&vdd_1v1_hub>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* M.2 Key-E */
|
||||
usb2-2 {
|
||||
mode = "host";
|
||||
vbus-supply = <&vdd_5v0_sys>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* hub */
|
||||
usb3-0 {
|
||||
nvidia,usb2-companion = <1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* J5 */
|
||||
usb3-1 {
|
||||
nvidia,usb2-companion = <0>;
|
||||
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-1";
|
||||
};
|
||||
|
||||
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/usb3/lanes/usb3-0}>,
|
||||
<&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-1}>;
|
||||
phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-0",
|
||||
"usb3-1";
|
||||
};
|
||||
|
||||
/* C1 - M.2 Key-E */
|
||||
pcie@14100000 {
|
||||
status = "okay";
|
||||
|
||||
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
|
||||
|
||||
phys = <&p2u_hsio_3>;
|
||||
phy-names = "p2u-0";
|
||||
};
|
||||
|
||||
/* C4 - M.2 Key-M */
|
||||
pcie@14160000 {
|
||||
status = "okay";
|
||||
|
||||
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
|
||||
|
||||
phys = <&p2u_hsio_4>, <&p2u_hsio_5>, <&p2u_hsio_6>,
|
||||
<&p2u_hsio_7>;
|
||||
phy-names = "p2u-0", "p2u-1", "p2u-2", "p2u-3";
|
||||
};
|
||||
|
||||
/* C8 - Ethernet */
|
||||
pcie@140a0000 {
|
||||
status = "okay";
|
||||
|
||||
num-lanes = <2>;
|
||||
|
||||
phys = <&p2u_gbe_2>, <&p2u_gbe_3>;
|
||||
phy-names = "p2u-0", "p2u-1";
|
||||
|
||||
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
|
||||
vpcie3v3-supply = <&vdd_3v3_pcie>;
|
||||
};
|
||||
|
||||
/* C7 - M.2 Key-M */
|
||||
pcie@141e0000 {
|
||||
status = "okay";
|
||||
|
||||
vddio-pex-ctl-supply = <&vdd_1v8_ao>;
|
||||
|
||||
phys = <&p2u_gbe_0>, <&p2u_gbe_1>;
|
||||
phy-names = "p2u-0", "p2u-1";
|
||||
};
|
||||
};
|
||||
|
||||
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;
|
||||
};
|
||||
|
||||
key-suspend {
|
||||
label = "Suspend";
|
||||
gpios = <&gpio TEGRA234_MAIN_GPIO(G, 2) GPIO_ACTIVE_LOW>;
|
||||
linux,input-type = <EV_KEY>;
|
||||
linux,code = <KEY_SLEEP>;
|
||||
};
|
||||
};
|
||||
|
||||
fan: pwm-fan {
|
||||
compatible = "pwm-fan";
|
||||
pwms = <&pwm3 0 45334>;
|
||||
cooling-levels = <0 95 178 255>;
|
||||
#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;
|
||||
};
|
||||
|
||||
vdd_1v1_hub: regulator-vdd-1v1-hub {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VDD_AV10_HUB";
|
||||
regulator-min-microvolt = <1100000>;
|
||||
regulator-max-microvolt = <1100000>;
|
||||
vin-supply = <&vdd_5v0_sys>;
|
||||
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_aon TEGRA234_AON_GPIO(AA, 5) GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
};
|
||||
|
||||
serial {
|
||||
status = "okay";
|
||||
};
|
||||
};
|
@ -676,9 +676,7 @@
|
||||
reg = <0x0 0x03100000 0x0 0x10000>;
|
||||
interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&bpmp TEGRA234_CLK_UARTA>;
|
||||
clock-names = "serial";
|
||||
resets = <&bpmp TEGRA234_RESET_UARTA>;
|
||||
reset-names = "serial";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
@ -3402,6 +3400,24 @@
|
||||
};
|
||||
};
|
||||
|
||||
dsu-pmu0 {
|
||||
compatible = "arm,dsu-pmu";
|
||||
interrupts = <GIC_SPI 547 IRQ_TYPE_LEVEL_HIGH>;
|
||||
cpus = <&cpu0_0>, <&cpu0_1>, <&cpu0_2>, <&cpu0_3>;
|
||||
};
|
||||
|
||||
dsu-pmu1 {
|
||||
compatible = "arm,dsu-pmu";
|
||||
interrupts = <GIC_SPI 548 IRQ_TYPE_LEVEL_HIGH>;
|
||||
cpus = <&cpu1_0>, <&cpu1_1>, <&cpu1_2>, <&cpu1_3>;
|
||||
};
|
||||
|
||||
dsu-pmu2 {
|
||||
compatible = "arm,dsu-pmu";
|
||||
interrupts = <GIC_SPI 549 IRQ_TYPE_LEVEL_HIGH>;
|
||||
cpus = <&cpu2_0>, <&cpu2_1>, <&cpu2_2>, <&cpu2_3>;
|
||||
};
|
||||
|
||||
pmu {
|
||||
compatible = "arm,cortex-a78-pmu";
|
||||
interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH>;
|
||||
|
Loading…
Reference in New Issue
Block a user