xref: /linux/Documentation/devicetree/bindings/regulator/regulator-max77620.txt (revision a1c613ae4c322ddd58d5a8539dbfba2a0380a8c0)
1004dd4e4SLaxman DewanganRegulator DT binding for MAX77620 Power management IC from Maxim Semiconductor.
2004dd4e4SLaxman Dewangan
3004dd4e4SLaxman DewanganDevice has multiple DCDC(sd[0-3] and LDOs(ldo[0-8]). The input supply
4004dd4e4SLaxman Dewanganof these regulators are defined under parent device node.
5004dd4e4SLaxman DewanganDetails of regulator properties are defined as child node under
6004dd4e4SLaxman Dewangansub-node "regulators" which is child node of device node.
7004dd4e4SLaxman Dewangan
8004dd4e4SLaxman DewanganPlease refer file <Documentation/devicetree/bindings/regulator/regulator.txt>
9004dd4e4SLaxman Dewanganfor common regulator bindings used by client.
10004dd4e4SLaxman Dewangan
11004dd4e4SLaxman DewanganFollowing are properties of parent node related to regulators.
12004dd4e4SLaxman Dewangan
13004dd4e4SLaxman DewanganOptional properties:
14004dd4e4SLaxman Dewangan-------------------
15004dd4e4SLaxman DewanganThe input supply of regulators are the optional properties on the
16004dd4e4SLaxman Dewanganparent device node. The input supply of these regulators are provided
17004dd4e4SLaxman Dewanganthrough following properties:
18004dd4e4SLaxman Dewanganin-sd0-supply:		Input supply for SD0, INA-SD0 or INB-SD0 pins.
19004dd4e4SLaxman Dewanganin-sd1-supply:		Input supply for SD1.
20004dd4e4SLaxman Dewanganin-sd2-supply:		Input supply for SD2.
21004dd4e4SLaxman Dewanganin-sd3-supply:		Input supply for SD3.
22004dd4e4SLaxman Dewanganin-ldo0-1-supply:	Input supply for LDO0 and LDO1.
23004dd4e4SLaxman Dewanganin-ldo2-supply:		Input supply for LDO2.
24004dd4e4SLaxman Dewanganin-ldo3-5-supply:	Input supply for LDO3 and LDO5
25004dd4e4SLaxman Dewanganin-ldo4-6-supply:	Input supply for LDO4 and LDO6.
26004dd4e4SLaxman Dewanganin-ldo7-8-supply:	Input supply for LDO7 and LDO8.
27004dd4e4SLaxman Dewangan
28004dd4e4SLaxman DewanganOptional sub nodes for regulators under "regulators" subnode:
29004dd4e4SLaxman Dewangan------------------------------------------------------------
30004dd4e4SLaxman DewanganThe subnodes name is the name of regulator and it must be one of:
31004dd4e4SLaxman Dewangan	sd[0-3], ldo[0-8]
32004dd4e4SLaxman Dewangan
33004dd4e4SLaxman DewanganEach sub-node should contain the constraints and initialization
34004dd4e4SLaxman Dewanganinformation for that regulator. The definition for each of these
35004dd4e4SLaxman Dewangannodes is defined using the standard binding for regulators found at
36004dd4e4SLaxman Dewangan<Documentation/devicetree/bindings/regulator/regulator.txt>.
37004dd4e4SLaxman Dewangan
38*47aab533SBjorn HelgaasThere are also additional properties for SD/LDOs. These additional properties
39004dd4e4SLaxman Dewanganare required to configure FPS configuration parameters for SDs and LDOs.
40004dd4e4SLaxman DewanganPlease refer <devicetree/bindings/mfd/max77620.txt> for more detail of Flexible
41004dd4e4SLaxman DewanganPower Sequence (FPS).
42004dd4e4SLaxman DewanganFollowing are additional properties:
43004dd4e4SLaxman Dewangan
44004dd4e4SLaxman Dewangan- maxim,active-fps-source:		FPS source for the regulators to get
45004dd4e4SLaxman Dewangan					enabled/disabled when system is in
46004dd4e4SLaxman Dewangan					active state.  Valid values are:
47004dd4e4SLaxman Dewangan					- MAX77620_FPS_SRC_0,
48004dd4e4SLaxman Dewangan						FPS source is FPS0.
49004dd4e4SLaxman Dewangan					- MAX77620_FPS_SRC_1,
50004dd4e4SLaxman Dewangan						FPS source is FPS1
51004dd4e4SLaxman Dewangan					- MAX77620_FPS_SRC_2 and
52004dd4e4SLaxman Dewangan						FPS source is FPS2
53004dd4e4SLaxman Dewangan					- MAX77620_FPS_SRC_NONE.
54004dd4e4SLaxman Dewangan						Regulator is not controlled
55004dd4e4SLaxman Dewangan						by FPS events and it gets
56004dd4e4SLaxman Dewangan						enabled/disabled by register
57004dd4e4SLaxman Dewangan						access.
58004dd4e4SLaxman Dewangan					Absence of this property will leave
59004dd4e4SLaxman Dewangan					the FPS configuration register for that
60004dd4e4SLaxman Dewangan					regulator to default configuration.
61004dd4e4SLaxman Dewangan
62004dd4e4SLaxman Dewangan- maxim,active-fps-power-up-slot:	Sequencing event slot number on which
63004dd4e4SLaxman Dewangan					the regulator get enabled when
64004dd4e4SLaxman Dewangan					master FPS input event set to HIGH.
65004dd4e4SLaxman Dewangan					Valid values are 0 to 7.
66004dd4e4SLaxman Dewangan					This is applicable if FPS source is
67004dd4e4SLaxman Dewangan					selected as FPS0, FPS1 or FPS2.
68004dd4e4SLaxman Dewangan
69004dd4e4SLaxman Dewangan- maxim,active-fps-power-down-slot:	Sequencing event slot number on which
70004dd4e4SLaxman Dewangan					the regulator get disabled when master
71004dd4e4SLaxman Dewangan					FPS input event set to LOW.
72004dd4e4SLaxman Dewangan					Valid values are 0 to 7.
73004dd4e4SLaxman Dewangan					This is applicable if FPS source is
74004dd4e4SLaxman Dewangan					selected as FPS0, FPS1 or FPS2.
75004dd4e4SLaxman Dewangan
76004dd4e4SLaxman Dewangan- maxim,suspend-fps-source:		This is same as property
77004dd4e4SLaxman Dewangan					"maxim,active-fps-source" but value
78004dd4e4SLaxman Dewangan					get configured when system enters in
79004dd4e4SLaxman Dewangan					to suspend state.
80004dd4e4SLaxman Dewangan
81004dd4e4SLaxman Dewangan- maxim,suspend-fps-power-up-slot:	This is same as property
82004dd4e4SLaxman Dewangan					"maxim,active-fps-power-up-slot" but
83004dd4e4SLaxman Dewangan					this value get configured into FPS
84004dd4e4SLaxman Dewangan					configuration register when system
85004dd4e4SLaxman Dewangan					enters into suspend.
86004dd4e4SLaxman Dewangan					This is applicable if suspend state
87004dd4e4SLaxman Dewangan					FPS source is selected as FPS0, FPS1 or
88004dd4e4SLaxman Dewangan
89004dd4e4SLaxman Dewangan- maxim,suspend-fps-power-down-slot:	This is same as property
90004dd4e4SLaxman Dewangan					"maxim,active-fps-power-down-slot" but
91004dd4e4SLaxman Dewangan					this value get configured into FPS
92004dd4e4SLaxman Dewangan					configuration register when system
93004dd4e4SLaxman Dewangan					enters into suspend.
94004dd4e4SLaxman Dewangan					This is applicable if suspend state
95004dd4e4SLaxman Dewangan					FPS source is selected as FPS0, FPS1 or
96004dd4e4SLaxman Dewangan					FPS2.
97e7fc278cSLaxman Dewangan- maxim,ramp-rate-setting:		integer, ramp rate(uV/us) setting to be
98e7fc278cSLaxman Dewangan					configured to the device.
99e7fc278cSLaxman Dewangan					The platform may have different ramp
100e7fc278cSLaxman Dewangan					rate than advertised ramp rate if it has
101e7fc278cSLaxman Dewangan					design variation from Maxim's
102e7fc278cSLaxman Dewangan					recommended. On this case, platform
103e7fc278cSLaxman Dewangan					specific ramp rate is used for ramp time
104e7fc278cSLaxman Dewangan					calculation and this property is used
105e7fc278cSLaxman Dewangan					for device register configurations.
106e7fc278cSLaxman Dewangan					The measured ramp rate of platform is
107e7fc278cSLaxman Dewangan					provided by the regulator-ramp-delay
108e7fc278cSLaxman Dewangan					as described in <devicetree/bindings/
109e7fc278cSLaxman Dewangan					regulator/regulator.txt>.
110e7fc278cSLaxman Dewangan					Maxim Max77620 supports following ramp
111e7fc278cSLaxman Dewangan					delay:
112e7fc278cSLaxman Dewangan					  SD: 13.75mV/us, 27.5mV/us, 55mV/us
113e7fc278cSLaxman Dewangan					  LDOs: 5mV/us, 100mV/us
114e7fc278cSLaxman Dewangan
115e7fc278cSLaxman DewanganNote: If the measured ramp delay is same as advertised ramp delay then it is not
116e7fc278cSLaxman Dewanganrequired to provide the ramp delay with property "maxim,ramp-rate-setting". The
117e7fc278cSLaxman Dewanganramp rate can be provided by the regulator-ramp-delay which will be used for
118e7fc278cSLaxman Dewanganramp time calculation for voltage change as well as for device configuration.
119004dd4e4SLaxman Dewangan
120004dd4e4SLaxman DewanganExample:
121004dd4e4SLaxman Dewangan--------
122004dd4e4SLaxman Dewangan#include <dt-bindings/mfd/max77620.h>
123004dd4e4SLaxman Dewangan...
124004dd4e4SLaxman Dewanganmax77620@3c {
125004dd4e4SLaxman Dewangan	in-ldo0-1-supply = <&max77620_sd2>;
126004dd4e4SLaxman Dewangan	in-ldo7-8-supply = <&max77620_sd2>;
127004dd4e4SLaxman Dewangan	regulators {
128004dd4e4SLaxman Dewangan		sd0 {
129004dd4e4SLaxman Dewangan			regulator-name = "vdd-core";
130004dd4e4SLaxman Dewangan			regulator-min-microvolt = <600000>;
131004dd4e4SLaxman Dewangan			regulator-max-microvolt = <1400000>;
132004dd4e4SLaxman Dewangan			regulator-boot-on;
133004dd4e4SLaxman Dewangan			regulator-always-on;
134004dd4e4SLaxman Dewangan			maxim,active-fps-source = <MAX77620_FPS_SRC_1>;
135004dd4e4SLaxman Dewangan		};
136004dd4e4SLaxman Dewangan
137004dd4e4SLaxman Dewangan		sd1 {
138004dd4e4SLaxman Dewangan			regulator-name = "vddio-ddr";
139004dd4e4SLaxman Dewangan			regulator-min-microvolt = <1200000>;
140004dd4e4SLaxman Dewangan			regulator-max-microvolt = <1200000>;
141004dd4e4SLaxman Dewangan			regulator-always-on;
142004dd4e4SLaxman Dewangan			regulator-boot-on;
143004dd4e4SLaxman Dewangan			maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
144004dd4e4SLaxman Dewangan		};
145004dd4e4SLaxman Dewangan
146004dd4e4SLaxman Dewangan		sd2 {
147004dd4e4SLaxman Dewangan			regulator-name = "vdd-pre-reg";
148004dd4e4SLaxman Dewangan			regulator-min-microvolt = <1350000>;
149004dd4e4SLaxman Dewangan			regulator-max-microvolt = <1350000>;
150004dd4e4SLaxman Dewangan		};
151004dd4e4SLaxman Dewangan
152004dd4e4SLaxman Dewangan		sd3 {
153004dd4e4SLaxman Dewangan			regulator-name = "vdd-1v8";
154004dd4e4SLaxman Dewangan			regulator-min-microvolt = <1800000>;
155004dd4e4SLaxman Dewangan			regulator-max-microvolt = <1800000>;
156004dd4e4SLaxman Dewangan			regulator-always-on;
157004dd4e4SLaxman Dewangan			regulator-boot-on;
158004dd4e4SLaxman Dewangan		};
159004dd4e4SLaxman Dewangan
160004dd4e4SLaxman Dewangan		ldo0 {
161004dd4e4SLaxman Dewangan			regulator-name = "avdd-sys";
162004dd4e4SLaxman Dewangan			regulator-min-microvolt = <1200000>;
163004dd4e4SLaxman Dewangan			regulator-max-microvolt = <1200000>;
164004dd4e4SLaxman Dewangan			regulator-always-on;
165004dd4e4SLaxman Dewangan			regulator-boot-on;
166004dd4e4SLaxman Dewangan		};
167004dd4e4SLaxman Dewangan
168004dd4e4SLaxman Dewangan		ldo1 {
169004dd4e4SLaxman Dewangan			regulator-name = "vdd-pex";
170004dd4e4SLaxman Dewangan			regulator-min-microvolt = <1050000>;
171004dd4e4SLaxman Dewangan			regulator-max-microvolt = <1050000>;
172004dd4e4SLaxman Dewangan		};
173004dd4e4SLaxman Dewangan
174004dd4e4SLaxman Dewangan		ldo2 {
175004dd4e4SLaxman Dewangan			regulator-name = "vddio-sdmmc3";
176004dd4e4SLaxman Dewangan			regulator-min-microvolt = <1800000>;
177004dd4e4SLaxman Dewangan			regulator-max-microvolt = <3300000>;
178004dd4e4SLaxman Dewangan		};
179004dd4e4SLaxman Dewangan
180004dd4e4SLaxman Dewangan		ldo3 {
181004dd4e4SLaxman Dewangan			regulator-name = "vdd-cam-hv";
182004dd4e4SLaxman Dewangan			regulator-min-microvolt = <2800000>;
183004dd4e4SLaxman Dewangan			regulator-max-microvolt = <2800000>;
184004dd4e4SLaxman Dewangan		};
185004dd4e4SLaxman Dewangan
186004dd4e4SLaxman Dewangan		ldo4 {
187004dd4e4SLaxman Dewangan			regulator-name = "vdd-rtc";
188004dd4e4SLaxman Dewangan			regulator-min-microvolt = <1250000>;
189004dd4e4SLaxman Dewangan			regulator-max-microvolt = <1250000>;
190004dd4e4SLaxman Dewangan			regulator-always-on;
191004dd4e4SLaxman Dewangan			regulator-boot-on;
192004dd4e4SLaxman Dewangan		};
193004dd4e4SLaxman Dewangan
194004dd4e4SLaxman Dewangan		ldo5 {
195004dd4e4SLaxman Dewangan			regulator-name = "avdd-ts-hv";
196004dd4e4SLaxman Dewangan			regulator-min-microvolt = <3000000>;
197004dd4e4SLaxman Dewangan			regulator-max-microvolt = <3000000>;
198004dd4e4SLaxman Dewangan		};
199004dd4e4SLaxman Dewangan
200004dd4e4SLaxman Dewangan		ldo6 {
201004dd4e4SLaxman Dewangan			regulator-name = "vdd-ts";
202004dd4e4SLaxman Dewangan			regulator-min-microvolt = <1800000>;
203004dd4e4SLaxman Dewangan			regulator-max-microvolt = <1800000>;
204004dd4e4SLaxman Dewangan			regulator-always-on;
205004dd4e4SLaxman Dewangan			regulator-boot-on;
206004dd4e4SLaxman Dewangan		};
207004dd4e4SLaxman Dewangan
208004dd4e4SLaxman Dewangan		ldo7 {
209004dd4e4SLaxman Dewangan			regulator-name = "vdd-gen-pll-edp";
210004dd4e4SLaxman Dewangan			regulator-min-microvolt = <1050000>;
211004dd4e4SLaxman Dewangan			regulator-max-microvolt = <1050000>;
212004dd4e4SLaxman Dewangan			regulator-always-on;
213004dd4e4SLaxman Dewangan			regulator-boot-on;
214004dd4e4SLaxman Dewangan		};
215004dd4e4SLaxman Dewangan
216004dd4e4SLaxman Dewangan		ldo8 {
217004dd4e4SLaxman Dewangan			regulator-name = "vdd-hdmi-dp";
218004dd4e4SLaxman Dewangan			regulator-min-microvolt = <1050000>;
219004dd4e4SLaxman Dewangan			regulator-max-microvolt = <1050000>;
220004dd4e4SLaxman Dewangan		};
221004dd4e4SLaxman Dewangan	};
222004dd4e4SLaxman Dewangan};
223