Commit fb31429f authored by Arnd Bergmann's avatar Arnd Bergmann

Merge tag 'tegra-for-5.9-arm64-dt' of...

Merge tag 'tegra-for-5.9-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into arm/dt

arm64: tegra: Device tree changes for v5.9-rc1

This contains a slew of fixes in preparation for validating device trees
against json-schema bindings. In addition, this enables the CPU complex
(for CPU frequency scaling) and GPU on Tegra194.

* tag 'tegra-for-5.9-arm64-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux: (56 commits)
  arm64: tegra: Add the GPU on Tegra194
  arm64: tegra: Add compatible string for Tegra194 CPU complex
  arm64: tegra: Add HDMI supplies on Norrin
  arm64: tegra: Add #{address,size}-cells for VI I2C on Tegra210
  arm64: tegra: Add missing clocks and power-domains to Tegra210 VI I2C
  arm64: tegra: Add clocks and resets for ISP on Tegra210
  arm64: tegra: Fix compatible string for DPAUX on Tegra210
  arm64: tegra: Add i2c-bus subnode for DPAUX controllers
  arm64: tegra: Sort aliases alphabetically
  arm64: tegra: Remove spurious tabs
  arm64: tegra: Populate VBUS for USB3 on Jetson TX2
  arm64: tegra: Enable DFLL support on Jetson Nano
  arm64: tegra: Add support for Jetson Xavier NX
  arm64: tegra: Re-order PCIe aperture mappings
  arm64: tegra: Enable Tegra VI CSI support for Jetson Nano
  arm64: tegra: jetson-tx1: Add camera supplies
  arm64: tegra: Fix order of XUSB controller clocks
  arm64: tegra: Rename cbb@0 to bus@0 on Tegra194
  arm64: tegra: Sort nodes by unit-address on Jetson Nano
  arm64: tegra: Various fixes for PMICs
  ...

