Merge branch 'for-5.5' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie...
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / regulator / nvidia,tegra-regulators-coupling.txt
1 NVIDIA Tegra Regulators Coupling
2 ================================
3
4 NVIDIA Tegra SoC's have a mandatory voltage-coupling between regulators.
5 Thus on Tegra20 there are 3 coupled regulators and on NVIDIA Tegra30
6 there are 2.
7
8 Tegra20 voltage coupling
9 ------------------------
10
11 On Tegra20 SoC's there are 3 coupled regulators: CORE, RTC and CPU.
12 The CORE and RTC voltages shall be in a range of 170mV from each other
13 and they both shall be higher than the CPU voltage by at least 120mV.
14
15 Tegra30 voltage coupling
16 ------------------------
17
18 On Tegra30 SoC's there are 2 coupled regulators: CORE and CPU. The CORE
19 and CPU voltages shall be in a range of 300mV from each other and CORE
20 voltage shall be higher than the CPU by N mV, where N depends on the CPU
21 voltage.
22
23 Required properties:
24 - nvidia,tegra-core-regulator: Boolean property that designates regulator
25   as the "Core domain" voltage regulator.
26 - nvidia,tegra-rtc-regulator: Boolean property that designates regulator
27   as the "RTC domain" voltage regulator.
28 - nvidia,tegra-cpu-regulator: Boolean property that designates regulator
29   as the "CPU domain" voltage regulator.
30
31 Example:
32
33         pmic {
34                 regulators {
35                         core_vdd_reg: core {
36                                 regulator-name = "vdd_core";
37                                 regulator-min-microvolt = <950000>;
38                                 regulator-max-microvolt = <1300000>;
39                                 regulator-coupled-with = <&rtc_vdd_reg &cpu_vdd_reg>;
40                                 regulator-coupled-max-spread = <170000 550000>;
41
42                                 nvidia,tegra-core-regulator;
43                         };
44
45                         rtc_vdd_reg: rtc {
46                                 regulator-name = "vdd_rtc";
47                                 regulator-min-microvolt = <950000>;
48                                 regulator-max-microvolt = <1300000>;
49                                 regulator-coupled-with = <&core_vdd_reg &cpu_vdd_reg>;
50                                 regulator-coupled-max-spread = <170000 550000>;
51
52                                 nvidia,tegra-rtc-regulator;
53                         };
54
55                         cpu_vdd_reg: cpu {
56                                 regulator-name = "vdd_cpu";
57                                 regulator-min-microvolt = <750000>;
58                                 regulator-max-microvolt = <1125000>;
59                                 regulator-coupled-with = <&core_vdd_reg &rtc_vdd_reg>;
60                                 regulator-coupled-max-spread = <550000 550000>;
61
62                                 nvidia,tegra-cpu-regulator;
63                         };
64                 };
65         };