forked from rrcarlosr/Jetpack
665 lines
14 KiB
Plaintext
665 lines
14 KiB
Plaintext
/*
|
|
* Top level DTS file for CVM:P3668-0001 and CVB:P3509-0000.
|
|
*
|
|
* Copyright (c) 2019-2020, NVIDIA CORPORATION. All rights reserved.
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; version 2 of the License.
|
|
*
|
|
* This program is distributed in the hope that it will be useful, but WITHOUT
|
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
|
* more details.
|
|
*/
|
|
|
|
|
|
/dts-v1/;
|
|
|
|
#include "dt-bindings/input/input.h"
|
|
#include "dt-bindings/extcon-ids.h"
|
|
#include "dt-bindings/gpio/tegra194-gpio.h"
|
|
#include <dt-bindings/pwm/pwm.h>
|
|
|
|
#include <tegra194-soc/tegra194-soc-cvm.dtsi>
|
|
//#include "common/tegra194-fixed-regulator-p3668.dtsi"
|
|
//#include <t19x-common-platforms/tegra194-comms.dtsi>
|
|
//#include "common/tegra194-plugin-manager-p3668.dtsi"
|
|
#include <t19x-common-platforms/tegra194-platforms-eqos.dtsi>
|
|
#include "common/tegra194-powermon-p3668.dtsi"
|
|
#include "common/tegra194-power-tree-p3668.dtsi"
|
|
#include "common/tegra194-thermal-p3668.dtsi"
|
|
|
|
|
|
//#include "common/tegra194-fixed-regulator-p3509-0000-a00.dtsi"
|
|
#include "common/tegra194-p3509-disp.dtsi"
|
|
#include "common/tegra194-audio-p3668.dtsi"
|
|
//#include "common/tegra194-super-module-e2614-p3509.dtsi"
|
|
//#include "common/tegra194-p3668-p3509-pcie-plugin-manager.dtsi"
|
|
#include <t19x-common-platforms/tegra194-no-pll-aon-clock.dtsi>
|
|
|
|
/ {
|
|
nvidia,fastboot-usb-vid = <0x0955>;
|
|
nvidia,fastboot-usb-pid = <0xee1e>;
|
|
model = "NVIDIA Jetson Xavier NX Developer Kit";
|
|
|
|
nvidia,dtbbuildtime = __DATE__, __TIME__;
|
|
compatible = "nvidia,p3509-0000-a00+p3668-0000-a01", "nvidia,p3509-0000-a00+p3668-0001-a01", "nvidia,tegra194";
|
|
|
|
chosen {
|
|
bootargs ="console=ttyTCU0,115200";
|
|
board-has-eeprom;
|
|
nvidia,tegra-joint_xpu_rail;
|
|
};
|
|
|
|
eeprom-manager {
|
|
data-size = <0x100>;
|
|
bus@0 {
|
|
i2c-bus = <&gen1_i2c>;
|
|
eeprom@0 {
|
|
slave-address = <0x50>;
|
|
label = "cvm";
|
|
};
|
|
};
|
|
};
|
|
|
|
|
|
pmc@c370000 {
|
|
nvidia,invert-interrupt;
|
|
};
|
|
|
|
pmc@c360000 {
|
|
iopad_defaults: iopad-defaults {
|
|
sdmmc-io-pads {
|
|
pins = "sdmmc1-hv", "sdmmc3-hv";
|
|
nvidia,enable-voltage-switching;
|
|
};
|
|
};
|
|
};
|
|
|
|
|
|
|
|
hdr40_i2c0: i2c@c240000 {
|
|
status = "okay";
|
|
};
|
|
|
|
external-connection {
|
|
vbus_id_extcon: extcon@1 {
|
|
compatible = "extcon-gpio-states";
|
|
reg = <0x1>;
|
|
extcon-gpio,name = "VBUS";
|
|
extcon-gpio,cable-states = <
|
|
0x0 0x1
|
|
0x1 0x0>;
|
|
gpios = <&tegra_main_gpio TEGRA194_MAIN_GPIO(Z, 1) 0>;
|
|
extcon-gpio,out-cable-names = <EXTCON_USB EXTCON_USB_HOST EXTCON_NONE>;
|
|
wakeup-source;
|
|
#extcon-cells = <1>;
|
|
};
|
|
};
|
|
|
|
xusb_padctl: xusb_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-2 {
|
|
nvidia,function = "xusb";
|
|
status = "okay";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
ports {
|
|
usb2-0 {
|
|
mode = "host";
|
|
status = "okay";
|
|
};
|
|
usb2-1 {
|
|
mode = "host";
|
|
status = "okay";
|
|
};
|
|
usb2-2 {
|
|
mode = "host";
|
|
vbus-supply = <&battery_reg>;
|
|
status = "okay";
|
|
};
|
|
usb3-2 {
|
|
nvidia,usb2-companion = <1>;
|
|
status = "okay";
|
|
};
|
|
};
|
|
};
|
|
|
|
tegra_xudc: xudc@3550000 {
|
|
extcon-cables = <&vbus_id_extcon 0>;
|
|
extcon-cable-names = "vbus";
|
|
#extcon-cells = <1>;
|
|
phys = <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-0}>;
|
|
phy-names = "usb2";
|
|
nvidia,xusb-padctl = <&xusb_padctl>;
|
|
nvidia,boost_cpu_freq = <1200>;
|
|
status = "okay";
|
|
};
|
|
|
|
tegra_xhci: xhci@3610000 {
|
|
extcon-cables = <&vbus_id_extcon 1>;
|
|
extcon-cable-names = "id";
|
|
#extcon-cells = <1>;
|
|
phys = <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-0}>,
|
|
<&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-1}>,
|
|
<&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-2}>,
|
|
<&{/xusb_padctl@3520000/pads/usb3/lanes/usb3-2}>;
|
|
phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-2";
|
|
nvidia,xusb-padctl = <&xusb_padctl>;
|
|
status = "okay";
|
|
};
|
|
|
|
/* Below node can be moved to cvb to make decision about enabling/disabling */
|
|
arm-pmu {
|
|
status = "okay";
|
|
};
|
|
|
|
power-domain {
|
|
status = "okay";
|
|
};
|
|
|
|
interrupt-controller {
|
|
status = "okay";
|
|
};
|
|
|
|
mods-simple-bus {
|
|
status = "okay";
|
|
};
|
|
|
|
cpuidle {
|
|
compatible = "nvidia,tegra19x-cpuidle";
|
|
status = "okay";
|
|
};
|
|
|
|
thermal-zones {
|
|
status = "okay";
|
|
};
|
|
|
|
reserved-memory {
|
|
ramoops_carveout {
|
|
status = "okay";
|
|
};
|
|
};
|
|
|
|
mttcan@c310000 {
|
|
status = "disabled";
|
|
};
|
|
|
|
mttcan@c320000 {
|
|
status = "disabled";
|
|
};
|
|
|
|
host1x {
|
|
dpaux@155F0000 {
|
|
status = "okay";
|
|
compatible = "nvidia,tegra194-dpaux3-padctl";
|
|
/delete-property/ power-domains;
|
|
dpaux_default: pinmux@0 {
|
|
dpaux3_pins {
|
|
pins = "dpaux3-3";
|
|
function = "i2c";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
hardwood {
|
|
compatible = "nvidia,denver-hardwood";
|
|
interrupts = <0 24 0x4>;
|
|
};
|
|
|
|
pfsd {
|
|
pwm_polarity= <PWM_POLARITY_NORMAL>;
|
|
suspend_state = <0>;
|
|
};
|
|
|
|
serial@3100000 {
|
|
compatible = "nvidia,tegra186-hsuart";
|
|
status = "okay";
|
|
};
|
|
|
|
serial@3140000 {
|
|
compatible = "nvidia,tegra186-hsuart";
|
|
status = "okay";
|
|
};
|
|
|
|
combined-uart {
|
|
console-port;
|
|
combined-uart;
|
|
status = "okay";
|
|
};
|
|
|
|
pwm@c340000 {
|
|
status = "okay";
|
|
};
|
|
|
|
sdhci_emmc: sdhci@3460000 {
|
|
uhs-mask = <0x0>;
|
|
nvidia,enable-hwcq;
|
|
status = "okay";
|
|
};
|
|
|
|
sdhci_sd: sdhci@3400000 {
|
|
mmc-ocr-mask = <0x0>;
|
|
cd-inverted;
|
|
cd-gpios = <&tegra_main_gpio TEGRA194_MAIN_GPIO(G, 7) 0>;
|
|
//cd-gpios = <&tegra_main_gpio TEGRA194_MAIN_GPIO(BB, 0) 0>;
|
|
nvidia,cd-wakeup-capable;
|
|
mmc-ocr-mask = <0>;
|
|
cd-inverted;
|
|
vmmc-supply = <&p3668_vdd_sdmmc1_sw>;
|
|
status = "okay";
|
|
};
|
|
|
|
sdhci_sd1: sdhci@3440000 {
|
|
status = "okay";
|
|
keep-power-in-suspend;
|
|
/delete-property/ non-removable;
|
|
/delete-property/ mmc-ddr-1_8v;
|
|
mmc-ocr-mask = <3>;
|
|
/delete-property/ sd-uhs-sdr104;
|
|
/delete-property/ sd-uhs-sdr50;
|
|
/delete-property/ sd-uhs-sdr25;
|
|
/delete-property/ sd-uhs-sdr12;
|
|
uhs-mask = <0x7f>;
|
|
max-clk-limit = <208000000>;
|
|
tap-delay = <3>;
|
|
cd-inverted;
|
|
nvidia,cd-wakeup-capable;
|
|
cd-inverted;
|
|
vmmc-supply = <&p3668_vdd_sdmmc1_sw>;
|
|
};
|
|
|
|
mipical@3990000 {
|
|
status = "okay";
|
|
};
|
|
|
|
tegra-hsp@b950000 {
|
|
status = "okay";
|
|
};
|
|
|
|
rtcpu@bc00000 {
|
|
status = "okay";
|
|
nvidia,cmd-timeout = <2000>;
|
|
};
|
|
|
|
gpio@c2f0000 {
|
|
pex-refclk-sel-low {
|
|
gpio-hog;
|
|
output-low;
|
|
gpios = <TEGRA194_AON_GPIO(AA, 5) 0>;
|
|
label = "pex_refclk_sel_low";
|
|
status = "disabled";
|
|
};
|
|
|
|
pex-refclk-sel-high {
|
|
gpio-hog;
|
|
output-high;
|
|
gpios = <TEGRA194_AON_GPIO(AA, 5) 0>;
|
|
label = "pex_refclk_sel_high";
|
|
status = "disabled";
|
|
};
|
|
};
|
|
|
|
gpio@2200000 {
|
|
pcie-reg-enable {
|
|
gpio-hog;
|
|
gpios = <TEGRA194_MAIN_GPIO(Z, 2) GPIO_ACTIVE_HIGH
|
|
TEGRA194_MAIN_GPIO(A, 1) GPIO_ACTIVE_LOW>;
|
|
label = "pcie-3v3-reg", "pcie-12v-reg";
|
|
output-high;
|
|
status = "okay";
|
|
};
|
|
};
|
|
|
|
pcie@14160000 {
|
|
status = "okay";
|
|
|
|
nvidia,pex-wake = <&tegra_main_gpio TEGRA194_MAIN_GPIO(L, 2)
|
|
GPIO_ACTIVE_HIGH>;
|
|
vddio-pex-ctl-supply = <&p3668_spmic_sd3>;
|
|
nvidia,disable-aspm-states = <0xf>;
|
|
nvidia,enable-power-down;
|
|
nvidia,max-speed = <3>;
|
|
|
|
num-lanes = <1>;
|
|
phys = <&p2u_11>;
|
|
phy-names = "pcie-p2u-0";
|
|
};
|
|
|
|
pcie@141a0000 {
|
|
status = "okay";
|
|
|
|
vddio-pex-ctl-supply = <&p3668_spmic_sd3>;
|
|
nvidia,disable-aspm-states = <0xf>;
|
|
nvidia,enable-power-down;
|
|
nvidia,max-speed = <3>;
|
|
|
|
phys = <&p2u_12>,
|
|
<&p2u_13>,
|
|
<&p2u_14>,
|
|
<&p2u_15>,
|
|
<&p2u_16>,
|
|
<&p2u_17>,
|
|
<&p2u_18>,
|
|
<&p2u_19>;
|
|
|
|
phy-names = "pcie-p2u-0", "pcie-p2u-1", "pcie-p2u-2", "pcie-p2u-3",
|
|
"pcie-p2u-4", "pcie-p2u-5", "pcie-p2u-6", "pcie-p2u-7";
|
|
};
|
|
|
|
pcie_ep@141a0000 {
|
|
status = "disabled";
|
|
|
|
nvidia,disable-aspm-states = <0xf>;
|
|
|
|
vddio-pex-ctl-supply = <&p3668_spmic_sd3>;
|
|
|
|
phys = <&p2u_12>, <&p2u_13>, <&p2u_14>, <&p2u_15>,
|
|
<&p2u_16>, <&p2u_17>, <&p2u_18>, <&p2u_19>;
|
|
phy-names = "pcie-p2u-0", "pcie-p2u-1", "pcie-p2u-2", "pcie-p2u-3",
|
|
"pcie-p2u-4", "pcie-p2u-5", "pcie-p2u-6", "pcie-p2u-7";
|
|
|
|
nvidia,pex-rst-gpio = <&tegra_main_gpio TEGRA194_MAIN_GPIO(GG, 1)
|
|
GPIO_ACTIVE_LOW>;
|
|
};
|
|
|
|
|
|
hdr40_i2c1: i2c@31e0000 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&dpaux_default>;
|
|
};
|
|
|
|
host1x {
|
|
dpaux@155F0000 {
|
|
status = "okay";
|
|
compatible = "nvidia,tegra194-dpaux3-padctl";
|
|
dpaux_default: pinmux@0 {
|
|
dpaux3_pins {
|
|
pins = "dpaux3-3";
|
|
function = "i2c";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
dpaux3 {
|
|
compatible = "nvidia,tegra194-dpaux3-pinctrl";
|
|
status = "okay";
|
|
};
|
|
|
|
spi@3230000{
|
|
status = "okay";
|
|
};
|
|
|
|
spi@3210000{
|
|
status = "okay";
|
|
};
|
|
|
|
spi@3230000 {
|
|
status = "okay";
|
|
};
|
|
|
|
ether_qos@2490000 {
|
|
nvidia,phy-reset-gpio = <&tegra_main_gpio TEGRA194_MAIN_GPIO(R, 1) 0>;
|
|
nvidia,phy-reset-post-delay = <72>;
|
|
nvidia,phy-reset-duration = <10000>;
|
|
mdio {
|
|
compatible = "nvidia,eqos-mdio";
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
phy0: ethernet-phy@0 {
|
|
reg = <1>;
|
|
};
|
|
};
|
|
};
|
|
|
|
/* QSPI flash S25FS128SAGNFI103 is controlled by qspi0 */
|
|
spi@3270000 {
|
|
spi-max-frequency = <136000000>;
|
|
status = "okay";
|
|
prod-settings {
|
|
#prod-cells = <3>;
|
|
prod {
|
|
prod = <0x04 0x000000ff 0x10>;
|
|
};
|
|
};
|
|
/* QSPI NOR */
|
|
spiflash@0 {
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
compatible = "s25fs256s";
|
|
reg = <0>;
|
|
spi-max-frequency = <136000000>;
|
|
partition@0 {
|
|
label = "Whole_flash0";
|
|
reg = <0x00000000 0x2000000>; /* size of QSPI-NOR 32MB == 256Mb */
|
|
};
|
|
controller-data {
|
|
nvidia,x1-len-limit = <16>;
|
|
nvidia,x1-bus-speed = <136000000>; /* In Mhz */
|
|
nvidia,x1-dymmy-cycle = <8>;
|
|
nvidia,x4-bus-speed = <136000000>;
|
|
nvidia,x4-dymmy-cycle = <8>;
|
|
nvidia,x4-is-ddr=<0>;
|
|
nvidia,ctrl-bus-clk-ratio = <1>;
|
|
};
|
|
};
|
|
};
|
|
|
|
|
|
gpio-keys {
|
|
compatible = "gpio-keys";
|
|
gpio-keys,name = "gpio-keys";
|
|
|
|
forcerecovery {
|
|
label = "force-recovery";
|
|
gpios = <&tegra_main_gpio TEGRA194_MAIN_GPIO(G, 0) GPIO_ACTIVE_LOW>;
|
|
linux,code = <BTN_1>;
|
|
};
|
|
|
|
power_key {
|
|
label = "power-key";
|
|
gpios = <&tegra_aon_gpio TEGRA194_AON_GPIO(EE, 4) GPIO_ACTIVE_LOW>;
|
|
linux,code = <KEY_POWER>;
|
|
gpio-key,wakeup;
|
|
};
|
|
};
|
|
|
|
pwm-fan {
|
|
pwms = <&tegra_pwm6 0 45334>;
|
|
vdd-fan-supply = <&battery_reg>;
|
|
profiles {
|
|
default = "quiet";
|
|
quiet {
|
|
state_cap = <4>;
|
|
active_pwm = <0 130 160 200 255 255 255 255 255 255>;
|
|
};
|
|
cool {
|
|
state_cap = <4>;
|
|
active_pwm = <0 140 170 200 255 255 255 255 255 255>;
|
|
};
|
|
};
|
|
};
|
|
thermal-fan-est {
|
|
profiles {
|
|
default = "quiet";
|
|
quiet {
|
|
active_trip_temps = <0 46000 60000 68000 76000
|
|
140000 150000 160000 170000 180000>;
|
|
active_hysteresis = <0 8000 8000 7000 7000
|
|
0 0 0 0 0>;
|
|
};
|
|
cool {
|
|
active_trip_temps = <0 35000 45000 53000 61000
|
|
140000 150000 160000 170000 180000>;
|
|
active_hysteresis = <0 8000 8000 7000 7000
|
|
0 0 0 0 0>;
|
|
};
|
|
};
|
|
};
|
|
serial@3110000 {
|
|
status = "okay";
|
|
};
|
|
tachometer@39c0000 {
|
|
status = "okay";
|
|
};
|
|
pwm@3280000 {
|
|
status = "okay";
|
|
};
|
|
|
|
pwm@32c0000 {
|
|
status = "okay";
|
|
};
|
|
|
|
pwm@32d0000 {
|
|
status = "okay";
|
|
};
|
|
|
|
pwm@32f0000 {
|
|
status = "okay";
|
|
};
|
|
spi@c260000 {
|
|
status = "disabled";
|
|
};
|
|
|
|
spi@3300000 {
|
|
status = "disabled";
|
|
};
|
|
|
|
i2c@c240000 {
|
|
status = "okay";
|
|
|
|
};
|
|
|
|
i2c@31e0000 {
|
|
status = "okay";
|
|
};
|
|
|
|
fixed-regulators {
|
|
hdr40_vdd_5v0: battery_reg: regulator@0 {
|
|
compatible = "regulator-fixed";
|
|
reg = <0>;
|
|
regulator-name = "vdd-ac-bat";
|
|
regulator-min-microvolt = <5000000>;
|
|
regulator-max-microvolt = <5000000>;
|
|
regulator-always-on;
|
|
};
|
|
|
|
p3668_vdd_sdmmc1_sw: regulator@106 {
|
|
compatible = "regulator-fixed";
|
|
reg = <106>;
|
|
regulator-name = "vdd-sdmmc1-sw";
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
gpio = <&tegra_main_gpio TEGRA194_MAIN_GPIO(G, 2) 0>;
|
|
enable-active-high;
|
|
};
|
|
|
|
p3668_vdd_1v8_sd: regulator@104 {
|
|
compatible = "regulator-fixed";
|
|
reg = <104>;
|
|
regulator-name = "vdd-1v8-sd";
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1800000>;
|
|
enable-active-high;
|
|
};
|
|
regulator@114 {
|
|
|
|
/delete-property/ gpio;
|
|
/delete-property/ enable-active-high;
|
|
regulator-always-on;
|
|
|
|
|
|
};
|
|
cti_usb_vbus: regulator@200 {
|
|
compatible = "regulator-fixed";
|
|
reg = <200>;
|
|
status = "okay";
|
|
regulator-name = "cti-usb-vbus";
|
|
regulator-min-microvolt = <5000000>;
|
|
regulator-max-microvolt = <5000000>;
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
plugin-manager {
|
|
fragement-pmic-wdt-en {
|
|
odm-data = "enable-pmic-wdt";
|
|
override@0 {
|
|
target = <&p3668_spmic_wdt>;
|
|
_overlay_ {
|
|
status = "okay";
|
|
};
|
|
};
|
|
};
|
|
|
|
fragement-tegra-wdt-en {
|
|
odm-data = "enable-denver-wdt";
|
|
override@0 {
|
|
target = <&tegra_wdt>;
|
|
_overlay_ {
|
|
status = "okay";
|
|
};
|
|
};
|
|
};
|
|
|
|
fragement-tegra-wdt-dis {
|
|
odm-data = "disable-denver-wdt";
|
|
override@0 {
|
|
target = <&tegra_pmc>;
|
|
_overlay_ {
|
|
nvidia,enable-halt-in-fiq;
|
|
};
|
|
};
|
|
};
|
|
|
|
};
|
|
};
|
|
|
|
&head0 {
|
|
|
|
vdd_hdmi_5v0-supply = <&battery_reg>;
|
|
|
|
};
|
|
|
|
&head1 {
|
|
|
|
vdd_hdmi_5v0-supply = <&battery_reg>;
|
|
|
|
};
|
|
|
|
|
|
#if LINUX_VERSION >= 414
|
|
#include <tegra194-linux-4.14.dtsi>
|
|
#endif
|
|
|
|
|