// SPDX-License-Identifier: GPL-2.0

#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/gpio/gpio.h>

/ {
	i2c@7000d000 {
		pmic: pmic@2d {
			compatible = "ti,tps65911";
			reg = <0x2d>;

			interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
			#interrupt-cells = <2>;
			interrupt-controller;
			wakeup-source;

			ti,en-gpio-sleep = <0 0 1 0 0 0 0 0 0>;
			ti,system-power-controller;
			ti,sleep-keep-ck32k;
			ti,sleep-enable;

			#gpio-cells = <2>;
			gpio-controller;

			vcc1-supply = <&vdd_5v0_sys>;
			vcc2-supply = <&vdd_5v0_sys>;
			vcc3-supply = <&vdd_1v8>;
			vcc4-supply = <&vdd_5v0_sys>;
			vcc5-supply = <&vdd_5v0_sys>;
			vcc6-supply = <&vdd2_reg>;
			vcc7-supply = <&vdd_5v0_sys>;
			vccio-supply = <&vdd_5v0_sys>;

			regulators {
				vdd1 {
					regulator-name = "vddio_ddr_1v2";
					regulator-min-microvolt = <600000>;
					regulator-max-microvolt = <1500000>;
					regulator-always-on;
					regulator-boot-on;
					ti,regulator-ext-sleep-control = <8>;
				};

				vdd2_reg: vdd2 {
					regulator-name = "vdd2_1v2";
					regulator-min-microvolt = <1200000>;
					regulator-max-microvolt = <1200000>;
					regulator-always-on;
					regulator-boot-on;
				};

				vdd_cpu: vddctrl {
					regulator-name = "vdd_cpu,vdd_sys";
					regulator-min-microvolt = <800000>;
					regulator-max-microvolt = <1250000>;
					regulator-coupled-with = <&vdd_core>;
					regulator-coupled-max-spread = <300000>;
					regulator-max-step-microvolt = <100000>;
					regulator-always-on;
					ti,regulator-ext-sleep-control = <1>;

					nvidia,tegra-cpu-regulator;
				};

				vdd_1v8: vio {
					regulator-name = "vdd_1v8_gen";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-always-on;
					regulator-boot-on;
				};

				vcore_emmc: ldo1 {
					regulator-name = "vdd_pexa,vdd_pexb";
					regulator-min-microvolt = <1000000>;
					regulator-max-microvolt = <3300000>;
					regulator-always-on;
				};

				ldo2 {
					regulator-name = "vdd_sata,avdd_plle";
					regulator-min-microvolt = <1050000>;
					regulator-max-microvolt = <1050000>;
				};

				/* LDO3 is not connected to anything */

				ldo4 {
					regulator-name = "vdd_rtc";
					regulator-min-microvolt = <1200000>;
					regulator-max-microvolt = <1200000>;
					regulator-always-on;
				};

				ldo5 {
					regulator-name = "vddio_sdmmc,avdd_vdac";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
				};

				ldo6 {
					regulator-name = "avdd_dsi_csi,pwrdet_mipi";
					regulator-min-microvolt = <1200000>;
					regulator-max-microvolt = <1200000>;
				};

				ldo7 {
					regulator-name = "vdd_pllm,x,u,a_p_c_s";
					regulator-min-microvolt = <1200000>;
					regulator-max-microvolt = <1200000>;
					regulator-always-on;
					regulator-boot-on;
					ti,regulator-ext-sleep-control = <8>;
				};

				ldo8 {
					regulator-name = "vdd_ddr_hs";
					regulator-min-microvolt = <1000000>;
					regulator-max-microvolt = <1000000>;
					regulator-always-on;
					ti,regulator-ext-sleep-control = <8>;
				};
			};
		};

		vdd_core: core-regulator@60 {
			compatible = "ti,tps62361";
			reg = <0x60>;

			regulator-name = "tps62361-vout";
			regulator-min-microvolt = <500000>;
			regulator-max-microvolt = <1350000>;
			regulator-coupled-with = <&vdd_cpu>;
			regulator-coupled-max-spread = <300000>;
			regulator-max-step-microvolt = <100000>;
			regulator-boot-on;
			regulator-always-on;
			ti,enable-vout-discharge;
			ti,vsel0-state-high;
			ti,vsel1-state-high;

			nvidia,tegra-core-regulator;
		};
	};

	vdd_3v3_sys: regulator@1 {
		gpio = <&pmic 6 GPIO_ACTIVE_HIGH>;
		enable-active-high;
	};

	pmc@7000e400 {
		i2c-thermtrip {
			nvidia,i2c-controller-id = <4>;
			nvidia,bus-addr = <0x2d>;
			nvidia,reg-addr = <0x3f>;
			nvidia,reg-data = <0x80>;
		};
	};
};
