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
...@@ -18,7 +18,7 @@ chosen { ...@@ -18,7 +18,7 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
memory { memory@80000000 {
device_type = "memory"; device_type = "memory";
reg = <0x0 0x80000000 0x0 0x80000000>; reg = <0x0 0x80000000 0x0 0x80000000>;
}; };
...@@ -39,6 +39,9 @@ hdmi@54280000 { ...@@ -39,6 +39,9 @@ hdmi@54280000 {
sor@54540000 { sor@54540000 {
status = "okay"; status = "okay";
avdd-io-hdmi-dp-supply = <&vdd_3v3_hdmi>;
vdd-hdmi-dp-pll-supply = <&vdd_hdmi_pll>;
nvidia,dpaux = <&dpaux>; nvidia,dpaux = <&dpaux>;
nvidia,panel = <&panel>; nvidia,panel = <&panel>;
}; };
...@@ -671,7 +674,7 @@ vdd_gpu: sd6 { ...@@ -671,7 +674,7 @@ vdd_gpu: sd6 {
regulator-boot-on; regulator-boot-on;
}; };
ldo0 { avdd_1v05_run: ldo0 {
regulator-name = "+1.05_RUN_AVDD"; regulator-name = "+1.05_RUN_AVDD";
regulator-min-microvolt = <1050000>; regulator-min-microvolt = <1050000>;
regulator-max-microvolt = <1050000>; regulator-max-microvolt = <1050000>;
...@@ -781,7 +784,6 @@ TEGRA_GPIO(J, 0) ...@@ -781,7 +784,6 @@ TEGRA_GPIO(J, 0)
battery: smart-battery { battery: smart-battery {
compatible = "sbs,sbs-battery"; compatible = "sbs,sbs-battery";
reg = <0xb>; reg = <0xb>;
battery-name = "battery";
sbs,i2c-retry-count = <2>; sbs,i2c-retry-count = <2>;
sbs,poll-retry-count = <10>; sbs,poll-retry-count = <10>;
/* power-supplies = <&charger>; */ /* power-supplies = <&charger>; */
...@@ -893,55 +895,123 @@ pmc@7000e400 { ...@@ -893,55 +895,123 @@ pmc@7000e400 {
nvidia,reset-gpio = <&gpio TEGRA_GPIO(I, 5) GPIO_ACTIVE_LOW>; nvidia,reset-gpio = <&gpio TEGRA_GPIO(I, 5) GPIO_ACTIVE_LOW>;
}; };
/* WIFI/BT module */ usb@70090000 {
sdhci@700b0000 { phys = <&{/padctl@7009f000/pads/usb2/lanes/usb2-0}>, /* 1st USB A */
status = "disabled"; <&{/padctl@7009f000/pads/usb2/lanes/usb2-1}>, /* Internal USB */
<&{/padctl@7009f000/pads/usb2/lanes/usb2-2}>, /* 2nd USB A */
<&{/padctl@7009f000/pads/pcie/lanes/pcie-0}>, /* 1st USB A */
<&{/padctl@7009f000/pads/pcie/lanes/pcie-1}>; /* 2nd USB A */
phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-0", "usb3-1";
avddio-pex-supply = <&vdd_1v05_run>;
dvddio-pex-supply = <&vdd_1v05_run>;
avdd-usb-supply = <&vdd_3v3_lp0>;
hvdd-usb-ss-supply = <&vdd_3v3_lp0>;
status = "okay";
}; };
/* external SD/MMC */ padctl@7009f000 {
sdhci@700b0400 { avdd-pll-utmip-supply = <&vddio_1v8>;
cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>; avdd-pll-erefe-supply = <&avdd_1v05_run>;
power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>; avdd-pex-pll-supply = <&vdd_1v05_run>;
wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_HIGH>; hvdd-pex-pll-e-supply = <&vdd_3v3_lp0>;
pads {
usb2 {
status = "okay";
lanes {
usb2-0 {
nvidia,function = "xusb";
status = "okay"; status = "okay";
bus-width = <4>;
vqmmc-supply = <&vddio_sdmmc3>;
}; };
/* EMMC 4.51 */ usb2-1 {
sdhci@700b0600 { nvidia,function = "xusb";
status = "okay"; status = "okay";
bus-width = <8>;
non-removable;
}; };
usb@7d000000 { usb2-2 {
nvidia,function = "xusb";
status = "okay"; status = "okay";
}; };
};
};
usb-phy@7d000000 { pcie {
status = "okay";
lanes {
pcie-0 {
nvidia,function = "usb3-ss";
status = "okay"; status = "okay";
vbus-supply = <&vdd_usb1_vbus>;
}; };
usb@7d004000 { pcie-1 {
nvidia,function = "usb3-ss";
status = "okay"; status = "okay";
}; };
};
};
};
usb-phy@7d004000 { ports {
usb2-0 {
status = "okay"; status = "okay";
vbus-supply = <&vdd_run_cam>; mode = "otg";
vbus-supply = <&vdd_usb1_vbus>;
}; };
usb@7d008000 { usb2-1 {
status = "okay"; status = "okay";
mode = "host";
vbus-supply = <&vdd_run_cam>;
}; };
usb-phy@7d008000 { usb2-2 {
status = "okay"; status = "okay";
mode = "host";
vbus-supply = <&vdd_usb3_vbus>; vbus-supply = <&vdd_usb3_vbus>;
}; };
usb3-0 {
nvidia,usb2-companion = <0>;
status = "okay";
};
usb3-1 {
nvidia,usb2-companion = <2>;
status = "okay";
};
};
};
/* WIFI/BT module */
mmc@700b0000 {
status = "disabled";
};
/* external SD/MMC */
mmc@700b0400 {
cd-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_LOW>;
power-gpios = <&gpio TEGRA_GPIO(R, 0) GPIO_ACTIVE_HIGH>;
wp-gpios = <&gpio TEGRA_GPIO(Q, 4) GPIO_ACTIVE_HIGH>;
status = "okay";
bus-width = <4>;
vqmmc-supply = <&vddio_sdmmc3>;
};
/* EMMC 4.51 */
mmc@700b0600 {
status = "okay";
bus-width = <8>;
non-removable;
};
backlight: backlight { backlight: backlight {
compatible = "pwm-backlight"; compatible = "pwm-backlight";
...@@ -955,17 +1025,10 @@ backlight: backlight { ...@@ -955,17 +1025,10 @@ backlight: backlight {
backlight-boot-off; backlight-boot-off;
}; };
clocks {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
clk32k_in: clock@0 { clk32k_in: clock@0 {
compatible = "fixed-clock"; compatible = "fixed-clock";
reg=<0>;
#clock-cells = <0>;
clock-frequency = <32768>; clock-frequency = <32768>;
}; #clock-cells = <0>;
}; };
gpio-keys { gpio-keys {
...@@ -991,18 +1054,13 @@ power { ...@@ -991,18 +1054,13 @@ power {
panel: panel { panel: panel {
compatible = "innolux,n116bge"; compatible = "innolux,n116bge";
power-supply = <&vdd_3v3_panel>;
backlight = <&backlight>; backlight = <&backlight>;
ddc-i2c-bus = <&dpaux>; ddc-i2c-bus = <&dpaux>;
}; };
regulators {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
vdd_mux: regulator@0 { vdd_mux: regulator@0 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <0>;
regulator-name = "+VDD_MUX"; regulator-name = "+VDD_MUX";
regulator-min-microvolt = <19000000>; regulator-min-microvolt = <19000000>;
regulator-max-microvolt = <19000000>; regulator-max-microvolt = <19000000>;
...@@ -1012,7 +1070,6 @@ vdd_mux: regulator@0 { ...@@ -1012,7 +1070,6 @@ vdd_mux: regulator@0 {
vdd_5v0_sys: regulator@1 { vdd_5v0_sys: regulator@1 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <1>;
regulator-name = "+5V_SYS"; regulator-name = "+5V_SYS";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -1023,7 +1080,6 @@ vdd_5v0_sys: regulator@1 { ...@@ -1023,7 +1080,6 @@ vdd_5v0_sys: regulator@1 {
vdd_3v3_sys: regulator@2 { vdd_3v3_sys: regulator@2 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <2>;
regulator-name = "+3.3V_SYS"; regulator-name = "+3.3V_SYS";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
...@@ -1034,7 +1090,6 @@ vdd_3v3_sys: regulator@2 { ...@@ -1034,7 +1090,6 @@ vdd_3v3_sys: regulator@2 {
vdd_3v3_run: regulator@3 { vdd_3v3_run: regulator@3 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <3>;
regulator-name = "+3.3V_RUN"; regulator-name = "+3.3V_RUN";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
...@@ -1047,7 +1102,6 @@ vdd_3v3_run: regulator@3 { ...@@ -1047,7 +1102,6 @@ vdd_3v3_run: regulator@3 {
vdd_3v3_hdmi: regulator@4 { vdd_3v3_hdmi: regulator@4 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <4>;
regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; regulator-name = "+3.3V_AVDD_HDMI_AP_GATED";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
...@@ -1056,7 +1110,6 @@ vdd_3v3_hdmi: regulator@4 { ...@@ -1056,7 +1110,6 @@ vdd_3v3_hdmi: regulator@4 {
vdd_led: regulator@5 { vdd_led: regulator@5 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <5>;
regulator-name = "+VDD_LED"; regulator-name = "+VDD_LED";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
...@@ -1067,7 +1120,6 @@ vdd_led: regulator@5 { ...@@ -1067,7 +1120,6 @@ vdd_led: regulator@5 {
vdd_usb1_vbus: regulator@6 { vdd_usb1_vbus: regulator@6 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <6>;
regulator-name = "+5V_USB_HS"; regulator-name = "+5V_USB_HS";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -1079,7 +1131,6 @@ vdd_usb1_vbus: regulator@6 { ...@@ -1079,7 +1131,6 @@ vdd_usb1_vbus: regulator@6 {
vdd_usb3_vbus: regulator@7 { vdd_usb3_vbus: regulator@7 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <7>;
regulator-name = "+5V_USB_SS"; regulator-name = "+5V_USB_SS";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -1091,7 +1142,6 @@ vdd_usb3_vbus: regulator@7 { ...@@ -1091,7 +1142,6 @@ vdd_usb3_vbus: regulator@7 {
vdd_3v3_panel: regulator@8 { vdd_3v3_panel: regulator@8 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <8>;
regulator-name = "+3.3V_PANEL"; regulator-name = "+3.3V_PANEL";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
...@@ -1102,7 +1152,6 @@ vdd_3v3_panel: regulator@8 { ...@@ -1102,7 +1152,6 @@ vdd_3v3_panel: regulator@8 {
vdd_hdmi_pll: regulator@9 { vdd_hdmi_pll: regulator@9 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <9>;
regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL_AP_GATE"; regulator-name = "+1.05V_RUN_AVDD_HDMI_PLL_AP_GATE";
regulator-min-microvolt = <1050000>; regulator-min-microvolt = <1050000>;
regulator-max-microvolt = <1050000>; regulator-max-microvolt = <1050000>;
...@@ -1112,7 +1161,6 @@ vdd_hdmi_pll: regulator@9 { ...@@ -1112,7 +1161,6 @@ vdd_hdmi_pll: regulator@9 {
vdd_5v0_hdmi: regulator@10 { vdd_5v0_hdmi: regulator@10 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <10>;
regulator-name = "+5V_HDMI_CON"; regulator-name = "+5V_HDMI_CON";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -1123,7 +1171,6 @@ vdd_5v0_hdmi: regulator@10 { ...@@ -1123,7 +1171,6 @@ vdd_5v0_hdmi: regulator@10 {
vdd_5v0_ts: regulator@11 { vdd_5v0_ts: regulator@11 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <11>;
regulator-name = "+5V_VDD_TS"; regulator-name = "+5V_VDD_TS";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -1132,5 +1179,19 @@ vdd_5v0_ts: regulator@11 { ...@@ -1132,5 +1179,19 @@ vdd_5v0_ts: regulator@11 {
gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>;
enable-active-high; enable-active-high;
}; };
vdd_3v3_lp0: regulator@12 {
compatible = "regulator-fixed";
regulator-name = "+3.3V_LP0";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
/*
* TODO: find a way to wire this up with the USB EHCI
* controllers so that it can be enabled on demand.
*/
regulator-always-on;
gpio = <&as3722 2 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_3v3_sys>;
}; };
}; };
...@@ -17,9 +17,9 @@ / { ...@@ -17,9 +17,9 @@ / {
pcie@1003000 { pcie@1003000 {
compatible = "nvidia,tegra124-pcie"; compatible = "nvidia,tegra124-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 */
...@@ -33,11 +33,11 @@ pcie@1003000 { ...@@ -33,11 +33,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 TEGRA124_CLK_PCIE>, clocks = <&tegra_car TEGRA124_CLK_PCIE>,
<&tegra_car TEGRA124_CLK_AFI>, <&tegra_car TEGRA124_CLK_AFI>,
...@@ -50,9 +50,6 @@ pcie@1003000 { ...@@ -50,9 +50,6 @@ pcie@1003000 {
reset-names = "pex", "afi", "pcie_x"; reset-names = "pex", "afi", "pcie_x";
status = "disabled"; status = "disabled";
phys = <&padctl TEGRA_XUSB_PADCTL_PCIE>;
phy-names = "pcie";
pci@1,0 { pci@1,0 {
device_type = "pci"; device_type = "pci";
assigned-addresses = <0x82000800 0 0x01000000 0 0x1000>; assigned-addresses = <0x82000800 0 0x01000000 0 0x1000>;
...@@ -83,10 +80,12 @@ pci@2,0 { ...@@ -83,10 +80,12 @@ pci@2,0 {
}; };
host1x@50000000 { host1x@50000000 {
compatible = "nvidia,tegra124-host1x", "simple-bus"; compatible = "nvidia,tegra132-host1x",
"nvidia,tegra124-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 TEGRA124_CLK_HOST1X>; clocks = <&tegra_car TEGRA124_CLK_HOST1X>;
clock-names = "host1x"; clock-names = "host1x";
resets = <&tegra_car 28>; resets = <&tegra_car 28>;
...@@ -101,9 +100,8 @@ dc@54200000 { ...@@ -101,9 +100,8 @@ dc@54200000 {
compatible = "nvidia,tegra124-dc"; compatible = "nvidia,tegra124-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 TEGRA124_CLK_DISP1>, clocks = <&tegra_car TEGRA124_CLK_DISP1>;
<&tegra_car TEGRA124_CLK_PLL_P>; clock-names = "dc";
clock-names = "dc", "parent";
resets = <&tegra_car 27>; resets = <&tegra_car 27>;
reset-names = "dc"; reset-names = "dc";
...@@ -116,9 +114,8 @@ dc@54240000 { ...@@ -116,9 +114,8 @@ dc@54240000 {
compatible = "nvidia,tegra124-dc"; compatible = "nvidia,tegra124-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 TEGRA124_CLK_DISP2>, clocks = <&tegra_car TEGRA124_CLK_DISP2>;
<&tegra_car TEGRA124_CLK_PLL_P>; clock-names = "dc";
clock-names = "dc", "parent";
resets = <&tegra_car 26>; resets = <&tegra_car 26>;
reset-names = "dc"; reset-names = "dc";
...@@ -144,10 +141,11 @@ sor@54540000 { ...@@ -144,10 +141,11 @@ sor@54540000 {
reg = <0x0 0x54540000 0x0 0x00040000>; reg = <0x0 0x54540000 0x0 0x00040000>;
interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&tegra_car TEGRA124_CLK_SOR0>, clocks = <&tegra_car TEGRA124_CLK_SOR0>,
<&tegra_car TEGRA124_CLK_SOR0_OUT>,
<&tegra_car TEGRA124_CLK_PLL_D_OUT0>, <&tegra_car TEGRA124_CLK_PLL_D_OUT0>,
<&tegra_car TEGRA124_CLK_PLL_DP>, <&tegra_car TEGRA124_CLK_PLL_DP>,
<&tegra_car TEGRA124_CLK_CLK_M>; <&tegra_car TEGRA124_CLK_CLK_M>;
clock-names = "sor", "parent", "dp", "safe"; clock-names = "sor", "out", "parent", "dp", "safe";
resets = <&tegra_car 182>; resets = <&tegra_car 182>;
reset-names = "sor"; reset-names = "sor";
status = "disabled"; status = "disabled";
...@@ -163,6 +161,11 @@ dpaux: dpaux@545c0000 { ...@@ -163,6 +161,11 @@ dpaux: dpaux@545c0000 {
resets = <&tegra_car 181>; resets = <&tegra_car 181>;
reset-names = "dpaux"; reset-names = "dpaux";
status = "disabled"; status = "disabled";
i2c-bus {
#address-cells = <1>;
#size-cells = <0>;
};
}; };
}; };
...@@ -607,7 +610,7 @@ mc: memory-controller@70019000 { ...@@ -607,7 +610,7 @@ mc: memory-controller@70019000 {
}; };
emc: external-memory-controller@7001b000 { emc: external-memory-controller@7001b000 {
compatible = "nvidia,tegra132-emc", "nvidia,tegra124-emc"; compatible = "nvidia,tegra132-emc";
reg = <0x0 0x7001b000 0x0 0x1000>; reg = <0x0 0x7001b000 0x0 0x1000>;
clocks = <&tegra_car TEGRA124_CLK_EMC>; clocks = <&tegra_car TEGRA124_CLK_EMC>;
clock-names = "emc"; clock-names = "emc";
...@@ -629,8 +632,6 @@ sata@70020000 { ...@@ -629,8 +632,6 @@ sata@70020000 {
<&tegra_car 123>, <&tegra_car 123>,
<&tegra_car 129>; <&tegra_car 129>;
reset-names = "sata", "sata-oob", "sata-cold"; reset-names = "sata", "sata-oob", "sata-cold";
phys = <&padctl TEGRA_XUSB_PADCTL_SATA>;
phy-names = "sata-phy";
status = "disabled"; status = "disabled";
}; };
...@@ -650,6 +651,41 @@ hda@70030000 { ...@@ -650,6 +651,41 @@ hda@70030000 {
status = "disabled"; status = "disabled";
}; };
usb@70090000 {
compatible = "nvidia,tegra132-xusb", "nvidia,tegra124-xusb";
reg = <0x0 0x70090000 0x0 0x8000>,
<0x0 0x70098000 0x0 0x1000>,
<0x0 0x70099000 0x0 0x1000>;
reg-names = "hcd", "fpci", "ipfs";
interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&tegra_car TEGRA124_CLK_XUSB_HOST>,
<&tegra_car TEGRA124_CLK_XUSB_HOST_SRC>,
<&tegra_car TEGRA124_CLK_XUSB_FALCON_SRC>,
<&tegra_car TEGRA124_CLK_XUSB_SS>,
<&tegra_car TEGRA124_CLK_XUSB_SS_SRC>,
<&tegra_car TEGRA124_CLK_XUSB_SS_DIV2>,
<&tegra_car TEGRA124_CLK_XUSB_HS_SRC>,
<&tegra_car TEGRA124_CLK_XUSB_FS_SRC>,
<&tegra_car TEGRA124_CLK_PLL_U_480M>,
<&tegra_car TEGRA124_CLK_CLK_M>,
<&tegra_car TEGRA124_CLK_PLL_E>;
clock-names = "xusb_host", "xusb_host_src",
"xusb_falcon_src", "xusb_ss",
"xusb_ss_src", "xusb_ss_div2",
"xusb_hs_src", "xusb_fs_src",
"pll_u_480m", "clk_m", "pll_e";
resets = <&tegra_car 89>, <&tegra_car 156>,
<&tegra_car 143>;
reset-names = "xusb_host", "xusb_ss", "xusb_src";
nvidia,xusb-padctl = <&padctl>;
status = "disabled";
};
padctl: padctl@7009f000 { padctl: padctl@7009f000 {
compatible = "nvidia,tegra132-xusb-padctl", compatible = "nvidia,tegra132-xusb-padctl",
"nvidia,tegra124-xusb-padctl"; "nvidia,tegra124-xusb-padctl";
...@@ -657,40 +693,130 @@ padctl: padctl@7009f000 { ...@@ -657,40 +693,130 @@ padctl: padctl@7009f000 {
resets = <&tegra_car 142>; resets = <&tegra_car 142>;
reset-names = "padctl"; reset-names = "padctl";
#phy-cells = <1>; pads {
usb2 {
status = "disabled";
lanes {
usb2-0 {
status = "disabled";
#phy-cells = <0>;
};
usb2-1 {
status = "disabled";
#phy-cells = <0>;
};
usb2-2 {
status = "disabled";
#phy-cells = <0>;
};
};
};
ulpi {
status = "disabled";
lanes {
ulpi-0 {
status = "disabled";
#phy-cells = <0>;
};
};
};
hsic {
status = "disabled";
phys { lanes {
hsic-0 {
status = "disabled";
#phy-cells = <0>;
};
hsic-1 {
status = "disabled";
#phy-cells = <0>;
};
};
};
pcie {
status = "disabled";
lanes {
pcie-0 { pcie-0 {
status = "disabled"; status = "disabled";
#phy-cells = <0>;
};
pcie-1 {
status = "disabled";
#phy-cells = <0>;
}; };
pcie-2 {
status = "disabled";
#phy-cells = <0>;
};
pcie-3 {
status = "disabled";
#phy-cells = <0>;
};
pcie-4 {
status = "disabled";
#phy-cells = <0>;
};
};
};
sata {
status = "disabled";
lanes {
sata-0 { sata-0 {
status = "disabled"; status = "disabled";
#phy-cells = <0>;
};
};
};
}; };
usb3-0 { ports {
usb2-0 {
status = "disabled"; status = "disabled";
}; };
usb3-1 { usb2-1 {
status = "disabled"; status = "disabled";
}; };
utmi-0 { usb2-2 {
status = "disabled"; status = "disabled";
}; };
utmi-1 { hsic-0 {
status = "disabled"; status = "disabled";
}; };
utmi-2 { hsic-1 {
status = "disabled";
};
usb3-0 {
status = "disabled";
};
usb3-1 {
status = "disabled"; status = "disabled";
}; };
}; };
}; };
sdhci@700b0000 { mmc@700b0000 {
compatible = "nvidia,tegra124-sdhci"; compatible = "nvidia,tegra124-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>;
...@@ -701,7 +827,7 @@ sdhci@700b0000 { ...@@ -701,7 +827,7 @@ sdhci@700b0000 {
status = "disabled"; status = "disabled";
}; };
sdhci@700b0200 { mmc@700b0200 {
compatible = "nvidia,tegra124-sdhci"; compatible = "nvidia,tegra124-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>;
...@@ -712,7 +838,7 @@ sdhci@700b0200 { ...@@ -712,7 +838,7 @@ sdhci@700b0200 {
status = "disabled"; status = "disabled";
}; };
sdhci@700b0400 { mmc@700b0400 {
compatible = "nvidia,tegra124-sdhci"; compatible = "nvidia,tegra124-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>;
...@@ -723,7 +849,7 @@ sdhci@700b0400 { ...@@ -723,7 +849,7 @@ sdhci@700b0400 {
status = "disabled"; status = "disabled";
}; };
sdhci@700b0600 { mmc@700b0600 {
compatible = "nvidia,tegra124-sdhci"; compatible = "nvidia,tegra124-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>;
...@@ -736,8 +862,8 @@ sdhci@700b0600 { ...@@ -736,8 +862,8 @@ sdhci@700b0600 {
soctherm: thermal-sensor@700e2000 { soctherm: thermal-sensor@700e2000 {
compatible = "nvidia,tegra132-soctherm"; compatible = "nvidia,tegra132-soctherm";
reg = <0x0 0x700e2000 0x0 0x600 /* 0: SOC_THERM reg_base */ reg = <0x0 0x700e2000 0x0 0x600>, /* 0: SOC_THERM reg_base */
0x0 0x70040000 0x0 0x200>; /* 2: CCROC reg_base */ <0x0 0x70040000 0x0 0x200>; /* 2: CCROC reg_base */
reg-names = "soctherm-reg", "ccroc-reg"; reg-names = "soctherm-reg", "ccroc-reg";
interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&tegra_car TEGRA124_CLK_TSENSOR>, clocks = <&tegra_car TEGRA124_CLK_TSENSOR>,
...@@ -992,6 +1118,7 @@ phy1: usb-phy@7d000000 { ...@@ -992,6 +1118,7 @@ phy1: usb-phy@7d000000 {
clock-names = "reg", "pll_u", "utmi-pads"; clock-names = "reg", "pll_u", "utmi-pads";
resets = <&tegra_car 22>, <&tegra_car 22>; resets = <&tegra_car 22>, <&tegra_car 22>;
reset-names = "usb", "utmi-pads"; reset-names = "usb", "utmi-pads";
#phy-cells = <0>;
nvidia,hssync-start-delay = <0>; nvidia,hssync-start-delay = <0>;
nvidia,idle-wait-delay = <17>; nvidia,idle-wait-delay = <17>;
nvidia,elastic-limit = <16>; nvidia,elastic-limit = <16>;
...@@ -1030,6 +1157,7 @@ phy2: usb-phy@7d004000 { ...@@ -1030,6 +1157,7 @@ phy2: usb-phy@7d004000 {
clock-names = "reg", "pll_u", "utmi-pads"; clock-names = "reg", "pll_u", "utmi-pads";
resets = <&tegra_car 58>, <&tegra_car 22>; resets = <&tegra_car 58>, <&tegra_car 22>;
reset-names = "usb", "utmi-pads"; reset-names = "usb", "utmi-pads";
#phy-cells = <0>;
nvidia,hssync-start-delay = <0>; nvidia,hssync-start-delay = <0>;
nvidia,idle-wait-delay = <17>; nvidia,idle-wait-delay = <17>;
nvidia,elastic-limit = <16>; nvidia,elastic-limit = <16>;
...@@ -1067,6 +1195,7 @@ phy3: usb-phy@7d008000 { ...@@ -1067,6 +1195,7 @@ phy3: usb-phy@7d008000 {
clock-names = "reg", "pll_u", "utmi-pads"; clock-names = "reg", "pll_u", "utmi-pads";
resets = <&tegra_car 59>, <&tegra_car 22>; resets = <&tegra_car 59>, <&tegra_car 22>;
reset-names = "usb", "utmi-pads"; reset-names = "usb", "utmi-pads";
#phy-cells = <0>;
nvidia,hssync-start-delay = <0>; nvidia,hssync-start-delay = <0>;
nvidia,idle-wait-delay = <17>; nvidia,idle-wait-delay = <17>;
nvidia,elastic-limit = <16>; nvidia,elastic-limit = <16>;
......
...@@ -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,17 +329,13 @@ volume-down { ...@@ -333,17 +329,13 @@ volume-down {
}; };
}; };
regulators {
vdd_sd: regulator@100 { vdd_sd: regulator@100 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <100>;
regulator-name = "SD_CARD_SW_PWR"; regulator-name = "SD_CARD_SW_PWR";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-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>;
...@@ -351,8 +343,6 @@ vdd_sd: regulator@100 { ...@@ -351,8 +343,6 @@ vdd_sd: regulator@100 {
vdd_hdmi: regulator@101 { vdd_hdmi: regulator@101 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <101>;
regulator-name = "VDD_HDMI_5V0"; regulator-name = "VDD_HDMI_5V0";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -365,8 +355,6 @@ vdd_hdmi: regulator@101 { ...@@ -365,8 +355,6 @@ vdd_hdmi: regulator@101 {
vdd_usb0: regulator@102 { vdd_usb0: regulator@102 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <102>;
regulator-name = "VDD_USB0"; regulator-name = "VDD_USB0";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -379,8 +367,6 @@ vdd_usb0: regulator@102 { ...@@ -379,8 +367,6 @@ vdd_usb0: regulator@102 {
vdd_usb1: regulator@103 { vdd_usb1: regulator@103 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <103>;
regulator-name = "VDD_USB1"; regulator-name = "VDD_USB1";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -390,5 +376,4 @@ vdd_usb1: regulator@103 { ...@@ -390,5 +376,4 @@ vdd_usb1: regulator@103 {
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,15 +392,8 @@ psci { ...@@ -390,15 +392,8 @@ psci {
method = "smc"; method = "smc";
}; };
regulators {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
gnd: regulator@0 { gnd: regulator@0 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <0>;
regulator-name = "GND"; regulator-name = "GND";
regulator-min-microvolt = <0>; regulator-min-microvolt = <0>;
regulator-max-microvolt = <0>; regulator-max-microvolt = <0>;
...@@ -408,8 +403,6 @@ gnd: regulator@0 { ...@@ -408,8 +403,6 @@ gnd: regulator@0 {
vdd_5v0_sys: regulator@1 { vdd_5v0_sys: regulator@1 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <1>;
regulator-name = "VDD_5V0_SYS"; regulator-name = "VDD_5V0_SYS";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -419,8 +412,6 @@ vdd_5v0_sys: regulator@1 { ...@@ -419,8 +412,6 @@ vdd_5v0_sys: regulator@1 {
vdd_1v8_ap: regulator@2 { vdd_1v8_ap: regulator@2 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <2>;
regulator-name = "VDD_1V8_AP"; regulator-name = "VDD_1V8_AP";
regulator-min-microvolt = <1800000>; regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>; regulator-max-microvolt = <1800000>;
...@@ -430,5 +421,4 @@ vdd_1v8_ap: regulator@2 { ...@@ -430,5 +421,4 @@ vdd_1v8_ap: regulator@2 {
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,15 +293,8 @@ temperature-sensor@4c { ...@@ -292,15 +293,8 @@ temperature-sensor@4c {
}; };
}; };
regulators {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
vdd_5v0_sys: regulator@0 { vdd_5v0_sys: regulator@0 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <0>;
regulator-name = "VIN_SYS_5V0"; regulator-name = "VIN_SYS_5V0";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -310,8 +304,6 @@ vdd_5v0_sys: regulator@0 { ...@@ -310,8 +304,6 @@ vdd_5v0_sys: regulator@0 {
vdd_hdmi: regulator@1 { vdd_hdmi: regulator@1 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <1>;
regulator-name = "VDD_5V0_HDMI_CON"; regulator-name = "VDD_5V0_HDMI_CON";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -321,8 +313,6 @@ vdd_hdmi: regulator@1 { ...@@ -321,8 +313,6 @@ vdd_hdmi: regulator@1 {
vdd_3v3_pcie: regulator@2 { vdd_3v3_pcie: regulator@2 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <2>;
regulator-name = "PEX_3V3"; regulator-name = "PEX_3V3";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
...@@ -333,8 +323,6 @@ vdd_3v3_pcie: regulator@2 { ...@@ -333,8 +323,6 @@ vdd_3v3_pcie: regulator@2 {
vdd_12v_pcie: regulator@3 { vdd_12v_pcie: regulator@3 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <3>;
regulator-name = "VDD_12V"; regulator-name = "VDD_12V";
regulator-min-microvolt = <1200000>; regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>; regulator-max-microvolt = <1200000>;
...@@ -344,13 +332,10 @@ vdd_12v_pcie: regulator@3 { ...@@ -344,13 +332,10 @@ vdd_12v_pcie: regulator@3 {
vdd_5v_sata: regulator@4 { vdd_5v_sata: regulator@4 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <4>;
regulator-name = "VDD_5V_SATA"; regulator-name = "VDD_5V_SATA";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
gpio = <&gpio TEGRA194_MAIN_GPIO(Z, 1) GPIO_ACTIVE_HIGH>; gpio = <&gpio TEGRA194_MAIN_GPIO(Z, 1) GPIO_ACTIVE_HIGH>;
enable-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 {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
clk32k_in: clock@0 { clk32k_in: clock@0 {
compatible = "fixed-clock"; compatible = "fixed-clock";
reg = <0>;
#clock-cells = <0>;
clock-frequency = <32768>; clock-frequency = <32768>;
}; #clock-cells = <0>;
}; };
cpus { cpus {
...@@ -342,10 +335,8 @@ psci { ...@@ -342,10 +335,8 @@ psci {
method = "smc"; method = "smc";
}; };
regulators {
vdd_gpu: regulator@100 { vdd_gpu: regulator@100 {
compatible = "pwm-regulator"; compatible = "pwm-regulator";
reg = <100>;
pwms = <&pwm 1 4880>; pwms = <&pwm 1 4880>;
regulator-name = "VDD_GPU"; regulator-name = "VDD_GPU";
regulator-min-microvolt = <710000>; regulator-min-microvolt = <710000>;
...@@ -355,5 +346,4 @@ vdd_gpu: regulator@100 { ...@@ -355,5 +346,4 @@ vdd_gpu: regulator@100 {
regulator-enable-ramp-delay = <2000>; regulator-enable-ramp-delay = <2000>;
regulator-settling-time-us = <160>; 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 {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
clk32k_in: clock@0 { clk32k_in: clock@0 {
compatible = "fixed-clock"; compatible = "fixed-clock";
reg = <0>;
#clock-cells = <0>;
clock-frequency = <32768>; clock-frequency = <32768>;
}; #clock-cells = <0>;
}; };
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,14 +1531,32 @@ usb@700d0000 { ...@@ -1523,14 +1531,32 @@ usb@700d0000 {
hvdd-usb-supply = <&vdd_1v8>; hvdd-usb-supply = <&vdd_1v8>;
}; };
regulators { gpio-keys {
compatible = "simple-bus"; compatible = "gpio-keys";
#address-cells = <1>; label = "gpio-keys";
#size-cells = <0>;
power {
label = "Power";
gpios = <&gpio TEGRA_GPIO(X, 5) GPIO_ACTIVE_LOW>;
linux,code = <KEY_POWER>;
wakeup-source;
};
volume_down {
label = "Volume Down";
gpios = <&gpio TEGRA_GPIO(Y, 0) GPIO_ACTIVE_LOW>;
linux,code = <KEY_VOLUMEDOWN>;
};
volume_up {
label = "Volume Up";
gpios = <&gpio TEGRA_GPIO(X, 6) GPIO_ACTIVE_LOW>;
linux,code = <KEY_VOLUMEUP>;
};
};
vdd_sys_mux: regulator@0 { vdd_sys_mux: regulator@0 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <0>;
regulator-name = "VDD_SYS_MUX"; regulator-name = "VDD_SYS_MUX";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -1540,7 +1566,6 @@ vdd_sys_mux: regulator@0 { ...@@ -1540,7 +1566,6 @@ vdd_sys_mux: regulator@0 {
vdd_5v0_sys: regulator@1 { vdd_5v0_sys: regulator@1 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <1>;
regulator-name = "VDD_5V0_SYS"; regulator-name = "VDD_5V0_SYS";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -1553,7 +1578,6 @@ vdd_5v0_sys: regulator@1 { ...@@ -1553,7 +1578,6 @@ vdd_5v0_sys: regulator@1 {
vdd_3v3_sys: regulator@2 { vdd_3v3_sys: regulator@2 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <2>;
regulator-name = "VDD_3V3_SYS"; regulator-name = "VDD_3V3_SYS";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
...@@ -1569,7 +1593,6 @@ vdd_3v3_sys: regulator@2 { ...@@ -1569,7 +1593,6 @@ vdd_3v3_sys: regulator@2 {
vdd_5v0_io: regulator@3 { vdd_5v0_io: regulator@3 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <3>;
regulator-name = "VDD_5V0_IO_SYS"; regulator-name = "VDD_5V0_IO_SYS";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -1579,7 +1602,6 @@ vdd_5v0_io: regulator@3 { ...@@ -1579,7 +1602,6 @@ vdd_5v0_io: regulator@3 {
vdd_3v3_sd: regulator@4 { vdd_3v3_sd: regulator@4 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <4>;
regulator-name = "VDD_3V3_SD"; regulator-name = "VDD_3V3_SD";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
...@@ -1593,7 +1615,6 @@ vdd_3v3_sd: regulator@4 { ...@@ -1593,7 +1615,6 @@ vdd_3v3_sd: regulator@4 {
vdd_dsi_csi: regulator@5 { vdd_dsi_csi: regulator@5 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <5>;
regulator-name = "AVDD_DSI_CSI_1V2"; regulator-name = "AVDD_DSI_CSI_1V2";
regulator-min-microvolt = <1200000>; regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <1200000>; regulator-max-microvolt = <1200000>;
...@@ -1602,7 +1623,6 @@ vdd_dsi_csi: regulator@5 { ...@@ -1602,7 +1623,6 @@ vdd_dsi_csi: regulator@5 {
vdd_3v3_dis: regulator@6 { vdd_3v3_dis: regulator@6 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <6>;
regulator-name = "VDD_DIS_3V3_LCD"; regulator-name = "VDD_DIS_3V3_LCD";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
...@@ -1614,7 +1634,6 @@ vdd_3v3_dis: regulator@6 { ...@@ -1614,7 +1634,6 @@ vdd_3v3_dis: regulator@6 {
vdd_1v8_dis: regulator@7 { vdd_1v8_dis: regulator@7 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <7>;
regulator-name = "VDD_LCD_1V8_DIS"; regulator-name = "VDD_LCD_1V8_DIS";
regulator-min-microvolt = <1800000>; regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>; regulator-max-microvolt = <1800000>;
...@@ -1626,7 +1645,6 @@ vdd_1v8_dis: regulator@7 { ...@@ -1626,7 +1645,6 @@ vdd_1v8_dis: regulator@7 {
vdd_5v0_rtl: regulator@8 { vdd_5v0_rtl: regulator@8 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <8>;
regulator-name = "RTL_5V"; regulator-name = "RTL_5V";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -1637,7 +1655,6 @@ vdd_5v0_rtl: regulator@8 { ...@@ -1637,7 +1655,6 @@ vdd_5v0_rtl: regulator@8 {
vdd_usb_vbus: regulator@9 { vdd_usb_vbus: regulator@9 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <9>;
regulator-name = "USB_VBUS_EN1"; regulator-name = "USB_VBUS_EN1";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -1648,7 +1665,6 @@ vdd_usb_vbus: regulator@9 { ...@@ -1648,7 +1665,6 @@ vdd_usb_vbus: regulator@9 {
vdd_usb_vbus_otg: regulator@11 { vdd_usb_vbus_otg: regulator@11 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <9>;
regulator-name = "USB_VBUS_EN0"; regulator-name = "USB_VBUS_EN0";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -1659,7 +1675,6 @@ vdd_usb_vbus_otg: regulator@11 { ...@@ -1659,7 +1675,6 @@ vdd_usb_vbus_otg: regulator@11 {
vdd_hdmi: regulator@10 { vdd_hdmi: regulator@10 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <10>;
regulator-name = "VDD_HDMI_5V0"; regulator-name = "VDD_HDMI_5V0";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -1667,29 +1682,34 @@ vdd_hdmi: regulator@10 { ...@@ -1667,29 +1682,34 @@ vdd_hdmi: regulator@10 {
enable-active-high; enable-active-high;
vin-supply = <&vdd_5v0_sys>; vin-supply = <&vdd_5v0_sys>;
}; };
};
gpio-keys { vdd_cam_1v2: regulator@11 {
compatible = "gpio-keys"; compatible = "regulator-fixed";
label = "gpio-keys"; regulator-name = "vdd-cam-1v2";
regulator-min-microvolt = <1200000>;
power { regulator-max-microvolt = <1200000>;
label = "Power"; gpio = <&exp2 10 GPIO_ACTIVE_HIGH>;
gpios = <&gpio TEGRA_GPIO(X, 5) GPIO_ACTIVE_LOW>; enable-active-high;
linux,code = <KEY_POWER>; vin-supply = <&vdd_3v3_sys>;
wakeup-source;
}; };
volume_down { vdd_cam_2v8: regulator@12 {
label = "Volume Down"; compatible = "regulator-fixed";
gpios = <&gpio TEGRA_GPIO(Y, 0) GPIO_ACTIVE_LOW>; regulator-name = "vdd-cam-2v8";
linux,code = <KEY_VOLUMEDOWN>; regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
gpio = <&exp1 13 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_3v3_sys>;
}; };
volume_up { vdd_cam_1v8: regulator@13 {
label = "Volume Up"; compatible = "regulator-fixed";
gpios = <&gpio TEGRA_GPIO(X, 6) GPIO_ACTIVE_LOW>; regulator-name = "vdd-cam-1v8";
linux,code = <KEY_VOLUMEUP>; regulator-min-microvolt = <1800000>;
}; regulator-max-microvolt = <1800000>;
gpio = <&exp2 9 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&vdd_3v3_sys>;
}; };
}; };
...@@ -16,7 +16,7 @@ chosen { ...@@ -16,7 +16,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>;
}; };
...@@ -1328,7 +1328,7 @@ i2c@7000d000 { ...@@ -1328,7 +1328,7 @@ i2c@7000d000 {
status = "okay"; status = "okay";
clock-frequency = <400000>; clock-frequency = <400000>;
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>;
...@@ -1343,12 +1343,12 @@ max77620: max77620@3c { ...@@ -1343,12 +1343,12 @@ max77620: max77620@3c {
pinctrl-0 = <&max77620_default>; pinctrl-0 = <&max77620_default>;
max77620_default: pinmux@0 { max77620_default: pinmux@0 {
pin_gpio0 { gpio0 {
pins = "gpio0"; pins = "gpio0";
function = "gpio"; function = "gpio";
}; };
pin_gpio1 { gpio1 {
pins = "gpio1"; pins = "gpio1";
function = "fps-out"; function = "fps-out";
drive-push-pull = <1>; drive-push-pull = <1>;
...@@ -1357,37 +1357,37 @@ pin_gpio1 { ...@@ -1357,37 +1357,37 @@ pin_gpio1 {
maxim,active-fps-power-down-slot = <0>; maxim,active-fps-power-down-slot = <0>;
}; };
pin_gpio2_3 { gpio2 {
pins = "gpio2", "gpio3"; pins = "gpio2";
function = "fps-out"; function = "fps-out";
drive-open-drain = <1>; drive-open-drain = <1>;
maxim,active-fps-source = <MAX77620_FPS_SRC_0>; maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
}; };
pin_gpio4 { gpio3 {
pins = "gpio3";
function = "fps-out";
drive-open-drain = <1>;
maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
};
gpio4 {
pins = "gpio4"; pins = "gpio4";
function = "32k-out1"; function = "32k-out1";
}; };
pin_gpio5_6_7 { gpio5_6_7 {
pins = "gpio5", "gpio6", "gpio7"; pins = "gpio5", "gpio6", "gpio7";
function = "gpio"; function = "gpio";
drive-push-pull = <1>; drive-push-pull = <1>;
}; };
pin_gpio2 {
maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
}; };
pin_gpio3 { gpio@0 {
maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
};
};
spmic-default-output-high {
gpio-hog; gpio-hog;
output-high; output-high;
gpios = <2 GPIO_ACTIVE_HIGH 7 GPIO_ACTIVE_HIGH>; gpios = <2 GPIO_ACTIVE_HIGH>,
<7 GPIO_ACTIVE_HIGH>;
}; };
fps { fps {
...@@ -1580,23 +1580,16 @@ pmc@7000e400 { ...@@ -1580,23 +1580,16 @@ pmc@7000e400 {
status = "okay"; status = "okay";
}; };
sdhci@700b0600 { mmc@700b0600 {
bus-width = <8>; bus-width = <8>;
non-removable; non-removable;
status = "okay"; status = "okay";
}; };
clocks {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
clk32k_in: clock@0 { clk32k_in: clock@0 {
compatible = "fixed-clock"; compatible = "fixed-clock";
reg = <0>;
#clock-cells = <0>;
clock-frequency = <32768>; clock-frequency = <32768>;
}; #clock-cells = <0>;
}; };
gpio-keys { gpio-keys {
...@@ -1642,15 +1635,8 @@ psci { ...@@ -1642,15 +1635,8 @@ psci {
method = "smc"; method = "smc";
}; };
regulators {
compatible = "simple-bus";
device_type = "fixed-regulators";
#address-cells = <1>;
#size-cells = <0>;
battery_reg: regulator@0 { battery_reg: regulator@0 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <0>;
regulator-name = "vdd-ac-bat"; regulator-name = "vdd-ac-bat";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -1659,20 +1645,18 @@ battery_reg: regulator@0 { ...@@ -1659,20 +1645,18 @@ battery_reg: regulator@0 {
vdd_3v3: regulator@1 { vdd_3v3: regulator@1 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <1>;
regulator-name = "vdd-3v3"; regulator-name = "vdd-3v3";
regulator-enable-ramp-delay = <160>; regulator-enable-ramp-delay = <160>;
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
regulator-always-on; regulator-always-on;
gpio = <&max77620 3 GPIO_ACTIVE_HIGH>; gpio = <&pmic 3 GPIO_ACTIVE_HIGH>;
enable-active-high; enable-active-high;
}; };
max77620_gpio7: regulator@2 { max77620_gpio7: regulator@2 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <2>;
regulator-name = "max77620-gpio7"; regulator-name = "max77620-gpio7";
regulator-enable-ramp-delay = <240>; regulator-enable-ramp-delay = <240>;
regulator-min-microvolt = <1200000>; regulator-min-microvolt = <1200000>;
...@@ -1681,13 +1665,12 @@ max77620_gpio7: regulator@2 { ...@@ -1681,13 +1665,12 @@ max77620_gpio7: regulator@2 {
regulator-always-on; regulator-always-on;
regulator-boot-on; regulator-boot-on;
gpio = <&max77620 7 GPIO_ACTIVE_HIGH>; gpio = <&pmic 7 GPIO_ACTIVE_HIGH>;
enable-active-high; enable-active-high;
}; };
lcd_bl_en: regulator@3 { lcd_bl_en: regulator@3 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <3>;
regulator-name = "lcd-bl-en"; regulator-name = "lcd-bl-en";
regulator-min-microvolt = <1800000>; regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>; regulator-max-microvolt = <1800000>;
...@@ -1699,7 +1682,6 @@ lcd_bl_en: regulator@3 { ...@@ -1699,7 +1682,6 @@ lcd_bl_en: regulator@3 {
en_vdd_sd: regulator@4 { en_vdd_sd: regulator@4 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <4>;
regulator-name = "en-vdd-sd"; regulator-name = "en-vdd-sd";
regulator-enable-ramp-delay = <472>; regulator-enable-ramp-delay = <472>;
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
...@@ -1712,7 +1694,6 @@ en_vdd_sd: regulator@4 { ...@@ -1712,7 +1694,6 @@ en_vdd_sd: regulator@4 {
en_vdd_cam: regulator@5 { en_vdd_cam: regulator@5 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <5>;
regulator-name = "en-vdd-cam"; regulator-name = "en-vdd-cam";
regulator-min-microvolt = <1800000>; regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>; regulator-max-microvolt = <1800000>;
...@@ -1723,20 +1704,18 @@ en_vdd_cam: regulator@5 { ...@@ -1723,20 +1704,18 @@ en_vdd_cam: regulator@5 {
vdd_sys_boost: regulator@6 { vdd_sys_boost: regulator@6 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <6>;
regulator-name = "vdd-sys-boost"; regulator-name = "vdd-sys-boost";
regulator-enable-ramp-delay = <3090>; regulator-enable-ramp-delay = <3090>;
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
regulator-always-on; regulator-always-on;
gpio = <&max77620 1 GPIO_ACTIVE_HIGH>; gpio = <&pmic 1 GPIO_ACTIVE_HIGH>;
enable-active-high; enable-active-high;
}; };
vdd_hdmi: regulator@7 { vdd_hdmi: regulator@7 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <7>;
regulator-name = "vdd-hdmi"; regulator-name = "vdd-hdmi";
regulator-enable-ramp-delay = <468>; regulator-enable-ramp-delay = <468>;
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
...@@ -1750,7 +1729,6 @@ vdd_hdmi: regulator@7 { ...@@ -1750,7 +1729,6 @@ vdd_hdmi: regulator@7 {
en_vdd_cpu_fixed: regulator@8 { en_vdd_cpu_fixed: regulator@8 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <8>;
regulator-name = "vdd-cpu-fixed"; regulator-name = "vdd-cpu-fixed";
regulator-min-microvolt = <1000000>; regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1000000>; regulator-max-microvolt = <1000000>;
...@@ -1758,7 +1736,6 @@ en_vdd_cpu_fixed: regulator@8 { ...@@ -1758,7 +1736,6 @@ en_vdd_cpu_fixed: regulator@8 {
vdd_aux_3v3: regulator@9 { vdd_aux_3v3: regulator@9 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <9>;
regulator-name = "aux-3v3"; regulator-name = "aux-3v3";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
...@@ -1766,7 +1743,6 @@ vdd_aux_3v3: regulator@9 { ...@@ -1766,7 +1743,6 @@ vdd_aux_3v3: regulator@9 {
vdd_snsr_pm: regulator@10 { vdd_snsr_pm: regulator@10 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <10>;
regulator-name = "snsr_pm"; regulator-name = "snsr_pm";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
...@@ -1776,7 +1752,6 @@ vdd_snsr_pm: regulator@10 { ...@@ -1776,7 +1752,6 @@ vdd_snsr_pm: regulator@10 {
vdd_usb_5v0: regulator@11 { vdd_usb_5v0: regulator@11 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <11>;
status = "disabled"; status = "disabled";
regulator-name = "vdd-usb-5v0"; regulator-name = "vdd-usb-5v0";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
...@@ -1788,7 +1763,6 @@ vdd_usb_5v0: regulator@11 { ...@@ -1788,7 +1763,6 @@ vdd_usb_5v0: regulator@11 {
vdd_cdc_1v2_aud: regulator@101 { vdd_cdc_1v2_aud: regulator@101 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <101>;
status = "disabled"; status = "disabled";
regulator-name = "vdd_cdc_1v2_aud"; regulator-name = "vdd_cdc_1v2_aud";
regulator-min-microvolt = <1200000>; regulator-min-microvolt = <1200000>;
...@@ -1800,7 +1774,6 @@ vdd_cdc_1v2_aud: regulator@101 { ...@@ -1800,7 +1774,6 @@ vdd_cdc_1v2_aud: regulator@101 {
vdd_disp_3v0: regulator@12 { vdd_disp_3v0: regulator@12 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <12>;
regulator-name = "vdd-disp-3v0"; regulator-name = "vdd-disp-3v0";
regulator-enable-ramp-delay = <232>; regulator-enable-ramp-delay = <232>;
regulator-min-microvolt = <3000000>; regulator-min-microvolt = <3000000>;
...@@ -1813,7 +1786,6 @@ vdd_disp_3v0: regulator@12 { ...@@ -1813,7 +1786,6 @@ vdd_disp_3v0: regulator@12 {
vdd_fan: regulator@13 { vdd_fan: regulator@13 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <13>;
regulator-name = "vdd-fan"; regulator-name = "vdd-fan";
regulator-enable-ramp-delay = <284>; regulator-enable-ramp-delay = <284>;
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
...@@ -1825,7 +1797,6 @@ vdd_fan: regulator@13 { ...@@ -1825,7 +1797,6 @@ vdd_fan: regulator@13 {
usb_vbus1: regulator@14 { usb_vbus1: regulator@14 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <14>;
regulator-name = "usb-vbus1"; regulator-name = "usb-vbus1";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -1837,7 +1808,6 @@ usb_vbus1: regulator@14 { ...@@ -1837,7 +1808,6 @@ usb_vbus1: regulator@14 {
usb_vbus2: regulator@15 { usb_vbus2: regulator@15 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <15>;
regulator-name = "usb-vbus2"; regulator-name = "usb-vbus2";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
...@@ -1849,7 +1819,6 @@ usb_vbus2: regulator@15 { ...@@ -1849,7 +1819,6 @@ usb_vbus2: regulator@15 {
vdd_3v3_eth: regulator@16 { vdd_3v3_eth: regulator@16 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <16>;
regulator-name = "vdd-3v3-eth-a02"; regulator-name = "vdd-3v3-eth-a02";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
...@@ -1860,5 +1829,4 @@ vdd_3v3_eth: regulator@16 { ...@@ -1860,5 +1829,4 @@ vdd_3v3_eth: regulator@16 {
enable-active-high; enable-active-high;
gpio-open-drain; gpio-open-drain;
}; };
};
}; };
...@@ -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,14 +539,14 @@ ports { ...@@ -513,14 +539,14 @@ 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";
nvidia,cf = <6>;
nvidia,ci = <0>;
nvidia,cg = <2>;
nvidia,droop-ctrl = <0x00000f00>;
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 { clk32k_in: clock@0 {
compatible = "fixed-clock"; compatible = "fixed-clock";
reg = <0>;
#clock-cells = <0>;
clock-frequency = <32768>; clock-frequency = <32768>;
}; #clock-cells = <0>;
}; };
cpus { cpus {
...@@ -698,14 +738,8 @@ psci { ...@@ -698,14 +738,8 @@ psci {
method = "smc"; method = "smc";
}; };
regulators {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
vdd_5v0_sys: regulator@0 { vdd_5v0_sys: regulator@0 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <0>;
regulator-name = "VDD_5V0_SYS"; regulator-name = "VDD_5V0_SYS";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
...@@ -716,7 +750,7 @@ vdd_5v0_sys: regulator@0 { ...@@ -716,7 +750,7 @@ vdd_5v0_sys: regulator@0 {
vdd_3v3_sys: regulator@1 { vdd_3v3_sys: regulator@1 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <1>;
regulator-name = "VDD_3V3_SYS"; regulator-name = "VDD_3V3_SYS";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
...@@ -733,7 +767,6 @@ vdd_3v3_sys: regulator@1 { ...@@ -733,7 +767,6 @@ vdd_3v3_sys: regulator@1 {
vdd_3v3_sd: regulator@2 { vdd_3v3_sd: regulator@2 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <2>;
regulator-name = "VDD_3V3_SD"; regulator-name = "VDD_3V3_SD";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
...@@ -747,7 +780,6 @@ vdd_3v3_sd: regulator@2 { ...@@ -747,7 +780,6 @@ vdd_3v3_sd: regulator@2 {
vdd_hdmi: regulator@3 { vdd_hdmi: regulator@3 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <3>;
regulator-name = "VDD_HDMI_5V0"; regulator-name = "VDD_HDMI_5V0";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
...@@ -758,7 +790,6 @@ vdd_hdmi: regulator@3 { ...@@ -758,7 +790,6 @@ vdd_hdmi: regulator@3 {
vdd_hub_3v3: regulator@4 { vdd_hub_3v3: regulator@4 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <4>;
regulator-name = "VDD_HUB_3V3"; regulator-name = "VDD_HUB_3V3";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
...@@ -772,7 +803,6 @@ vdd_hub_3v3: regulator@4 { ...@@ -772,7 +803,6 @@ vdd_hub_3v3: regulator@4 {
vdd_cpu: regulator@5 { vdd_cpu: regulator@5 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <5>;
regulator-name = "VDD_CPU"; regulator-name = "VDD_CPU";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
...@@ -788,21 +818,21 @@ vdd_cpu: regulator@5 { ...@@ -788,21 +818,21 @@ vdd_cpu: regulator@5 {
vdd_gpu: regulator@6 { vdd_gpu: regulator@6 {
compatible = "pwm-regulator"; compatible = "pwm-regulator";
reg = <6>;
pwms = <&pwm 1 4880>; pwms = <&pwm 1 4880>;
regulator-name = "VDD_GPU"; regulator-name = "VDD_GPU";
regulator-min-microvolt = <710000>; regulator-min-microvolt = <710000>;
regulator-max-microvolt = <1320000>; regulator-max-microvolt = <1320000>;
regulator-ramp-delay = <80>; regulator-ramp-delay = <80>;
regulator-enable-ramp-delay = <2000>; regulator-enable-ramp-delay = <2000>;
regulator-settling-time-us = <160>; regulator-settling-time-us = <160>;
enable-gpios = <&pmic 6 GPIO_ACTIVE_HIGH>; enable-gpios = <&pmic 6 GPIO_ACTIVE_HIGH>;
vin-supply = <&vdd_5v0_sys>; vin-supply = <&vdd_5v0_sys>;
}; };
avdd_io_edp_1v05: regulator@7 { avdd_io_edp_1v05: regulator@7 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <7>;
regulator-name = "AVDD_IO_EDP_1V05"; regulator-name = "AVDD_IO_EDP_1V05";
regulator-min-microvolt = <1050000>; regulator-min-microvolt = <1050000>;
...@@ -813,5 +843,4 @@ avdd_io_edp_1v05: regulator@7 { ...@@ -813,5 +843,4 @@ avdd_io_edp_1v05: regulator@7 {
vin-supply = <&avdd_1v05_pll>; 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 {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
clk32k_in: clock@0 { clk32k_in: clock@0 {
compatible = "fixed-clock"; compatible = "fixed-clock";
reg = <0>;
#clock-cells = <0>;
clock-frequency = <32768>; clock-frequency = <32768>;
}; #clock-cells = <0>;
}; };
cpus { cpus {
...@@ -1815,15 +1807,8 @@ psci { ...@@ -1815,15 +1807,8 @@ psci {
method = "smc"; method = "smc";
}; };
regulators {
compatible = "simple-bus";
device_type = "fixed-regulators";
#address-cells = <1>;
#size-cells = <0>;
ppvar_sys: regulator@0 { ppvar_sys: regulator@0 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <0>;
regulator-name = "PPVAR_SYS"; regulator-name = "PPVAR_SYS";
regulator-min-microvolt = <4400000>; regulator-min-microvolt = <4400000>;
regulator-max-microvolt = <4400000>; regulator-max-microvolt = <4400000>;
...@@ -1832,7 +1817,6 @@ ppvar_sys: regulator@0 { ...@@ -1832,7 +1817,6 @@ ppvar_sys: regulator@0 {
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>;
...@@ -1843,7 +1827,6 @@ pplcd_vdd: regulator@1 { ...@@ -1843,7 +1827,6 @@ pplcd_vdd: regulator@1 {
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>;
...@@ -1852,7 +1835,6 @@ pp3000_always: regulator@2 { ...@@ -1852,7 +1835,6 @@ pp3000_always: regulator@2 {
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>;
...@@ -1863,7 +1845,6 @@ pp3300: regulator@3 { ...@@ -1863,7 +1845,6 @@ pp3300: regulator@3 {
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>;
...@@ -1872,7 +1853,6 @@ pp5000: regulator@4 { ...@@ -1872,7 +1853,6 @@ pp5000: regulator@4 {
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>;
...@@ -1883,7 +1863,6 @@ pp1800_lcdio: regulator@5 { ...@@ -1883,7 +1863,6 @@ pp1800_lcdio: regulator@5 {
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>;
...@@ -1893,10 +1872,8 @@ pp1800_cam: regulator@6 { ...@@ -1893,10 +1872,8 @@ pp1800_cam: regulator@6 {
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