blob: b82943d836770abd95819ab13236f3599f700407 [file] [log] [blame]
Javier Martinez Canillas4ece70452014-08-18 10:32:42 +02001Binding 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
Javier Martinez Canillasf40eb912015-10-05 17:07:23 +020011Optional 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
Javier Martinez Canillas45d5ea42015-10-05 19:35:24 +020031
32Optional nodes:
Javier Martinez Canillas4ece70452014-08-18 10:32:42 +020033- 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.
Javier Martinez Canillasbf66c482014-11-11 13:04:43 +010049
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
Javier Martinez Canillase0d9b7c2016-01-29 13:09:00 -030063The valid modes list is defined in the dt-bindings/regulator/maxim,max77802.h
Javier Martinez Canillasbf66c482014-11-11 13:04:43 +010064header 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
Javier Martinez Canillas4ece70452014-08-18 10:32:42 +020072Example:
73
Marco Franchi48c926c2017-11-08 14:27:48 -020074 max77802@9 {
Javier Martinez Canillas4ece70452014-08-18 10:32:42 +020075 compatible = "maxim,max77802";
76 interrupt-parent = <&wakeup_eint>;
77 interrupts = <26 0>;
78 reg = <0x09>;
79 #address-cells = <1>;
80 #size-cells = <0>;
81
Javier Martinez Canillasf40eb912015-10-05 17:07:23 +020082 inb1-supply = <&parent_reg>;
83
Javier Martinez Canillas4ece70452014-08-18 10:32:42 +020084 regulators {
Javier Martinez Canillasbf66c482014-11-11 13:04:43 +010085 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
Javier Martinez Canillas4ece70452014-08-18 10:32:42 +020093 ldo11_reg: LDO11 {
94 regulator-name = "vdd_ldo11";
95 regulator-min-microvolt = <1900000>;
96 regulator-max-microvolt = <1900000>;
97 regulator-always-on;
Javier Martinez Canillasbf66c482014-11-11 13:04:43 +010098 regulator-state-mem {
99 regulator-on-in-suspend;
100 regulator-mode = <MAX77802_OPMODE_LP>;
101 };
Javier Martinez Canillas4ece70452014-08-18 10:32:42 +0200102 };
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 };