blob: cf2a9b2c17e470245523b48f1233856944f4569e [file] [log] [blame]
Przemyslaw Marczak4d9057e2015-04-20 20:07:41 +02001config DM_PMIC
2 bool "Enable Driver Model for PMIC drivers (UCLASS_PMIC)"
3 depends on DM
4 ---help---
5 This config enables the driver-model PMIC support.
6 UCLASS_PMIC - designed to provide an I/O interface for PMIC devices.
7 For the multi-function PMIC devices, this can be used as parent I/O
8 device for each IC's interface. Then, each children uses its parent
9 for read/write. For detailed description, please refer to the files:
10 - 'drivers/power/pmic/pmic-uclass.c'
11 - 'include/power/pmic.h'
Przemyslaw Marczak52a3de52015-04-20 20:07:46 +020012
Simon Glass7abf1782021-08-08 12:20:25 -060013config SPL_DM_PMIC
14 bool "Enable Driver Model for PMIC drivers (UCLASS_PMIC) in SPL"
15 depends on SPL_DM
16 default y if DM_PMIC
17 ---help---
18 This config enables the driver-model PMIC support in SPL.
19 UCLASS_PMIC - designed to provide an I/O interface for PMIC devices.
20 For the multi-function PMIC devices, this can be used as parent I/O
21 device for each IC's interface. Then, each children uses its parent
22 for read/write. For detailed description, please refer to the files:
23 - 'drivers/power/pmic/pmic-uclass.c'
24 - 'include/power/pmic.h'
25
Simon Glass1f2b4b02016-01-21 19:43:55 -070026config PMIC_CHILDREN
27 bool "Allow child devices for PMICs"
28 depends on DM_PMIC
29 default y
30 ---help---
31 This allows PMICs to support child devices (such as regulators) in
32 SPL. This adds quite a bit of code so if you are not using this
33 feature you can turn it off. Most likely you should turn it on for
34 U-Boot proper.
35
36config SPL_PMIC_CHILDREN
37 bool "Allow child devices for PMICs in SPL"
38 depends on DM_PMIC
39 default y
40 ---help---
41 This allows PMICs to support child devices (such as regulators) in
42 SPL. This adds quite a bit of code so if you are not using this
43 feature you can turn it off. In this case you may need a 'back door'
Jacob Chen453c5a92017-05-02 14:54:52 +080044 to call your regulator code (e.g. see rk8xx.c for direct functions
Simon Glass1f2b4b02016-01-21 19:43:55 -070045 for use in SPL).
46
Stephan Gerhold3f6e4ec2021-07-08 20:33:48 +020047config PMIC_AB8500
48 bool "Enable driver for ST-Ericsson AB8500 PMIC via PRCMU"
49 depends on DM_PMIC
50 select REGMAP
51 select SYSCON
52 help
53 Enable support for the ST-Ericsson AB8500 (Analog Baseband) PMIC.
54 It connects with the ST-Ericsson DB8500 SoC via an I2C bus managed by
55 the power/reset/clock management unit (PRCMU) firmware.
56
Simon Glassd2c88f72015-08-30 16:55:29 -060057config PMIC_ACT8846
58 bool "Enable support for the active-semi 8846 PMIC"
59 depends on DM_PMIC && DM_I2C
60 ---help---
61 This PMIC includes 4 DC/DC step-down buck regulators and 8 low-dropout
62 regulators (LDOs). It also provides some GPIO, reset and battery
63 functions. It uses an I2C interface and is designed for use with
64 tablets and smartphones.
65
Martin Fuzzey483880c2020-01-14 15:56:16 +000066config DM_PMIC_DA9063
67 bool "Enable Driver Model for the Dialog DA9063 PMIC"
68 depends on DM_PMIC
69 help
70 This config enables implementation of driver-model pmic uclass features
71 for PMIC DA9063. The driver implements read/write operations.
72
73config SPL_DM_PMIC_DA9063
74 bool "Enable Driver Model for the Dialog DA9063 PMIC in SPL"
75 depends on DM_PMIC && SPL
76 help
77 This config enables implementation of driver-model pmic uclass features
78 for PMIC DA9063. The driver implements read/write operations.
79
Simon Glassbdf25a52017-04-26 22:27:46 -060080config PMIC_AS3722
81 bool "Enable support for the Austria Micro Systems (AMS) AS7322 PMIC"
82 help
83 The AS3722 includes 7 DC/DC buck convertors, 11 low-noise LDOs, a
84 real-time clock, GPIOs, ADC and a few other features. It uses an I2C
85 interface and is designs to cover most of the power managementment
86 required for a tablets or laptop.
87
Matti Vaittinen1023c872019-05-07 10:43:39 +030088config DM_PMIC_BD71837
89 bool "Enable Driver Model for PMIC BD71837"
90 depends on DM_PMIC
91 help
92 This config enables implementation of driver-model pmic uclass features
93 for PMIC BD71837. The driver implements read/write operations.
94
Peng Fan672fc542019-10-16 10:24:36 +000095config SPL_DM_PMIC_BD71837
96 bool "Enable Driver Model for PMIC BD71837 in SPL stage"
97 depends on DM_PMIC
98 help
99 This config enables implementation of driver-model pmic uclass
100 features for PMIC BD71837. The driver implements read/write
101 operations.
102
Philipp Tomsichdfb0a702018-11-30 20:00:08 +0100103config DM_PMIC_FAN53555
104 bool "Enable support for OnSemi FAN53555"
105 depends on DM_PMIC && DM_REGULATOR && DM_I2C
106 select DM_REGULATOR_FAN53555
107 help
108 This config enables implementation of driver-model PMIC
109 uclass features for the FAN53555 regulator. The FAN53555 is
110 a (family of) single-output regulators that supports
111 transitioning between two different output voltages based on
112 an voltage selection pin.
113
114 The driver implements read/write operations for use with the FAN53555
115 regulator driver and binds the regulator driver to its node.
116
Tim Harvey2767d882020-12-21 08:19:39 -0800117config DM_PMIC_MP5416
118 bool "Enable Driver Model for PMIC MP5416"
119 depends on DM_PMIC
120 help
121 This config enables implementation of driver-model pmic uclass features
122 for PMIC MP5416. The driver implements read/write operations.
123
124config SPL_DM_PMIC_MP5416
125 bool "Enable Driver Model for PMIC MP5416 in SPL stage"
126 depends on DM_PMIC
127 help
128 This config enables implementation of driver-model pmic uclass
129 features for PMIC MP5416. The driver implements read/write
130 operations.
131
Ye Li22172f62019-10-15 02:15:18 -0700132config DM_PMIC_PCA9450
133 bool "Enable Driver Model for PMIC PCA9450"
134 depends on DM_PMIC
135 help
136 This config enables implementation of driver-model pmic uclass features
137 for PMIC PCA9450. The driver implements read/write operations.
138
Igor Opaniuk8f9abdf2020-10-28 11:58:10 +0200139config SPL_DM_PMIC_PCA9450
140 bool "Enable Driver Model for PMIC PCA9450"
141 depends on DM_PMIC
142 help
143 This config enables implementation of driver-model pmic uclass features
144 for PMIC PCA9450 in SPL. The driver implements read/write operations.
145
Peng Fan1c1f6072015-08-14 11:36:16 +0200146config DM_PMIC_PFUZE100
147 bool "Enable Driver Model for PMIC PFUZE100"
148 depends on DM_PMIC
149 ---help---
150 This config enables implementation of driver-model pmic uclass features
151 for PMIC PFUZE100. The driver implements read/write operations.
152
Marek Vasut661d9af2020-05-29 19:22:41 +0200153config SPL_DM_PMIC_PFUZE100
154 bool "Enable Driver Model for PMIC PFUZE100 in SPL"
155 depends on DM_PMIC
156 ---help---
157 This config enables implementation of driver-model pmic uclass features
158 for PMIC PFUZE100 in SPL. The driver implements read/write operations.
159
Przemyslaw Marczak52a3de52015-04-20 20:07:46 +0200160config DM_PMIC_MAX77686
161 bool "Enable Driver Model for PMIC MAX77686"
162 depends on DM_PMIC
163 ---help---
164 This config enables implementation of driver-model pmic uclass features
Przemyslaw Marczakf415a3e2015-05-13 13:38:26 +0200165 for PMIC MAX77686. The driver implements read/write operations.
Przemyslaw Marczak5d387d02015-05-13 13:38:32 +0200166
Jaehoon Chung103e83a2016-12-15 18:21:10 +0900167config DM_PMIC_MAX8998
168 bool "Enable Driver Model for PMIC MAX8998"
169 depends on DM_PMIC
170 ---help---
171 This config enables implementation of driver-model pmic uclass features
172 for PMIC MAX8998. The driver implements read/write operations.
173
Lukasz Majewskic57a2262018-05-15 16:26:37 +0200174config DM_PMIC_MC34708
175 bool "Enable Driver Model for PMIC MC34708"
176 depends on DM_PMIC
177 help
178 This config enables implementation of driver-model pmic uclass features
179 for PMIC MC34708. The driver implements read/write operations.
180
Jaehoon Chung1a5a05d2017-02-02 17:04:09 +0900181config PMIC_MAX8997
182 bool "Enable Driver Model for PMIC MAX8997"
183 depends on DM_PMIC
184 ---help---
185 This config enables implementation of driver-model pmic uclass features
186 for PMIC MAX8997. The driver implements read/write operations.
187 This is a Power Management IC with RTC, Fuel Gauge, MUIC control on Chip.
188 - 21x LDOs
189 - 12x GPIOs
190 - Haptic Motor driver
191 - RTC with two alarms
192 - Fueal Gauge and One backup battery charger
193 - MUIC
194 - Others
195
Mateusz Kulikowskic2f74c82016-03-31 23:12:30 +0200196config PMIC_PM8916
197 bool "Enable Driver Model for Qualcomm PM8916 PMIC"
198 depends on DM_PMIC
199 ---help---
200 The PM8916 is a PMIC connected to one (or several) processors
201 with SPMI bus. It has 2 slaves with several peripherals:
202 - 18x LDO
203 - 4x GPIO
204 - Power and Reset buttons
205 - Watchdog
206 - RTC
207 - Vibrator drivers
208 - Others
209
210 Driver binding info: doc/device-tree-bindings/pmic/pm8916.txt
211
Jacob Chen453c5a92017-05-02 14:54:52 +0800212config PMIC_RK8XX
213 bool "Enable support for Rockchip PMIC RK8XX"
Simon Glass2a4febf2016-01-21 19:43:29 -0700214 depends on DM_PMIC
215 ---help---
216 The Rockchip RK808 PMIC provides four buck DC-DC convertors, 8 LDOs,
217 an RTC and two low Rds (resistance (drain to source)) switches. It is
218 accessed via an I2C interface. The device is used with Rockchip SoCs.
219 This driver implements register read/write operations.
220
Simon Glass7abf1782021-08-08 12:20:25 -0600221config SPL_PMIC_RK8XX
222 bool "Enable support for Rockchip PMIC RK8XX"
223 depends on DM_PMIC
224 ---help---
225 The Rockchip RK808 PMIC provides four buck DC-DC convertors, 8 LDOs,
226 an RTC and two low Rds (resistance (drain to source)) switches. It is
227 accessed via an I2C interface. The device is used with Rockchip SoCs.
228 This driver implements register read/write operations.
229
Przemyslaw Marczak35d460f2015-10-27 13:07:58 +0100230config PMIC_S2MPS11
231 bool "Enable Driver Model for PMIC Samsung S2MPS11"
232 depends on DM_PMIC
233 ---help---
234 The Samsung S2MPS11 PMIC provides:
235 - 38 adjustable LDO regulators
236 - 9 High-Efficiency Buck Converters
237 - 1 BuckBoost Converter
238 - RTC with two alarms
239 - Backup battery charger
240 - I2C Configuration Interface
241 This driver provides access to I/O interface only.
242 Binding info: doc/device-tree-bindings/pmic/s2mps11.txt
243
Przemyslaw Marczak5d387d02015-05-13 13:38:32 +0200244config DM_PMIC_SANDBOX
Michal Simekb8448052018-07-23 08:38:56 +0200245 bool "Enable Driver Model for emulated Sandbox PMIC"
Przemyslaw Marczak5d387d02015-05-13 13:38:32 +0200246 depends on DM_PMIC
247 ---help---
248 Enable the driver for Sandbox PMIC emulation. The emulated PMIC device
249 depends on two drivers:
250 - sandbox PMIC I/O driver - implements dm pmic operations
251 - sandbox PMIC i2c emul driver - emulates the PMIC's I2C transmission
252
253 A detailed information can be found in header: '<power/sandbox_pmic.h>'
254
255 The Sandbox PMIC info:
256 * I/O interface:
257 - I2C chip address: 0x40
258 - first register address: 0x0
259 - register count: 0x10
260 * Adjustable outputs:
261 - 2x LDO
262 - 2x BUCK
263 - Each, with a different operating conditions (header).
264 * Reset values:
265 - set by i2c emul driver's probe() (defaults in header)
266
267 Driver binding info: doc/device-tree-bindings/pmic/sandbox.txt
Simon Glass151b2232015-07-02 18:15:58 -0600268
Simon Glassd308c012015-07-02 18:16:00 -0600269config PMIC_S5M8767
270 bool "Enable Driver Model for the Samsung S5M8767 PMIC"
271 depends on DM_PMIC
272 ---help---
273 The S5M8767 PMIC provides a large array of LDOs and BUCKs for use
274 as a SoC power controller. It also provides 32KHz clock outputs. This
275 driver provides basic register access and sets up the attached
276 regulators if regulator support is enabled.
277
Stefan Agnerc571d682016-10-05 15:27:09 -0700278config PMIC_RN5T567
279 bool "Enable driver for Ricoh RN5T567 PMIC"
280 depends on DM_PMIC
281 ---help---
282 The RN5T567 is a PMIC with 4 step-down DC/DC converters, 5 LDO
283 regulators Real-Time Clock and 4 GPIOs. This driver provides
284 register access only.
285
Simon Glass151b2232015-07-02 18:15:58 -0600286config PMIC_TPS65090
287 bool "Enable driver for Texas Instruments TPS65090 PMIC"
288 depends on DM_PMIC
289 ---help---
290 The TPS65090 is a PMIC containing several LDOs, DC to DC convertors,
291 FETs and a battery charger. This driver provides register access
292 only, and you can enable the regulator/charger drivers separately if
293 required.
Keerthy33621d22016-09-30 09:20:43 +0530294
295config PMIC_PALMAS
296 bool "Enable driver for Texas Instruments PALMAS PMIC"
297 depends on DM_PMIC
298 ---help---
299 The PALMAS is a PMIC containing several LDOs, SMPS.
300 This driver binds the pmic children.
Keerthyca1de0b2016-09-30 09:34:02 +0530301
302config PMIC_LP873X
303 bool "Enable driver for Texas Instruments LP873X PMIC"
304 depends on DM_PMIC
305 ---help---
306 The LP873X is a PMIC containing couple of LDOs and couple of SMPS.
307 This driver binds the pmic children.
Hou Zhiqiang762161b2016-12-09 16:08:57 +0800308
Keerthycdad57a2017-06-07 19:08:28 +0530309config PMIC_LP87565
310 bool "Enable driver for Texas Instruments LP87565 PMIC"
311 depends on DM_PMIC
312 ---help---
313 The LP87565 is a PMIC containing a bunch of SMPS.
314 This driver binds the pmic children.
315
Hou Zhiqiang762161b2016-12-09 16:08:57 +0800316config POWER_MC34VR500
317 bool "Enable driver for Freescale MC34VR500 PMIC"
318 ---help---
319 The MC34VR500 is used in conjunction with the FSL T1 and LS1 series
320 SoC. It provides 4 buck DC-DC convertors and 5 LDOs, and it is accessed
321 via an I2C interface.
Felix Brack854dfbf2017-11-30 13:52:37 +0100322
323config DM_PMIC_TPS65910
324 bool "Enable driver for Texas Instruments TPS65910 PMIC"
325 depends on DM_PMIC
326 ---help---
327 The TPS65910 is a PMIC containing 3 buck DC-DC converters, one boost
328 DC-DC converter, 8 LDOs and a RTC. This driver binds the SMPS and LDO
329 pmic children.
Patrick Delaunay5d0c74e2018-03-12 10:46:12 +0100330
Patrick Delaunay42f01aa2019-02-04 11:26:17 +0100331config PMIC_STPMIC1
332 bool "Enable support for STMicroelectronics STPMIC1 PMIC"
Patrick Delaunay5d0c74e2018-03-12 10:46:12 +0100333 depends on DM_PMIC && DM_I2C
Urja Rannikkob8050512019-05-16 21:48:42 +0000334 select SYSRESET_CMD_POWEROFF if CMD_POWEROFF && !ARM_PSCI_FW
Patrick Delaunay5d0c74e2018-03-12 10:46:12 +0100335 ---help---
Patrick Delaunay42f01aa2019-02-04 11:26:17 +0100336 The STPMIC1 PMIC provides 4 BUCKs, 6 LDOs, 1 VREF and 2 power switches.
Patrick Delaunay5d0c74e2018-03-12 10:46:12 +0100337 It is accessed via an I2C interface. The device is used with STM32MP1
338 SoCs. This driver implements register read/write operations.
Keerthy24638742019-06-06 16:06:55 +0530339
340config SPL_PMIC_PALMAS
341 bool "Enable driver for Texas Instruments PALMAS PMIC"
342 depends on DM_PMIC
343 help
344 The PALMAS is a PMIC containing several LDOs, SMPS.
345 This driver binds the pmic children in SPL.
346
347config SPL_PMIC_LP873X
348 bool "Enable driver for Texas Instruments LP873X PMIC"
349 depends on DM_PMIC
350 help
351 The LP873X is a PMIC containing couple of LDOs and couple of SMPS.
352 This driver binds the pmic children in SPL.
353
354config SPL_PMIC_LP87565
355 bool "Enable driver for Texas Instruments LP87565 PMIC"
356 depends on DM_PMIC
357 help
358 The LP87565 is a PMIC containing a bunch of SMPS.
359 This driver binds the pmic children in SPL.
Keerthy6b86dd02019-10-24 15:00:50 +0530360
361config PMIC_TPS65941
362 bool "Enable driver for Texas Instruments TPS65941 PMIC"
363 depends on DM_PMIC
364 help
365 The TPS65941 is a PMIC containing a bunch of SMPS & LDOs.
366 This driver binds the pmic children.