NVIDIA Tegra Regulators Coupling ================================ NVIDIA Tegra SoC's have a mandatory voltage-coupling between regulators. Thus on Tegra20 there are 3 coupled regulators and on NVIDIA Tegra30 there are 2. Tegra20 voltage coupling ------------------------ On Tegra20 SoC's there are 3 coupled regulators: CORE, RTC and CPU. The CORE and RTC voltages shall be in a range of 170mV from each other and they both shall be higher than the CPU voltage by at least 120mV. Tegra30 voltage coupling ------------------------ On Tegra30 SoC's there are 2 coupled regulators: CORE and CPU. The CORE and CPU voltages shall be in a range of 300mV from each other and CORE voltage shall be higher than the CPU by N mV, where N depends on the CPU voltage. Required properties: - nvidia,tegra-core-regulator: Boolean property that designates regulator as the "Core domain" voltage regulator. - nvidia,tegra-rtc-regulator: Boolean property that designates regulator as the "RTC domain" voltage regulator. - nvidia,tegra-cpu-regulator: Boolean property that designates regulator as the "CPU domain" voltage regulator. Example: pmic { regulators { core_vdd_reg: core { regulator-name = "vdd_core"; regulator-min-microvolt = <950000>; regulator-max-microvolt = <1300000>; regulator-coupled-with = <&rtc_vdd_reg &cpu_vdd_reg>; regulator-coupled-max-spread = <170000 550000>; nvidia,tegra-core-regulator; }; rtc_vdd_reg: rtc { regulator-name = "vdd_rtc"; regulator-min-microvolt = <950000>; regulator-max-microvolt = <1300000>; regulator-coupled-with = <&core_vdd_reg &cpu_vdd_reg>; regulator-coupled-max-spread = <170000 550000>; nvidia,tegra-rtc-regulator; }; cpu_vdd_reg: cpu { regulator-name = "vdd_cpu"; regulator-min-microvolt = <750000>; regulator-max-microvolt = <1125000>; regulator-coupled-with = <&core_vdd_reg &rtc_vdd_reg>; regulator-coupled-max-spread = <550000 550000>; nvidia,tegra-cpu-regulator; }; }; };