2 bool "Enable Driver Model for REGULATOR drivers (UCLASS_REGULATOR)"
5 This config enables the driver model regulator support.
6 UCLASS_REGULATOR - designed to provide a common API for basic regulator's
7 functions, like get/set Voltage or Current value, enable state, etc...
9 When enabling this, please read the description, found in the files:
10 - 'include/power/pmic.h'
11 - 'include/power/regulator.h'
12 - 'drivers/power/pmic/pmic-uclass.c'
13 - 'drivers/power/pmic/regulator-uclass.c'
14 It's important to call the device_bind() with the proper node offset,
15 when binding the regulator devices. The pmic_bind_childs() can be used
16 for this purpose if PMIC I/O driver is implemented or dm_scan_fdt_dev()
17 otherwise. Detailed information can be found in the header file.
19 config SPL_DM_REGULATOR
20 bool "Enable regulators for SPL"
21 depends on DM_REGULATOR && SPL_POWER
23 Regulators are seldom needed in SPL. Even if they are accessed, some
24 code space can be saved by accessing the PMIC registers directly.
25 Enable this option if you need regulators in SPL and can cope with
28 config REGULATOR_ACT8846
29 bool "Enable driver for ACT8846 regulator"
30 depends on DM_REGULATOR && PMIC_ACT8846
32 Enable support for the regulator functions of the ACT8846 PMIC. The
33 driver implements get/set api for the various BUCKS and LDOS supported
34 by the PMIC device. This driver is controlled by a device tree node
35 which includes voltage limits.
37 config REGULATOR_AS3722
38 bool "Enable driver for AS7322 regulator"
39 depends on DM_REGULATOR && PMIC_AS3722
41 Enable support for the regulator functions of the AS3722. The
42 driver implements enable/disable for step-down bucks and LDOs,
43 but does not yet support change voltages. Currently this must be
44 done using direct register writes to the PMIC.
47 bool "Enable driver for X-Powers AXP PMIC regulators"
48 depends on DM_REGULATOR && PMIC_AXP
50 Enable support for the regulators (DCDCs, LDOs) in the
51 X-Powers AXP152, AXP2xx, and AXP8xx PMICs.
53 config SPL_REGULATOR_AXP
54 bool "Enable driver for X-Powers AXP PMIC regulators in SPL"
55 depends on SPL_DM_REGULATOR && SPL_PMIC_AXP
57 Enable support in SPL for the regulators (DCDCs, LDOs) in the
58 X-Powers AXP152, AXP2xx, and AXP8xx PMICs.
60 config REGULATOR_AXP_USB_POWER
61 bool "Enable driver for X-Powers AXP PMIC USB power supply"
62 depends on DM_REGULATOR && PMIC_AXP
64 Enable support for reading the USB power supply status from
65 X-Powers AXP2xx and AXP8xx PMICs.
67 config DM_REGULATOR_BD71837
68 bool "Enable Driver Model for ROHM BD71837/BD71847 regulators"
69 depends on DM_REGULATOR && DM_PMIC_BD71837
71 This config enables implementation of driver-model regulator uclass
72 features for regulators on ROHM BD71837 and BD71847 PMICs.
73 BD71837 contains 8 bucks and 7 LDOS. BD71847 is reduced version
74 containing 6 bucks and 6 LDOs. The driver implements get/set api for
77 config SPL_DM_REGULATOR_BD71837
78 bool "Enable Driver Model for ROHM BD71837/BD71847 regulators in SPL"
79 depends on DM_REGULATOR_BD71837 && SPL
81 This config enables implementation of driver-model regulator uclass
82 features for regulators on ROHM BD71837 and BD71847 in SPL.
84 config DM_REGULATOR_PCA9450
85 bool "Enable Driver Model for NXP PCA9450 regulators"
86 depends on DM_REGULATOR && DM_PMIC_PCA9450
88 This config enables implementation of driver-model regulator uclass
89 features for regulators on NXP PCA9450 PMICs. PCA9450 contains 6 bucks
90 and 5 LDOS. The driver implements get/set api for value and enable.
92 config SPL_DM_REGULATOR_PCA9450
93 bool "Enable Driver Model for NXP PCA9450 regulators in SPL"
94 depends on DM_REGULATOR_PCA9450 && SPL
96 This config enables implementation of driver-model regulator uclass
97 features for regulators on ROHM PCA9450 in SPL.
99 config DM_REGULATOR_DA9063
100 bool "Enable Driver Model for REGULATOR DA9063"
101 depends on DM_REGULATOR && DM_PMIC_DA9063
103 This config enables implementation of driver-model regulator uclass
104 features for REGULATOR DA9063.
105 The driver implements get/set api for value, enable and mode for all
106 regulators. It also implements the get/set api for current for the
109 config SPL_DM_REGULATOR_DA9063
110 bool "Enable Driver Model for REGULATOR DA9063 in SPL"
111 depends on DM_REGULATOR && DM_PMIC_DA9063 && SPL
113 This config enables implementation of driver-model regulator uclass
114 features for REGULATOR DA9063.
115 The driver implements get/set api for value, enable and mode for all
116 regulators. It also implements the get/set api for current for the
119 config DM_REGULATOR_PFUZE100
120 bool "Enable Driver Model for REGULATOR PFUZE100"
121 depends on DM_REGULATOR && DM_PMIC_PFUZE100
123 This config enables implementation of driver-model regulator uclass
124 features for REGULATOR PFUZE100. The driver implements get/set api for:
125 value, enable and mode.
128 bool "Enable driver for PWM regulators"
129 depends on DM_REGULATOR
131 Enable support for the PWM regulator functions which voltage are
132 controlled by PWM duty ratio. Some of Rockchip board using this kind
133 of regulator. The driver implements get/set api for the various BUCKS.
134 This driver is controlled by a device tree node
135 which includes voltage limits.
137 config SPL_REGULATOR_PWM
138 bool "Enable Driver for PWM regulators in SPL"
139 depends on REGULATOR_PWM && SPL
141 This config enables implementation of driver-model regulator uclass
142 features for PWM regulators in SPL.
144 config DM_REGULATOR_MAX77686
145 bool "Enable Driver Model for REGULATOR MAX77686"
146 depends on DM_REGULATOR && DM_PMIC_MAX77686
148 This config enables implementation of driver-model regulator uclass
149 features for REGULATOR MAX77686. The driver implements get/set api for:
150 value, enable and mode.
152 config DM_REGULATOR_NPCM8XX
153 bool "Enable Driver Model for NPCM8xx voltage supply"
154 depends on DM_REGULATOR && ARCH_NPCM8XX
156 Enable support for configuring voltage supply on NPCM8XX SoC. The
157 voltage supplies support two voltage levels and the driver implements
158 get/set api for setting the value.
160 config DM_REGULATOR_FAN53555
161 bool "Enable Driver Model for REGULATOR FAN53555"
162 depends on DM_PMIC_FAN53555
164 This config enables implementation of driver-model regulator
165 uclass features for the FAN53555 regulator. The FAN53555 is
166 a (family of) single-output regulators that supports
167 transitioning between two different output voltages based on
168 an voltage selection pin.
170 The driver implements a get/set api for the voltage of the
171 'normal mode' voltage only. Switching to 'suspend mode'
172 (i.e. the alternate voltage), disabling output via software,
173 or switching the mode is not supported by this driver (at
176 config DM_REGULATOR_COMMON
178 depends on DM_REGULATOR
180 config SPL_DM_REGULATOR_COMMON
182 depends on DM_REGULATOR
184 config DM_REGULATOR_FIXED
185 bool "Enable Driver Model for REGULATOR Fixed value"
186 depends on DM_REGULATOR
187 select DM_REGULATOR_COMMON
189 This config enables implementation of driver-model regulator uclass
190 features for fixed value regulators. The driver implements get/set api
191 for enable and get only for voltage value.
193 config SPL_DM_REGULATOR_FIXED
194 bool "Enable Driver Model for REGULATOR Fixed value in SPL"
195 depends on DM_REGULATOR_FIXED && SPL
196 select SPL_DM_REGULATOR_COMMON
198 This config enables implementation of driver-model regulator uclass
199 features for fixed value regulators in SPL.
201 config DM_REGULATOR_GPIO
202 bool "Enable Driver Model for GPIO REGULATOR"
203 depends on DM_REGULATOR && DM_GPIO
204 select DM_REGULATOR_COMMON
206 This config enables implementation of driver-model regulator uclass
207 features for gpio regulators. The driver implements get/set for
210 config SPL_DM_REGULATOR_GPIO
211 bool "Enable Driver Model for GPIO REGULATOR in SPL"
212 depends on DM_REGULATOR_GPIO && SPL_GPIO
213 select SPL_DM_REGULATOR_COMMON
215 This config enables implementation of driver-model regulator uclass
216 features for gpio regulators in SPL.
218 config REGULATOR_RK8XX
219 bool "Enable driver for RK8XX regulators"
220 depends on DM_REGULATOR && PMIC_RK8XX
222 Enable support for the regulator functions of the RK8XX PMIC. The
223 driver implements get/set api for the various BUCKS and LDOs supported
224 by the PMIC device. This driver is controlled by a device tree node
225 which includes voltage limits.
227 config DM_REGULATOR_S2MPS11
228 bool "Enable driver for S2MPS11 regulator"
229 depends on DM_REGULATOR && PMIC_S2MPS11
231 This enables implementation of driver-model regulator uclass
232 features for REGULATOR S2MPS11.
233 The driver implements get/set api for: value and enable.
235 config REGULATOR_S5M8767
236 bool "Enable support for S5M8767 regulator"
237 depends on DM_REGULATOR && PMIC_S5M8767
239 This enables the regulator features of the S5M8767, allowing voltages
240 to be set, etc. The driver is not fully complete but supports most
241 common requirements, including all LDOs and BUCKs. This allows many
242 supplies to be set automatically using the device tree values.
244 config DM_REGULATOR_SANDBOX
245 bool "Enable Driver Model for Sandbox PMIC regulator"
246 depends on DM_REGULATOR && DM_PMIC_SANDBOX
248 Enable the regulator driver for emulated Sandbox PMIC.
249 The emulated PMIC device depends on two drivers:
250 - sandbox PMIC I/O driver - implements dm pmic operations
251 - sandbox PMIC regulator driver - implements dm regulator operations
252 - sandbox PMIC i2c emul driver - emulates the PMIC's I2C transmission
254 The regulator driver provides uclass operations for sandbox PMIC's
255 regulators. The driver implements get/set api for: voltage, current,
256 operation mode and enable state.
257 The driver supports LDO and BUCK regulators.
259 The Sandbox PMIC info:
261 - I2C chip address: 0x40
262 - first register address: 0x0
263 - register count: 0x10
264 * Adjustable outputs:
267 - Each, with a different operating conditions (header).
269 - set by i2c emul driver's probe() (defaults in header)
271 A detailed information can be found in header: '<power/sandbox_pmic.h>'
272 Binding info: 'doc/device-tree-bindings/pmic/max77686.txt'
274 config REGULATOR_TPS65090
275 bool "Enable driver for TPS65090 PMIC regulators"
276 depends on PMIC_TPS65090
278 The TPS65090 provides several FETs (Field-effect Transistors,
279 effectively switches) which are supported by this driver as
280 regulators, one for each FET. The standard regulator interface is
281 supported, but it is only possible to turn the regulators on or off.
282 There is no voltage/current control.
284 config DM_REGULATOR_PALMAS
285 bool "Enable driver for PALMAS PMIC regulators"
286 depends on PMIC_PALMAS
288 This enables implementation of driver-model regulator uclass
289 features for REGULATOR PALMAS and the family of PALMAS PMICs.
290 The driver implements get/set api for: value and enable.
292 config DM_REGULATOR_PBIAS
293 bool "Enable driver for PBIAS regulator"
294 depends on DM_REGULATOR
298 This enables implementation of driver-model regulator uclass
299 features for pseudo-regulator PBIAS found in the OMAP SOCs.
300 This pseudo-regulator is used to provide a BIAS voltage to MMC1
301 signal pads and must be configured properly during a voltage switch.
302 Voltage switching is required by some operating modes of SDcards and
305 config DM_REGULATOR_LP873X
306 bool "Enable driver for LP873X PMIC regulators"
307 depends on PMIC_LP873X
309 This enables implementation of driver-model regulator uclass
310 features for REGULATOR LP873X and the family of LP873X PMICs.
311 The driver implements get/set api for: value and enable.
313 config DM_REGULATOR_LP87565
314 bool "Enable driver for LP87565 PMIC regulators"
315 depends on PMIC_LP87565
317 This enables implementation of driver-model regulator uclass
318 features for REGULATOR LP87565 and the family of LP87565 PMICs.
319 LP87565 series of PMICs have 4 single phase BUCKs that can also
320 be configured in multi phase modes. The driver implements
321 get/set api for value and enable.
323 config DM_REGULATOR_STM32_VREFBUF
324 bool "Enable driver for STMicroelectronics STM32 VREFBUF"
325 depends on DM_REGULATOR && (STM32H7 || ARCH_STM32MP)
327 This driver supports STMicroelectronics STM32 VREFBUF (voltage
328 reference buffer) which can be used as voltage reference for
329 internal ADCs, DACs and also for external components through
332 config DM_REGULATOR_TPS65910
333 bool "Enable driver for TPS65910 PMIC regulators"
334 depends on DM_PMIC_TPS65910
336 The TPS65910 PMIC provides 4 SMPSs and 8 LDOs. This driver supports all
337 regulator types of the TPS65910 (BUCK, BOOST and LDO). It implements
338 the get/set api for value and enable.
340 config DM_REGULATOR_TPS62360
341 bool "Enable driver for TPS6236x Power Regulator"
342 depends on DM_REGULATOR
344 The TPS6236X DC/DC step down converter provides a single output
345 power line peaking at 3A current. This driver supports all four
346 variants of the chip (TPS62360, TPS62361, TPS62362, TPS62363). It
347 implements the get/set api for value only, as the power line is
350 config DM_REGULATOR_STPMIC1
351 bool "Enable driver for STPMIC1 regulators"
352 depends on DM_REGULATOR && PMIC_STPMIC1
354 Enable support for the regulator functions of the STPMIC1 PMIC. The
355 driver implements get/set api for the various BUCKS and LDOs supported
356 by the PMIC device. This driver is controlled by a device tree node
357 which includes voltage limits.
359 config DM_REGULATOR_ANATOP
360 bool "Enable driver for ANATOP regulators"
361 depends on DM_REGULATOR
365 Enable support for the Freescale i.MX on-chip ANATOP LDO
366 regulators. It is recommended that this option be enabled on
369 config SPL_DM_REGULATOR_STPMIC1
370 bool "Enable driver for STPMIC1 regulators in SPL"
371 depends on SPL_DM_REGULATOR && PMIC_STPMIC1
373 Enable support for the regulator functions of the STPMIC1 PMIC in SPL.
375 config SPL_DM_REGULATOR_PALMAS
376 bool "Enable driver for PALMAS PMIC regulators"
377 depends on SPL_PMIC_PALMAS
379 This enables implementation of driver-model regulator uclass
380 features for REGULATOR PALMAS and the family of PALMAS PMICs.
381 The driver implements get/set api for: value and enable in SPL.
383 config SPL_DM_REGULATOR_LP87565
384 bool "Enable driver for LP87565 PMIC regulators"
385 depends on SPL_PMIC_LP87565
387 This enables implementation of driver-model regulator uclass
388 features for REGULATOR LP87565 and the family of LP87565 PMICs.
389 LP87565 series of PMICs have 4 single phase BUCKs that can also
390 be configured in multi phase modes. The driver implements
391 get/set api for value and enable in SPL.
393 config SPL_DM_REGULATOR_LP873X
394 bool "Enable driver for LP873X PMIC regulators"
395 depends on SPL_PMIC_LP873X
397 This enables implementation of driver-model regulator uclass
398 features for REGULATOR LP873X and the family of LP873X PMICs.
399 The driver implements get/set api for: value and enable in SPL.
401 config DM_REGULATOR_TPS65941
402 bool "Enable driver for TPS65941 PMIC regulators"
403 depends on PMIC_TPS65941
405 This enables implementation of driver-model regulator uclass
406 features for REGULATOR TPS65941 and the family of TPS65941 PMICs.
407 TPS65941 series of PMICs have 5 single phase BUCKs that can also
408 be configured in multi phase modes & 4 LDOs. The driver implements
409 get/set api for value and enable.
411 config DM_REGULATOR_SCMI
412 bool "Enable driver for SCMI voltage domain regulators"
413 depends on DM_REGULATOR
416 Enable this option if you want to support regulators exposed through
417 the SCMI voltage domain protocol by a SCMI server.
419 config DM_REGULATOR_TPS65219
420 bool "Enable driver for TPS65219 PMIC regulators"
421 depends on PMIC_TPS65219
423 This enables implementation of driver-model regulator uclass
424 features for REGULATOR TPS65219 and the family of TPS65219 PMICs.
425 TPS65219 series of PMICs have 3 single phase BUCKs & 4 LDOs.
426 The driver implements get/set api for value and enable.