Link: https://lore.kernel.org/r/20200717161300.1661002-7-thierry.reding@gmail.comSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents 3502e079 0f134e39
...@@ -8,3 +8,4 @@ dtb-$(CONFIG_ARCH_TEGRA_210_SOC) += tegra210-smaug.dtb ...@@ -8,3 +8,4 @@ dtb-$(CONFIG_ARCH_TEGRA_210_SOC) += tegra210-smaug.dtb
dtb-$(CONFIG_ARCH_TEGRA_210_SOC) += tegra210-p2894-0050-a08.dtb dtb-$(CONFIG_ARCH_TEGRA_210_SOC) += tegra210-p2894-0050-a08.dtb
dtb-$(CONFIG_ARCH_TEGRA_186_SOC) += tegra186-p2771-0000.dtb dtb-$(CONFIG_ARCH_TEGRA_186_SOC) += tegra186-p2771-0000.dtb
dtb-$(CONFIG_ARCH_TEGRA_194_SOC) += tegra194-p2972-0000.dtb dtb-$(CONFIG_ARCH_TEGRA_194_SOC) += tegra194-p2972-0000.dtb
dtb-$(CONFIG_ARCH_TEGRA_194_SOC) += tegra194-p3509-0000+p3668-0000.dtb
This diff is collapsed.
...@@ -103,7 +103,7 @@ exp2: gpio@77 { ...@@ -103,7 +103,7 @@ exp2: gpio@77 {
}; };
/* SDMMC1 (SD/MMC) */ /* SDMMC1 (SD/MMC) */
sdhci@3400000 { mmc@3400000 {
status = "okay"; status = "okay";
vmmc-supply = <&vdd_sd>; vmmc-supply = <&vdd_sd>;
...@@ -119,10 +119,6 @@ padctl@3520000 { ...@@ -119,10 +119,6 @@ padctl@3520000 {
avdd-pll-erefeut-supply = <&vdd_1v8_pll>; avdd-pll-erefeut-supply = <&vdd_1v8_pll>;
avdd-usb-supply = <&vdd_3v3_sys>; avdd-usb-supply = <&vdd_3v3_sys>;
dvdd-pex-supply = <&vdd_pex>;
dvdd-pex-pll-supply = <&vdd_pex>;
hvdd-pex-supply = <&vdd_1v8>;
hvdd-pex-pll-supply = <&vdd_1v8>;
vclamp-usb-supply = <&vdd_1v8>; vclamp-usb-supply = <&vdd_1v8>;
vddio-hsic-supply = <&gnd>; vddio-hsic-supply = <&gnd>;
...@@ -175,19 +171,18 @@ usb2-0 { ...@@ -175,19 +171,18 @@ usb2-0 {
status = "okay"; status = "okay";
mode = "otg"; mode = "otg";
vbus-supply = <&vdd_usb0>; vbus-supply = <&vdd_usb0>;
usb-role-switch; usb-role-switch;
connector { connector {
compatible = "usb-b-connector", compatible = "gpio-usb-b-connector",
"gpio-usb-b-connector"; "usb-b-connector";
label = "micro-USB"; label = "micro-USB";
type = "micro"; type = "micro";
vbus-gpio = <&gpio vbus-gpios = <&gpio
TEGRA186_MAIN_GPIO(X, 7) TEGRA186_MAIN_GPIO(X, 7)
GPIO_ACTIVE_LOW>; GPIO_ACTIVE_LOW>;
id-gpio = <&pmic 0 GPIO_ACTIVE_HIGH>; id-gpios = <&pmic 0 GPIO_ACTIVE_HIGH>;
}; };
}; };
usb2-1 { usb2-1 {
...@@ -199,6 +194,7 @@ usb2-1 { ...@@ -199,6 +194,7 @@ usb2-1 {
usb3-0 { usb3-0 {
nvidia,usb2-companion = <1>; nvidia,usb2-companion = <1>;
vbus-supply = <&vdd_usb1>;
status = "okay"; status = "okay";
}; };
}; };
...@@ -227,8 +223,8 @@ eeprom@57 { ...@@ -227,8 +223,8 @@ eeprom@57 {
reg = <0x57>; reg = <0x57>;
vcc-supply = <&vdd_1v8>; vcc-supply = <&vdd_1v8>;
address-bits = <8>; address-width = <8>;
page-size = <8>; pagesize = <8>;
size = <256>; size = <256>;
read-only; read-only;
}; };
...@@ -286,8 +282,8 @@ sor@15540000 { ...@@ -286,8 +282,8 @@ sor@15540000 {
sor@15580000 { sor@15580000 {
status = "okay"; status = "okay";
avdd-io-supply = <&vdd_hdmi_1v05>; avdd-io-hdmi-dp-supply = <&vdd_hdmi_1v05>;
vdd-pll-supply = <&vdd_1v8_ap>; vdd-hdmi-dp-pll-supply = <&vdd_1v8_ap>;
hdmi-supply = <&vdd_hdmi>; hdmi-supply = <&vdd_hdmi>;
nvidia,ddc-i2c-bus = <&ddc>; nvidia,ddc-i2c-bus = <&ddc>;
...@@ -333,62 +329,51 @@ volume-down { ...@@ -333,62 +329,51 @@ volume-down {
}; };
}; };
regulators { vdd_sd: regulator@100 {
vdd_sd: regulator@100 { compatible = "regulator-fixed";
compatible = "regulator-fixed"; regulator-name = "SD_CARD_SW_PWR";
reg = <100>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-name = "SD_CARD_SW_PWR";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio TEGRA186_MAIN_GPIO(P, 6) gpio = <&gpio TEGRA186_MAIN_GPIO(P, 6) GPIO_ACTIVE_HIGH>;
GPIO_ACTIVE_HIGH>; enable-active-high;
enable-active-high;
vin-supply = <&vdd_3v3_sys>; vin-supply = <&vdd_3v3_sys>;
}; };
vdd_hdmi: regulator@101 {
compatible = "regulator-fixed";
reg = <101>;
regulator-name = "VDD_HDMI_5V0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&exp1 14 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_5v0_sys>; vdd_hdmi: regulator@101 {
}; compatible = "regulator-fixed";
regulator-name = "VDD_HDMI_5V0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
vdd_usb0: regulator@102 { gpio = <&exp1 14 GPIO_ACTIVE_HIGH>;
compatible = "regulator-fixed"; enable-active-high;
reg = <102>;
regulator-name = "VDD_USB0"; vin-supply = <&vdd_5v0_sys>;
regulator-min-microvolt = <5000000>; };
regulator-max-microvolt = <5000000>;
gpio = <&gpio TEGRA186_MAIN_GPIO(L, 4) GPIO_ACTIVE_HIGH>; vdd_usb0: regulator@102 {
enable-active-high; compatible = "regulator-fixed";
regulator-name = "VDD_USB0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
vin-supply = <&vdd_5v0_sys>; gpio = <&gpio TEGRA186_MAIN_GPIO(L, 4) GPIO_ACTIVE_HIGH>;
}; enable-active-high;
vdd_usb1: regulator@103 { vin-supply = <&vdd_5v0_sys>;
compatible = "regulator-fixed"; };
reg = <103>;
regulator-name = "VDD_USB1"; vdd_usb1: regulator@103 {
regulator-min-microvolt = <5000000>; compatible = "regulator-fixed";
regulator-max-microvolt = <5000000>; regulator-name = "VDD_USB1";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&gpio TEGRA186_MAIN_GPIO(L, 5) GPIO_ACTIVE_HIGH>; gpio = <&gpio TEGRA186_MAIN_GPIO(L, 5) GPIO_ACTIVE_HIGH>;
enable-active-high; enable-active-high;
vin-supply = <&vdd_5v0_sys>; vin-supply = <&vdd_5v0_sys>;
};
}; };
}; };
...@@ -9,9 +9,6 @@ / { ...@@ -9,9 +9,6 @@ / {
aliases { aliases {
ethernet0 = "/ethernet@2490000"; ethernet0 = "/ethernet@2490000";
sdhci0 = "/sdhci@3460000";
sdhci1 = "/sdhci@3400000";
serial0 = &uarta;
i2c0 = "/bpmp/i2c"; i2c0 = "/bpmp/i2c";
i2c1 = "/i2c@3160000"; i2c1 = "/i2c@3160000";
i2c2 = "/i2c@c240000"; i2c2 = "/i2c@c240000";
...@@ -20,6 +17,9 @@ aliases { ...@@ -20,6 +17,9 @@ aliases {
i2c5 = "/i2c@31c0000"; i2c5 = "/i2c@31c0000";
i2c6 = "/i2c@c250000"; i2c6 = "/i2c@c250000";
i2c7 = "/i2c@31e0000"; i2c7 = "/i2c@31e0000";
mmc0 = "/mmc@3460000";
mmc1 = "/mmc@3400000";
serial0 = &uarta;
}; };
chosen { chosen {
...@@ -27,7 +27,7 @@ chosen { ...@@ -27,7 +27,7 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
memory { memory@80000000 {
device_type = "memory"; device_type = "memory";
reg = <0x0 0x80000000 0x2 0x00000000>; reg = <0x0 0x80000000 0x2 0x00000000>;
}; };
...@@ -50,6 +50,8 @@ phy: phy@0 { ...@@ -50,6 +50,8 @@ phy: phy@0 {
interrupt-parent = <&gpio>; interrupt-parent = <&gpio>;
interrupts = <TEGRA186_MAIN_GPIO(M, 5) interrupts = <TEGRA186_MAIN_GPIO(M, 5)
IRQ_TYPE_LEVEL_LOW>; IRQ_TYPE_LEVEL_LOW>;
#phy-cells = <0>;
}; };
}; };
}; };
...@@ -133,7 +135,7 @@ i2c@31e0000 { ...@@ -133,7 +135,7 @@ i2c@31e0000 {
}; };
/* SDMMC1 (SD/MMC) */ /* SDMMC1 (SD/MMC) */
sdhci@3400000 { mmc@3400000 {
cd-gpios = <&gpio TEGRA186_MAIN_GPIO(P, 5) GPIO_ACTIVE_LOW>; cd-gpios = <&gpio TEGRA186_MAIN_GPIO(P, 5) GPIO_ACTIVE_LOW>;
wp-gpios = <&gpio TEGRA186_MAIN_GPIO(P, 4) GPIO_ACTIVE_HIGH>; wp-gpios = <&gpio TEGRA186_MAIN_GPIO(P, 4) GPIO_ACTIVE_HIGH>;
...@@ -141,12 +143,12 @@ sdhci@3400000 { ...@@ -141,12 +143,12 @@ sdhci@3400000 {
}; };
/* SDMMC3 (SDIO) */ /* SDMMC3 (SDIO) */
sdhci@3440000 { mmc@3440000 {
status = "okay"; status = "okay";
}; };
/* SDMMC4 (eMMC) */ /* SDMMC4 (eMMC) */
sdhci@3460000 { mmc@3460000 {
status = "okay"; status = "okay";
bus-width = <8>; bus-width = <8>;
non-removable; non-removable;
...@@ -172,8 +174,8 @@ eeprom@50 { ...@@ -172,8 +174,8 @@ eeprom@50 {
reg = <0x50>; reg = <0x50>;
vcc-supply = <&vdd_1v8>; vcc-supply = <&vdd_1v8>;
address-bits = <8>; address-width = <8>;
page-size = <8>; pagesize = <8>;
size = <256>; size = <256>;
read-only; read-only;
}; };
...@@ -390,45 +392,33 @@ psci { ...@@ -390,45 +392,33 @@ psci {
method = "smc"; method = "smc";
}; };
regulators { gnd: regulator@0 {
compatible = "simple-bus"; compatible = "regulator-fixed";
#address-cells = <1>; regulator-name = "GND";
#size-cells = <0>; regulator-min-microvolt = <0>;
regulator-max-microvolt = <0>;
gnd: regulator@0 { regulator-always-on;
compatible = "regulator-fixed"; regulator-boot-on;
reg = <0>; };
regulator-name = "GND";
regulator-min-microvolt = <0>;
regulator-max-microvolt = <0>;
regulator-always-on;
regulator-boot-on;
};
vdd_5v0_sys: regulator@1 {
compatible = "regulator-fixed";
reg = <1>;
regulator-name = "VDD_5V0_SYS";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
};
vdd_1v8_ap: regulator@2 { vdd_5v0_sys: regulator@1 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <2>; regulator-name = "VDD_5V0_SYS";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
};
regulator-name = "VDD_1V8_AP"; vdd_1v8_ap: regulator@2 {
regulator-min-microvolt = <1800000>; compatible = "regulator-fixed";
regulator-max-microvolt = <1800000>; regulator-name = "VDD_1V8_AP";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
gpio = <&pmic 1 GPIO_ACTIVE_HIGH>; gpio = <&pmic 1 GPIO_ACTIVE_HIGH>;
enable-active-high; enable-active-high;
vin-supply = <&vdd_1v8>; vin-supply = <&vdd_1v8>;
};
}; };
}; };
This diff is collapsed.
...@@ -8,18 +8,18 @@ / { ...@@ -8,18 +8,18 @@ / {
compatible = "nvidia,p2888", "nvidia,tegra194"; compatible = "nvidia,p2888", "nvidia,tegra194";
aliases { aliases {
ethernet0 = "/cbb@0/ethernet@2490000"; ethernet0 = "/bus@0/ethernet@2490000";
sdhci0 = "/cbb@0/sdhci@3460000";
sdhci1 = "/cbb@0/sdhci@3400000";
serial0 = &tcu;
i2c0 = "/bpmp/i2c"; i2c0 = "/bpmp/i2c";
i2c1 = "/cbb@0/i2c@3160000"; i2c1 = "/bus@0/i2c@3160000";
i2c2 = "/cbb@0/i2c@c240000"; i2c2 = "/bus@0/i2c@c240000";
i2c3 = "/cbb@0/i2c@3180000"; i2c3 = "/bus@0/i2c@3180000";
i2c4 = "/cbb@0/i2c@3190000"; i2c4 = "/bus@0/i2c@3190000";
i2c5 = "/cbb@0/i2c@31c0000"; i2c5 = "/bus@0/i2c@31c0000";
i2c6 = "/cbb@0/i2c@c250000"; i2c6 = "/bus@0/i2c@c250000";
i2c7 = "/cbb@0/i2c@31e0000"; i2c7 = "/bus@0/i2c@31e0000";
mmc0 = "/bus@0/mmc@3460000";
mmc1 = "/bus@0/mmc@3400000";
serial0 = &tcu;
}; };
chosen { chosen {
...@@ -27,7 +27,7 @@ chosen { ...@@ -27,7 +27,7 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
cbb@0 { bus@0 {
ethernet@2490000 { ethernet@2490000 {
status = "okay"; status = "okay";
...@@ -44,6 +44,7 @@ phy: phy@0 { ...@@ -44,6 +44,7 @@ phy: phy@0 {
reg = <0x0>; reg = <0x0>;
interrupt-parent = <&gpio>; interrupt-parent = <&gpio>;
interrupts = <TEGRA194_MAIN_GPIO(G, 4) IRQ_TYPE_LEVEL_LOW>; interrupts = <TEGRA194_MAIN_GPIO(G, 4) IRQ_TYPE_LEVEL_LOW>;
#phy-cells = <0>;
}; };
}; };
}; };
...@@ -57,12 +58,12 @@ serial@3110000 { ...@@ -57,12 +58,12 @@ serial@3110000 {
}; };
/* SDMMC1 (SD/MMC) */ /* SDMMC1 (SD/MMC) */
sdhci@3400000 { mmc@3400000 {
cd-gpios = <&gpio TEGRA194_MAIN_GPIO(A, 0) GPIO_ACTIVE_LOW>; cd-gpios = <&gpio TEGRA194_MAIN_GPIO(A, 0) GPIO_ACTIVE_LOW>;
}; };
/* SDMMC4 (eMMC) */ /* SDMMC4 (eMMC) */
sdhci@3460000 { mmc@3460000 {
status = "okay"; status = "okay";
bus-width = <8>; bus-width = <8>;
non-removable; non-removable;
...@@ -292,65 +293,49 @@ temperature-sensor@4c { ...@@ -292,65 +293,49 @@ temperature-sensor@4c {
}; };
}; };
regulators { vdd_5v0_sys: regulator@0 {
compatible = "simple-bus"; compatible = "regulator-fixed";
#address-cells = <1>; regulator-name = "VIN_SYS_5V0";
#size-cells = <0>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
vdd_5v0_sys: regulator@0 { regulator-always-on;
compatible = "regulator-fixed"; regulator-boot-on;
reg = <0>; };
regulator-name = "VIN_SYS_5V0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
};
vdd_hdmi: regulator@1 {
compatible = "regulator-fixed";
reg = <1>;
regulator-name = "VDD_5V0_HDMI_CON";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&gpio TEGRA194_MAIN_GPIO(A, 3) GPIO_ACTIVE_HIGH>;
enable-active-high;
};
vdd_3v3_pcie: regulator@2 {
compatible = "regulator-fixed";
reg = <2>;
regulator-name = "PEX_3V3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio TEGRA194_MAIN_GPIO(Z, 2) GPIO_ACTIVE_HIGH>;
regulator-boot-on;
enable-active-high;
};
vdd_12v_pcie: regulator@3 { vdd_hdmi: regulator@1 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <3>; regulator-name = "VDD_5V0_HDMI_CON";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&gpio TEGRA194_MAIN_GPIO(A, 3) GPIO_ACTIVE_HIGH>;
enable-active-high;
};
regulator-name = "VDD_12V"; vdd_3v3_pcie: regulator@2 {
regulator-min-microvolt = <1200000>; compatible = "regulator-fixed";
regulator-max-microvolt = <1200000>; regulator-name = "PEX_3V3";
gpio = <&gpio TEGRA194_MAIN_GPIO(A, 1) GPIO_ACTIVE_HIGH>; regulator-min-microvolt = <3300000>;
regulator-boot-on; regulator-max-microvolt = <3300000>;
}; gpio = <&gpio TEGRA194_MAIN_GPIO(Z, 2) GPIO_ACTIVE_HIGH>;
regulator-boot-on;
enable-active-high;
};
vdd_5v_sata: regulator@4 { vdd_12v_pcie: regulator@3 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <4>; regulator-name = "VDD_12V";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
gpio = <&gpio TEGRA194_MAIN_GPIO(A, 1) GPIO_ACTIVE_HIGH>;
regulator-boot-on;
};
regulator-name = "VDD_5V_SATA"; vdd_5v_sata: regulator@4 {
regulator-min-microvolt = <5000000>; compatible = "regulator-fixed";
regulator-max-microvolt = <5000000>; regulator-name = "VDD_5V_SATA";
gpio = <&gpio TEGRA194_MAIN_GPIO(Z, 1) GPIO_ACTIVE_HIGH>; regulator-min-microvolt = <5000000>;
enable-active-high; regulator-max-microvolt = <5000000>;
}; gpio = <&gpio TEGRA194_MAIN_GPIO(Z, 1) GPIO_ACTIVE_HIGH>;
enable-active-high;
}; };
}; };
...@@ -10,7 +10,7 @@ / { ...@@ -10,7 +10,7 @@ / {
model = "NVIDIA Jetson AGX Xavier Developer Kit"; model = "NVIDIA Jetson AGX Xavier Developer Kit";
compatible = "nvidia,p2972-0000", "nvidia,tegra194"; compatible = "nvidia,p2972-0000", "nvidia,tegra194";
cbb@0 { bus@0 {
aconnect@2900000 { aconnect@2900000 {
status = "okay"; status = "okay";
...@@ -28,7 +28,7 @@ ddc: i2c@31c0000 { ...@@ -28,7 +28,7 @@ ddc: i2c@31c0000 {
}; };
/* SDMMC1 (SD/MMC) */ /* SDMMC1 (SD/MMC) */
sdhci@3400000 { mmc@3400000 {
status = "okay"; status = "okay";
}; };
...@@ -93,10 +93,10 @@ usb3-3 { ...@@ -93,10 +93,10 @@ usb3-3 {
usb@3610000 { usb@3610000 {
status = "okay"; status = "okay";
phys = <&{/cbb@0/padctl@3520000/pads/usb2/lanes/usb2-1}>, phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-1}>,
<&{/cbb@0/padctl@3520000/pads/usb2/lanes/usb2-3}>, <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-3}>,
<&{/cbb@0/padctl@3520000/pads/usb3/lanes/usb3-0}>, <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-0}>,
<&{/cbb@0/padctl@3520000/pads/usb3/lanes/usb3-3}>; <&{/bus@0/padctl@3520000/pads/usb3/lanes/usb3-3}>;
phy-names = "usb2-1", "usb2-3", "usb3-0", "usb3-3"; phy-names = "usb2-1", "usb2-3", "usb3-0", "usb3-3";
}; };
...@@ -145,8 +145,8 @@ sor@15b40000 { ...@@ -145,8 +145,8 @@ sor@15b40000 {
sor@15b80000 { sor@15b80000 {
status = "okay"; status = "okay";
avdd-io-supply = <&vdd_1v0>; avdd-io-hdmi-dp-supply = <&vdd_1v0>;
vdd-pll-supply = <&vdd_1v8hs>; vdd-hdmi-dp-pll-supply = <&vdd_1v8hs>;
hdmi-supply = <&vdd_hdmi>; hdmi-supply = <&vdd_hdmi>;
nvidia,ddc-i2c-bus = <&ddc>; nvidia,ddc-i2c-bus = <&ddc>;
......
// SPDX-License-Identifier: GPL-2.0
/dts-v1/;
#include <dt-bindings/input/linux-event-codes.h>
#include <dt-bindings/input/gpio-keys.h>
#include "tegra194-p3668-0000.dtsi"
/ {
model = "NVIDIA Jetson Xavier NX Developer Kit";
compatible = "nvidia,p3509-0000+p3668-0000", "nvidia,tegra194";
bus@0 {
aconnect@2900000 {
status = "okay";
dma-controller@2930000 {
status = "okay";
};
interrupt-controller@2a40000 {
status = "okay";
};
};
ddc: i2c@3190000 {
status = "okay";
};
hda@3510000 {
nvidia,model = "jetson-xavier-nx-hda";
status = "okay";
};
padctl@3520000 {
status = "okay";
pads {
usb2 {
lanes {
usb2-1 {
status = "okay";
};
usb2-2 {
status = "okay";
};
};
};
usb3 {
lanes {
usb3-2 {
status = "okay";
};
};
};
};
ports {
usb2-1 {
mode = "host";
status = "okay";
};
usb2-2 {
mode = "host";
vbus-supply = <&vdd_5v0_sys>;
status = "okay";
};
usb3-2 {
nvidia,usb2-companion = <1>;
vbus-supply = <&vdd_5v0_sys>;
status = "okay";
};
};
};
usb@3610000 {
status = "okay";
phys = <&{/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-2}>;
phy-names = "usb2-1", "usb2-2", "usb3-2";
};
pwm@32d0000 {
status = "okay";
};
host1x@13e00000 {
display-hub@15200000 {
status = "okay";
};
dpaux@155c0000 {
status = "okay";
};
dpaux@155d0000 {
status = "okay";
};
/* DP0 */
sor@15b00000 {
status = "okay";
avdd-io-hdmi-dp-supply = <&vdd_1v0>;
vdd-hdmi-dp-pll-supply = <&vdd_1v8hs>;
nvidia,dpaux = <&dpaux0>;
};
/* HDMI */
sor@15b40000 {
status = "okay";
avdd-io-hdmi-dp-supply = <&vdd_1v0>;
vdd-hdmi-dp-pll-supply = <&vdd_1v8hs>;
hdmi-supply = <&vdd_hdmi>;
nvidia,ddc-i2c-bus = <&ddc>;
nvidia,hpd-gpio = <&gpio TEGRA194_MAIN_GPIO(M, 1)
GPIO_ACTIVE_LOW>;
};
};
};
pcie@14160000 {
status = "okay";
vddio-pex-ctl-supply = <&vdd_1v8ao>;
phys = <&p2u_hsio_11>;
phy-names = "p2u-0";
};
pcie@141a0000 {
status = "okay";
vddio-pex-ctl-supply = <&vdd_1v8ao>;
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_ep@141a0000 {
status = "disabled";
vddio-pex-ctl-supply = <&vdd_1v8ao>;
reset-gpios = <&gpio TEGRA194_MAIN_GPIO(GG, 1) GPIO_ACTIVE_LOW>;
nvidia,refclk-select-gpios = <&gpio_aon TEGRA194_AON_GPIO(AA, 5)
GPIO_ACTIVE_HIGH>;
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";
};
fan: fan {
compatible = "pwm-fan";
pwms = <&pwm6 0 45334>;
cooling-levels = <0 64 128 255>;
#cooling-cells = <2>;
};
gpio-keys {
compatible = "gpio-keys";
force-recovery {
label = "Force Recovery";
gpios = <&gpio TEGRA194_MAIN_GPIO(G, 0)
GPIO_ACTIVE_LOW>;
linux,input-type = <EV_KEY>;
linux,code = <KEY_SLEEP>;
debounce-interval = <10>;
};
power {
label = "Power";
gpios = <&gpio_aon TEGRA194_AON_GPIO(EE, 4)
GPIO_ACTIVE_LOW>;
linux,input-type = <EV_KEY>;
linux,code = <KEY_POWER>;
debounce-interval = <10>;
wakeup-event-action = <EV_ACT_ASSERTED>;
wakeup-source;
};
};
vdd_5v0_sys: regulator@100 {
compatible = "regulator-fixed";
regulator-name = "VDD_5V_SYS";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
};
vdd_3v3_sys: regulator@101 {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_SYS";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
regulator-boot-on;
};
vdd_3v3_ao: regulator@102 {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_AO";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
regulator-boot-on;
};
vdd_1v8: regulator@103 {
compatible = "regulator-fixed";
regulator-name = "VDD_1V8";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
regulator-boot-on;
};
vdd_hdmi: regulator@104 {
compatible = "regulator-fixed";
regulator-name = "VDD_5V0_HDMI_CON";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
};
thermal-zones {
cpu {
polling-delay = <0>;
polling-delay-passive = <500>;
status = "okay";
trips {
cpu_trip_critical: critical {
temperature = <96500>;
hysteresis = <0>;
type = "critical";
};
cpu_trip_hot: hot {
temperature = <70000>;
hysteresis = <2000>;
type = "hot";
};
cpu_trip_active: active {
temperature = <50000>;
hysteresis = <2000>;
type = "active";
};
cpu_trip_passive: passive {
temperature = <30000>;
hysteresis = <2000>;
type = "passive";
};
};
cooling-maps {
cpu-critical {
cooling-device = <&fan 3 3>;
trip = <&cpu_trip_critical>;
};
cpu-hot {
cooling-device = <&fan 2 2>;
trip = <&cpu_trip_hot>;
};
cpu-active {
cooling-device = <&fan 1 1>;
trip = <&cpu_trip_active>;
};
cpu-passive {
cooling-device = <&fan 0 0>;
trip = <&cpu_trip_passive>;
};
};
};
gpu {
polling-delay = <0>;
polling-delay-passive = <500>;
status = "okay";
trips {
gpu_alert0: critical {
temperature = <99000>;
hysteresis = <0>;
type = "critical";
};
};
};
aux {
polling-delay = <0>;
polling-delay-passive = <500>;
status = "okay";
trips {
aux_alert0: critical {
temperature = <90000>;
hysteresis = <0>;
type = "critical";
};
};
};
};
};
// SPDX-License-Identifier: GPL-2.0
#include "tegra194.dtsi"
#include <dt-bindings/mfd/max77620.h>
/ {
model = "NVIDIA Jetson Xavier NX";
compatible = "nvidia,p3668-0000", "nvidia,tegra194";
aliases {
ethernet0 = "/bus@0/ethernet@2490000";
i2c0 = "/bpmp/i2c";
i2c1 = "/bus@0/i2c@3160000";
i2c2 = "/bus@0/i2c@c240000";
i2c3 = "/bus@0/i2c@3180000";
i2c4 = "/bus@0/i2c@3190000";
i2c5 = "/bus@0/i2c@31c0000";
i2c6 = "/bus@0/i2c@c250000";
i2c7 = "/bus@0/i2c@31e0000";
mmc0 = "/bus@0/mmc@3460000";
rtc0 = "/bpmp/i2c/pmic@3c";
rtc1 = "/bus@0/rtc@c2a0000";
serial0 = &tcu;
};
chosen {
bootargs = "console=ttyS0,115200n8";
stdout-path = "serial0:115200n8";
};
bus@0 {
ethernet@2490000 {
status = "okay";
phy-reset-gpios = <&gpio TEGRA194_MAIN_GPIO(R, 1) GPIO_ACTIVE_LOW>;
phy-handle = <&phy>;
phy-mode = "rgmii-id";
mdio {
#address-cells = <1>;
#size-cells = <0>;
phy: phy@0 {
compatible = "ethernet-phy-ieee802.3-c22";
reg = <0x0>;
interrupt-parent = <&gpio>;
interrupts = <TEGRA194_MAIN_GPIO(G, 4) IRQ_TYPE_LEVEL_LOW>;
#phy-cells = <0>;
};
};
};
memory-controller@2c00000 {
status = "okay";
};
serial@c280000 {
status = "okay";
};
/* SDMMC1 (SD/MMC) */
mmc@3400000 {
status = "okay";
bus-width = <4>;
cd-gpios = <&gpio TEGRA194_MAIN_GPIO(G, 7) GPIO_ACTIVE_LOW>;
disable-wp;
vmmc-supply = <&vdd_3v3_sd>;
};
padctl@3520000 {
avdd-usb-supply = <&vdd_usb_3v3>;
vclamp-usb-supply = <&vdd_1v8ao>;
ports {
usb2-1 {
vbus-supply = <&vdd_5v0_sys>;
};
usb2-3 {
vbus-supply = <&vdd_5v0_sys>;
};
usb3-0 {
vbus-supply = <&vdd_5v0_sys>;
};
usb3-3 {
vbus-supply = <&vdd_5v0_sys>;
};
};
};
rtc@c2a0000 {
status = "okay";
};
pmc@c360000 {
nvidia,invert-interrupt;
};
};
bpmp {
i2c {
status = "okay";
pmic: pmic@3c {
compatible = "maxim,max20024";
reg = <0x3c>;
interrupt-parent = <&pmc>;
interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
#interrupt-cells = <2>;
interrupt-controller;
#gpio-cells = <2>;
gpio-controller;
pinctrl-names = "default";
pinctrl-0 = <&max20024_default>;
max20024_default: pinmux {
gpio0 {
pins = "gpio0";
function = "gpio";
};
gpio1 {
pins = "gpio1";
function = "fps-out";
maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
};
gpio2 {
pins = "gpio2";
function = "fps-out";
maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
};
gpio3 {
pins = "gpio3";
function = "fps-out";
maxim,active-fps-source = <MAX77620_FPS_SRC_DEF>;
};
gpio4 {
pins = "gpio4";
function = "32k-out1";
drive-push-pull = <1>;
};
gpio6 {
pins = "gpio6";
function = "gpio";
drive-push-pull = <1>;
};
gpio7 {
pins = "gpio7";
function = "gpio";
drive-push-pull = <0>;
};
};
fps {
fps0 {
maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
maxim,shutdown-fps-time-period-us = <640>;
};
fps1 {
maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN1>;
maxim,shutdown-fps-time-period-us = <640>;
maxim,device-state-on-disabled-event = <MAX77620_FPS_INACTIVE_STATE_SLEEP>;
};
fps2 {
maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
maxim,shutdown-fps-time-period-us = <640>;
};
};
regulators {
in-sd0-supply = <&vdd_5v0_sys>;
in-sd1-supply = <&vdd_5v0_sys>;
in-sd2-supply = <&vdd_5v0_sys>;
in-sd3-supply = <&vdd_5v0_sys>;
in-sd4-supply = <&vdd_5v0_sys>;
in-ldo0-1-supply = <&vdd_5v0_sys>;
in-ldo2-supply = <&vdd_5v0_sys>;
in-ldo3-5-supply = <&vdd_5v0_sys>;
in-ldo4-6-supply = <&vdd_5v0_sys>;
in-ldo7-8-supply = <&vdd_1v8ls>;
vdd_1v0: sd0 {
regulator-name = "VDDIO_SYS_1V0";
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1000000>;
regulator-always-on;
regulator-boot-on;
};
vdd_1v8hs: sd1 {
regulator-name = "VDDIO_SYS_1V8HS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
regulator-boot-on;
};
vdd_1v8ls: sd2 {
regulator-name = "VDDIO_SYS_1V8LS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
regulator-boot-on;
};
vdd_1v8ao: sd3 {
regulator-name = "VDDIO_AO_1V8";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
regulator-boot-on;
};
sd4 {
regulator-name = "VDD_DDR_1V1";
regulator-min-microvolt = <1100000>;
regulator-max-microvolt = <1100000>;
regulator-always-on;
regulator-boot-on;
};
ldo0 {
regulator-name = "VDD_RTC";
regulator-min-microvolt = <800000>;
regulator-max-microvolt = <800000>;
regulator-always-on;
regulator-boot-on;
};
ldo2 {
regulator-name = "VDDIO_AO_3V3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
regulator-boot-on;
};
ldo3 {
regulator-name = "VDD_EMMC_3V3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
vdd_usb_3v3: ldo5 {
regulator-name = "VDD_USB_3V3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
regulator-boot-on;
};
ldo6 {
regulator-name = "VDD_SDIO_3V3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
ldo7 {
regulator-name = "AVDD_CSI_1V2";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
};
};
};
};
};
vdd_3v3_sd: regulator@0 {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_SD";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio TEGRA194_MAIN_GPIO(G, 2) GPIO_ACTIVE_HIGH>;
regulator-boot-on;
enable-active-high;
};
};
This diff is collapsed.
...@@ -17,7 +17,7 @@ chosen { ...@@ -17,7 +17,7 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
memory { memory@80000000 {
device_type = "memory"; device_type = "memory";
reg = <0x0 0x80000000 0x1 0x0>; reg = <0x0 0x80000000 0x1 0x0>;
}; };
...@@ -274,8 +274,8 @@ eeprom@50 { ...@@ -274,8 +274,8 @@ eeprom@50 {
reg = <0x50>; reg = <0x50>;
vcc-supply = <&vdd_1v8>; vcc-supply = <&vdd_1v8>;
address-bits = <8>; address-width = <8>;
page-size = <8>; pagesize = <8>;
size = <256>; size = <256>;
read-only; read-only;
}; };
...@@ -293,24 +293,17 @@ pmc@7000e400 { ...@@ -293,24 +293,17 @@ pmc@7000e400 {
}; };
/* eMMC */ /* eMMC */
sdhci@700b0600 { mmc@700b0600 {
status = "okay"; status = "okay";
bus-width = <8>; bus-width = <8>;
non-removable; non-removable;
vqmmc-supply = <&vdd_1v8>; vqmmc-supply = <&vdd_1v8>;
}; };
clocks { clk32k_in: clock@0 {
compatible = "simple-bus"; compatible = "fixed-clock";
#address-cells = <1>; clock-frequency = <32768>;
#size-cells = <0>; #clock-cells = <0>;
clk32k_in: clock@0 {
compatible = "fixed-clock";
reg = <0>;
#clock-cells = <0>;
clock-frequency = <32768>;
};
}; };
cpus { cpus {
...@@ -342,18 +335,15 @@ psci { ...@@ -342,18 +335,15 @@ psci {
method = "smc"; method = "smc";
}; };
regulators { vdd_gpu: regulator@100 {
vdd_gpu: regulator@100 { compatible = "pwm-regulator";
compatible = "pwm-regulator"; pwms = <&pwm 1 4880>;
reg = <100>; regulator-name = "VDD_GPU";
pwms = <&pwm 1 4880>; regulator-min-microvolt = <710000>;
regulator-name = "VDD_GPU"; regulator-max-microvolt = <1320000>;
regulator-min-microvolt = <710000>; enable-gpios = <&pmic 6 GPIO_ACTIVE_HIGH>;
regulator-max-microvolt = <1320000>; regulator-ramp-delay = <80>;
enable-gpios = <&pmic 6 GPIO_ACTIVE_HIGH>; regulator-enable-ramp-delay = <2000>;
regulator-ramp-delay = <80>; regulator-settling-time-us = <160>;
regulator-enable-ramp-delay = <2000>;
regulator-settling-time-us = <160>;
};
}; };
}; };
...@@ -87,8 +87,8 @@ eeprom@57 { ...@@ -87,8 +87,8 @@ eeprom@57 {
reg = <0x57>; reg = <0x57>;
vcc-supply = <&vdd_1v8>; vcc-supply = <&vdd_1v8>;
address-bits = <8>; address-width = <8>;
page-size = <8>; pagesize = <8>;
size = <256>; size = <256>;
read-only; read-only;
}; };
...@@ -122,7 +122,7 @@ dma@702e2000 { ...@@ -122,7 +122,7 @@ dma@702e2000 {
status = "okay"; status = "okay";
}; };
agic@702f9000 { interrupt-controller@702f9000 {
status = "okay"; status = "okay";
}; };
}; };
......
...@@ -14,7 +14,7 @@ chosen { ...@@ -14,7 +14,7 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
memory { memory@80000000 {
device_type = "memory"; device_type = "memory";
reg = <0x0 0x80000000 0x0 0xc0000000>; reg = <0x0 0x80000000 0x0 0xc0000000>;
}; };
...@@ -34,23 +34,16 @@ pmc@7000e400 { ...@@ -34,23 +34,16 @@ pmc@7000e400 {
}; };
/* eMMC */ /* eMMC */
sdhci@700b0600 { mmc@700b0600 {
status = "okay"; status = "okay";
bus-width = <8>; bus-width = <8>;
non-removable; non-removable;
}; };
clocks { clk32k_in: clock@0 {
compatible = "simple-bus"; compatible = "fixed-clock";
#address-cells = <1>; clock-frequency = <32768>;
#size-cells = <0>; #clock-cells = <0>;
clk32k_in: clock@0 {
compatible = "fixed-clock";
reg = <0>;
#clock-cells = <0>;
clock-frequency = <32768>;
};
}; };
cpus { cpus {
......
...@@ -27,8 +27,8 @@ csi@838 { ...@@ -27,8 +27,8 @@ csi@838 {
sor@54580000 { sor@54580000 {
status = "okay"; status = "okay";
avdd-io-supply = <&avdd_1v05>; avdd-io-hdmi-dp-supply = <&avdd_1v05>;
vdd-pll-supply = <&vdd_1v8>; vdd-hdmi-dp-pll-supply = <&vdd_1v8>;
hdmi-supply = <&vdd_hdmi>; hdmi-supply = <&vdd_hdmi>;
nvidia,ddc-i2c-bus = <&hdmi_ddc>; nvidia,ddc-i2c-bus = <&hdmi_ddc>;
...@@ -1323,6 +1323,14 @@ exp1: gpio@74 { ...@@ -1323,6 +1323,14 @@ exp1: gpio@74 {
#gpio-cells = <2>; #gpio-cells = <2>;
gpio-controller; gpio-controller;
}; };
exp2: gpio@77 {
compatible = "ti,tca9539";
reg = <0x77>;
#gpio-cells = <2>;
gpio-controller;
};
}; };
/* HDMI DDC */ /* HDMI DDC */
...@@ -1461,17 +1469,17 @@ ports { ...@@ -1461,17 +1469,17 @@ ports {
usb2-0 { usb2-0 {
status = "okay"; status = "okay";
vbus-supply = <&vdd_usb_vbus_otg>; vbus-supply = <&vdd_usb_vbus_otg>;
usb-role-switch;
mode = "otg"; mode = "otg";
usb-role-switch;
connector { connector {
compatible = "usb-b-connector", compatible = "gpio-usb-b-connector",
"gpio-usb-b-connector"; "usb-b-connector";
label = "micro-USB"; label = "micro-USB";
type = "micro"; type = "micro";
vbus-gpio = <&gpio TEGRA_GPIO(Z, 0) vbus-gpios = <&gpio TEGRA_GPIO(Z, 0)
GPIO_ACTIVE_LOW>; GPIO_ACTIVE_LOW>;
id-gpio = <&pmic 0 0>; id-gpios = <&pmic 0 GPIO_ACTIVE_HIGH>;
}; };
}; };
...@@ -1505,7 +1513,7 @@ usb3-1 { ...@@ -1505,7 +1513,7 @@ usb3-1 {
}; };
/* MMC/SD */ /* MMC/SD */
sdhci@700b0000 { mmc@700b0000 {
status = "okay"; status = "okay";
bus-width = <4>; bus-width = <4>;
...@@ -1523,152 +1531,6 @@ usb@700d0000 { ...@@ -1523,152 +1531,6 @@ usb@700d0000 {
hvdd-usb-supply = <&vdd_1v8>; hvdd-usb-supply = <&vdd_1v8>;
}; };
regulators {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
vdd_sys_mux: regulator@0 {
compatible = "regulator-fixed";
reg = <0>;
regulator-name = "VDD_SYS_MUX";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
};
vdd_5v0_sys: regulator@1 {
compatible = "regulator-fixed";
reg = <1>;
regulator-name = "VDD_5V0_SYS";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
gpio = <&pmic 1 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_sys_mux>;
};
vdd_3v3_sys: regulator@2 {
compatible = "regulator-fixed";
reg = <2>;
regulator-name = "VDD_3V3_SYS";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
regulator-boot-on;
gpio = <&pmic 3 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_sys_mux>;
regulator-enable-ramp-delay = <160>;
regulator-disable-ramp-delay = <10000>;
};
vdd_5v0_io: regulator@3 {
compatible = "regulator-fixed";
reg = <3>;
regulator-name = "VDD_5V0_IO_SYS";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
};
vdd_3v3_sd: regulator@4 {
compatible = "regulator-fixed";
reg = <4>;
regulator-name = "VDD_3V3_SD";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio TEGRA_GPIO(Z, 4) GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_3v3_sys>;
regulator-enable-ramp-delay = <472>;
regulator-disable-ramp-delay = <4880>;
};
vdd_dsi_csi: regulator@5 {
compatible = "regulator-fixed";
reg = <5>;
regulator-name = "AVDD_DSI_CSI_1V2";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
vin-supply = <&vdd_sys_1v2>;
};
vdd_3v3_dis: regulator@6 {
compatible = "regulator-fixed";
reg = <6>;
regulator-name = "VDD_DIS_3V3_LCD";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
gpio = <&exp1 3 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_3v3_sys>;
};
vdd_1v8_dis: regulator@7 {
compatible = "regulator-fixed";
reg = <7>;
regulator-name = "VDD_LCD_1V8_DIS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
gpio = <&exp1 14 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_1v8>;
};
vdd_5v0_rtl: regulator@8 {
compatible = "regulator-fixed";
reg = <8>;
regulator-name = "RTL_5V";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&gpio TEGRA_GPIO(H, 1) GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_5v0_sys>;
};
vdd_usb_vbus: regulator@9 {
compatible = "regulator-fixed";
reg = <9>;
regulator-name = "USB_VBUS_EN1";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&gpio TEGRA_GPIO(CC, 5) GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_5v0_sys>;
};
vdd_usb_vbus_otg: regulator@11 {
compatible = "regulator-fixed";
reg = <9>;
regulator-name = "USB_VBUS_EN0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&gpio TEGRA_GPIO(CC, 4) GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_5v0_sys>;
};
vdd_hdmi: regulator@10 {
compatible = "regulator-fixed";
reg = <10>;
regulator-name = "VDD_HDMI_5V0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&exp1 12 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_5v0_sys>;
};
};
gpio-keys { gpio-keys {
compatible = "gpio-keys"; compatible = "gpio-keys";
label = "gpio-keys"; label = "gpio-keys";
...@@ -1692,4 +1554,162 @@ volume_up { ...@@ -1692,4 +1554,162 @@ volume_up {
linux,code = <KEY_VOLUMEUP>; linux,code = <KEY_VOLUMEUP>;
}; };
}; };
vdd_sys_mux: regulator@0 {
compatible = "regulator-fixed";
regulator-name = "VDD_SYS_MUX";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
};
vdd_5v0_sys: regulator@1 {
compatible = "regulator-fixed";
regulator-name = "VDD_5V0_SYS";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
gpio = <&pmic 1 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_sys_mux>;
};
vdd_3v3_sys: regulator@2 {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_SYS";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
regulator-boot-on;
gpio = <&pmic 3 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_sys_mux>;
regulator-enable-ramp-delay = <160>;
regulator-disable-ramp-delay = <10000>;
};
vdd_5v0_io: regulator@3 {
compatible = "regulator-fixed";
regulator-name = "VDD_5V0_IO_SYS";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
};
vdd_3v3_sd: regulator@4 {
compatible = "regulator-fixed";
regulator-name = "VDD_3V3_SD";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio TEGRA_GPIO(Z, 4) GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_3v3_sys>;
regulator-enable-ramp-delay = <472>;
regulator-disable-ramp-delay = <4880>;
};
vdd_dsi_csi: regulator@5 {
compatible = "regulator-fixed";
regulator-name = "AVDD_DSI_CSI_1V2";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
vin-supply = <&vdd_sys_1v2>;
};
vdd_3v3_dis: regulator@6 {
compatible = "regulator-fixed";
regulator-name = "VDD_DIS_3V3_LCD";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
gpio = <&exp1 3 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_3v3_sys>;
};
vdd_1v8_dis: regulator@7 {
compatible = "regulator-fixed";
regulator-name = "VDD_LCD_1V8_DIS";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
regulator-always-on;
gpio = <&exp1 14 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_1v8>;
};
vdd_5v0_rtl: regulator@8 {
compatible = "regulator-fixed";
regulator-name = "RTL_5V";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&gpio TEGRA_GPIO(H, 1) GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_5v0_sys>;
};
vdd_usb_vbus: regulator@9 {
compatible = "regulator-fixed";
regulator-name = "USB_VBUS_EN1";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&gpio TEGRA_GPIO(CC, 5) GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_5v0_sys>;
};
vdd_usb_vbus_otg: regulator@11 {
compatible = "regulator-fixed";
regulator-name = "USB_VBUS_EN0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&gpio TEGRA_GPIO(CC, 4) GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_5v0_sys>;
};
vdd_hdmi: regulator@10 {
compatible = "regulator-fixed";
regulator-name = "VDD_HDMI_5V0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&exp1 12 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_5v0_sys>;
};
vdd_cam_1v2: regulator@11 {
compatible = "regulator-fixed";
regulator-name = "vdd-cam-1v2";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>;
gpio = <&exp2 10 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_3v3_sys>;
};
vdd_cam_2v8: regulator@12 {
compatible = "regulator-fixed";
regulator-name = "vdd-cam-2v8";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
gpio = <&exp1 13 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_3v3_sys>;
};
vdd_cam_1v8: regulator@13 {
compatible = "regulator-fixed";
regulator-name = "vdd-cam-1v8";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
gpio = <&exp2 9 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_3v3_sys>;
};
}; };
...@@ -22,7 +22,7 @@ chosen { ...@@ -22,7 +22,7 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
memory { memory@80000000 {
device_type = "memory"; device_type = "memory";
reg = <0x0 0x80000000 0x1 0x0>; reg = <0x0 0x80000000 0x1 0x0>;
}; };
...@@ -64,6 +64,16 @@ dpaux@54040000 { ...@@ -64,6 +64,16 @@ dpaux@54040000 {
status = "okay"; status = "okay";
}; };
vi@54080000 {
status = "okay";
avdd-dsi-csi-supply = <&vdd_sys_1v2>;
csi@838 {
status = "okay";
};
};
sor@54540000 { sor@54540000 {
status = "okay"; status = "okay";
...@@ -77,8 +87,8 @@ sor@54540000 { ...@@ -77,8 +87,8 @@ sor@54540000 {
sor@54580000 { sor@54580000 {
status = "okay"; status = "okay";
avdd-io-supply = <&avdd_1v05>; avdd-io-hdmi-dp-supply = <&avdd_1v05>;
vdd-pll-supply = <&vdd_1v8>; vdd-hdmi-dp-pll-supply = <&vdd_1v8>;
hdmi-supply = <&vdd_hdmi>; hdmi-supply = <&vdd_hdmi>;
nvidia,ddc-i2c-bus = <&hdmi_ddc>; nvidia,ddc-i2c-bus = <&hdmi_ddc>;
...@@ -101,6 +111,22 @@ gpu@57000000 { ...@@ -101,6 +111,22 @@ gpu@57000000 {
status = "okay"; status = "okay";
}; };
pinmux@700008d4 {
dvfs_pwm_active_state: dvfs_pwm_active {
dvfs_pwm_pbb1 {
nvidia,pins = "dvfs_pwm_pbb1";
nvidia,tristate = <TEGRA_PIN_DISABLE>;
};
};
dvfs_pwm_inactive_state: dvfs_pwm_inactive {
dvfs_pwm_pbb1 {
nvidia,pins = "dvfs_pwm_pbb1";
nvidia,tristate = <TEGRA_PIN_ENABLE>;
};
};
};
/* debug port */ /* debug port */
serial@70006000 { serial@70006000 {
status = "okay"; status = "okay";
...@@ -119,8 +145,8 @@ eeprom@50 { ...@@ -119,8 +145,8 @@ eeprom@50 {
reg = <0x50>; reg = <0x50>;
vcc-supply = <&vdd_1v8>; vcc-supply = <&vdd_1v8>;
address-bits = <8>; address-width = <8>;
page-size = <8>; pagesize = <8>;
size = <256>; size = <256>;
read-only; read-only;
}; };
...@@ -130,8 +156,8 @@ eeprom@57 { ...@@ -130,8 +156,8 @@ eeprom@57 {
reg = <0x57>; reg = <0x57>;
vcc-supply = <&vdd_1v8>; vcc-supply = <&vdd_1v8>;
address-bits = <8>; address-width = <8>;
page-size = <8>; pagesize = <8>;
size = <256>; size = <256>;
read-only; read-only;
}; };
...@@ -513,15 +539,15 @@ ports { ...@@ -513,15 +539,15 @@ ports {
usb2-0 { usb2-0 {
status = "okay"; status = "okay";
mode = "peripheral"; mode = "peripheral";
usb-role-switch; usb-role-switch;
connector { connector {
compatible = "usb-b-connector", compatible = "gpio-usb-b-connector",
"gpio-usb-b-connector"; "usb-b-connector";
label = "micro-USB"; label = "micro-USB";
type = "micro"; type = "micro";
vbus-gpio = <&gpio TEGRA_GPIO(CC, 4) vbus-gpios = <&gpio TEGRA_GPIO(CC, 4)
GPIO_ACTIVE_LOW>; GPIO_ACTIVE_LOW>;
}; };
}; };
...@@ -543,7 +569,7 @@ usb3-0 { ...@@ -543,7 +569,7 @@ usb3-0 {
}; };
}; };
sdhci@700b0000 { mmc@700b0000 {
status = "okay"; status = "okay";
bus-width = <4>; bus-width = <4>;
...@@ -553,15 +579,7 @@ sdhci@700b0000 { ...@@ -553,15 +579,7 @@ sdhci@700b0000 {
vmmc-supply = <&vdd_3v3_sd>; vmmc-supply = <&vdd_3v3_sd>;
}; };
usb@700d0000 { mmc@700b0400 {
status = "okay";
phys = <&micro_b>;
phy-names = "usb2-0";
avddio-usb-supply = <&vdd_3v3_sys>;
hvdd-usb-supply = <&vdd_1v8>;
};
sdhci@700b0400 {
status = "okay"; status = "okay";
bus-width = <4>; bus-width = <4>;
...@@ -574,17 +592,39 @@ sdhci@700b0400 { ...@@ -574,17 +592,39 @@ sdhci@700b0400 {
wakeup-source; wakeup-source;
}; };
clocks { usb@700d0000 {
compatible = "simple-bus"; status = "okay";
#address-cells = <1>; phys = <&micro_b>;
#size-cells = <0>; phy-names = "usb2-0";
avddio-usb-supply = <&vdd_3v3_sys>;
hvdd-usb-supply = <&vdd_1v8>;
};
clock@70110000 {
status = "okay";
clk32k_in: clock@0 { nvidia,cf = <6>;
compatible = "fixed-clock"; nvidia,ci = <0>;
reg = <0>; nvidia,cg = <2>;
#clock-cells = <0>; nvidia,droop-ctrl = <0x00000f00>;
clock-frequency = <32768>; nvidia,force-mode = <1>;
}; nvidia,sample-rate = <25000>;
nvidia,pwm-min-microvolts = <708000>;
nvidia,pwm-period-nanoseconds = <2500>; /* 2.5us */
nvidia,pwm-to-pmic;
nvidia,pwm-tristate-microvolts = <1000000>;
nvidia,pwm-voltage-step-microvolts = <19200>;
pinctrl-names = "dvfs_pwm_enable", "dvfs_pwm_disable";
pinctrl-0 = <&dvfs_pwm_active_state>;
pinctrl-1 = <&dvfs_pwm_inactive_state>;
};
clk32k_in: clock@0 {
compatible = "fixed-clock";
clock-frequency = <32768>;
#clock-cells = <0>;
}; };
cpus { cpus {
...@@ -698,120 +738,109 @@ psci { ...@@ -698,120 +738,109 @@ psci {
method = "smc"; method = "smc";
}; };
regulators { vdd_5v0_sys: regulator@0 {
compatible = "simple-bus"; compatible = "regulator-fixed";
#address-cells = <1>;
#size-cells = <0>;
vdd_5v0_sys: regulator@0 { regulator-name = "VDD_5V0_SYS";
compatible = "regulator-fixed"; regulator-min-microvolt = <5000000>;
reg = <0>; regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
};
regulator-name = "VDD_5V0_SYS"; vdd_3v3_sys: regulator@1 {
regulator-min-microvolt = <5000000>; compatible = "regulator-fixed";
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
};
vdd_3v3_sys: regulator@1 { regulator-name = "VDD_3V3_SYS";
compatible = "regulator-fixed"; regulator-min-microvolt = <3300000>;
reg = <1>; regulator-max-microvolt = <3300000>;
regulator-name = "VDD_3V3_SYS"; regulator-enable-ramp-delay = <240>;
regulator-min-microvolt = <3300000>; regulator-disable-ramp-delay = <11340>;
regulator-max-microvolt = <3300000>; regulator-always-on;
regulator-enable-ramp-delay = <240>; regulator-boot-on;
regulator-disable-ramp-delay = <11340>;
regulator-always-on;
regulator-boot-on;
gpio = <&pmic 3 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_5v0_sys>;
};
vdd_3v3_sd: regulator@2 { gpio = <&pmic 3 GPIO_ACTIVE_HIGH>;
compatible = "regulator-fixed"; enable-active-high;
reg = <2>;
regulator-name = "VDD_3V3_SD"; vin-supply = <&vdd_5v0_sys>;
regulator-min-microvolt = <3300000>; };
regulator-max-microvolt = <3300000>;
gpio = <&gpio TEGRA_GPIO(Z, 3) GPIO_ACTIVE_HIGH>; vdd_3v3_sd: regulator@2 {
enable-active-high; compatible = "regulator-fixed";
vin-supply = <&vdd_3v3_sys>; regulator-name = "VDD_3V3_SD";
}; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
vdd_hdmi: regulator@3 { gpio = <&gpio TEGRA_GPIO(Z, 3) GPIO_ACTIVE_HIGH>;
compatible = "regulator-fixed"; enable-active-high;
reg = <3>;
regulator-name = "VDD_HDMI_5V0"; vin-supply = <&vdd_3v3_sys>;
regulator-min-microvolt = <5000000>; };
regulator-max-microvolt = <5000000>;
vin-supply = <&vdd_5v0_sys>; vdd_hdmi: regulator@3 {
}; compatible = "regulator-fixed";
vdd_hub_3v3: regulator@4 { regulator-name = "VDD_HDMI_5V0";
compatible = "regulator-fixed"; regulator-min-microvolt = <5000000>;
reg = <4>; regulator-max-microvolt = <5000000>;
regulator-name = "VDD_HUB_3V3"; vin-supply = <&vdd_5v0_sys>;
regulator-min-microvolt = <3300000>; };
regulator-max-microvolt = <3300000>;
gpio = <&gpio TEGRA_GPIO(A, 6) GPIO_ACTIVE_HIGH>; vdd_hub_3v3: regulator@4 {
enable-active-high; compatible = "regulator-fixed";
vin-supply = <&vdd_5v0_sys>; regulator-name = "VDD_HUB_3V3";
}; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
vdd_cpu: regulator@5 { gpio = <&gpio TEGRA_GPIO(A, 6) GPIO_ACTIVE_HIGH>;
compatible = "regulator-fixed"; enable-active-high;
reg = <5>;
regulator-name = "VDD_CPU"; vin-supply = <&vdd_5v0_sys>;
regulator-min-microvolt = <5000000>; };
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
gpio = <&pmic 5 GPIO_ACTIVE_HIGH>; vdd_cpu: regulator@5 {
enable-active-high; compatible = "regulator-fixed";
vin-supply = <&vdd_5v0_sys>; regulator-name = "VDD_CPU";
}; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
regulator-boot-on;
vdd_gpu: regulator@6 { gpio = <&pmic 5 GPIO_ACTIVE_HIGH>;
compatible = "pwm-regulator"; enable-active-high;
reg = <6>;
pwms = <&pwm 1 4880>;
regulator-name = "VDD_GPU";
regulator-min-microvolt = <710000>;
regulator-max-microvolt = <1320000>;
regulator-ramp-delay = <80>;
regulator-enable-ramp-delay = <2000>;
regulator-settling-time-us = <160>;
enable-gpios = <&pmic 6 GPIO_ACTIVE_HIGH>;
vin-supply = <&vdd_5v0_sys>;
};
avdd_io_edp_1v05: regulator@7 { vin-supply = <&vdd_5v0_sys>;
compatible = "regulator-fixed"; };
reg = <7>;
regulator-name = "AVDD_IO_EDP_1V05"; vdd_gpu: regulator@6 {
regulator-min-microvolt = <1050000>; compatible = "pwm-regulator";
regulator-max-microvolt = <1050000>; pwms = <&pwm 1 4880>;
gpio = <&pmic 7 GPIO_ACTIVE_HIGH>; regulator-name = "VDD_GPU";
enable-active-high; regulator-min-microvolt = <710000>;
regulator-max-microvolt = <1320000>;
regulator-ramp-delay = <80>;
regulator-enable-ramp-delay = <2000>;
regulator-settling-time-us = <160>;
vin-supply = <&avdd_1v05_pll>; enable-gpios = <&pmic 6 GPIO_ACTIVE_HIGH>;
}; vin-supply = <&vdd_5v0_sys>;
};
avdd_io_edp_1v05: regulator@7 {
compatible = "regulator-fixed";
regulator-name = "AVDD_IO_EDP_1V05";
regulator-min-microvolt = <1050000>;
regulator-max-microvolt = <1050000>;
gpio = <&pmic 7 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&avdd_1v05_pll>;
}; };
}; };
...@@ -1330,7 +1330,6 @@ ec_i2c_0: i2c-tunnel { ...@@ -1330,7 +1330,6 @@ ec_i2c_0: i2c-tunnel {
battery: bq27742@55 { battery: bq27742@55 {
compatible = "ti,bq27742"; compatible = "ti,bq27742";
reg = <0x55>; reg = <0x55>;
battery-name = "battery";
}; };
}; };
}; };
...@@ -1355,11 +1354,11 @@ max77621_cpu: max77621@1b { ...@@ -1355,11 +1354,11 @@ max77621_cpu: max77621@1b {
maxim,enable-active-discharge; maxim,enable-active-discharge;
maxim,enable-bias-control; maxim,enable-bias-control;
maxim,enable-etr; maxim,enable-etr;
maxim,enable-gpio = <&max77620 5 0>; maxim,enable-gpio = <&pmic 5 0>;
maxim,externally-enable; maxim,externally-enable;
}; };
max77620: max77620@3c { pmic: pmic@3c {
compatible = "maxim,max77620"; compatible = "maxim,max77620";
reg = <0x3c>; reg = <0x3c>;
interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
...@@ -1373,8 +1372,8 @@ max77620: max77620@3c { ...@@ -1373,8 +1372,8 @@ max77620: max77620@3c {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&max77620_default>; pinctrl-0 = <&max77620_default>;
max77620_default: pinmux@0 { max77620_default: pinmux {
pin_gpio { gpio0_1_2_7 {
pins = "gpio0", "gpio1", "gpio2", "gpio7"; pins = "gpio0", "gpio1", "gpio2", "gpio7";
function = "gpio"; function = "gpio";
}; };
...@@ -1384,7 +1383,7 @@ pin_gpio { ...@@ -1384,7 +1383,7 @@ pin_gpio {
* sequence, So it must be sequenced up (automatically * sequence, So it must be sequenced up (automatically
* set by OTP) and down properly. * set by OTP) and down properly.
*/ */
pin_gpio3 { gpio3 {
pins = "gpio3"; pins = "gpio3";
function = "fps-out"; function = "fps-out";
drive-open-drain = <1>; drive-open-drain = <1>;
...@@ -1393,13 +1392,13 @@ pin_gpio3 { ...@@ -1393,13 +1392,13 @@ pin_gpio3 {
maxim,active-fps-power-down-slot = <2>; maxim,active-fps-power-down-slot = <2>;
}; };
pin_gpio5_6 { gpio5_6 {
pins = "gpio5", "gpio6"; pins = "gpio5", "gpio6";
function = "gpio"; function = "gpio";
drive-push-pull = <1>; drive-push-pull = <1>;
}; };
pin_32k { gpio4 {
pins = "gpio4"; pins = "gpio4";
function = "32k-out1"; function = "32k-out1";
}; };
...@@ -1697,7 +1696,7 @@ usb3-0 { ...@@ -1697,7 +1696,7 @@ usb3-0 {
}; };
}; };
sdhci@700b0600 { mmc@700b0600 {
bus-width = <8>; bus-width = <8>;
non-removable; non-removable;
status = "okay"; status = "okay";
...@@ -1722,22 +1721,15 @@ dma@702e2000 { ...@@ -1722,22 +1721,15 @@ dma@702e2000 {
status = "okay"; status = "okay";
}; };
agic@702f9000 { interrupt-controller@702f9000 {
status = "okay"; status = "okay";
}; };
}; };
clocks { clk32k_in: clock@0 {
compatible = "simple-bus"; compatible = "fixed-clock";
#address-cells = <1>; clock-frequency = <32768>;
#size-cells = <0>; #clock-cells = <0>;
clk32k_in: clock@0 {
compatible = "fixed-clock";
reg = <0>;
#clock-cells = <0>;
clock-frequency = <32768>;
};
}; };
cpus { cpus {
...@@ -1815,88 +1807,73 @@ psci { ...@@ -1815,88 +1807,73 @@ psci {
method = "smc"; method = "smc";
}; };
regulators { ppvar_sys: regulator@0 {
compatible = "simple-bus"; compatible = "regulator-fixed";
device_type = "fixed-regulators"; regulator-name = "PPVAR_SYS";
#address-cells = <1>; regulator-min-microvolt = <4400000>;
#size-cells = <0>; regulator-max-microvolt = <4400000>;
regulator-always-on;
ppvar_sys: regulator@0 { };
compatible = "regulator-fixed";
reg = <0>;
regulator-name = "PPVAR_SYS";
regulator-min-microvolt = <4400000>;
regulator-max-microvolt = <4400000>;
regulator-always-on;
};
pplcd_vdd: regulator@1 { pplcd_vdd: regulator@1 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <1>; regulator-name = "PPLCD_VDD";
regulator-name = "PPLCD_VDD"; regulator-min-microvolt = <4400000>;
regulator-min-microvolt = <4400000>; regulator-max-microvolt = <4400000>;
regulator-max-microvolt = <4400000>; gpio = <&gpio TEGRA_GPIO(V, 4) 0>;
gpio = <&gpio TEGRA_GPIO(V, 4) 0>; enable-active-high;
enable-active-high; regulator-boot-on;
regulator-boot-on; };
};
pp3000_always: regulator@2 { pp3000_always: regulator@2 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <2>; regulator-name = "PP3000_ALWAYS";
regulator-name = "PP3000_ALWAYS"; regulator-min-microvolt = <3000000>;
regulator-min-microvolt = <3000000>; regulator-max-microvolt = <3000000>;
regulator-max-microvolt = <3000000>; regulator-always-on;
regulator-always-on; };
};
pp3300: regulator@3 { pp3300: regulator@3 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <3>; regulator-name = "PP3300";
regulator-name = "PP3300"; regulator-min-microvolt = <3300000>;
regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-boot-on;
regulator-boot-on; regulator-always-on;
regulator-always-on; enable-active-high;
enable-active-high; };
};
pp5000: regulator@4 { pp5000: regulator@4 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <4>; regulator-name = "PP5000";
regulator-name = "PP5000"; regulator-min-microvolt = <5000000>;
regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-always-on;
regulator-always-on; };
};
pp1800_lcdio: regulator@5 { pp1800_lcdio: regulator@5 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <5>; regulator-name = "PP1800_LCDIO";
regulator-name = "PP1800_LCDIO"; regulator-min-microvolt = <1800000>;
regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>;
regulator-max-microvolt = <1800000>; gpio = <&gpio TEGRA_GPIO(V, 3) 0>;
gpio = <&gpio TEGRA_GPIO(V, 3) 0>; enable-active-high;
enable-active-high; regulator-boot-on;
regulator-boot-on; };
};
pp1800_cam: regulator@6 { pp1800_cam: regulator@6 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg= <6>; regulator-name = "PP1800_CAM";
regulator-name = "PP1800_CAM"; regulator-min-microvolt = <1800000>;
regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>;
regulator-max-microvolt = <1800000>; gpio = <&gpio TEGRA_GPIO(K, 3) 0>;
gpio = <&gpio TEGRA_GPIO(K, 3) 0>; enable-active-high;
enable-active-high; };
};
usbc_vbus: regulator@7 { usbc_vbus: regulator@7 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <7>; regulator-name = "USBC_VBUS";
regulator-name = "USBC_VBUS"; regulator-min-microvolt = <5000000>;
regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
};
}; };
}; };
...@@ -18,9 +18,9 @@ / { ...@@ -18,9 +18,9 @@ / {
pcie@1003000 { pcie@1003000 {
compatible = "nvidia,tegra210-pcie"; compatible = "nvidia,tegra210-pcie";
device_type = "pci"; device_type = "pci";
reg = <0x0 0x01003000 0x0 0x00000800 /* PADS registers */ reg = <0x0 0x01003000 0x0 0x00000800>, /* PADS registers */
0x0 0x01003800 0x0 0x00000800 /* AFI registers */ <0x0 0x01003800 0x0 0x00000800>, /* AFI registers */
0x0 0x02000000 0x0 0x10000000>; /* configuration space */ <0x0 0x02000000 0x0 0x10000000>; /* configuration space */
reg-names = "pads", "afi", "cs"; reg-names = "pads", "afi", "cs";
interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */ interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, /* controller interrupt */
<GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; /* MSI interrupt */ <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; /* MSI interrupt */
...@@ -34,11 +34,11 @@ pcie@1003000 { ...@@ -34,11 +34,11 @@ pcie@1003000 {
#address-cells = <3>; #address-cells = <3>;
#size-cells = <2>; #size-cells = <2>;
ranges = <0x82000000 0 0x01000000 0x0 0x01000000 0 0x00001000 /* port 0 configuration space */ ranges = <0x02000000 0 0x01000000 0x0 0x01000000 0 0x00001000>, /* port 0 configuration space */
0x82000000 0 0x01001000 0x0 0x01001000 0 0x00001000 /* port 1 configuration space */ <0x02000000 0 0x01001000 0x0 0x01001000 0 0x00001000>, /* port 1 configuration space */
0x81000000 0 0x0 0x0 0x12000000 0 0x00010000 /* downstream I/O (64 KiB) */ <0x01000000 0 0x0 0x0 0x12000000 0 0x00010000>, /* downstream I/O (64 KiB) */
0x82000000 0 0x13000000 0x0 0x13000000 0 0x0d000000 /* non-prefetchable memory (208 MiB) */ <0x02000000 0 0x13000000 0x0 0x13000000 0 0x0d000000>, /* non-prefetchable memory (208 MiB) */
0xc2000000 0 0x20000000 0x0 0x20000000 0 0x20000000>; /* prefetchable memory (512 MiB) */ <0x42000000 0 0x20000000 0x0 0x20000000 0 0x20000000>; /* prefetchable memory (512 MiB) */
clocks = <&tegra_car TEGRA210_CLK_PCIE>, clocks = <&tegra_car TEGRA210_CLK_PCIE>,
<&tegra_car TEGRA210_CLK_AFI>, <&tegra_car TEGRA210_CLK_AFI>,
...@@ -86,10 +86,11 @@ pci@2,0 { ...@@ -86,10 +86,11 @@ pci@2,0 {
}; };
host1x@50000000 { host1x@50000000 {
compatible = "nvidia,tegra210-host1x", "simple-bus"; compatible = "nvidia,tegra210-host1x";
reg = <0x0 0x50000000 0x0 0x00034000>; reg = <0x0 0x50000000 0x0 0x00034000>;
interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, /* syncpt */ interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>, /* syncpt */
<GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; /* general */ <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>; /* general */
interrupt-names = "syncpt", "host1x";
clocks = <&tegra_car TEGRA210_CLK_HOST1X>; clocks = <&tegra_car TEGRA210_CLK_HOST1X>;
clock-names = "host1x"; clock-names = "host1x";
resets = <&tegra_car 28>; resets = <&tegra_car 28>;
...@@ -186,9 +187,8 @@ dc@54200000 { ...@@ -186,9 +187,8 @@ dc@54200000 {
compatible = "nvidia,tegra210-dc"; compatible = "nvidia,tegra210-dc";
reg = <0x0 0x54200000 0x0 0x00040000>; reg = <0x0 0x54200000 0x0 0x00040000>;
interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&tegra_car TEGRA210_CLK_DISP1>, clocks = <&tegra_car TEGRA210_CLK_DISP1>;
<&tegra_car TEGRA210_CLK_PLL_P>; clock-names = "dc";
clock-names = "dc", "parent";
resets = <&tegra_car 27>; resets = <&tegra_car 27>;
reset-names = "dc"; reset-names = "dc";
...@@ -201,9 +201,8 @@ dc@54240000 { ...@@ -201,9 +201,8 @@ dc@54240000 {
compatible = "nvidia,tegra210-dc"; compatible = "nvidia,tegra210-dc";
reg = <0x0 0x54240000 0x0 0x00040000>; reg = <0x0 0x54240000 0x0 0x00040000>;
interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&tegra_car TEGRA210_CLK_DISP2>, clocks = <&tegra_car TEGRA210_CLK_DISP2>;
<&tegra_car TEGRA210_CLK_PLL_P>; clock-names = "dc";
clock-names = "dc", "parent";
resets = <&tegra_car 26>; resets = <&tegra_car 26>;
reset-names = "dc"; reset-names = "dc";
...@@ -326,7 +325,7 @@ sor@54580000 { ...@@ -326,7 +325,7 @@ sor@54580000 {
}; };
dpaux: dpaux@545c0000 { dpaux: dpaux@545c0000 {
compatible = "nvidia,tegra124-dpaux"; compatible = "nvidia,tegra210-dpaux";
reg = <0x0 0x545c0000 0x0 0x00040000>; reg = <0x0 0x545c0000 0x0 0x00040000>;
interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&tegra_car TEGRA210_CLK_DPAUX>, clocks = <&tegra_car TEGRA210_CLK_DPAUX>,
...@@ -362,6 +361,9 @@ isp@54600000 { ...@@ -362,6 +361,9 @@ isp@54600000 {
compatible = "nvidia,tegra210-isp"; compatible = "nvidia,tegra210-isp";
reg = <0x0 0x54600000 0x0 0x00040000>; reg = <0x0 0x54600000 0x0 0x00040000>;
interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&tegra_car TEGRA210_CLK_ISPA>;
resets = <&tegra_car 23>;
reset-names = "isp";
status = "disabled"; status = "disabled";
}; };
...@@ -369,6 +371,9 @@ isp@54680000 { ...@@ -369,6 +371,9 @@ isp@54680000 {
compatible = "nvidia,tegra210-isp"; compatible = "nvidia,tegra210-isp";
reg = <0x0 0x54680000 0x0 0x00040000>; reg = <0x0 0x54680000 0x0 0x00040000>;
interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&tegra_car TEGRA210_CLK_ISPB>;
resets = <&tegra_car 3>;
reset-names = "isp";
status = "disabled"; status = "disabled";
}; };
...@@ -376,7 +381,16 @@ i2c@546c0000 { ...@@ -376,7 +381,16 @@ i2c@546c0000 {
compatible = "nvidia,tegra210-i2c-vi"; compatible = "nvidia,tegra210-i2c-vi";
reg = <0x0 0x546c0000 0x0 0x00040000>; reg = <0x0 0x546c0000 0x0 0x00040000>;
interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&tegra_car TEGRA210_CLK_VI_I2C>,
<&tegra_car TEGRA210_CLK_I2CSLOW>;
clock-names = "div-clk", "slow";
resets = <&tegra_car 208>;
reset-names = "i2c";
power-domains = <&pd_venc>;
status = "disabled"; status = "disabled";
#address-cells = <1>;
#size-cells = <0>;
}; };
}; };
...@@ -998,8 +1012,8 @@ usb@70090000 { ...@@ -998,8 +1012,8 @@ usb@70090000 {
<&tegra_car TEGRA210_CLK_XUSB_HOST_SRC>, <&tegra_car TEGRA210_CLK_XUSB_HOST_SRC>,
<&tegra_car TEGRA210_CLK_XUSB_FALCON_SRC>, <&tegra_car TEGRA210_CLK_XUSB_FALCON_SRC>,
<&tegra_car TEGRA210_CLK_XUSB_SS>, <&tegra_car TEGRA210_CLK_XUSB_SS>,
<&tegra_car TEGRA210_CLK_XUSB_SS_DIV2>,
<&tegra_car TEGRA210_CLK_XUSB_SS_SRC>, <&tegra_car TEGRA210_CLK_XUSB_SS_SRC>,
<&tegra_car TEGRA210_CLK_XUSB_SS_DIV2>,
<&tegra_car TEGRA210_CLK_XUSB_HS_SRC>, <&tegra_car TEGRA210_CLK_XUSB_HS_SRC>,
<&tegra_car TEGRA210_CLK_XUSB_FS_SRC>, <&tegra_car TEGRA210_CLK_XUSB_FS_SRC>,
<&tegra_car TEGRA210_CLK_PLL_U_480M>, <&tegra_car TEGRA210_CLK_PLL_U_480M>,
...@@ -1007,7 +1021,7 @@ usb@70090000 { ...@@ -1007,7 +1021,7 @@ usb@70090000 {
<&tegra_car TEGRA210_CLK_PLL_E>; <&tegra_car TEGRA210_CLK_PLL_E>;
clock-names = "xusb_host", "xusb_host_src", clock-names = "xusb_host", "xusb_host_src",
"xusb_falcon_src", "xusb_ss", "xusb_falcon_src", "xusb_ss",
"xusb_ss_div2", "xusb_ss_src", "xusb_ss_src", "xusb_ss_div2",
"xusb_hs_src", "xusb_fs_src", "xusb_hs_src", "xusb_fs_src",
"pll_u_480m", "clk_m", "pll_e"; "pll_u_480m", "clk_m", "pll_e";
resets = <&tegra_car 89>, <&tegra_car 156>, resets = <&tegra_car 89>, <&tegra_car 156>,
...@@ -1176,8 +1190,8 @@ usb3-3 { ...@@ -1176,8 +1190,8 @@ usb3-3 {
}; };
}; };
sdhci@700b0000 { mmc@700b0000 {
compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci"; compatible = "nvidia,tegra210-sdhci";
reg = <0x0 0x700b0000 0x0 0x200>; reg = <0x0 0x700b0000 0x0 0x200>;
interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&tegra_car TEGRA210_CLK_SDMMC1>; clocks = <&tegra_car TEGRA210_CLK_SDMMC1>;
...@@ -1204,8 +1218,8 @@ sdhci@700b0000 { ...@@ -1204,8 +1218,8 @@ sdhci@700b0000 {
status = "disabled"; status = "disabled";
}; };
sdhci@700b0200 { mmc@700b0200 {
compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci"; compatible = "nvidia,tegra210-sdhci";
reg = <0x0 0x700b0200 0x0 0x200>; reg = <0x0 0x700b0200 0x0 0x200>;
interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&tegra_car TEGRA210_CLK_SDMMC2>; clocks = <&tegra_car TEGRA210_CLK_SDMMC2>;
...@@ -1221,8 +1235,8 @@ sdhci@700b0200 { ...@@ -1221,8 +1235,8 @@ sdhci@700b0200 {
status = "disabled"; status = "disabled";
}; };
sdhci@700b0400 { mmc@700b0400 {
compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci"; compatible = "nvidia,tegra210-sdhci";
reg = <0x0 0x700b0400 0x0 0x200>; reg = <0x0 0x700b0400 0x0 0x200>;
interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&tegra_car TEGRA210_CLK_SDMMC3>; clocks = <&tegra_car TEGRA210_CLK_SDMMC3>;
...@@ -1244,8 +1258,8 @@ sdhci@700b0400 { ...@@ -1244,8 +1258,8 @@ sdhci@700b0400 {
status = "disabled"; status = "disabled";
}; };
sdhci@700b0600 { mmc@700b0600 {
compatible = "nvidia,tegra210-sdhci", "nvidia,tegra124-sdhci"; compatible = "nvidia,tegra210-sdhci";
reg = <0x0 0x700b0600 0x0 0x200>; reg = <0x0 0x700b0600 0x0 0x200>;
interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&tegra_car TEGRA210_CLK_SDMMC4>; clocks = <&tegra_car TEGRA210_CLK_SDMMC4>;
...@@ -1356,7 +1370,7 @@ adma: dma@702e2000 { ...@@ -1356,7 +1370,7 @@ adma: dma@702e2000 {
status = "disabled"; status = "disabled";
}; };
agic: agic@702f9000 { agic: interrupt-controller@702f9000 {
compatible = "nvidia,tegra210-agic"; compatible = "nvidia,tegra210-agic";
#interrupt-cells = <3>; #interrupt-cells = <3>;
interrupt-controller; interrupt-controller;
...@@ -1547,8 +1561,8 @@ timer { ...@@ -1547,8 +1561,8 @@ timer {
soctherm: thermal-sensor@700e2000 { soctherm: thermal-sensor@700e2000 {
compatible = "nvidia,tegra210-soctherm"; compatible = "nvidia,tegra210-soctherm";
reg = <0x0 0x700e2000 0x0 0x600 /* SOC_THERM reg_base */ reg = <0x0 0x700e2000 0x0 0x600>, /* SOC_THERM reg_base */
0x0 0x60006000 0x0 0x400>; /* CAR reg_base */ <0x0 0x60006000 0x0 0x400>; /* CAR reg_base */
reg-names = "soctherm-reg", "car-reg"; reg-names = "soctherm-reg", "car-reg";
interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>, interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>; <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment