]> rtime.felk.cvut.cz Git - sojka/nv-tegra/linux-3.10.git/commitdiff
ARM64: t210: add support for t186-interposer
authorLaxman Dewangan <ldewangan@nvidia.com>
Thu, 23 Jul 2015 12:33:25 +0000 (18:03 +0530)
committerLaxman Dewangan <ldewangan@nvidia.com>
Sun, 26 Jul 2015 14:02:27 +0000 (07:02 -0700)
Add base DTS for the t186-interposer.
Interposer are:
P3310-1000-a00 + P2597
E3301-1000-a00 + P2597

Also add the t186-interposer as one of machine for t210
ref platforms.

Change-Id: Iab3c2fda5292de5f6dc395100a64fde4e0e2d316
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
(cherry picked from commit 94e3652096cc4819939ade258a529a92c0c867ef)
Reviewed-on: http://git-master/r/774796
GVS: Gerrit_Virtual_Submit

arch/arm64/boot/dts/Makefile
arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-fixed-e3301-1000-a00-00.dtsi [new file with mode: 0644]
arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-fixed-p3310-1000-a00-00.dtsi [new file with mode: 0644]
arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-pmic-e3301-1000-a00-00.dtsi [new file with mode: 0644]
arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-pmic-p3310-1000-a00-00.dtsi [new file with mode: 0644]
arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-power-tree-e3301-1000-a00-00.dtsi [new file with mode: 0644]
arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-power-tree-p3310-1000-a00-00.dtsi [new file with mode: 0644]
arch/arm64/boot/dts/tegra210-t18x-interposer-e3301-1000-a00-00.dts [new file with mode: 0644]
arch/arm64/boot/dts/tegra210-t18x-interposer-e3301-p3310-common.dtsi [new file with mode: 0644]
arch/arm64/boot/dts/tegra210-t18x-interposer-p3310-1000-a00-00.dts [new file with mode: 0644]
arch/arm64/mach-tegra/board-t210ref.c

index bbe7eb87687edbf465c9c10c88fab3e1d5f3bd94..4468e696837a73ee9b03a16916643d61e36eee4c 100644 (file)
@@ -74,6 +74,8 @@ dtb-$(CONFIG_ARCH_TEGRA_21x_SOC) += tegra210-hawkeye-p2290-3306-a02-00.dts
 dtb-$(CONFIG_ARCH_TEGRA_21x_SOC) += tegra210-hawkeye-ffpb-e2295-a00-00.dtb
 dtb-$(CONFIG_ARCH_TEGRA_21x_SOC) += tegra210-odin-fp-01-01.dtb
 dtb-$(CONFIG_ARCH_TEGRA_21x_SOC) += tegra210-odin-fp-02-00.dtb
+dtb-$(CONFIG_ARCH_TEGRA_21x_SOC) += tegra210-t18x-interposer-p3310-1000-a00-00.dtb
+dtb-$(CONFIG_ARCH_TEGRA_21x_SOC) += tegra210-t18x-interposer-e3301-1000-a00-00.dtb
 dtb-$(CONFIG_ARCH_TEGRA_18x_SOC) += tegra186-sim-cl34324618.dtb
 dtb-$(CONFIG_ARCH_TEGRA_18x_SOC) += tegra186-fpga-cl34324618.dtb
 dtb-$(CONFIG_ARCH_TEGRA_18x_SOC) += tegra186-fpga-cl34563539.dtb
diff --git a/arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-fixed-e3301-1000-a00-00.dtsi b/arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-fixed-e3301-1000-a00-00.dtsi
new file mode 100644 (file)
index 0000000..e864e2b
--- /dev/null
@@ -0,0 +1,355 @@
+/*
+ * Copyright (c) 2014, NVIDIA CORPORATION.  All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+ */
+
+#include <dt-bindings/gpio/tegra-gpio.h>
+
+/ {
+       i2c@7000c400 {
+              tca9539_74: tca9539@74 {
+                       compatible = "ti,tca9539";
+                       gpio-controller;
+                       #gpio-cells = <2>;
+                       reg = <0x74>;
+                       interrupt-parent = <&gpio>;
+                       interrupts = <TEGRA_GPIO(L, 1) 0x0>;
+                       #interrupt-cells = <2>;
+                       interrupt-controller;
+               };
+
+               tca9539_77: tca9539@77 {
+                       compatible = "ti,tca9539";
+                       gpio-controller;
+                       #gpio-cells = <2>;
+                       reg = <0x77>;
+                       interrupt-parent = <&gpio>;
+                       interrupts = <TEGRA_GPIO(Z, 2) 0x0>;
+                       #interrupt-cells = <2>;
+                       interrupt-controller;
+               };
+       };
+
+       regulators {
+               compatible = "simple-bus";
+               device_type = "fixed-regulators";
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               battery_reg: regulator@0 {
+                       compatible = "regulator-fixed";
+                       reg = <0>;
+                       regulator-name = "vdd-ac-bat";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       regulator-always-on;
+               };
+
+               vdd_3v3: regulator@1 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <1>;
+                       regulator-name = "vdd-3v3";
+                       regulator-min-microvolt = <3300000>;
+                       regulator-max-microvolt = <3300000>;
+                       regulator-always-on;
+                       gpio = <&max77620 3 0>;
+                       enable-active-high;
+                       consumers {
+                               c1 {
+                                       regulator-consumer-supply = "avdd_usb";
+                                       regulator-consumer-device = "tegra-ehci.0";
+                               };
+                               c2 {
+                                       regulator-consumer-supply = "avdd_usb";
+                                       regulator-consumer-device = "tegra-ehci.1";
+                               };
+                               c3 {
+                                       regulator-consumer-supply = "avdd_usb";
+                                       regulator-consumer-device = "tegra-ehci.2";
+                               };
+                               c5 {
+                                       regulator-consumer-supply = "vdd";
+                                       regulator-consumer-device = "1-004d";
+                               };
+                       };
+               };
+
+               max77620_gpio7: regulator@2 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <2>;
+                       regulator-name = "max77620-gpio7";
+                       regulator-min-microvolt = <1050000>;
+                       regulator-max-microvolt = <1050000>;
+                       vin-supply = <&max77620_ldo7>;
+                       regulator-boot-on;
+                       gpio = <&max77620 7 0>;
+                       enable-active-high;
+               };
+
+               lcd_bl_en: regulator@3 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <3>;
+                       regulator-name = "lcd-bl-en";
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       regulator-boot-on;
+                       gpio = <&gpio TEGRA_GPIO(V, 1) 0>;
+                       enable-active-high;
+               };
+
+               en_vdd_sd: regulator@4 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <4>;
+                       regulator-name = "en-vdd-sd";
+                       regulator-min-microvolt = <3300000>;
+                       regulator-max-microvolt = <3300000>;
+                       gpio = <&gpio TEGRA_GPIO(Z, 3) 0>;
+                       enable-active-high;
+                       vin-supply = <&vdd_3v3>;
+               };
+
+               en_vdd_cam: regulator@5 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <5>;
+                       regulator-name = "en-vdd-cam";
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       gpio = <&tca9539_77 9 1>;
+                       enable-active-high;
+                       consumers {
+                               c1 {
+                                       regulator-consumer-supply = "vif";
+                               };
+                       };
+               };
+
+               vdd_sys_boost: regulator@6 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <6>;
+                       regulator-name = "vdd-sys-boost";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       regulator-always-on;
+                       gpio = <&max77620 1 0>;
+                       enable-active-high;
+               };
+
+               vdd_hdmi: regulator@7 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <7>;
+                       regulator-name = "vdd-hdmi";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       gpio = <&tca9539_74 12 1>;
+                       vin-supply = <&vdd_3v3>;
+                       enable-active-high;
+               };
+
+               en_vdd_cpu_fixed: regulator@8 {
+                       compatible = "regulator-fixed";
+                       reg = <8>;
+                       regulator-name = "vdd-cpu-fixed";
+                       regulator-min-microvolt = <1000000>;
+                       regulator-max-microvolt = <1000000>;
+               };
+
+               vdd_aux_3v3: regulator@9 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <9>;
+                       regulator-name = "aux-3v3";
+                       regulator-min-microvolt = <3300000>;
+                       regulator-max-microvolt = <3300000>;
+               };
+
+               vdd_snsr_pm: regulator@10 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <10>;
+                       regulator-name = "snsr_pm";
+                       enable-active-high;
+                       regulator-min-microvolt = <3300000>;
+                       regulator-max-microvolt = <3300000>;
+               };
+
+               vdd_usb_5v0: regulator@11 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <11>;
+                       status = "disabled";
+                       regulator-name = "vdd-usb-5v0";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       vin-supply = <&vdd_3v3>;
+                       regulator-always-on;
+                       enable-active-high;
+                       consumers {
+                               c0 {
+                                       regulator-consumer-supply = "usb_vbus";
+                                       regulator-consumer-device = "tegra-ehci.1";
+                               };
+                               c1 {
+                                       regulator-consumer-supply = "usb_vbus";
+                                       regulator-consumer-device = "tegra-ehci.2";
+                               };
+                       };
+               };
+               vdd_disp_3v0: regulator@12 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <12>;
+                       regulator-name = "vdd-disp-3v0";
+                       regulator-min-microvolt = <3000000>;
+                       regulator-max-microvolt = <3000000>;
+                       gpio = <&gpio TEGRA_GPIO(I, 3) 0>;
+                       regulator-boot-on;
+                       enable-active-high;
+                       regulator-enable-ramp-delay = <232>;
+               };
+
+               vdd_fan: regulator@13 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <13>;
+                       regulator-name = "vdd-fan";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       gpio = <&tca9539_74 4 0>;
+                       regulator-enable-ramp-delay = <284>;
+                       regulator-disable-ramp-delay = <6200>;
+               };
+
+               usb_vbus1: regulator@14 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <14>;
+                       regulator-name = "usb-vbus1";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       gpio = <&gpio TEGRA_GPIO(CC, 4) 0>;
+                       enable-active-high;
+                       gpio-open-drain;
+                       vin-supply = <&vdd_3v3>;
+               };
+
+               usb_vbus3: regulator@15 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <15>;
+                       regulator-name = "usb-vbus3";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       gpio = <&gpio TEGRA_GPIO(D, 4) 0>;
+                       enable-active-high;
+                       gpio-open-drain;
+                       vin-supply = <&vdd_3v3>;
+               };
+               vdd_cdc_1v2_aud: regulator@101 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <101>;
+                       status = "disabled";
+                       regulator-name = "vdd_cdc_1v2_aud";
+                       regulator-min-microvolt = <1200000>;
+                       regulator-max-microvolt = <1200000>;
+                       enable-active-high;
+                       startup-delay-us = <250000>;
+               };
+               en_vdd_ts_1v8: regulator@201 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <201>;
+                       regulator-name = "en-vdd-ts-1v8";
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       gpio = <&tca9539_74 1 1>;
+                       enable-active-high;
+               };
+
+               en_vdd_ts_hv_3v3: regulator@202 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <202>;
+                       regulator-name = "en-vdd-ts-hv-3v3";
+                       regulator-min-microvolt = <3300000>;
+                       regulator-max-microvolt = <3300000>;
+                       gpio = <&tca9539_74 2 1>;
+                       enable-active-high;
+               };
+
+               en_avdd_disp_3v3: regulator@203 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <203>;
+                       regulator-name = "en-vdd-disp-3v3";
+                       regulator-min-microvolt = <3300000>;
+                       regulator-max-microvolt = <3300000>;
+                       gpio = <&tca9539_74 3 1>;
+                       enable-active-high;
+               };
+
+
+               en_mdm_pwr_3v7: regulator@204 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <204>;
+                       regulator-name = "en-mdm-pwr-3v7";
+                       regulator-min-microvol = <3700000>;
+                       regulator-max-microvol = <3700000>;
+                       gpio = <&tca9539_74 7 1>;
+                       enable-active-high;
+               };
+
+               en_dvdd_disp_1v8: regulator@205 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <205>;
+                       regulator-name = "en-vdd-disp-1v8";
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       gpio = <&tca9539_74 9 1>;
+                       enable-active-high;
+               };
+
+               en_vdd_cam_hv_2v8: regulator@206 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <206>;
+                       regulator-name = "en-vdd-cam-hv-2v8";
+                       regulator-min-microvol = <2800000>;
+                       regulator-max-microvol = <2800000>;
+                       gpio = <&tca9539_74 13 1>;
+                       enable-active-high;
+               };
+
+               en_vdd_eth_5v0: regulator@207 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <207>;
+                       regulator-name = "rtl-5v0";
+                       regulator-min-microvol = <5000000>;
+                       regulator-max-microvol = <5000000>;
+                       gpio = <&gpio TEGRA_GPIO(H, 1) 0>;
+                       enable-active-high;
+               };
+
+               en_usb_vbus2: regulator@208 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <208>;
+                       regulator-name = "en-usb-vbus2";
+                       regulator-min-microvol = <5000000>;
+                       regulator-max-microvol = <5000000>;
+                       gpio = <&gpio TEGRA_GPIO(CC, 5) 0>;
+                       enable-active-high;
+               };
+
+               en_vdd_cam_1v2: regulator@209 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <209>;
+                       regulator-name = "en-vdd-cam-1v2";
+                       regulator-min-microvol = <1200000>;
+                       regulator-max-microvol = <1200000>;
+                       vin-supply = <&vdd_3v3>;
+                       gpio = <&tca9539_77 3 1>;
+                       enable-active-high;
+               };
+       };
+};
diff --git a/arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-fixed-p3310-1000-a00-00.dtsi b/arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-fixed-p3310-1000-a00-00.dtsi
new file mode 100644 (file)
index 0000000..e864e2b
--- /dev/null
@@ -0,0 +1,355 @@
+/*
+ * Copyright (c) 2014, NVIDIA CORPORATION.  All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
+ */
+
+#include <dt-bindings/gpio/tegra-gpio.h>
+
+/ {
+       i2c@7000c400 {
+              tca9539_74: tca9539@74 {
+                       compatible = "ti,tca9539";
+                       gpio-controller;
+                       #gpio-cells = <2>;
+                       reg = <0x74>;
+                       interrupt-parent = <&gpio>;
+                       interrupts = <TEGRA_GPIO(L, 1) 0x0>;
+                       #interrupt-cells = <2>;
+                       interrupt-controller;
+               };
+
+               tca9539_77: tca9539@77 {
+                       compatible = "ti,tca9539";
+                       gpio-controller;
+                       #gpio-cells = <2>;
+                       reg = <0x77>;
+                       interrupt-parent = <&gpio>;
+                       interrupts = <TEGRA_GPIO(Z, 2) 0x0>;
+                       #interrupt-cells = <2>;
+                       interrupt-controller;
+               };
+       };
+
+       regulators {
+               compatible = "simple-bus";
+               device_type = "fixed-regulators";
+               #address-cells = <1>;
+               #size-cells = <0>;
+
+               battery_reg: regulator@0 {
+                       compatible = "regulator-fixed";
+                       reg = <0>;
+                       regulator-name = "vdd-ac-bat";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       regulator-always-on;
+               };
+
+               vdd_3v3: regulator@1 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <1>;
+                       regulator-name = "vdd-3v3";
+                       regulator-min-microvolt = <3300000>;
+                       regulator-max-microvolt = <3300000>;
+                       regulator-always-on;
+                       gpio = <&max77620 3 0>;
+                       enable-active-high;
+                       consumers {
+                               c1 {
+                                       regulator-consumer-supply = "avdd_usb";
+                                       regulator-consumer-device = "tegra-ehci.0";
+                               };
+                               c2 {
+                                       regulator-consumer-supply = "avdd_usb";
+                                       regulator-consumer-device = "tegra-ehci.1";
+                               };
+                               c3 {
+                                       regulator-consumer-supply = "avdd_usb";
+                                       regulator-consumer-device = "tegra-ehci.2";
+                               };
+                               c5 {
+                                       regulator-consumer-supply = "vdd";
+                                       regulator-consumer-device = "1-004d";
+                               };
+                       };
+               };
+
+               max77620_gpio7: regulator@2 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <2>;
+                       regulator-name = "max77620-gpio7";
+                       regulator-min-microvolt = <1050000>;
+                       regulator-max-microvolt = <1050000>;
+                       vin-supply = <&max77620_ldo7>;
+                       regulator-boot-on;
+                       gpio = <&max77620 7 0>;
+                       enable-active-high;
+               };
+
+               lcd_bl_en: regulator@3 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <3>;
+                       regulator-name = "lcd-bl-en";
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       regulator-boot-on;
+                       gpio = <&gpio TEGRA_GPIO(V, 1) 0>;
+                       enable-active-high;
+               };
+
+               en_vdd_sd: regulator@4 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <4>;
+                       regulator-name = "en-vdd-sd";
+                       regulator-min-microvolt = <3300000>;
+                       regulator-max-microvolt = <3300000>;
+                       gpio = <&gpio TEGRA_GPIO(Z, 3) 0>;
+                       enable-active-high;
+                       vin-supply = <&vdd_3v3>;
+               };
+
+               en_vdd_cam: regulator@5 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <5>;
+                       regulator-name = "en-vdd-cam";
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       gpio = <&tca9539_77 9 1>;
+                       enable-active-high;
+                       consumers {
+                               c1 {
+                                       regulator-consumer-supply = "vif";
+                               };
+                       };
+               };
+
+               vdd_sys_boost: regulator@6 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <6>;
+                       regulator-name = "vdd-sys-boost";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       regulator-always-on;
+                       gpio = <&max77620 1 0>;
+                       enable-active-high;
+               };
+
+               vdd_hdmi: regulator@7 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <7>;
+                       regulator-name = "vdd-hdmi";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       gpio = <&tca9539_74 12 1>;
+                       vin-supply = <&vdd_3v3>;
+                       enable-active-high;
+               };
+
+               en_vdd_cpu_fixed: regulator@8 {
+                       compatible = "regulator-fixed";
+                       reg = <8>;
+                       regulator-name = "vdd-cpu-fixed";
+                       regulator-min-microvolt = <1000000>;
+                       regulator-max-microvolt = <1000000>;
+               };
+
+               vdd_aux_3v3: regulator@9 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <9>;
+                       regulator-name = "aux-3v3";
+                       regulator-min-microvolt = <3300000>;
+                       regulator-max-microvolt = <3300000>;
+               };
+
+               vdd_snsr_pm: regulator@10 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <10>;
+                       regulator-name = "snsr_pm";
+                       enable-active-high;
+                       regulator-min-microvolt = <3300000>;
+                       regulator-max-microvolt = <3300000>;
+               };
+
+               vdd_usb_5v0: regulator@11 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <11>;
+                       status = "disabled";
+                       regulator-name = "vdd-usb-5v0";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       vin-supply = <&vdd_3v3>;
+                       regulator-always-on;
+                       enable-active-high;
+                       consumers {
+                               c0 {
+                                       regulator-consumer-supply = "usb_vbus";
+                                       regulator-consumer-device = "tegra-ehci.1";
+                               };
+                               c1 {
+                                       regulator-consumer-supply = "usb_vbus";
+                                       regulator-consumer-device = "tegra-ehci.2";
+                               };
+                       };
+               };
+               vdd_disp_3v0: regulator@12 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <12>;
+                       regulator-name = "vdd-disp-3v0";
+                       regulator-min-microvolt = <3000000>;
+                       regulator-max-microvolt = <3000000>;
+                       gpio = <&gpio TEGRA_GPIO(I, 3) 0>;
+                       regulator-boot-on;
+                       enable-active-high;
+                       regulator-enable-ramp-delay = <232>;
+               };
+
+               vdd_fan: regulator@13 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <13>;
+                       regulator-name = "vdd-fan";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       gpio = <&tca9539_74 4 0>;
+                       regulator-enable-ramp-delay = <284>;
+                       regulator-disable-ramp-delay = <6200>;
+               };
+
+               usb_vbus1: regulator@14 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <14>;
+                       regulator-name = "usb-vbus1";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       gpio = <&gpio TEGRA_GPIO(CC, 4) 0>;
+                       enable-active-high;
+                       gpio-open-drain;
+                       vin-supply = <&vdd_3v3>;
+               };
+
+               usb_vbus3: regulator@15 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <15>;
+                       regulator-name = "usb-vbus3";
+                       regulator-min-microvolt = <5000000>;
+                       regulator-max-microvolt = <5000000>;
+                       gpio = <&gpio TEGRA_GPIO(D, 4) 0>;
+                       enable-active-high;
+                       gpio-open-drain;
+                       vin-supply = <&vdd_3v3>;
+               };
+               vdd_cdc_1v2_aud: regulator@101 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <101>;
+                       status = "disabled";
+                       regulator-name = "vdd_cdc_1v2_aud";
+                       regulator-min-microvolt = <1200000>;
+                       regulator-max-microvolt = <1200000>;
+                       enable-active-high;
+                       startup-delay-us = <250000>;
+               };
+               en_vdd_ts_1v8: regulator@201 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <201>;
+                       regulator-name = "en-vdd-ts-1v8";
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       gpio = <&tca9539_74 1 1>;
+                       enable-active-high;
+               };
+
+               en_vdd_ts_hv_3v3: regulator@202 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <202>;
+                       regulator-name = "en-vdd-ts-hv-3v3";
+                       regulator-min-microvolt = <3300000>;
+                       regulator-max-microvolt = <3300000>;
+                       gpio = <&tca9539_74 2 1>;
+                       enable-active-high;
+               };
+
+               en_avdd_disp_3v3: regulator@203 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <203>;
+                       regulator-name = "en-vdd-disp-3v3";
+                       regulator-min-microvolt = <3300000>;
+                       regulator-max-microvolt = <3300000>;
+                       gpio = <&tca9539_74 3 1>;
+                       enable-active-high;
+               };
+
+
+               en_mdm_pwr_3v7: regulator@204 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <204>;
+                       regulator-name = "en-mdm-pwr-3v7";
+                       regulator-min-microvol = <3700000>;
+                       regulator-max-microvol = <3700000>;
+                       gpio = <&tca9539_74 7 1>;
+                       enable-active-high;
+               };
+
+               en_dvdd_disp_1v8: regulator@205 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <205>;
+                       regulator-name = "en-vdd-disp-1v8";
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       gpio = <&tca9539_74 9 1>;
+                       enable-active-high;
+               };
+
+               en_vdd_cam_hv_2v8: regulator@206 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <206>;
+                       regulator-name = "en-vdd-cam-hv-2v8";
+                       regulator-min-microvol = <2800000>;
+                       regulator-max-microvol = <2800000>;
+                       gpio = <&tca9539_74 13 1>;
+                       enable-active-high;
+               };
+
+               en_vdd_eth_5v0: regulator@207 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <207>;
+                       regulator-name = "rtl-5v0";
+                       regulator-min-microvol = <5000000>;
+                       regulator-max-microvol = <5000000>;
+                       gpio = <&gpio TEGRA_GPIO(H, 1) 0>;
+                       enable-active-high;
+               };
+
+               en_usb_vbus2: regulator@208 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <208>;
+                       regulator-name = "en-usb-vbus2";
+                       regulator-min-microvol = <5000000>;
+                       regulator-max-microvol = <5000000>;
+                       gpio = <&gpio TEGRA_GPIO(CC, 5) 0>;
+                       enable-active-high;
+               };
+
+               en_vdd_cam_1v2: regulator@209 {
+                       compatible = "regulator-fixed-sync";
+                       reg = <209>;
+                       regulator-name = "en-vdd-cam-1v2";
+                       regulator-min-microvol = <1200000>;
+                       regulator-max-microvol = <1200000>;
+                       vin-supply = <&vdd_3v3>;
+                       gpio = <&tca9539_77 3 1>;
+                       enable-active-high;
+               };
+       };
+};
diff --git a/arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-pmic-e3301-1000-a00-00.dtsi b/arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-pmic-e3301-1000-a00-00.dtsi
new file mode 100644 (file)
index 0000000..4589c1d
--- /dev/null
@@ -0,0 +1,313 @@
+/*
+ * Copyright (c) 2014-2015, NVIDIA CORPORATION.  All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ */
+
+#include <dt-bindings/mfd/max77620.h>
+#include <dt-bindings/regulator/regulator.h>
+#include <dt-bindings/gpio/tegra-gpio.h>
+#include <dt-bindings/thermal/thermal.h>
+
+/ {
+       i2c@7000d000 {
+               nvidia,bit-banging-xfer-after-shutdown;
+
+               max77620: max77620@3c {
+                       compatible = "maxim,max77620";
+                       reg = <0x3c>;
+                       interrupts = <0 86 IRQ_TYPE_NONE>;
+
+                       #interrupt-cells = <2>;
+                        interrupt-controller;
+
+                       gpio-controller;
+                       #gpio-cells = <2>;
+
+                       maxim,enable-clock32k-out;
+
+                       maxim,system-pmic-power-off;
+
+                       maxim,hot-die-threshold-temp = <110000>;
+                       #thermal-sensor-cells = <0>;
+
+                       pinctrl-names = "default";
+                       pinctrl-0 = <&max77620_default>;
+
+                       gpio-init-names = "default";
+                       gpio-init-0 = <&max77620_gpio_default>;
+
+                       max77620_default: pinmux@0 {
+                               pin_gpio0 {
+                                       pins = "gpio0";
+                                       function = "gpio";
+                               };
+
+                               pin_gpio1 {
+                                       pins = "gpio1";
+                                       function = "fps-out";
+                                       drive-push-pull = <1>;
+                                       maxim,fps-source = <FPS_SRC_0>;
+                                       maxim,fps-power-up-period = <7>;
+                                       maxim,fps-power-down-period = <0>;
+                               };
+
+                               pin_gpio2_3 {
+                                       pins = "gpio2", "gpio3";
+                                       function = "fps-out";
+                                       drive-open-drain = <1>;
+                                       maxim,fps-source = <FPS_SRC_0>;
+                               };
+
+                               pin_gpio4 {
+                                       pins = "gpio4";
+                                       function = "32k-out1";
+                               };
+
+                               pin_gpio5_6_7 {
+                                       pins = "gpio5", "gpio6", "gpio7";
+                                       function = "gpio";
+                                       drive-push-pull = <1>;
+                               };
+                       };
+
+                       max77620_gpio_default:gpio_default {
+                               gpio-output-high = <2>;
+                       };
+
+                       watchdog {
+                               maxim,wdt-timeout = <16>;
+                               maxim,wdt-clear-time = <13>;
+                               status = "okay";
+                               dt-override-status-odm-data = <0x00020000 0x00020000>;
+                       };
+
+                       fps {
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+                               fps@0 {
+                                       reg = <0>;
+                                       maxim,fps-time-period = <2560>;
+                                       maxim,fps-enable-input = <FPS_EN_SRC_EN0>;
+                               };
+
+                               fps@1 {
+                                       reg = <1>;
+                                       maxim,fps-time-period = <2560>;
+                                       maxim,fps-enable-input = <FPS_EN_SRC_EN1>;
+                                       maxim,enable-sleep;
+                               };
+
+                               fps@2 {
+                                       reg = <2>;
+                                       maxim,fps-enable-input = <FPS_EN_SRC_EN0>;
+                               };
+                       };
+
+                       backup-battery {
+                               maxim,backup-battery-charging-current = <100>;
+                               maxim,backup-battery-charging-voltage = <3000000>;
+                               maxim,backup-battery-output-resister = <100>;
+                       };
+
+                       regulators {
+                               in-ldo0-1-supply = <&max77620_sd2>;
+                               in-ldo7-8-supply = <&max77620_sd2>;
+
+                               max77620_sd0: sd0 {
+                                       regulator-name = "vdd_core";
+                                       regulator-min-microvolt = <600000>;
+                                       regulator-max-microvolt = <1400000>;
+                                       regulator-boot-on;
+                                       regulator-always-on;
+                                       maxim,fps-source = <FPS_SRC_1>;
+                                       regulator-init-mode = <REGULATOR_MODE_NORMAL>;
+                               };
+
+                               max77620_sd1: sd1 {
+                                       regulator-name = "vddio-ddr";
+                                       regulator-always-on;
+                                       regulator-boot-on;
+                                       regulator-init-mode = <REGULATOR_MODE_NORMAL>;
+                                       maxim,fps-source = <FPS_SRC_0>;
+                               };
+
+                               max77620_sd2: sd2 {
+                                       regulator-name = "vdd-pre-reg";
+                                       regulator-min-microvolt = <1350000>;
+                                       regulator-max-microvolt = <1350000>;
+                                       maxim,fps-source = <FPS_SRC_1>;
+                               };
+
+                               max77620_sd3: sd3 {
+                                       regulator-name = "vdd-1v8";
+                                       regulator-min-microvolt = <1800000>;
+                                       regulator-max-microvolt = <1800000>;
+                                       regulator-always-on;
+                                       regulator-boot-on;
+                                       maxim,fps-source = <FPS_SRC_0>;
+                                       regulator-init-mode = <REGULATOR_MODE_NORMAL>;
+                                       consumers {
+                                               c7 {
+                                                       regulator-consumer-supply = "avdd_pll_utmip";
+                                                       regulator-consumer-device = "tegra-ehci.0";
+                                               };
+                                               c8 {
+                                                       regulator-consumer-supply = "avdd_pll_utmip";
+                                                       regulator-consumer-device = "tegra-ehci.1";
+                                               };
+                                               c9 {
+                                                       regulator-consumer-supply = "avdd_pll_utmip";
+                                                       regulator-consumer-device = "tegra-ehci.2";
+                                               };
+                                               c18 {
+                                                       regulator-consumer-supply = "vdd";
+                                                       regulator-consumer-device = "2-004c";
+                                               };
+                                               c19 {
+                                                       regulator-consumer-supply = "vdd";
+                                                       regulator-consumer-device = "0-004c";
+                                               };
+                                       };
+                               };
+
+                               max77620_ldo0: ldo0 {
+                                       regulator-name = "avdd-sys";
+                                       regulator-min-microvolt = <1200000>;
+                                       regulator-max-microvolt = <1200000>;
+                                       regulator-always-on;
+                                       regulator-boot-on;
+                                       maxim,fps-source = <FPS_SRC_NONE>;
+                                       consumers {
+                                               c0 {
+                                                       regulator-consumer-supply = "vddio_hsic";
+                                                       regulator-consumer-device = "tegra-ehci.1";
+                                               };
+                                               c1 {
+                                                       regulator-consumer-supply = "vddio_hsic";
+                                                       regulator-consumer-device = "tegra-ehci.2";
+                                               };
+                                               c2 {
+                                                       regulator-consumer-supply = "vdig";
+                                               };
+                                       };
+                               };
+
+                               max77620_ldo1: ldo1 {
+                                       regulator-name = "vdd-pex";
+                                       regulator-min-microvolt = <1050000>;
+                                       regulator-max-microvolt = <1050000>;
+                                       maxim,fps-source = <FPS_SRC_NONE>;
+                               };
+
+                               max77620_ldo2: ldo2 {
+                                       regulator-name = "vddio-sdmmc1";
+                                       regulator-min-microvolt = <1800000>;
+                                       regulator-max-microvolt = <3300000>;
+                                       maxim,fps-source = <FPS_SRC_NONE>;
+                               };
+
+                               max77620_ldo3: ldo3 {
+                                       regulator-name = "vdd-cam-hv";
+                                       regulator-min-microvolt = <2800000>;
+                                       regulator-max-microvolt = <2800000>;
+                                       maxim,fps-source = <FPS_SRC_NONE>;
+                                       consumers {
+                                               c0 {
+                                                       regulator-consumer-supply = "vana";
+                                               };
+                                       };
+                               };
+
+                               max77620_ldo4: ldo4 {
+                                       regulator-name = "vdd-rtc";
+                                       regulator-min-microvolt = <850000>;
+                                       regulator-max-microvolt = <850000>;
+                                       regulator-always-on;
+                                       regulator-boot-on;
+                                       maxim,fps-source = <FPS_SRC_0>;
+                               };
+
+                               max77620_ldo5: ldo5 {
+                                       regulator-name = "avdd-ts-hv";
+                                       regulator-min-microvolt = <3300000>;
+                                       regulator-max-microvolt = <3300000>;
+                                       maxim,fps-source = <FPS_SRC_NONE>;
+                               };
+
+                               max77620_ldo6: ldo6 {
+                                       regulator-name = "vdd-ts";
+                                       regulator-min-microvolt = <1800000>;
+                                       regulator-max-microvolt = <1800000>;
+                                       regulator-always-on;
+                                       regulator-boot-on;
+                                       maxim,fps-source = <FPS_SRC_0>;
+                                       maxim,fps-power-up-period = <7>;
+                                       maxim,fps-power-down-period = <0>;
+                               };
+
+                               max77620_ldo7: ldo7 {
+                                       regulator-name = "vdd-gen-pll-edp";
+                                       regulator-min-microvolt = <1050000>;
+                                       regulator-max-microvolt = <1050000>;
+                                       regulator-always-on;
+                                       regulator-boot-on;
+                                       maxim,fps-source = <FPS_SRC_1>;
+                               };
+
+                               max77620_ldo8: ldo8 {
+                                       regulator-name = "vdd-hdmi-dp";
+                                       regulator-min-microvolt = <1050000>;
+                                       regulator-max-microvolt = <1050000>;
+                                       maxim,fps-source = <FPS_SRC_NONE>;
+                               };
+                       };
+               };
+       };
+
+       dummy_cool_dev: dummy-cool-dev {
+               compatible = "dummy-cooling-dev";
+               #cooling-cells = <2>; /* min followed by max */
+       };
+
+       thermal-zones {
+               PMIC-Die {
+                       polling-delay = <0>; /* milliseconds */
+                       polling-delay-passive = <0>; /* milliseconds */
+
+                       thermal-sensors = <&max77620>;
+                       trips {
+                               die_temp_thresh: hot-die {
+                                       temperature = <120000>;
+                                       type = "active";
+                                       hysteresis = <0>;
+                               };
+                       };
+
+                       cooling-maps {
+                               map0 {
+                                       trip = <&die_temp_thresh>;
+                                       cooling-device = <&dummy_cool_dev THERMAL_NO_LIMIT
+                                                               THERMAL_NO_LIMIT>;
+                                       contribution = <100>;
+                                       cdev-type = "emergency-balanced";
+                               };
+                       };
+               };
+       };
+
+       extcon {
+               compatible = "simple-bus";
+               device_type = "external-connection";
+               #address-cells = <1>;
+               #size-cells = <0>;
+       };
+};
diff --git a/arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-pmic-p3310-1000-a00-00.dtsi b/arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-pmic-p3310-1000-a00-00.dtsi
new file mode 100644 (file)
index 0000000..4589c1d
--- /dev/null
@@ -0,0 +1,313 @@
+/*
+ * Copyright (c) 2014-2015, NVIDIA CORPORATION.  All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ */
+
+#include <dt-bindings/mfd/max77620.h>
+#include <dt-bindings/regulator/regulator.h>
+#include <dt-bindings/gpio/tegra-gpio.h>
+#include <dt-bindings/thermal/thermal.h>
+
+/ {
+       i2c@7000d000 {
+               nvidia,bit-banging-xfer-after-shutdown;
+
+               max77620: max77620@3c {
+                       compatible = "maxim,max77620";
+                       reg = <0x3c>;
+                       interrupts = <0 86 IRQ_TYPE_NONE>;
+
+                       #interrupt-cells = <2>;
+                        interrupt-controller;
+
+                       gpio-controller;
+                       #gpio-cells = <2>;
+
+                       maxim,enable-clock32k-out;
+
+                       maxim,system-pmic-power-off;
+
+                       maxim,hot-die-threshold-temp = <110000>;
+                       #thermal-sensor-cells = <0>;
+
+                       pinctrl-names = "default";
+                       pinctrl-0 = <&max77620_default>;
+
+                       gpio-init-names = "default";
+                       gpio-init-0 = <&max77620_gpio_default>;
+
+                       max77620_default: pinmux@0 {
+                               pin_gpio0 {
+                                       pins = "gpio0";
+                                       function = "gpio";
+                               };
+
+                               pin_gpio1 {
+                                       pins = "gpio1";
+                                       function = "fps-out";
+                                       drive-push-pull = <1>;
+                                       maxim,fps-source = <FPS_SRC_0>;
+                                       maxim,fps-power-up-period = <7>;
+                                       maxim,fps-power-down-period = <0>;
+                               };
+
+                               pin_gpio2_3 {
+                                       pins = "gpio2", "gpio3";
+                                       function = "fps-out";
+                                       drive-open-drain = <1>;
+                                       maxim,fps-source = <FPS_SRC_0>;
+                               };
+
+                               pin_gpio4 {
+                                       pins = "gpio4";
+                                       function = "32k-out1";
+                               };
+
+                               pin_gpio5_6_7 {
+                                       pins = "gpio5", "gpio6", "gpio7";
+                                       function = "gpio";
+                                       drive-push-pull = <1>;
+                               };
+                       };
+
+                       max77620_gpio_default:gpio_default {
+                               gpio-output-high = <2>;
+                       };
+
+                       watchdog {
+                               maxim,wdt-timeout = <16>;
+                               maxim,wdt-clear-time = <13>;
+                               status = "okay";
+                               dt-override-status-odm-data = <0x00020000 0x00020000>;
+                       };
+
+                       fps {
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+                               fps@0 {
+                                       reg = <0>;
+                                       maxim,fps-time-period = <2560>;
+                                       maxim,fps-enable-input = <FPS_EN_SRC_EN0>;
+                               };
+
+                               fps@1 {
+                                       reg = <1>;
+                                       maxim,fps-time-period = <2560>;
+                                       maxim,fps-enable-input = <FPS_EN_SRC_EN1>;
+                                       maxim,enable-sleep;
+                               };
+
+                               fps@2 {
+                                       reg = <2>;
+                                       maxim,fps-enable-input = <FPS_EN_SRC_EN0>;
+                               };
+                       };
+
+                       backup-battery {
+                               maxim,backup-battery-charging-current = <100>;
+                               maxim,backup-battery-charging-voltage = <3000000>;
+                               maxim,backup-battery-output-resister = <100>;
+                       };
+
+                       regulators {
+                               in-ldo0-1-supply = <&max77620_sd2>;
+                               in-ldo7-8-supply = <&max77620_sd2>;
+
+                               max77620_sd0: sd0 {
+                                       regulator-name = "vdd_core";
+                                       regulator-min-microvolt = <600000>;
+                                       regulator-max-microvolt = <1400000>;
+                                       regulator-boot-on;
+                                       regulator-always-on;
+                                       maxim,fps-source = <FPS_SRC_1>;
+                                       regulator-init-mode = <REGULATOR_MODE_NORMAL>;
+                               };
+
+                               max77620_sd1: sd1 {
+                                       regulator-name = "vddio-ddr";
+                                       regulator-always-on;
+                                       regulator-boot-on;
+                                       regulator-init-mode = <REGULATOR_MODE_NORMAL>;
+                                       maxim,fps-source = <FPS_SRC_0>;
+                               };
+
+                               max77620_sd2: sd2 {
+                                       regulator-name = "vdd-pre-reg";
+                                       regulator-min-microvolt = <1350000>;
+                                       regulator-max-microvolt = <1350000>;
+                                       maxim,fps-source = <FPS_SRC_1>;
+                               };
+
+                               max77620_sd3: sd3 {
+                                       regulator-name = "vdd-1v8";
+                                       regulator-min-microvolt = <1800000>;
+                                       regulator-max-microvolt = <1800000>;
+                                       regulator-always-on;
+                                       regulator-boot-on;
+                                       maxim,fps-source = <FPS_SRC_0>;
+                                       regulator-init-mode = <REGULATOR_MODE_NORMAL>;
+                                       consumers {
+                                               c7 {
+                                                       regulator-consumer-supply = "avdd_pll_utmip";
+                                                       regulator-consumer-device = "tegra-ehci.0";
+                                               };
+                                               c8 {
+                                                       regulator-consumer-supply = "avdd_pll_utmip";
+                                                       regulator-consumer-device = "tegra-ehci.1";
+                                               };
+                                               c9 {
+                                                       regulator-consumer-supply = "avdd_pll_utmip";
+                                                       regulator-consumer-device = "tegra-ehci.2";
+                                               };
+                                               c18 {
+                                                       regulator-consumer-supply = "vdd";
+                                                       regulator-consumer-device = "2-004c";
+                                               };
+                                               c19 {
+                                                       regulator-consumer-supply = "vdd";
+                                                       regulator-consumer-device = "0-004c";
+                                               };
+                                       };
+                               };
+
+                               max77620_ldo0: ldo0 {
+                                       regulator-name = "avdd-sys";
+                                       regulator-min-microvolt = <1200000>;
+                                       regulator-max-microvolt = <1200000>;
+                                       regulator-always-on;
+                                       regulator-boot-on;
+                                       maxim,fps-source = <FPS_SRC_NONE>;
+                                       consumers {
+                                               c0 {
+                                                       regulator-consumer-supply = "vddio_hsic";
+                                                       regulator-consumer-device = "tegra-ehci.1";
+                                               };
+                                               c1 {
+                                                       regulator-consumer-supply = "vddio_hsic";
+                                                       regulator-consumer-device = "tegra-ehci.2";
+                                               };
+                                               c2 {
+                                                       regulator-consumer-supply = "vdig";
+                                               };
+                                       };
+                               };
+
+                               max77620_ldo1: ldo1 {
+                                       regulator-name = "vdd-pex";
+                                       regulator-min-microvolt = <1050000>;
+                                       regulator-max-microvolt = <1050000>;
+                                       maxim,fps-source = <FPS_SRC_NONE>;
+                               };
+
+                               max77620_ldo2: ldo2 {
+                                       regulator-name = "vddio-sdmmc1";
+                                       regulator-min-microvolt = <1800000>;
+                                       regulator-max-microvolt = <3300000>;
+                                       maxim,fps-source = <FPS_SRC_NONE>;
+                               };
+
+                               max77620_ldo3: ldo3 {
+                                       regulator-name = "vdd-cam-hv";
+                                       regulator-min-microvolt = <2800000>;
+                                       regulator-max-microvolt = <2800000>;
+                                       maxim,fps-source = <FPS_SRC_NONE>;
+                                       consumers {
+                                               c0 {
+                                                       regulator-consumer-supply = "vana";
+                                               };
+                                       };
+                               };
+
+                               max77620_ldo4: ldo4 {
+                                       regulator-name = "vdd-rtc";
+                                       regulator-min-microvolt = <850000>;
+                                       regulator-max-microvolt = <850000>;
+                                       regulator-always-on;
+                                       regulator-boot-on;
+                                       maxim,fps-source = <FPS_SRC_0>;
+                               };
+
+                               max77620_ldo5: ldo5 {
+                                       regulator-name = "avdd-ts-hv";
+                                       regulator-min-microvolt = <3300000>;
+                                       regulator-max-microvolt = <3300000>;
+                                       maxim,fps-source = <FPS_SRC_NONE>;
+                               };
+
+                               max77620_ldo6: ldo6 {
+                                       regulator-name = "vdd-ts";
+                                       regulator-min-microvolt = <1800000>;
+                                       regulator-max-microvolt = <1800000>;
+                                       regulator-always-on;
+                                       regulator-boot-on;
+                                       maxim,fps-source = <FPS_SRC_0>;
+                                       maxim,fps-power-up-period = <7>;
+                                       maxim,fps-power-down-period = <0>;
+                               };
+
+                               max77620_ldo7: ldo7 {
+                                       regulator-name = "vdd-gen-pll-edp";
+                                       regulator-min-microvolt = <1050000>;
+                                       regulator-max-microvolt = <1050000>;
+                                       regulator-always-on;
+                                       regulator-boot-on;
+                                       maxim,fps-source = <FPS_SRC_1>;
+                               };
+
+                               max77620_ldo8: ldo8 {
+                                       regulator-name = "vdd-hdmi-dp";
+                                       regulator-min-microvolt = <1050000>;
+                                       regulator-max-microvolt = <1050000>;
+                                       maxim,fps-source = <FPS_SRC_NONE>;
+                               };
+                       };
+               };
+       };
+
+       dummy_cool_dev: dummy-cool-dev {
+               compatible = "dummy-cooling-dev";
+               #cooling-cells = <2>; /* min followed by max */
+       };
+
+       thermal-zones {
+               PMIC-Die {
+                       polling-delay = <0>; /* milliseconds */
+                       polling-delay-passive = <0>; /* milliseconds */
+
+                       thermal-sensors = <&max77620>;
+                       trips {
+                               die_temp_thresh: hot-die {
+                                       temperature = <120000>;
+                                       type = "active";
+                                       hysteresis = <0>;
+                               };
+                       };
+
+                       cooling-maps {
+                               map0 {
+                                       trip = <&die_temp_thresh>;
+                                       cooling-device = <&dummy_cool_dev THERMAL_NO_LIMIT
+                                                               THERMAL_NO_LIMIT>;
+                                       contribution = <100>;
+                                       cdev-type = "emergency-balanced";
+                               };
+                       };
+               };
+       };
+
+       extcon {
+               compatible = "simple-bus";
+               device_type = "external-connection";
+               #address-cells = <1>;
+               #size-cells = <0>;
+       };
+};
diff --git a/arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-power-tree-e3301-1000-a00-00.dtsi b/arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-power-tree-e3301-1000-a00-00.dtsi
new file mode 100644 (file)
index 0000000..915cb2e
--- /dev/null
@@ -0,0 +1,358 @@
+/*
+ * Copyright (c) 2015, NVIDIA CORPORATION.  All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ */
+
+#include <dt-bindings/padctrl/tegra210-pads.h>
+#include "tegra210-t18x-interposer-pmic-e3301-1000-a00-00.dtsi"
+#include "tegra210-t18x-interposer-fixed-e3301-1000-a00-00.dtsi"
+#include "tegra210-ers-power-dvfs-e2174-1101-a00.dtsi"
+
+/ {
+       dvfs_rails {
+               vdd-cpu-rail-max77621@2 {
+                       /delete-property/ vdd_cpu-supply;
+               };
+               vdd-gpu-rail-max77621@3 {
+                       /delete-property/ vdd_gpu-supply;
+               };
+       };
+
+       i2c@7000d000 {
+               max77620@3c {
+                       regulators {
+                               sd0 {
+                                       regulator-enable-ramp-delay = <146>;
+                                       regulator-disable-ramp-delay = <4080>;
+                                       regulator-ramp-delay = <27500>;
+                                       regulator-ramp-delay-scale = <300>;
+                               };
+
+                               sd1 {
+                                       regulator-enable-ramp-delay = <130>;
+                                       regulator-disable-ramp-delay = <145800>;
+                                       regulator-ramp-delay = <27500>;
+                                       regulator-ramp-delay-scale = <300>;
+                               };
+
+                               sd2 {
+                                       regulator-enable-ramp-delay = <176>;
+                                       regulator-disable-ramp-delay = <32000>;
+                                       regulator-ramp-delay = <27500>;
+                                       regulator-ramp-delay-scale = <350>;
+                               };
+
+                               sd3 {
+                                       regulator-enable-ramp-delay = <242>;
+                                       regulator-disable-ramp-delay = <118000>;
+                                       regulator-ramp-delay = <27500>;
+                                       regulator-ramp-delay-scale = <360>;
+                               };
+
+                               ldo0 {
+                                       regulator-enable-ramp-delay = <26>;
+                                       regulator-disable-ramp-delay = <626>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+
+                               ldo1 {
+                                       regulator-enable-ramp-delay = <22>;
+                                       regulator-disable-ramp-delay = <630>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+
+                               ldo2 {
+                                       regulator-enable-ramp-delay = <62>;
+                                       regulator-disable-ramp-delay = <650>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+
+                               ldo3 {
+                                       regulator-enable-ramp-delay = <50>;
+                                       regulator-disable-ramp-delay = <1110>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+
+                               ldo4 {
+                                       regulator-enable-ramp-delay = <22>;
+                                       regulator-disable-ramp-delay = <610>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+
+                               ldo5 {
+                                       regulator-enable-ramp-delay = <62>;
+                                       regulator-disable-ramp-delay = <640>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+
+                               ldo6 {
+                                       regulator-enable-ramp-delay = <36>;
+                                       regulator-disable-ramp-delay = <674>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+
+                               ldo7 {
+                                       regulator-enable-ramp-delay = <24>;
+                                       regulator-disable-ramp-delay = <2768>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+
+                               ldo8 {
+                                       regulator-enable-ramp-delay = <22>;
+                                       regulator-disable-ramp-delay = <1160>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+                       };
+               };
+       };
+
+       regulators {
+               regulator@1 {
+                       regulator-enable-ramp-delay = <160>;
+                       regulator-disable-ramp-delay = <10000>;
+               };
+
+               regulator@2 {
+                       regulator-enable-ramp-delay = <240>;
+                       regulator-disable-ramp-delay = <11340>;
+               };
+
+               regulator@4 {
+                       regulator-enable-ramp-delay = <472>;
+                       regulator-disable-ramp-delay = <4880>;
+               };
+
+               regulator@6 {
+                       regulator-enable-ramp-delay = <3090>;
+               };
+
+               regulator@7 {
+                       regulator-enable-ramp-delay = <468>;
+                       regulator-disable-ramp-delay = <13000>;
+               };
+
+
+       };
+
+       i2c@546c0000 {
+               bus-pullup-supply = <&battery_reg>;
+       };
+
+       efuse@7000f800 {
+               vpp_fuse-supply = <&max77620_sd3>;
+       };
+
+       host1x {
+               /* tegradc.0 */
+               dc@54200000 {
+                       avdd_dsi_csi-supply = <&max77620_gpio7>;
+                       avdd_lcd-supply = <&vdd_disp_3v0>;
+                       dvdd_lcd-supply = <&max77620_sd3>;
+                       vdd_lcd_bl_en-supply = <&lcd_bl_en>;
+                       vdd_lcd_bl-supply = <&vdd_3v3>;
+               };
+
+               /* tegradc.1 */
+               dc@54240000 {
+                       avdd_hdmi-supply = <&max77620_ldo8>;    /* 1V05 */
+                       avdd_hdmi_pll-supply = <&max77620_sd3>; /* 1V8 */
+                       vdd_hdmi_5v0-supply = <&vdd_hdmi>;      /* 5V0 GPIO_PCC7 fixed reg */
+               };
+
+               vi {
+                       avdd_dsi_csi-supply = <&max77620_gpio7>;
+               };
+       };
+
+       sound {
+               ldoen-supply = <&vdd_sys_boost>;
+               spkvdd-supply = <&vdd_sys_boost>;
+               dbvdd-supply = <&vdd_sys_boost>;
+               avdd-supply = <&vdd_sys_boost>;
+               dmicvdd-supply = <&max77620_sd3>;
+       };
+
+       udc@7d000000 {
+               avdd_usb-supply = <&vdd_3v3>;
+               avdd_pll_utmip-supply = <&max77620_sd3>;
+       };
+
+       usb_cd@7009f000 {
+       };
+
+       ehci@7d000000 {
+               avdd_usb-supply = <&vdd_3v3>;
+               avdd_pll_utmip-supply = <&max77620_sd3>;
+       };
+
+       xusb@70090000 {
+               usb_vbus0-supply = <&battery_reg>;
+               usb_vbus1-supply = <&usb_vbus3>;
+               usb_vbus2-supply = <&usb_vbus1>;
+               usb_vbus3-supply = <&vdd_3v3>;
+               hvdd_usb-supply = <&vdd_3v3>;
+               avdd_pll_utmip-supply = <&max77620_sd3>;
+               vddio_hsic-supply = <&max77620_ldo0>;
+               avddio_usb-supply = <&max77620_ldo1>;
+               dvdd_sata-supply = <&max77620_ldo8>;
+               avddio_pll_uerefe-supply = <&max77620_ldo7>;
+       };
+
+       xudc@700d0000 {
+                hvdd_usb-supply = <&vdd_3v3>;
+                avdd_pll_utmip-supply = <&max77620_sd3>;
+                avddio_usb-supply = <&max77620_ldo1>;
+                avddio_pll_uerefe-supply = <&max77620_ldo7>;
+        };
+
+       xotg {
+               usb_vbus-supply = <&battery_reg>;
+       };
+
+       otg@7d000000 {
+               usb_vbus-supply = <&battery_reg>;
+       };
+
+       sdhci@700b0600 {
+               vddio_sdmmc-supply = <&max77620_sd3>;
+               vddio_sd_slot-supply = <&vdd_3v3>;
+       };
+
+       sdhci@700b0400 {
+               vddio_sdmmc-supply = <&max77620_sd3>;
+               vddio_sd_slot-supply = <&vdd_3v3>;
+       };
+
+       sdhci@700b0200 {
+               vddio_sdmmc-supply = <&max77620_sd3>;
+               vddio_sd_slot-supply = <&vdd_3v3>;
+       };
+
+       sdhci@700b0000 {
+               vddio_sdmmc-supply = <&max77620_ldo2>;
+               vddio_sd_slot-supply = <&en_vdd_sd>;
+       };
+
+       sata@70020000 {
+               hvdd_sata-supply = <&max77620_sd3>;
+               hvdd_pex_pll_e-supply = <&max77620_sd3>;
+               l0_hvddio_sata-supply = <&max77620_sd3>;
+               l0_dvddio_sata-supply = <&max77620_ldo8>;
+               dvdd_sata_pll-supply = <&max77620_ldo8>;
+       };
+
+       bluedroid_pm {
+               avdd-supply = <&battery_reg>;
+               dvdd-supply = <&max77620_sd3>;
+       };
+
+       pwm-fan {
+               vdd-fan-supply = <&vdd_fan>;
+       };
+
+       pmc@7000e400 {
+               bootrom-commands {
+                       commands@4-003c {
+                               nvidia,command-names = "pmic-rails";
+                               reg = <0x3c>;
+                               nvidia,enable-8bit-register;
+                               nvidia,enable-8bit-data;
+                               nvidia,controller-type-i2c;
+                               nvidia,controller-id = <4>;
+                               nvidia,enable-controller-reset;
+                               nvidia,write-commands = <0x00000016 0x00000020>;
+                       };
+               };
+       };
+
+       host1x {
+               dc@54200000 {
+                       avdd_dsi_csi-supply = <&max77620_ldo0>;
+                       avdd_lcd-supply = <&en_avdd_disp_3v3>;
+                       dvdd_lcd-supply = <&en_dvdd_disp_1v8>;
+                       vdd_lcd_bl_en-supply = <&lcd_bl_en>;
+                       vdd_lcd_bl-supply = <&vdd_3v3>;
+               };
+
+               vi {
+                       avdd_dsi_csi-supply = <&max77620_ldo0>;
+               };
+       };
+
+       pwm-fan {
+               vdd-fan-supply = <&vdd_fan>;
+       };
+
+       otg@7d000000 {
+               usb_vbus-supply = <&usb_vbus1>;
+       };
+
+       xusb@70090000 {
+               usb_vbus1-supply = <&en_vdd_eth_5v0>;
+               usb_vbus2-supply = <&en_usb_vbus2>;
+       };
+
+       spi@7000da00 {
+               spi-touch19x12@0 {
+                       avdd-supply = <&en_vdd_ts_hv_3v3>;
+                       dvdd-supply = <&en_vdd_ts_1v8>;
+               };
+       };
+
+       pmc-iopower {
+               iopower-sys-supply = <&max77620_sd3>;
+               iopower-uart-supply = <&max77620_sd3>;
+               iopower-audio-supply = <&max77620_sd3>;
+               iopower-cam-supply = <&max77620_sd3>;
+               iopower-pex-ctrl-supply = <&max77620_sd3>;
+               iopower-sdmmc1-supply = <&max77620_ldo2>;
+               iopower-sdmmc3-supply = <&max77620_sd3>;
+               iopower-sdmmc4-supply = <&max77620_sd3>;
+               iopower-audio-hv-supply = <&max77620_sd3>;
+               iopower-debug-supply = <&max77620_sd3>;
+               iopower-dmic-supply = <&max77620_sd3>;
+               iopower-gpio-supply = <&max77620_sd3>;
+               iopower-spi-supply = <&max77620_sd3>;
+               iopower-spi-hv-supply = <&max77620_sd3>;
+               iopower-sdmmc2-supply = <&max77620_sd3>;
+               iopower-dp-supply = <&max77620_sd3>;
+       };
+
+       pmc@7000e400 {
+               io-pad-defaults {
+                       audio-hv {
+                               nvidia,io-pad-init-voltage = <IO_PAD_VOLTAGE_1_8V>;
+                       };
+
+                       spi-hv {
+                               nvidia,io-pad-init-voltage = <IO_PAD_VOLTAGE_1_8V>;
+                       };
+
+                       gpio {
+                               nvidia,io-pad-init-voltage = <IO_PAD_VOLTAGE_1_8V>;
+                       };
+                       sdmmc3 {
+                               nvidia,io-pad-init-voltage = <IO_PAD_VOLTAGE_1_8V>;
+                       };
+               };
+       };
+};
diff --git a/arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-power-tree-p3310-1000-a00-00.dtsi b/arch/arm64/boot/dts/tegra210-platforms/tegra210-t18x-interposer-power-tree-p3310-1000-a00-00.dtsi
new file mode 100644 (file)
index 0000000..7c56c23
--- /dev/null
@@ -0,0 +1,358 @@
+/*
+ * Copyright (c) 2015, NVIDIA CORPORATION.  All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ */
+
+#include <dt-bindings/padctrl/tegra210-pads.h>
+#include "tegra210-t18x-interposer-pmic-p3310-1000-a00-00.dtsi"
+#include "tegra210-t18x-interposer-fixed-p3310-1000-a00-00.dtsi"
+#include "tegra210-ers-power-dvfs-e2174-1101-a00.dtsi"
+
+/ {
+       dvfs_rails {
+               vdd-cpu-rail-max77621@2 {
+                       /delete-property/ vdd_cpu-supply;
+               };
+               vdd-gpu-rail-max77621@3 {
+                       /delete-property/ vdd_gpu-supply;
+               };
+       };
+
+       i2c@7000d000 {
+               max77620@3c {
+                       regulators {
+                               sd0 {
+                                       regulator-enable-ramp-delay = <146>;
+                                       regulator-disable-ramp-delay = <4080>;
+                                       regulator-ramp-delay = <27500>;
+                                       regulator-ramp-delay-scale = <300>;
+                               };
+
+                               sd1 {
+                                       regulator-enable-ramp-delay = <130>;
+                                       regulator-disable-ramp-delay = <145800>;
+                                       regulator-ramp-delay = <27500>;
+                                       regulator-ramp-delay-scale = <300>;
+                               };
+
+                               sd2 {
+                                       regulator-enable-ramp-delay = <176>;
+                                       regulator-disable-ramp-delay = <32000>;
+                                       regulator-ramp-delay = <27500>;
+                                       regulator-ramp-delay-scale = <350>;
+                               };
+
+                               sd3 {
+                                       regulator-enable-ramp-delay = <242>;
+                                       regulator-disable-ramp-delay = <118000>;
+                                       regulator-ramp-delay = <27500>;
+                                       regulator-ramp-delay-scale = <360>;
+                               };
+
+                               ldo0 {
+                                       regulator-enable-ramp-delay = <26>;
+                                       regulator-disable-ramp-delay = <626>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+
+                               ldo1 {
+                                       regulator-enable-ramp-delay = <22>;
+                                       regulator-disable-ramp-delay = <630>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+
+                               ldo2 {
+                                       regulator-enable-ramp-delay = <62>;
+                                       regulator-disable-ramp-delay = <650>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+
+                               ldo3 {
+                                       regulator-enable-ramp-delay = <50>;
+                                       regulator-disable-ramp-delay = <1110>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+
+                               ldo4 {
+                                       regulator-enable-ramp-delay = <22>;
+                                       regulator-disable-ramp-delay = <610>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+
+                               ldo5 {
+                                       regulator-enable-ramp-delay = <62>;
+                                       regulator-disable-ramp-delay = <640>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+
+                               ldo6 {
+                                       regulator-enable-ramp-delay = <36>;
+                                       regulator-disable-ramp-delay = <674>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+
+                               ldo7 {
+                                       regulator-enable-ramp-delay = <24>;
+                                       regulator-disable-ramp-delay = <2768>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+
+                               ldo8 {
+                                       regulator-enable-ramp-delay = <22>;
+                                       regulator-disable-ramp-delay = <1160>;
+                                       regulator-ramp-delay = <100000>;
+                                       regulator-ramp-delay-scale = <200>;
+                               };
+                       };
+               };
+       };
+
+       regulators {
+               regulator@1 {
+                       regulator-enable-ramp-delay = <160>;
+                       regulator-disable-ramp-delay = <10000>;
+               };
+
+               regulator@2 {
+                       regulator-enable-ramp-delay = <240>;
+                       regulator-disable-ramp-delay = <11340>;
+               };
+
+               regulator@4 {
+                       regulator-enable-ramp-delay = <472>;
+                       regulator-disable-ramp-delay = <4880>;
+               };
+
+               regulator@6 {
+                       regulator-enable-ramp-delay = <3090>;
+               };
+
+               regulator@7 {
+                       regulator-enable-ramp-delay = <468>;
+                       regulator-disable-ramp-delay = <13000>;
+               };
+
+
+       };
+
+       i2c@546c0000 {
+               bus-pullup-supply = <&battery_reg>;
+       };
+
+       efuse@7000f800 {
+               vpp_fuse-supply = <&max77620_sd3>;
+       };
+
+       host1x {
+               /* tegradc.0 */
+               dc@54200000 {
+                       avdd_dsi_csi-supply = <&max77620_gpio7>;
+                       avdd_lcd-supply = <&vdd_disp_3v0>;
+                       dvdd_lcd-supply = <&max77620_sd3>;
+                       vdd_lcd_bl_en-supply = <&lcd_bl_en>;
+                       vdd_lcd_bl-supply = <&vdd_3v3>;
+               };
+
+               /* tegradc.1 */
+               dc@54240000 {
+                       avdd_hdmi-supply = <&max77620_ldo8>;    /* 1V05 */
+                       avdd_hdmi_pll-supply = <&max77620_sd3>; /* 1V8 */
+                       vdd_hdmi_5v0-supply = <&vdd_hdmi>;      /* 5V0 GPIO_PCC7 fixed reg */
+               };
+
+               vi {
+                       avdd_dsi_csi-supply = <&max77620_gpio7>;
+               };
+       };
+
+       sound {
+               ldoen-supply = <&vdd_sys_boost>;
+               spkvdd-supply = <&vdd_sys_boost>;
+               dbvdd-supply = <&vdd_sys_boost>;
+               avdd-supply = <&vdd_sys_boost>;
+               dmicvdd-supply = <&max77620_sd3>;
+       };
+
+       udc@7d000000 {
+               avdd_usb-supply = <&vdd_3v3>;
+               avdd_pll_utmip-supply = <&max77620_sd3>;
+       };
+
+       usb_cd@7009f000 {
+       };
+
+       ehci@7d000000 {
+               avdd_usb-supply = <&vdd_3v3>;
+               avdd_pll_utmip-supply = <&max77620_sd3>;
+       };
+
+       xusb@70090000 {
+               usb_vbus0-supply = <&battery_reg>;
+               usb_vbus1-supply = <&usb_vbus3>;
+               usb_vbus2-supply = <&usb_vbus1>;
+               usb_vbus3-supply = <&vdd_3v3>;
+               hvdd_usb-supply = <&vdd_3v3>;
+               avdd_pll_utmip-supply = <&max77620_sd3>;
+               vddio_hsic-supply = <&max77620_ldo0>;
+               avddio_usb-supply = <&max77620_ldo1>;
+               dvdd_sata-supply = <&max77620_ldo8>;
+               avddio_pll_uerefe-supply = <&max77620_ldo7>;
+       };
+
+       xudc@700d0000 {
+                hvdd_usb-supply = <&vdd_3v3>;
+                avdd_pll_utmip-supply = <&max77620_sd3>;
+                avddio_usb-supply = <&max77620_ldo1>;
+                avddio_pll_uerefe-supply = <&max77620_ldo7>;
+        };
+
+       xotg {
+               usb_vbus-supply = <&battery_reg>;
+       };
+
+       otg@7d000000 {
+               usb_vbus-supply = <&battery_reg>;
+       };
+
+       sdhci@700b0600 {
+               vddio_sdmmc-supply = <&max77620_sd3>;
+               vddio_sd_slot-supply = <&vdd_3v3>;
+       };
+
+       sdhci@700b0400 {
+               vddio_sdmmc-supply = <&max77620_sd3>;
+               vddio_sd_slot-supply = <&vdd_3v3>;
+       };
+
+       sdhci@700b0200 {
+               vddio_sdmmc-supply = <&max77620_sd3>;
+               vddio_sd_slot-supply = <&vdd_3v3>;
+       };
+
+       sdhci@700b0000 {
+               vddio_sdmmc-supply = <&max77620_ldo2>;
+               vddio_sd_slot-supply = <&en_vdd_sd>;
+       };
+
+       sata@70020000 {
+               hvdd_sata-supply = <&max77620_sd3>;
+               hvdd_pex_pll_e-supply = <&max77620_sd3>;
+               l0_hvddio_sata-supply = <&max77620_sd3>;
+               l0_dvddio_sata-supply = <&max77620_ldo8>;
+               dvdd_sata_pll-supply = <&max77620_ldo8>;
+       };
+
+       bluedroid_pm {
+               avdd-supply = <&battery_reg>;
+               dvdd-supply = <&max77620_sd3>;
+       };
+
+       pwm-fan {
+               vdd-fan-supply = <&vdd_fan>;
+       };
+
+       pmc@7000e400 {
+               bootrom-commands {
+                       commands@4-003c {
+                               nvidia,command-names = "pmic-rails";
+                               reg = <0x3c>;
+                               nvidia,enable-8bit-register;
+                               nvidia,enable-8bit-data;
+                               nvidia,controller-type-i2c;
+                               nvidia,controller-id = <4>;
+                               nvidia,enable-controller-reset;
+                               nvidia,write-commands = <0x00000016 0x00000020>;
+                       };
+               };
+       };
+
+       host1x {
+               dc@54200000 {
+                       avdd_dsi_csi-supply = <&max77620_ldo0>;
+                       avdd_lcd-supply = <&en_avdd_disp_3v3>;
+                       dvdd_lcd-supply = <&en_dvdd_disp_1v8>;
+                       vdd_lcd_bl_en-supply = <&lcd_bl_en>;
+                       vdd_lcd_bl-supply = <&vdd_3v3>;
+               };
+
+               vi {
+                       avdd_dsi_csi-supply = <&max77620_ldo0>;
+               };
+       };
+
+       pwm-fan {
+               vdd-fan-supply = <&vdd_fan>;
+       };
+
+       otg@7d000000 {
+               usb_vbus-supply = <&usb_vbus1>;
+       };
+
+       xusb@70090000 {
+               usb_vbus1-supply = <&en_vdd_eth_5v0>;
+               usb_vbus2-supply = <&en_usb_vbus2>;
+       };
+
+       spi@7000da00 {
+               spi-touch19x12@0 {
+                       avdd-supply = <&en_vdd_ts_hv_3v3>;
+                       dvdd-supply = <&en_vdd_ts_1v8>;
+               };
+       };
+
+       pmc-iopower {
+               iopower-sys-supply = <&max77620_sd3>;
+               iopower-uart-supply = <&max77620_sd3>;
+               iopower-audio-supply = <&max77620_sd3>;
+               iopower-cam-supply = <&max77620_sd3>;
+               iopower-pex-ctrl-supply = <&max77620_sd3>;
+               iopower-sdmmc1-supply = <&max77620_ldo2>;
+               iopower-sdmmc3-supply = <&max77620_sd3>;
+               iopower-sdmmc4-supply = <&max77620_sd3>;
+               iopower-audio-hv-supply = <&max77620_sd3>;
+               iopower-debug-supply = <&max77620_sd3>;
+               iopower-dmic-supply = <&max77620_sd3>;
+               iopower-gpio-supply = <&max77620_sd3>;
+               iopower-spi-supply = <&max77620_sd3>;
+               iopower-spi-hv-supply = <&max77620_sd3>;
+               iopower-sdmmc2-supply = <&max77620_sd3>;
+               iopower-dp-supply = <&max77620_sd3>;
+       };
+
+       pmc@7000e400 {
+               io-pad-defaults {
+                       audio-hv {
+                               nvidia,io-pad-init-voltage = <IO_PAD_VOLTAGE_1_8V>;
+                       };
+
+                       spi-hv {
+                               nvidia,io-pad-init-voltage = <IO_PAD_VOLTAGE_1_8V>;
+                       };
+
+                       gpio {
+                               nvidia,io-pad-init-voltage = <IO_PAD_VOLTAGE_1_8V>;
+                       };
+                       sdmmc3 {
+                               nvidia,io-pad-init-voltage = <IO_PAD_VOLTAGE_1_8V>;
+                       };
+               };
+       };
+};
diff --git a/arch/arm64/boot/dts/tegra210-t18x-interposer-e3301-1000-a00-00.dts b/arch/arm64/boot/dts/tegra210-t18x-interposer-e3301-1000-a00-00.dts
new file mode 100644 (file)
index 0000000..87d4f23
--- /dev/null
@@ -0,0 +1,29 @@
+/*
+ * tegra210-t18x-interposer-p3310-1000-a00-00.dts: T18X interposer
+ *             T210 + E2226 (T210 to T186 interposer) +
+ *             P3301-1000-a00 (T186 CVM board bringup SKU) +
+ *             P2597 (Jetson CVB)
+ *
+ * Copyright (c) 2015, NVIDIA CORPORATION.  All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ */
+
+#include "tegra210-t18x-interposer-e3301-p3310-common.dtsi"
+#include "tegra210-platforms/tegra210-t18x-interposer-power-tree-e3301-1000-a00-00.dtsi"
+
+/ {
+       model = "t18x-interposer";
+       compatible = "nvidia,t18x-interposer", "nvidia,tegra210";
+       nvidia,dtsfilename = __FILE__;
+
+       nvidia,proc-boardid = "e3301:1000:A0";
+};
diff --git a/arch/arm64/boot/dts/tegra210-t18x-interposer-e3301-p3310-common.dtsi b/arch/arm64/boot/dts/tegra210-t18x-interposer-e3301-p3310-common.dtsi
new file mode 100644 (file)
index 0000000..295cdf4
--- /dev/null
@@ -0,0 +1,62 @@
+/*
+ * tegra210-t18x-interposer-e3301-p3310-common.dtsi: Common DTSI for
+ *     E3301-* and P3310-*.
+ *
+ * Copyright (c) 2015, NVIDIA CORPORATION.  All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ */
+
+/dts-v1/;
+
+/memreserve/ 0x80000000 0x00020000;
+
+#include "tegra210-common.dtsi"
+
+/ {
+       #address-cells = <2>;
+       #size-cells = <2>;
+
+       pmc@7000e400 {
+               nvidia,invert-interrupt;
+       };
+
+       memory@80000000 {
+               device_type = "memory";
+               reg = < 0x0 0x80000000 0x0 0x80000000 >;
+       };
+
+       serial@70006040 {
+               status = "okay";
+       };
+
+       spi@7000da00 {
+               status = "ok";
+       };
+
+       spi@7000d400 {
+               status = "okay";
+       };
+
+       extcon {
+               extcon@0 {
+                       status = "disabled";
+               };
+       };
+
+       i2c@7000c400 {
+               nvidia,clock-always-on;
+       };
+
+       i2c@7000d000 {
+               clock-frequency = <1000000>;
+       };
+};
diff --git a/arch/arm64/boot/dts/tegra210-t18x-interposer-p3310-1000-a00-00.dts b/arch/arm64/boot/dts/tegra210-t18x-interposer-p3310-1000-a00-00.dts
new file mode 100644 (file)
index 0000000..d49b7fd
--- /dev/null
@@ -0,0 +1,29 @@
+/*
+ * tegra210-t18x-interposer-p3310-1000-a00-00.dts: T18X interposer
+ *             T210 + E2226 (T210 to T186 interposer) +
+ *             P3310 (T186 CVM board) +
+ *             P2597 (Jetson CVB)
+ *
+ * Copyright (c) 2015, NVIDIA CORPORATION.  All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ */
+
+#include "tegra210-t18x-interposer-e3301-p3310-common.dtsi"
+#include "tegra210-platforms/tegra210-t18x-interposer-power-tree-p3310-1000-a00-00.dtsi"
+
+/ {
+       model = "t18x-interposer";
+       compatible = "nvidia,t18x-interposer", "nvidia,tegra210";
+       nvidia,dtsfilename = __FILE__;
+
+       nvidia,proc-boardid = "p3310:1000:A0";
+};
index 35c4424b4b2415b9d2e01c54a34166087e417705..f00105db46b02f91efe434bde7ee5ba717e43b16 100644 (file)
@@ -227,6 +227,8 @@ static void __init tegra_t210ref_early_init(void)
                tegra_soc_device_init("jetson_cv");
        else if (of_machine_is_compatible("nvidia,he2290"))
                tegra_soc_device_init("he2290");
+       else if (of_machine_is_compatible("nvidia,t18x-interposer"))
+               tegra_soc_device_init("t18x-interposer");
 }
 
 static struct tegra_suspend_platform_data t210ref_suspend_data = {
@@ -417,6 +419,7 @@ static const char * const t210ref_dt_board_compat[] = {
        "nvidia,odin",
        "nvidia,jetson-cv",
        "nvidia,he2290",
+       "nvidia,t18x-interposer",
        NULL
 };