GNU Linux-libre 4.14.266-gnu1
[releases.git] / Documentation / devicetree / bindings / regulator / max77802.txt
1 Binding for Maxim MAX77802 regulators
2
3 This is a part of device tree bindings of MAX77802 multi-function device.
4 More information can be found in bindings/mfd/max77802.txt file.
5
6 The MAX77802 PMIC has 10 high-efficiency Buck and 32 Low-dropout (LDO)
7 regulators that can be controlled over I2C.
8
9 Following properties should be present in main device node of the MFD chip.
10
11 Optional 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
32 Optional 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
41 The regulator node name should be initialized with a string to get matched
42 with 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
50 The max77802 regulator supports two different operating modes: Normal and Low
51 Power Mode. Some regulators support the modes to be changed at startup or by
52 the consumers during normal operation while others only support to change the
53 mode during system suspend. The standard regulator suspend states binding can
54 be used to configure the regulator operating mode.
55
56 The regulators that support the standard "regulator-initial-mode" property,
57 changing their mode during normal operation are: LDOs 1, 3, 20 and 21.
58
59 The 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
63 The valid modes list is defined in the dt-bindings/regulator/maxim,max77802.h
64 header and can be included by device tree source files.
65
66 The standard "regulator-mode" property can only be used for regulators that
67 support changing their mode to Low Power Mode during suspend. These regulators
68 are: BUCKs 2-4 and LDOs 1-35. Also, it only takes effect if the regulator has
69 been enabled for the given suspend state using "regulator-on-in-suspend" and
70 has not been disabled for that state using "regulator-off-in-suspend".
71
72 Example:
73
74         max77802@09 {
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         };