WIP FPC-III support
[linux/fpc-iii.git] / Documentation / devicetree / bindings / regulator / mcp16502-regulator.txt
blobd86584ed4d9303354a113d43fea870df3cfdc3fc
1 MCP16502 PMIC
3 Required properties:
4 - compatible: "microchip,mcp16502"
5 - reg: I2C slave address
6 - lpm-gpios: GPIO for LPM pin. Note that this GPIO *must* remain high during
7              suspend-to-ram, keeping the PMIC into HIBERNATE mode.
8 - regulators: A node that houses a sub-node for each regulator within
9               the device. Each sub-node is identified using the node's
10               name. The content of each sub-node is defined by the
11               standard binding for regulators; see regulator.txt.
13 Regulators of MCP16502 PMIC:
14 1) VDD_IO       - Buck (1.2 - 3.7 V)
15 2) VDD_DDR      - Buck (0.6 - 1.85 V)
16 3) VDD_CORE     - Buck (0.6 - 1.85 V)
17 4) VDD_OTHER    - BUCK (0.6 - 1.85 V)
18 5) LDO1         - LDO  (1.2 - 3.7 V)
19 6) LDO2         - LDO  (1.2 - 3.7 V)
21 Regulator modes:
22 2 - FPWM: higher precision, higher consumption
23 4 - AutoPFM: lower precision, lower consumption
25 Each regulator is defined using the standard binding for regulators.
27 Example:
29 mcp16502@5b {
30         compatible = "microchip,mcp16502";
31         reg = <0x5b>;
32         status = "okay";
33         lpm-gpios = <&pioBU 7 GPIO_ACTIVE_HIGH>;
35         regulators {
36                 VDD_IO {
37                         regulator-name = "VDD_IO";
38                         regulator-min-microvolt = <1200000>;
39                         regulator-max-microvolt = <3700000>;
40                         regulator-initial-mode = <2>;
41                         regulator-allowed-modes = <2>, <4>;
42                         regulator-always-on;
44                         regulator-state-standby {
45                                 regulator-on-in-suspend;
46                                 regulator-mode = <4>;
47                         };
49                         regulator-state-mem {
50                                 regulator-off-in-suspend;
51                                 regulator-mode = <4>;
52                         };
53                 };
55                 VDD_DDR {
56                         regulator-name = "VDD_DDR";
57                         regulator-min-microvolt = <600000>;
58                         regulator-max-microvolt = <1850000>;
59                         regulator-initial-mode = <2>;
60                         regulator-allowed-modes = <2>, <4>;
61                         regulator-always-on;
63                         regulator-state-standby {
64                                 regulator-on-in-suspend;
65                                 regulator-mode = <4>;
66                         };
68                         regulator-state-mem {
69                                 regulator-on-in-suspend;
70                                 regulator-mode = <4>;
71                         };
72                 };
74                 VDD_CORE {
75                         regulator-name = "VDD_CORE";
76                         regulator-min-microvolt = <600000>;
77                         regulator-max-microvolt = <1850000>;
78                         regulator-initial-mode = <2>;
79                         regulator-allowed-modes = <2>, <4>;
80                         regulator-always-on;
82                         regulator-state-standby {
83                                 regulator-on-in-suspend;
84                                 regulator-mode = <4>;
85                         };
87                         regulator-state-mem {
88                                 regulator-off-in-suspend;
89                                 regulator-mode = <4>;
90                         };
91                 };
93                 VDD_OTHER {
94                         regulator-name = "VDD_OTHER";
95                         regulator-min-microvolt = <600000>;
96                         regulator-max-microvolt = <1850000>;
97                         regulator-initial-mode = <2>;
98                         regulator-allowed-modes = <2>, <4>;
99                         regulator-always-on;
101                         regulator-state-standby {
102                                 regulator-on-in-suspend;
103                                 regulator-mode = <4>;
104                         };
106                         regulator-state-mem {
107                                 regulator-off-in-suspend;
108                                 regulator-mode = <4>;
109                         };
110                 };
112                 LDO1 {
113                         regulator-name = "LDO1";
114                         regulator-min-microvolt = <1200000>;
115                         regulator-max-microvolt = <3700000>;
116                         regulator-always-on;
118                         regulator-state-standby {
119                                 regulator-on-in-suspend;
120                         };
122                         regulator-state-mem {
123                                 regulator-off-in-suspend;
124                         };
125                 };
127                 LDO2 {
128                         regulator-name = "LDO2";
129                         regulator-min-microvolt = <1200000>;
130                         regulator-max-microvolt = <3700000>;
131                         regulator-always-on;
133                         regulator-state-standby {
134                                 regulator-on-in-suspend;
135                         };
137                         regulator-state-mem {
138                                 regulator-off-in-suspend;
139                         };
140                 };
142         };