Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/regulator/microchip,mcp16502.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: MCP16502 - High-Performance PMIC
8
9maintainers:
10 - Andrei Simion <andrei.simion@microchip.com>
11
12description:
13 The MCP16502 is an optimally integrated PMIC compatible
14 with Microchip's eMPUs(Embedded Microprocessor Units),
15 requiring Dynamic Voltage Scaling (DVS) with the use
16 of High-Performance mode (HPM).
17
18properties:
19 compatible:
20 const: microchip,mcp16502
21
22 lpm-gpios:
23 maxItems: 1
24 description: GPIO for LPM pin.
25 Note that this GPIO must remain high during
26 suspend-to-ram, keeping the PMIC into HIBERNATE mode.
27
28 reg:
29 maxItems: 1
30
31 lvin-supply:
32 description: Input supply phandle for LDO1 and LDO2
33
34 pvin1-supply:
35 description: Input supply phandle for VDD_IO (BUCK1)
36
37 pvin2-supply:
38 description: Input supply phandle for VDD_DDR (BUCK2)
39
40 pvin3-supply:
41 description: Input supply phandle for VDD_CORE (BUCK3)
42
43 pvin4-supply:
44 description: Input supply phandle for VDD_OTHER (BUCK4)
45
46 regulators:
47 type: object
48 additionalProperties: false
49 description: List of regulators and its properties.
50
51 patternProperties:
52 "^(VDD_(IO|CORE|DDR|OTHER)|LDO[1-2])$":
53 type: object
54 $ref: regulator.yaml#
55 unevaluatedProperties: false
56
57 properties:
58 regulator-initial-mode:
59 enum: [2, 4]
60 default: 2
61 description: Initial operating mode
62
63 regulator-allowed-modes:
64 items:
65 enum: [2, 4]
66 description: Supported modes
67 2 - FPWM higher precision, higher consumption
68 4 - AutoPFM lower precision, lower consumption
69
70required:
71 - compatible
72 - reg
73 - regulators
74
75additionalProperties: false
76
77examples:
78 - |
79 i2c {
80 #address-cells = <1>;
81 #size-cells = <0>;
82
83 pmic@5b {
84 compatible = "microchip,mcp16502";
85 reg = <0x5b>;
86 lvin-supply = <®_5v>;
87 pvin1-supply = <®_5v>;
88 pvin2-supply = <®_5v>;
89 pvin3-supply = <®_5v>;
90 pvin4-supply = <®_5v>;
91
92 regulators {
93 VDD_IO {
94 regulator-name = "VDD_IO";
95 regulator-min-microvolt = <3300000>;
96 regulator-max-microvolt = <3300000>;
97 regulator-initial-mode = <2>;
98 regulator-allowed-modes = <2>, <4>;
99 regulator-always-on;
100
101 regulator-state-standby {
102 regulator-on-in-suspend;
103 regulator-mode = <4>;
104 };
105
106 regulator-state-mem {
107 regulator-off-in-suspend;
108 regulator-mode = <4>;
109 };
110 };
111
112 VDD_DDR {
113 regulator-name = "VDD_DDR";
114 regulator-min-microvolt = <1350000>;
115 regulator-max-microvolt = <1350000>;
116 regulator-initial-mode = <2>;
117 regulator-allowed-modes = <2>, <4>;
118 regulator-always-on;
119
120 regulator-state-standby {
121 regulator-on-in-suspend;
122 regulator-mode = <4>;
123 };
124
125 regulator-state-mem {
126 regulator-on-in-suspend;
127 regulator-mode = <4>;
128 };
129 };
130
131 VDD_CORE {
132 regulator-name = "VDD_CORE";
133 regulator-min-microvolt = <1150000>;
134 regulator-max-microvolt = <1150000>;
135 regulator-initial-mode = <2>;
136 regulator-allowed-modes = <2>, <4>;
137 regulator-always-on;
138
139 regulator-state-standby {
140 regulator-on-in-suspend;
141 regulator-mode = <4>;
142 };
143
144 regulator-state-mem {
145 regulator-off-in-suspend;
146 regulator-mode = <4>;
147 };
148 };
149
150 VDD_OTHER {
151 regulator-name = "VDD_OTHER";
152 regulator-min-microvolt = <1050000>;
153 regulator-max-microvolt = <1250000>;
154 regulator-initial-mode = <2>;
155 regulator-allowed-modes = <2>, <4>;
156 regulator-always-on;
157
158 regulator-state-standby {
159 regulator-on-in-suspend;
160 regulator-mode = <4>;
161 };
162
163 regulator-state-mem {
164 regulator-off-in-suspend;
165 regulator-mode = <4>;
166 };
167 };
168
169 LDO1 {
170 regulator-name = "LDO1";
171 regulator-min-microvolt = <1800000>;
172 regulator-max-microvolt = <1800000>;
173 regulator-always-on;
174
175 regulator-state-standby {
176 regulator-on-in-suspend;
177 };
178
179 regulator-state-mem {
180 regulator-off-in-suspend;
181 };
182 };
183
184 LDO2 {
185 regulator-name = "LDO2";
186 regulator-min-microvolt = <1200000>;
187 regulator-max-microvolt = <3700000>;
188 regulator-always-on;
189
190 regulator-state-standby {
191 regulator-on-in-suspend;
192 };
193
194 regulator-state-mem {
195 regulator-off-in-suspend;
196 };
197 };
198 };
199 };
200 };