xref: /freebsd/sys/contrib/device-tree/Bindings/regulator/max77802.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1Binding for Maxim MAX77802 regulators
2
3This is a part of device tree bindings of MAX77802 multi-function device.
4More information can be found in bindings/mfd/max77802.txt file.
5
6The MAX77802 PMIC has 10 high-efficiency Buck and 32 Low-dropout (LDO)
7regulators that can be controlled over I2C.
8
9Following properties should be present in main device node of the MFD chip.
10
11Optional properties:
12- inb1-supply:  The input supply for BUCK1
13- inb2-supply:  The input supply for BUCK2
14- inb3-supply:  The input supply for BUCK3
15- inb4-supply:  The input supply for BUCK4
16- inb5-supply:  The input supply for BUCK5
17- inb6-supply:  The input supply for BUCK6
18- inb7-supply:  The input supply for BUCK7
19- inb8-supply:  The input supply for BUCK8
20- inb9-supply:  The input supply for BUCK9
21- inb10-supply: The input supply for BUCK10
22- inl1-supply:  The input supply for LDO8 and LDO15
23- inl2-supply:  The input supply for LDO17, LDO27, LDO30 and LDO35
24- inl3-supply:  The input supply for LDO3, LDO5, LDO6 and LDO7
25- inl4-supply:  The input supply for LDO10, LDO11, LDO13 and LDO14
26- inl5-supply:  The input supply for LDO9 and LDO19
27- inl6-supply:  The input supply for LDO4, LDO21, LDO24 and LDO33
28- inl7-supply:  The input supply for LDO18, LDO20, LDO28 and LDO29
29- inl9-supply:  The input supply for LDO12, LDO23, LDO25, LDO26, LDO32 and LDO34
30- inl10-supply: The input supply for LDO1 and LDO2
31
32Optional nodes:
33- regulators : The regulators of max77802 have to be instantiated
34  under subnode named "regulators" using the following format.
35
36	regulator-name {
37		standard regulator constraints....
38	};
39	refer Documentation/devicetree/bindings/regulator/regulator.txt
40
41The regulator node name should be initialized with a string to get matched
42with their hardware counterparts as follow. The valid names are:
43
44	-LDOn 	:	for LDOs, where n can lie in ranges 1-15, 17-21, 23-30
45			and 32-35.
46			example: LDO1, LDO2, LDO35.
47	-BUCKn 	:	for BUCKs, where n can lie in range 1 to 10.
48			example: BUCK1, BUCK5, BUCK10.
49
50The max77802 regulator supports two different operating modes: Normal and Low
51Power Mode. Some regulators support the modes to be changed at startup or by
52the consumers during normal operation while others only support to change the
53mode during system suspend. The standard regulator suspend states binding can
54be used to configure the regulator operating mode.
55
56The regulators that support the standard "regulator-initial-mode" property,
57changing their mode during normal operation are: LDOs 1, 3, 20 and 21.
58
59The possible values for "regulator-initial-mode" and "regulator-mode" are:
60	1: Normal regulator voltage output mode.
61	3: Low Power which reduces the quiescent current down to only 1uA
62
63The valid modes list is defined in the dt-bindings/regulator/maxim,max77802.h
64header and can be included by device tree source files.
65
66The standard "regulator-mode" property can only be used for regulators that
67support changing their mode to Low Power Mode during suspend. These regulators
68are: BUCKs 2-4 and LDOs 1-35. Also, it only takes effect if the regulator has
69been enabled for the given suspend state using "regulator-on-in-suspend" and
70has not been disabled for that state using "regulator-off-in-suspend".
71
72Example:
73
74	max77802@9 {
75		compatible = "maxim,max77802";
76		interrupt-parent = <&wakeup_eint>;
77		interrupts = <26 0>;
78		reg = <0x09>;
79		#address-cells = <1>;
80		#size-cells = <0>;
81
82		inb1-supply = <&parent_reg>;
83
84		regulators {
85			ldo1_reg: LDO1 {
86				regulator-name = "vdd_1v0";
87				regulator-min-microvolt = <1000000>;
88				regulator-max-microvolt = <1000000>;
89				regulator-always-on;
90				regulator-initial-mode = <MAX77802_OPMODE_LP>;
91			};
92
93			ldo11_reg: LDO11 {
94				regulator-name = "vdd_ldo11";
95				regulator-min-microvolt = <1900000>;
96				regulator-max-microvolt = <1900000>;
97				regulator-always-on;
98				regulator-state-mem {
99					regulator-on-in-suspend;
100					regulator-mode = <MAX77802_OPMODE_LP>;
101				};
102			};
103
104			buck1_reg: BUCK1 {
105				regulator-name = "vdd_mif";
106				regulator-min-microvolt = <950000>;
107				regulator-max-microvolt = <1300000>;
108				regulator-always-on;
109				regulator-boot-on;
110			};
111	};
112