mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-09-06 13:09:58 +00:00
arm64: tegra: Add support for IGX Orin
Add support for the NVIDIA IGX Orin development kit having P3701 module with P3740 carrier board. Signed-off-by: Shubhi Garg <shgarg@nvidia.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
This commit is contained in:
parent
49cbf04cda
commit
c95711d7db
@ -9,6 +9,7 @@ DTC_FLAGS_tegra194-p2972-0000 := -@
|
|||||||
DTC_FLAGS_tegra194-p3509-0000+p3668-0000 := -@
|
DTC_FLAGS_tegra194-p3509-0000+p3668-0000 := -@
|
||||||
DTC_FLAGS_tegra194-p3509-0000+p3668-0001 := -@
|
DTC_FLAGS_tegra194-p3509-0000+p3668-0001 := -@
|
||||||
DTC_FLAGS_tegra234-p3737-0000+p3701-0000 := -@
|
DTC_FLAGS_tegra234-p3737-0000+p3701-0000 := -@
|
||||||
|
DTC_FLAGS_tegra234-p3740-0002+p3701-0008 := -@
|
||||||
DTC_FLAGS_tegra234-p3768-0000+p3767-0000 := -@
|
DTC_FLAGS_tegra234-p3768-0000+p3767-0000 := -@
|
||||||
|
|
||||||
dtb-$(CONFIG_ARCH_TEGRA_132_SOC) += tegra132-norrin.dtb
|
dtb-$(CONFIG_ARCH_TEGRA_132_SOC) += tegra132-norrin.dtb
|
||||||
@ -25,4 +26,5 @@ 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_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-sim-vdk.dtb
|
||||||
dtb-$(CONFIG_ARCH_TEGRA_234_SOC) += tegra234-p3737-0000+p3701-0000.dtb
|
dtb-$(CONFIG_ARCH_TEGRA_234_SOC) += tegra234-p3737-0000+p3701-0000.dtb
|
||||||
|
dtb-$(CONFIG_ARCH_TEGRA_234_SOC) += tegra234-p3740-0002+p3701-0008.dtb
|
||||||
dtb-$(CONFIG_ARCH_TEGRA_234_SOC) += tegra234-p3768-0000+p3767-0000.dtb
|
dtb-$(CONFIG_ARCH_TEGRA_234_SOC) += tegra234-p3768-0000+p3767-0000.dtb
|
||||||
|
111
arch/arm64/boot/dts/nvidia/tegra234-p3701-0008.dtsi
Normal file
111
arch/arm64/boot/dts/nvidia/tegra234-p3701-0008.dtsi
Normal file
@ -0,0 +1,111 @@
|
|||||||
|
// SPDX-License-Identifier: GPL-2.0
|
||||||
|
|
||||||
|
#include "tegra234.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
compatible = "nvidia,p3701-0008", "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@3460000 {
|
||||||
|
status = "okay";
|
||||||
|
bus-width = <8>;
|
||||||
|
non-removable;
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c@c240000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
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;
|
||||||
|
};
|
||||||
|
};
|
154
arch/arm64/boot/dts/nvidia/tegra234-p3740-0002+p3701-0008.dts
Normal file
154
arch/arm64/boot/dts/nvidia/tegra234-p3740-0002+p3701-0008.dts
Normal file
@ -0,0 +1,154 @@
|
|||||||
|
// 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-p3701-0008.dtsi"
|
||||||
|
#include "tegra234-p3740-0002.dtsi"
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "NVIDIA IGX Orin Development Kit";
|
||||||
|
compatible = "nvidia,p3740-0002+p3701-0008", "nvidia,p3701-0008", "nvidia,tegra234";
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
serial0 = &tcu;
|
||||||
|
};
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
stdout-path = "serial0:115200n8";
|
||||||
|
};
|
||||||
|
|
||||||
|
bus@0 {
|
||||||
|
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>;
|
||||||
|
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 {
|
||||||
|
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";
|
||||||
|
};
|
||||||
|
|
||||||
|
aconnect@2900000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
serial@3100000 {
|
||||||
|
compatible = "nvidia,tegra194-hsuart";
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c@3160000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c@3180000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c@3190000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c@31b0000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c@31c0000 {
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c@31e0000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
spi@3270000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
hda@3510000 {
|
||||||
|
nvidia,model = "NVIDIA IGX HDA";
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
fuse@3810000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c@c240000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
i2c@c250000 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
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";
|
||||||
|
};
|
||||||
|
};
|
137
arch/arm64/boot/dts/nvidia/tegra234-p3740-0002.dtsi
Normal file
137
arch/arm64/boot/dts/nvidia/tegra234-p3740-0002.dtsi
Normal file
@ -0,0 +1,137 @@
|
|||||||
|
// SPDX-License-Identifier: GPL-2.0
|
||||||
|
|
||||||
|
/ {
|
||||||
|
compatible = "nvidia,p3740-0002";
|
||||||
|
|
||||||
|
bus@0 {
|
||||||
|
i2c@31c0000 {
|
||||||
|
/* 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";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
Loading…
Reference in New Issue
Block a user