WIP: nx dts
This commit is contained in:
3
.vscode/settings.json
vendored
Normal file
3
.vscode/settings.json
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"makefile.configureOnOpen": true
|
||||
}
|
||||
1001
tegra210-nx.dtsi
Normal file
1001
tegra210-nx.dtsi
Normal file
File diff suppressed because it is too large
Load Diff
2327
tegra210-odin.dts
2327
tegra210-odin.dts
File diff suppressed because it is too large
Load Diff
@@ -1,31 +1,9 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
// SPDX-FileCopyrightText: Copyright (C) 2025 The LineageOS Project
|
||||
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
|
||||
#include "tegra210b01-nx-common.dtsi"
|
||||
#include "tegra210b01-nx.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Nintendo Switch OLED";
|
||||
compatible = "nintendo,fric", "nintendo,nx", "nvidia,tegra210b01", "nvidia,tegra210";
|
||||
|
||||
i2c@7000d000 {
|
||||
pmic@3c {
|
||||
regulators {
|
||||
avdd_1v05: ldo8 {
|
||||
regulator-name = "AVDD_SATA_HDMI_DP_1V05";
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <1000000>;
|
||||
regulator-disable-ramp-delay = <4000>;
|
||||
regulator-enable-ramp-delay = <50>;
|
||||
regulator-ramp-delay = <50000>;
|
||||
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_NONE>;
|
||||
maxim,active-fps-power-up-slot = <0>;
|
||||
maxim,active-fps-power-down-slot = <0>;
|
||||
maxim,ramp-rate-setting = <50000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
model = "Nintendo Switch (OLED model)";
|
||||
compatible = "nvidia,fric", "nintendo,aula", "nintendo,nx", "nvidia,tegra210b01", "nvidia,tegra210";
|
||||
};
|
||||
|
||||
@@ -1,747 +0,0 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
// SPDX-FileCopyrightText: Copyright (C) 2025 The LineageOS Project
|
||||
|
||||
#include <dt-bindings/input/gpio-keys.h>
|
||||
#include <dt-bindings/input/linux-event-codes.h>
|
||||
#include <dt-bindings/mfd/max77620.h>
|
||||
|
||||
#include "tegra210b01.dtsi"
|
||||
|
||||
/ {
|
||||
aliases {
|
||||
rtc0 = "/i2c@7000d000/pmic@3c";
|
||||
rtc1 = "/rtc@7000e000";
|
||||
serial0 = &uarta;
|
||||
};
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial0:115200n8";
|
||||
};
|
||||
|
||||
memory@80000000 {
|
||||
device_type = "memory";
|
||||
reg = <0x0 0x80000000 0x1 0x0>;
|
||||
};
|
||||
|
||||
pcie@1003000 {
|
||||
status = "okay";
|
||||
|
||||
hvddio-pex-supply = <&vdd_1v8>;
|
||||
dvddio-pex-supply = <&vdd_pex_1v05>;
|
||||
vddio-pex-ctl-supply = <&vdd_1v8>;
|
||||
|
||||
pci@1,0 {
|
||||
phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-3}>,
|
||||
<&{/padctl@7009f000/pads/pcie/lanes/pcie-2}>;
|
||||
phy-names = "pcie-0", "pcie-1";
|
||||
nvidia,num-lanes = <2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
pci@2,0 {
|
||||
phys = <&{/padctl@7009f000/pads/pcie/lanes/pcie-0}>;
|
||||
phy-names = "pcie-0";
|
||||
status = "okay";
|
||||
|
||||
wifi@0,0 {
|
||||
compatible = "brcm,bcm4356-fmac", "brcm,bcm4329-fmac";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
host1x@50000000 {
|
||||
dpaux@54040000 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
dsi@54300000 {
|
||||
status = "okay";
|
||||
|
||||
avdd-dsi-csi-supply = <&vdd_sys_1v2>;
|
||||
};
|
||||
|
||||
sor@54580000 {
|
||||
status = "okay";
|
||||
|
||||
avdd-io-hdmi-dp-supply = <&avdd_1v05>;
|
||||
vdd-hdmi-dp-pll-supply = <&vdd_1v8>;
|
||||
|
||||
nvidia,dpaux = <&dpaux1>;
|
||||
nvidia,hpd-gpio = <&gpio TEGRA_GPIO(CC, 1)
|
||||
GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
|
||||
gpu@57000000 {
|
||||
vdd-supply = <&vdd_gpu>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* debug port */
|
||||
serial@70006000 {
|
||||
/delete-property/ dmas;
|
||||
/delete-property/ dma-names;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
pwm@7000a000 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
i2c@7000d000 {
|
||||
status = "okay";
|
||||
clock-frequency = <400000>;
|
||||
|
||||
max77812: max77812@33 {
|
||||
compatible = "maxim,max77812-regulator";
|
||||
reg = <0x33>;
|
||||
maxim,soft-start-slew-rate = <5000>;
|
||||
maxim,shutdown-slew-rate = <5000>;
|
||||
maxim,ramp-up-slew-rate = <5000>;
|
||||
maxim,ramp-down-slew-rate = <5000>;
|
||||
status = "okay";
|
||||
|
||||
regulators {
|
||||
vin-supply = <&battery_reg>;
|
||||
|
||||
vdd_gpu: m1vout {
|
||||
regulator-name = "vdd-gpu";
|
||||
regulator-disable-ramp-delay = <5000>;
|
||||
regulator-enable-ramp-delay = <5000>;
|
||||
regulator-init-microvolt = <800000>;
|
||||
regulator-min-microvolt = <250000>;
|
||||
regulator-max-microvolt = <1525000>;
|
||||
regulator-ramp-delay = <5000>;
|
||||
|
||||
maxim,peak-current-limit-ua = <7200000>;
|
||||
};
|
||||
|
||||
m2vout {
|
||||
regulator-name = "vdd-mvout2";
|
||||
regulator-disable-ramp-delay = <5000>;
|
||||
regulator-enable-ramp-delay = <5000>;
|
||||
regulator-min-microvolt = <250000>;
|
||||
regulator-max-microvolt = <1525000>;
|
||||
regulator-ramp-delay = <5000>;
|
||||
|
||||
maxim,peak-current-limit-ua = <7200000>;
|
||||
};
|
||||
|
||||
m3vout {
|
||||
status = "okay";
|
||||
regulator-name = "vddio-ddr";
|
||||
regulator-disable-ramp-delay = <5000>;
|
||||
regulator-enable-ramp-delay = <5000>;
|
||||
regulator-min-microvolt = <550000>;
|
||||
regulator-max-microvolt = <650000>;
|
||||
regulator-ramp-delay = <5000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
|
||||
maxim,peak-current-limit-ua = <7200000>;
|
||||
};
|
||||
|
||||
vdd_cpu: m4vout {
|
||||
regulator-name = "vdd-cpu";
|
||||
regulator-disable-ramp-delay = <5000>;
|
||||
regulator-enable-ramp-delay = <5000>;
|
||||
regulator-init-microvolt = <1000000>;
|
||||
regulator-min-microvolt = <250000>;
|
||||
regulator-max-microvolt = <1525000>;
|
||||
regulator-ramp-delay = <5000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
|
||||
maxim,peak-current-limit-ua = <7200000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
pmic: pmic@3c {
|
||||
compatible = "maxim,max77620";
|
||||
reg = <0x3c>;
|
||||
interrupt-parent = <&tegra_pmc>;
|
||||
interrupts = <51 IRQ_TYPE_LEVEL_LOW>;
|
||||
|
||||
#interrupt-cells = <2>;
|
||||
interrupt-controller;
|
||||
|
||||
#gpio-cells = <2>;
|
||||
gpio-controller;
|
||||
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&max77620_default>;
|
||||
|
||||
fps {
|
||||
fps0 {
|
||||
maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
|
||||
maxim,suspend-fps-time-period-us = <5120>;
|
||||
};
|
||||
|
||||
fps1 {
|
||||
maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN1>;
|
||||
maxim,suspend-fps-time-period-us = <5120>;
|
||||
};
|
||||
|
||||
fps2 {
|
||||
maxim,fps-event-source = <MAX77620_FPS_EVENT_SRC_EN0>;
|
||||
};
|
||||
};
|
||||
|
||||
max77620_default: pinmux {
|
||||
gpio0 {
|
||||
pins = "gpio0";
|
||||
function = "gpio";
|
||||
};
|
||||
|
||||
gpio1 {
|
||||
pins = "gpio1";
|
||||
function = "fps-out";
|
||||
drive-push-pull = <1>;
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_NONE>;
|
||||
maxim,active-fps-power-up-slot = <5>;
|
||||
maxim,active-fps-power-down-slot = <0>;
|
||||
};
|
||||
|
||||
gpio2 {
|
||||
pins = "gpio2";
|
||||
function = "fps-out";
|
||||
drive-open-drain = <1>;
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
|
||||
maxim,active-fps-power-up-slot = <6>;
|
||||
maxim,active-fps-power-down-slot = <0>;
|
||||
};
|
||||
|
||||
gpio3 {
|
||||
pins = "gpio3";
|
||||
function = "fps-out";
|
||||
drive-open-drain = <1>;
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
|
||||
maxim,active-fps-power-up-slot = <3>;
|
||||
maxim,active-fps-power-down-slot = <0>;
|
||||
};
|
||||
|
||||
gpio4 {
|
||||
pins = "gpio4";
|
||||
function = "32k-out1";
|
||||
};
|
||||
|
||||
gpio5_6_7 {
|
||||
pins = "gpio5", "gpio6", "gpio7";
|
||||
function = "gpio";
|
||||
drive-push-pull = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
regulators {
|
||||
in-ldo0-1-supply = <&vdd_pre>;
|
||||
in-ldo2-supply = <&vdd_3v3_sys>;
|
||||
in-ldo3-5-supply = <&vdd_3v3_sys>;
|
||||
in-ldo4-6-supply = <&battery_reg>;
|
||||
in-ldo7-8-supply = <&vdd_pre>;
|
||||
in-sd0-supply = <&battery_reg>;
|
||||
in-sd1-supply = <&battery_reg>;
|
||||
in-sd2-supply = <&battery_reg>;
|
||||
in-sd3-supply = <&battery_reg>;
|
||||
|
||||
vdd_core: sd0 {
|
||||
regulator-name = "VDD_CORE";
|
||||
regulator-min-microvolt = <625000>;
|
||||
regulator-max-microvolt = <1400000>;
|
||||
regulator-enable-ramp-delay = <50>;
|
||||
regulator-disable-ramp-delay = <4080>;
|
||||
regulator-ramp-delay = <27500>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_1>;
|
||||
maxim,active-fps-power-up-slot = <1>;
|
||||
maxim,active-fps-power-down-slot = <7>;
|
||||
maxim,ramp-rate-setting = <27500>;
|
||||
};
|
||||
|
||||
vdd_ddr: sd1 {
|
||||
regulator-name = "VDD_DDR_1V1_PMIC";
|
||||
regulator-min-microvolt = <1050000>;
|
||||
regulator-max-microvolt = <1175000>;
|
||||
regulator-disable-ramp-delay = <145800>;
|
||||
regulator-enable-ramp-delay = <60>;
|
||||
regulator-ramp-delay = <27500>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
|
||||
maxim,active-fps-power-up-slot = <5>;
|
||||
maxim,active-fps-power-down-slot = <2>;
|
||||
maxim,ramp-rate-setting = <27500>;
|
||||
};
|
||||
|
||||
vdd_pre: sd2 {
|
||||
regulator-name = "VDD_PRE_REG_1V35";
|
||||
regulator-min-microvolt = <1325000>;
|
||||
regulator-max-microvolt = <1325000>;
|
||||
regulator-disable-ramp-delay = <20000>;
|
||||
regulator-enable-ramp-delay = <40>;
|
||||
regulator-ramp-delay = <27500>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_NONE>;
|
||||
maxim,active-fps-power-up-slot = <0>;
|
||||
maxim,active-fps-power-down-slot = <0>;
|
||||
maxim,ramp-rate-setting = <27500>;
|
||||
};
|
||||
|
||||
vdd_1v8: sd3 {
|
||||
regulator-name = "VDD_1V8";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-disable-ramp-delay = <118000>;
|
||||
regulator-enable-ramp-delay = <50>;
|
||||
regulator-ramp-delay = <27500>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
|
||||
maxim,active-fps-power-up-slot = <2>;
|
||||
maxim,active-fps-power-down-slot = <4>;
|
||||
maxim,ramp-rate-setting = <27500>;
|
||||
};
|
||||
|
||||
vdd_sys_1v2: ldo0 {
|
||||
regulator-name = "AVDD_SYS_1V2";
|
||||
regulator-min-microvolt = <1200000>;
|
||||
regulator-max-microvolt = <1200000>;
|
||||
regulator-disable-ramp-delay = <4000>;
|
||||
regulator-enable-ramp-delay = <50>;
|
||||
regulator-ramp-delay = <50000>;
|
||||
regulator-boot-on;
|
||||
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_NONE>;
|
||||
maxim,active-fps-power-up-slot = <0>;
|
||||
maxim,active-fps-power-down-slot = <0>;
|
||||
maxim,ramp-rate-setting = <50000>;
|
||||
};
|
||||
|
||||
vdd_pex_1v05: ldo1 {
|
||||
regulator-name = "VDD_PEX_1V05";
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <1000000>;
|
||||
regulator-disable-ramp-delay = <7000>;
|
||||
regulator-enable-ramp-delay = <50>;
|
||||
regulator-ramp-delay = <50000>;
|
||||
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_NONE>;
|
||||
maxim,active-fps-power-up-slot = <0>;
|
||||
maxim,active-fps-power-down-slot = <0>;
|
||||
maxim,ramp-rate-setting = <50000>;
|
||||
};
|
||||
|
||||
vddio_sdmmc: ldo2 {
|
||||
regulator-name = "VDDIO_SDMMC";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-disable-ramp-delay = <6000>;
|
||||
regulator-enable-ramp-delay = <100>;
|
||||
regulator-ramp-delay = <50000>;
|
||||
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_NONE>;
|
||||
maxim,active-fps-power-up-slot = <0>;
|
||||
maxim,active-fps-power-down-slot = <0>;
|
||||
maxim,ramp-rate-setting = <50000>;
|
||||
};
|
||||
|
||||
ldo3 {
|
||||
regulator-name = "VDD_GC_3V1";
|
||||
regulator-min-microvolt = <3100000>;
|
||||
regulator-max-microvolt = <3100000>;
|
||||
regulator-disable-ramp-delay = <3000>;
|
||||
regulator-enable-ramp-delay = <100>;
|
||||
regulator-ramp-delay = <50000>;
|
||||
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_NONE>;
|
||||
maxim,active-fps-power-up-slot = <0>;
|
||||
maxim,active-fps-power-down-slot = <0>;
|
||||
maxim,ramp-rate-setting = <50000>;
|
||||
};
|
||||
|
||||
vdd_rtc: ldo4 {
|
||||
regulator-name = "VDD_RTC";
|
||||
regulator-min-microvolt = <800000>;
|
||||
regulator-max-microvolt = <800000>;
|
||||
regulator-disable-ramp-delay = <610>;
|
||||
regulator-enable-ramp-delay = <50>;
|
||||
regulator-ramp-delay = <50000>;
|
||||
regulator-disable-active-discharge;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
|
||||
maxim,active-fps-power-up-slot = <0>;
|
||||
maxim,active-fps-power-down-slot = <7>;
|
||||
};
|
||||
|
||||
ldo5 {
|
||||
regulator-name = "VDDIO_GC_1V8";
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
regulator-disable-ramp-delay = <3000>;
|
||||
regulator-enable-ramp-delay = <70>;
|
||||
regulator-ramp-delay = <50000>;
|
||||
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_NONE>;
|
||||
maxim,active-fps-power-up-slot = <0>;
|
||||
maxim,active-fps-power-down-slot = <0>;
|
||||
maxim,ramp-rate-setting = <50000>;
|
||||
};
|
||||
|
||||
ldo6 {
|
||||
regulator-name = "VDD_TOUCH";
|
||||
regulator-min-microvolt = <2900000>;
|
||||
regulator-max-microvolt = <2900000>;
|
||||
regulator-disable-ramp-delay = <3000>;
|
||||
regulator-enable-ramp-delay = <100>;
|
||||
regulator-ramp-delay = <50000>;
|
||||
regulator-boot-on;
|
||||
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_NONE>;
|
||||
maxim,active-fps-power-up-slot = <0>;
|
||||
maxim,active-fps-power-down-slot = <0>;
|
||||
maxim,ramp-rate-setting = <50000>;
|
||||
};
|
||||
|
||||
/* Varies by variant */
|
||||
ldo7 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
avdd_1v05: ldo8 {
|
||||
regulator-name = "AVDD_SATA_HDMI_DP_1V05";
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <1000000>;
|
||||
regulator-disable-ramp-delay = <4000>;
|
||||
regulator-enable-ramp-delay = <50>;
|
||||
regulator-ramp-delay = <50000>;
|
||||
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_NONE>;
|
||||
maxim,active-fps-power-up-slot = <0>;
|
||||
maxim,active-fps-power-down-slot = <0>;
|
||||
maxim,ramp-rate-setting = <50000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
pmc@7000e400 {
|
||||
nvidia,invert-interrupt;
|
||||
nvidia,suspend-mode = <0>;
|
||||
nvidia,cpu-pwr-good-time = <0>;
|
||||
nvidia,cpu-pwr-off-time = <0>;
|
||||
nvidia,core-pwr-good-time = <13100 7800>;
|
||||
nvidia,core-pwr-off-time = <44160>;
|
||||
nvidia,core-power-req-active-high;
|
||||
nvidia,sys-clock-req-active-high;
|
||||
};
|
||||
|
||||
hda@70030000 {
|
||||
nvidia,model = "Nintendo Switch";
|
||||
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
usb@70090000 {
|
||||
phys = <&{/padctl@7009f000/pads/usb2/lanes/usb2-0}>,
|
||||
<&{/padctl@7009f000/pads/pcie/lanes/pcie-5}>;
|
||||
phy-names = "usb2-0", "usb3-0";
|
||||
|
||||
avdd-usb-supply = <&vdd_3v3_sys>;
|
||||
dvddio-pex-supply = <&vdd_pex_1v05>;
|
||||
hvddio-pex-supply = <&vdd_1v8>;
|
||||
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
padctl@7009f000 {
|
||||
status = "okay";
|
||||
|
||||
avdd-pll-utmip-supply = <&vdd_1v8>;
|
||||
avdd-pll-uerefe-supply = <&vdd_pex_1v05>;
|
||||
dvdd-pex-pll-supply = <&vdd_pex_1v05>;
|
||||
hvdd-pex-pll-e-supply = <&vdd_1v8>;
|
||||
|
||||
pads {
|
||||
usb2 {
|
||||
status = "okay";
|
||||
|
||||
lanes {
|
||||
type_c: usb2-0 {
|
||||
nvidia,function = "xusb";
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
pcie {
|
||||
status = "okay";
|
||||
|
||||
lanes {
|
||||
pcie-0 {
|
||||
nvidia,function = "pcie-x1";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
pcie-1 {
|
||||
nvidia,function = "usb3-ss";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
pcie-2 {
|
||||
nvidia,function = "pcie-x4";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
pcie-3 {
|
||||
nvidia,function = "pcie-x4";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
pcie-4 {
|
||||
nvidia,function = "usb3-ss";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
pcie-5 {
|
||||
nvidia,function = "usb3-ss";
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
ports {
|
||||
usb2-0 {
|
||||
status = "okay";
|
||||
mode = "otg";
|
||||
usb-role-switch;
|
||||
|
||||
vbus-supply = <&battery_reg>;
|
||||
|
||||
endpoint@0 {
|
||||
reg = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
usb3-0 {
|
||||
status = "okay";
|
||||
nvidia,usb2-companion = <0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
mmc@700b0000 {
|
||||
status = "okay";
|
||||
bus-width = <4>;
|
||||
|
||||
cd-gpios = <&gpio TEGRA_GPIO(Z, 1) GPIO_ACTIVE_LOW>;
|
||||
disable-wp;
|
||||
|
||||
vqmmc-supply = <&vddio_sdmmc>;
|
||||
vmmc-supply = <&vdd_3v3_sd>;
|
||||
};
|
||||
|
||||
mmc@700b0600 {
|
||||
/* explicitly not enabled by default */
|
||||
bus-width = <8>;
|
||||
non-removable;
|
||||
vqmmc-supply = <&vdd_1v8>;
|
||||
vmmc-supply = <&vdd_3v3_sys>;
|
||||
};
|
||||
|
||||
usb@700d0000 {
|
||||
status = "okay";
|
||||
phys = <&type_c>;
|
||||
phy-names = "usb2-0";
|
||||
avddio-usb-supply = <&vdd_pex_1v05>;
|
||||
hvdd-usb-supply = <&vdd_3v3_sys>;
|
||||
};
|
||||
|
||||
clock@70110000 {
|
||||
status = "okay";
|
||||
|
||||
nvidia,cf = <6>;
|
||||
nvidia,ci = <0>;
|
||||
nvidia,cg = <2>;
|
||||
nvidia,droop-ctrl = <0x00000f00>;
|
||||
nvidia,force-mode = <1>;
|
||||
nvidia,i2c-fs-rate = <400000>;
|
||||
nvidia,sample-rate = <12500>;
|
||||
|
||||
vdd-cpu-supply = <&vdd_cpu>;
|
||||
};
|
||||
|
||||
clk32k_in: clock-32k {
|
||||
compatible = "fixed-clock";
|
||||
clock-frequency = <32768>;
|
||||
#clock-cells = <0>;
|
||||
};
|
||||
|
||||
cpus {
|
||||
cpu@0 {
|
||||
enable-method = "psci";
|
||||
};
|
||||
|
||||
cpu@1 {
|
||||
enable-method = "psci";
|
||||
};
|
||||
|
||||
cpu@2 {
|
||||
enable-method = "psci";
|
||||
};
|
||||
|
||||
cpu@3 {
|
||||
enable-method = "psci";
|
||||
};
|
||||
|
||||
idle-states {
|
||||
cpu-sleep {
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
|
||||
key-volume-down {
|
||||
label = "Volume Down";
|
||||
gpios = <&gpio TEGRA_GPIO(X, 7) GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_VOLUMEDOWN>;
|
||||
debounce-interval = <10>;
|
||||
};
|
||||
|
||||
key-volume-up {
|
||||
label = "Volume Up";
|
||||
gpios = <&gpio TEGRA_GPIO(X, 6) GPIO_ACTIVE_LOW>;
|
||||
linux,code = <KEY_VOLUMEUP>;
|
||||
debounce-interval = <10>;
|
||||
};
|
||||
};
|
||||
|
||||
psci {
|
||||
compatible = "arm,psci-1.0";
|
||||
method = "smc";
|
||||
};
|
||||
|
||||
fan: pwm-fan {
|
||||
compatible = "pwm-fan";
|
||||
pwms = <&pwm 1 33333>;
|
||||
fan-supply = <&vdd_fan>;
|
||||
|
||||
cooling-levels = <255 128 64 0>;
|
||||
#cooling-cells = <2>;
|
||||
};
|
||||
|
||||
battery_reg: regulator-vdd-ac-bat {
|
||||
compatible = "regulator-fixed";
|
||||
|
||||
regulator-name = "vdd-ac-bat";
|
||||
regulator-min-microvolt = <4800000>;
|
||||
regulator-max-microvolt = <4800000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
};
|
||||
|
||||
vdd_3v3_sys: regulator-vdd-3v3-sys {
|
||||
compatible = "regulator-fixed";
|
||||
|
||||
regulator-name = "VDD_3V3_SYS";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-enable-ramp-delay = <240>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
|
||||
gpio = <&pmic 3 GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
|
||||
vin-supply = <&battery_reg>;
|
||||
};
|
||||
|
||||
vdd_3v3_sd: regulator-vdd-3v3-sd {
|
||||
compatible = "regulator-fixed";
|
||||
|
||||
regulator-name = "VDD_3V3_SD";
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-enable-ramp-delay = <472>;
|
||||
regulator-disable-ramp-delay = <4880>;
|
||||
|
||||
gpio = <&gpio TEGRA_GPIO(E, 4) GPIO_ACTIVE_HIGH>;
|
||||
enable-active-high;
|
||||
|
||||
vin-supply = <&vdd_3v3_sys>;
|
||||
};
|
||||
|
||||
vdd_fan: regulator-vdd-fan {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "VDD_FAN";
|
||||
regulator-min-microvolt = <5300000>;
|
||||
regulator-max-microvolt = <5300000>;
|
||||
gpio = <&gpio TEGRA_GPIO(A, 5) GPIO_ACTIVE_LOW>;
|
||||
vin-supply = <&battery_reg>;
|
||||
|
||||
regulator-enable-ramp-delay = <284>;
|
||||
};
|
||||
|
||||
thermal-zones {
|
||||
cpu-thermal {
|
||||
trips {
|
||||
cpu_trip_critical: critical {
|
||||
temperature = <58000>;
|
||||
hysteresis = <0>;
|
||||
type = "critical";
|
||||
};
|
||||
|
||||
cpu_trip_hot: hot {
|
||||
temperature = <53000>;
|
||||
hysteresis = <2000>;
|
||||
type = "hot";
|
||||
};
|
||||
|
||||
cpu_trip_active: active {
|
||||
temperature = <48000>;
|
||||
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>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
1344
tegra210b01-nx.dtsi
Normal file
1344
tegra210b01-nx.dtsi
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1,31 +1,10 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
// SPDX-FileCopyrightText: Copyright (C) 2025 The LineageOS Project
|
||||
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
|
||||
#include "tegra210b01-nx-common.dtsi"
|
||||
#include "tegra210b01-nx.dtsi"
|
||||
|
||||
/ {
|
||||
|
||||
model = "Nintendo Switch (2019)";
|
||||
compatible = "nintendo,odin", "nintendo,nx", "nvidia,tegra210b01", "nvidia,tegra210";
|
||||
|
||||
i2c@7000d000 {
|
||||
pmic@3c {
|
||||
regulators {
|
||||
avdd_1v05: ldo8 {
|
||||
regulator-name = "AVDD_SATA_HDMI_DP_1V05";
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <1000000>;
|
||||
regulator-disable-ramp-delay = <4000>;
|
||||
regulator-enable-ramp-delay = <50>;
|
||||
regulator-ramp-delay = <50000>;
|
||||
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_NONE>;
|
||||
maxim,active-fps-power-up-slot = <0>;
|
||||
maxim,active-fps-power-down-slot = <0>;
|
||||
maxim,ramp-rate-setting = <50000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
compatible = "nvidia,modin", "nvidia,odin", "nintendo,iowa", "nintendo,nx", "nvidia,tegra210b01", "nvidia,tegra210";
|
||||
};
|
||||
|
||||
@@ -1,33 +1,178 @@
|
||||
// SPDX-License-Identifier: GPL-2.0-only
|
||||
// SPDX-FileCopyrightText: Copyright (C) 2025 The LineageOS Project
|
||||
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/dts-v1/;
|
||||
|
||||
#include "tegra210b01-nx-common.dtsi"
|
||||
#include "tegra210b01-nx.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Nintendo Switch Lite";
|
||||
compatible = "nintendo,vali", "nintendo,nx", "nvidia,tegra210b01", "nvidia,tegra210";
|
||||
compatible = "nvidia,vali", "nintendo,hoag", "nintendo,nx", "nvidia,tegra210b01", "nvidia,tegra210";
|
||||
|
||||
pinmux: pinmux@700008d4 {
|
||||
status = "okay";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinmux_default>;
|
||||
|
||||
pinmux_default: common {
|
||||
/* USB-PD (BM92T36) Reset */
|
||||
ap_ready_pv5 { /* 3210 */
|
||||
nvidia,pins = "ap_ready_pv5";
|
||||
nvidia,function = "rsvd0";
|
||||
nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
|
||||
nvidia,tristate = <TEGRA_PIN_DISABLE>;
|
||||
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
|
||||
};
|
||||
|
||||
/* USB-PD (BM92T36) IRQ */
|
||||
pk4 { /* 3264 */
|
||||
nvidia,pins = "pk4";
|
||||
nvidia,function = "rsvd1";
|
||||
nvidia,pull = <TEGRA_PIN_PULL_UP>;
|
||||
nvidia,tristate = <TEGRA_PIN_ENABLE>;
|
||||
nvidia,enable-input = <TEGRA_PIN_ENABLE>;
|
||||
};
|
||||
|
||||
/* USB-PD (BM92T36) VCONN Power Enable */
|
||||
pk5 { /* 3268 */
|
||||
nvidia,pins = "pk5";
|
||||
nvidia,function = "rsvd1";
|
||||
nvidia,pull = <TEGRA_PIN_PULL_DOWN>;
|
||||
nvidia,tristate = <TEGRA_PIN_DISABLE>;
|
||||
nvidia,enable-input = <TEGRA_PIN_DISABLE>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
/* Joycon/Fan power (usb) */
|
||||
v_vdd50_b: v-vdd50-b {
|
||||
status = "disabled"; /* Only enabled on Odin/Modin */
|
||||
};
|
||||
|
||||
en_vdd_jcl_chgr: left-joycon-charger {
|
||||
status = "disabled"; /* Only enabled on Odin/Modin/Fric */
|
||||
};
|
||||
|
||||
en_vdd_jcr_chgr: right-joycon-charger {
|
||||
status = "disabled"; /* Only enabled on Odin/Modin/Fric */
|
||||
};
|
||||
|
||||
spi@7000da00 {
|
||||
status = "disabled"; /* Disabled for Vali since Sio uses it */
|
||||
};
|
||||
|
||||
/* Right Joycon */
|
||||
serial@70006040 {
|
||||
status = "disabled";
|
||||
|
||||
joyconr {
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
/* Left Joycon / Sio */
|
||||
serial@70006200 {
|
||||
status = "okay";
|
||||
/delete-property/ nvidia,invert-txd;
|
||||
/delete-property/ nvidia,invert-rts;
|
||||
|
||||
joyconl {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
sio {
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
i2c@7000c000 {
|
||||
bm92t: bm92t@18 {
|
||||
status = "okay";
|
||||
/delete-property/ rohm,dp-signal-toggle-on-resume;
|
||||
rohm,dp-disable;
|
||||
rohm,pd-5v-current-limit-ma = <2000>;
|
||||
rohm,pd-9v-current-limit-ma = <1500>;
|
||||
rohm,pd-12v-current-limit-ma = <1200>;
|
||||
rohm,pd-15v-current-limit-ma = <900>;
|
||||
};
|
||||
|
||||
bq2419x: bq24193@6b {
|
||||
battery_charger: charger {
|
||||
ti,charge-voltage-limit-millivolt = <4320>; /* Adjusted by cell age */
|
||||
ti,fast-charge-current-limit-milliamp = <1664>;
|
||||
ti,temp-range = <0 18 47 58>;
|
||||
ti,charge-thermal-voltage-limit = <4320 4320 4320 4080>; /* Adjusted by cell age */
|
||||
ti,charge-current-limit = <512 640 1664 1664>;
|
||||
};
|
||||
};
|
||||
|
||||
fuel_gauge: fuel-gauge@36 {
|
||||
maxim,over-volt = <4320>; /* Actual: 4370 mV */
|
||||
maxim,kernel-maximum-soc = <100>; /* Adjusted by cell age */
|
||||
};
|
||||
};
|
||||
|
||||
i2c@7000d000 {
|
||||
pmic@3c {
|
||||
pmic_b: pmic@3c {
|
||||
regulators {
|
||||
vdd_sio: ldo8 {
|
||||
regulator-name = "VDD_SIO";
|
||||
regulator-min-microvolt = <1000000>;
|
||||
/* Vali: Powers LDO 2V8 for Sio VDD
|
||||
* Powers LDO 1V8 for I2C1 VDDQ and ALC5639.
|
||||
*/
|
||||
ldo8 {
|
||||
regulator-name = "vdd-i2c1";
|
||||
regulator-max-microvolt = <2800000>;
|
||||
regulator-disable-ramp-delay = <4000>;
|
||||
regulator-enable-ramp-delay = <50>;
|
||||
regulator-ramp-delay = <50000>;
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
maxim,active-fps-source = <MAX77620_FPS_SRC_NONE>;
|
||||
maxim,active-fps-power-up-slot = <0>;
|
||||
maxim,active-fps-power-down-slot = <0>;
|
||||
maxim,ramp-rate-setting = <50000>;
|
||||
};
|
||||
i2c@546c0000 {
|
||||
bus-pullup-supply = <&battery_reg>;
|
||||
};
|
||||
|
||||
host1x@50000000 {
|
||||
/* tegradc.1: DP */
|
||||
dc@54240000 {
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
|
||||
xusb: usb@70090000 {
|
||||
status = "okay";
|
||||
|
||||
phys = <&{/padctl@7009f000/pads/usb2/lanes/usb2-0}>,
|
||||
<&{/padctl@7009f000/pads/pcie/lanes/pcie-5}>;
|
||||
phy-names = "usb2-0", "usb3-0";
|
||||
|
||||
extcon = <&bm92t 0>;
|
||||
extcon-cable-names = "vbus";
|
||||
|
||||
avdd-usb-supply = <&vdd_3v3>;
|
||||
dvddio-pex-supply = <&max77620_ldo1>;
|
||||
hvddio-pex-supply = <&max77620_sd3>;
|
||||
};
|
||||
|
||||
xudc: usb@700d0000 {
|
||||
status = "okay";
|
||||
|
||||
phys = <&{/padctl@7009f000/pads/usb2/lanes/usb2-0}>;//,
|
||||
//<&{/padctl@7009f000/pads/pcie/lanes/pcie-5}>;
|
||||
phy-names = "usb2-0";//, "usb3-0";
|
||||
|
||||
extcon = <&bm92t 1>;
|
||||
extcon-cable-names = "id";
|
||||
|
||||
hvdd-usb-supply = <&vdd_3v3>;
|
||||
avddio-usb-supply = <&max77620_ldo1>;
|
||||
};
|
||||
|
||||
padctl@7009f000 {
|
||||
status = "okay";
|
||||
|
||||
avdd-pll-utmip-supply = <&max77620_sd3>;
|
||||
avdd-pll-uerefe-supply = <&max77620_ldo1>;
|
||||
dvdd-pex-pll-supply = <&max77620_ldo1>;
|
||||
hvdd-pex-pll-e-supply = <&max77620_sd3>;
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user