blob: 2472555a3ff3744446b4d0c69e0aecd14a40e6b0 [file] [log] [blame]
Przemyslaw Marczak9a8bc952015-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 Marczak58ea76f2015-04-20 20:07:46 +020012
Samuel Hollandaad02792021-10-08 00:17:14 -050013if DM_PMIC
14
Simon Glass6343ffb2021-08-08 12:20:25 -060015config SPL_DM_PMIC
16 bool "Enable Driver Model for PMIC drivers (UCLASS_PMIC) in SPL"
17 depends on SPL_DM
Samuel Hollandaad02792021-10-08 00:17:14 -050018 default y
Simon Glass6343ffb2021-08-08 12:20:25 -060019 ---help---
20 This config enables the driver-model PMIC support in SPL.
21 UCLASS_PMIC - designed to provide an I/O interface for PMIC devices.
22 For the multi-function PMIC devices, this can be used as parent I/O
23 device for each IC's interface. Then, each children uses its parent
24 for read/write. For detailed description, please refer to the files:
25 - 'drivers/power/pmic/pmic-uclass.c'
26 - 'include/power/pmic.h'
27
Simon Glassc8db7b42016-01-21 19:43:55 -070028config PMIC_CHILDREN
29 bool "Allow child devices for PMICs"
Simon Glassc8db7b42016-01-21 19:43:55 -070030 default y
31 ---help---
32 This allows PMICs to support child devices (such as regulators) in
33 SPL. This adds quite a bit of code so if you are not using this
34 feature you can turn it off. Most likely you should turn it on for
35 U-Boot proper.
36
37config SPL_PMIC_CHILDREN
38 bool "Allow child devices for PMICs in SPL"
Simon Glassc8db7b42016-01-21 19:43:55 -070039 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 Chen614704b2017-05-02 14:54:52 +080044 to call your regulator code (e.g. see rk8xx.c for direct functions
Simon Glassc8db7b42016-01-21 19:43:55 -070045 for use in SPL).
46
Stephan Gerholdcb9589f2021-07-08 20:33:48 +020047config PMIC_AB8500
48 bool "Enable driver for ST-Ericsson AB8500 PMIC via PRCMU"
Stephan Gerholdcb9589f2021-07-08 20:33:48 +020049 select REGMAP
50 select SYSCON
51 help
52 Enable support for the ST-Ericsson AB8500 (Analog Baseband) PMIC.
53 It connects with the ST-Ericsson DB8500 SoC via an I2C bus managed by
54 the power/reset/clock management unit (PRCMU) firmware.
55
Simon Glassb08ce892015-08-30 16:55:29 -060056config PMIC_ACT8846
57 bool "Enable support for the active-semi 8846 PMIC"
Samuel Hollandaad02792021-10-08 00:17:14 -050058 depends on DM_I2C
Simon Glassb08ce892015-08-30 16:55:29 -060059 ---help---
60 This PMIC includes 4 DC/DC step-down buck regulators and 8 low-dropout
61 regulators (LDOs). It also provides some GPIO, reset and battery
62 functions. It uses an I2C interface and is designed for use with
63 tablets and smartphones.
64
Martin Fuzzeya99472e2020-01-14 15:56:16 +000065config DM_PMIC_DA9063
66 bool "Enable Driver Model for the Dialog DA9063 PMIC"
Martin Fuzzeya99472e2020-01-14 15:56:16 +000067 help
68 This config enables implementation of driver-model pmic uclass features
69 for PMIC DA9063. The driver implements read/write operations.
70
71config SPL_DM_PMIC_DA9063
72 bool "Enable Driver Model for the Dialog DA9063 PMIC in SPL"
Samuel Hollandaad02792021-10-08 00:17:14 -050073 depends on SPL
Martin Fuzzeya99472e2020-01-14 15:56:16 +000074 help
75 This config enables implementation of driver-model pmic uclass features
76 for PMIC DA9063. The driver implements read/write operations.
77
Simon Glass52222b12017-04-26 22:27:46 -060078config PMIC_AS3722
79 bool "Enable support for the Austria Micro Systems (AMS) AS7322 PMIC"
80 help
81 The AS3722 includes 7 DC/DC buck convertors, 11 low-noise LDOs, a
82 real-time clock, GPIOs, ADC and a few other features. It uses an I2C
83 interface and is designs to cover most of the power managementment
84 required for a tablets or laptop.
85
Matti Vaittinen1cf7f1d2019-05-07 10:43:39 +030086config DM_PMIC_BD71837
87 bool "Enable Driver Model for PMIC BD71837"
Matti Vaittinen1cf7f1d2019-05-07 10:43:39 +030088 help
89 This config enables implementation of driver-model pmic uclass features
90 for PMIC BD71837. The driver implements read/write operations.
91
Peng Fan9c3193b2019-10-16 10:24:36 +000092config SPL_DM_PMIC_BD71837
93 bool "Enable Driver Model for PMIC BD71837 in SPL stage"
Peng Fan9c3193b2019-10-16 10:24:36 +000094 help
95 This config enables implementation of driver-model pmic uclass
96 features for PMIC BD71837. The driver implements read/write
97 operations.
98
Philipp Tomsichb7f57e12018-11-30 20:00:08 +010099config DM_PMIC_FAN53555
100 bool "Enable support for OnSemi FAN53555"
Samuel Hollandaad02792021-10-08 00:17:14 -0500101 depends on DM_REGULATOR && DM_I2C
Philipp Tomsichb7f57e12018-11-30 20:00:08 +0100102 select DM_REGULATOR_FAN53555
103 help
104 This config enables implementation of driver-model PMIC
105 uclass features for the FAN53555 regulator. The FAN53555 is
106 a (family of) single-output regulators that supports
107 transitioning between two different output voltages based on
108 an voltage selection pin.
109
110 The driver implements read/write operations for use with the FAN53555
111 regulator driver and binds the regulator driver to its node.
112
Tim Harvey338588e2020-12-21 08:19:39 -0800113config DM_PMIC_MP5416
114 bool "Enable Driver Model for PMIC MP5416"
Tim Harvey338588e2020-12-21 08:19:39 -0800115 help
116 This config enables implementation of driver-model pmic uclass features
117 for PMIC MP5416. The driver implements read/write operations.
118
119config SPL_DM_PMIC_MP5416
120 bool "Enable Driver Model for PMIC MP5416 in SPL stage"
Tim Harvey338588e2020-12-21 08:19:39 -0800121 help
122 This config enables implementation of driver-model pmic uclass
123 features for PMIC MP5416. The driver implements read/write
124 operations.
125
Ye Lic3ee9092019-10-15 02:15:18 -0700126config DM_PMIC_PCA9450
127 bool "Enable Driver Model for PMIC PCA9450"
Ye Lic3ee9092019-10-15 02:15:18 -0700128 help
129 This config enables implementation of driver-model pmic uclass features
130 for PMIC PCA9450. The driver implements read/write operations.
131
Igor Opaniukdb8fef22020-10-28 11:58:10 +0200132config SPL_DM_PMIC_PCA9450
133 bool "Enable Driver Model for PMIC PCA9450"
Igor Opaniukdb8fef22020-10-28 11:58:10 +0200134 help
135 This config enables implementation of driver-model pmic uclass features
136 for PMIC PCA9450 in SPL. The driver implements read/write operations.
137
Peng Fan6f4f6d22015-08-14 11:36:16 +0200138config DM_PMIC_PFUZE100
139 bool "Enable Driver Model for PMIC PFUZE100"
Peng Fan6f4f6d22015-08-14 11:36:16 +0200140 ---help---
141 This config enables implementation of driver-model pmic uclass features
142 for PMIC PFUZE100. The driver implements read/write operations.
143
Marek Vasut16189d62020-05-29 19:22:41 +0200144config SPL_DM_PMIC_PFUZE100
145 bool "Enable Driver Model for PMIC PFUZE100 in SPL"
Marek Vasut16189d62020-05-29 19:22:41 +0200146 ---help---
147 This config enables implementation of driver-model pmic uclass features
148 for PMIC PFUZE100 in SPL. The driver implements read/write operations.
149
Przemyslaw Marczak58ea76f2015-04-20 20:07:46 +0200150config DM_PMIC_MAX77686
151 bool "Enable Driver Model for PMIC MAX77686"
Przemyslaw Marczak58ea76f2015-04-20 20:07:46 +0200152 ---help---
153 This config enables implementation of driver-model pmic uclass features
Przemyslaw Marczak10314982015-05-13 13:38:26 +0200154 for PMIC MAX77686. The driver implements read/write operations.
Przemyslaw Marczakd5175dc2015-05-13 13:38:32 +0200155
Jaehoon Chung42b5d882016-12-15 18:21:10 +0900156config DM_PMIC_MAX8998
157 bool "Enable Driver Model for PMIC MAX8998"
Jaehoon Chung42b5d882016-12-15 18:21:10 +0900158 ---help---
159 This config enables implementation of driver-model pmic uclass features
160 for PMIC MAX8998. The driver implements read/write operations.
161
Lukasz Majewski9c65b792018-05-15 16:26:37 +0200162config DM_PMIC_MC34708
163 bool "Enable Driver Model for PMIC MC34708"
Lukasz Majewski9c65b792018-05-15 16:26:37 +0200164 help
165 This config enables implementation of driver-model pmic uclass features
166 for PMIC MC34708. The driver implements read/write operations.
167
Jaehoon Chung4997f6e2017-02-02 17:04:09 +0900168config PMIC_MAX8997
169 bool "Enable Driver Model for PMIC MAX8997"
Jaehoon Chung4997f6e2017-02-02 17:04:09 +0900170 ---help---
171 This config enables implementation of driver-model pmic uclass features
172 for PMIC MAX8997. The driver implements read/write operations.
173 This is a Power Management IC with RTC, Fuel Gauge, MUIC control on Chip.
174 - 21x LDOs
175 - 12x GPIOs
176 - Haptic Motor driver
177 - RTC with two alarms
178 - Fueal Gauge and One backup battery charger
179 - MUIC
180 - Others
181
Mateusz Kulikowski0be548f2016-03-31 23:12:30 +0200182config PMIC_PM8916
183 bool "Enable Driver Model for Qualcomm PM8916 PMIC"
Mateusz Kulikowski0be548f2016-03-31 23:12:30 +0200184 ---help---
185 The PM8916 is a PMIC connected to one (or several) processors
186 with SPMI bus. It has 2 slaves with several peripherals:
187 - 18x LDO
188 - 4x GPIO
189 - Power and Reset buttons
190 - Watchdog
191 - RTC
192 - Vibrator drivers
193 - Others
194
195 Driver binding info: doc/device-tree-bindings/pmic/pm8916.txt
196
Jacob Chen614704b2017-05-02 14:54:52 +0800197config PMIC_RK8XX
198 bool "Enable support for Rockchip PMIC RK8XX"
Simon Glassa8bd2ac2016-01-21 19:43:29 -0700199 ---help---
200 The Rockchip RK808 PMIC provides four buck DC-DC convertors, 8 LDOs,
201 an RTC and two low Rds (resistance (drain to source)) switches. It is
202 accessed via an I2C interface. The device is used with Rockchip SoCs.
203 This driver implements register read/write operations.
204
Simon Glass6343ffb2021-08-08 12:20:25 -0600205config SPL_PMIC_RK8XX
206 bool "Enable support for Rockchip PMIC RK8XX"
Simon Glass6343ffb2021-08-08 12:20:25 -0600207 ---help---
208 The Rockchip RK808 PMIC provides four buck DC-DC convertors, 8 LDOs,
209 an RTC and two low Rds (resistance (drain to source)) switches. It is
210 accessed via an I2C interface. The device is used with Rockchip SoCs.
211 This driver implements register read/write operations.
212
Przemyslaw Marczak91815122015-10-27 13:07:58 +0100213config PMIC_S2MPS11
214 bool "Enable Driver Model for PMIC Samsung S2MPS11"
Przemyslaw Marczak91815122015-10-27 13:07:58 +0100215 ---help---
216 The Samsung S2MPS11 PMIC provides:
217 - 38 adjustable LDO regulators
218 - 9 High-Efficiency Buck Converters
219 - 1 BuckBoost Converter
220 - RTC with two alarms
221 - Backup battery charger
222 - I2C Configuration Interface
223 This driver provides access to I/O interface only.
224 Binding info: doc/device-tree-bindings/pmic/s2mps11.txt
225
Przemyslaw Marczakd5175dc2015-05-13 13:38:32 +0200226config DM_PMIC_SANDBOX
Michal Simekc7df3a22018-07-23 08:38:56 +0200227 bool "Enable Driver Model for emulated Sandbox PMIC"
Przemyslaw Marczakd5175dc2015-05-13 13:38:32 +0200228 ---help---
229 Enable the driver for Sandbox PMIC emulation. The emulated PMIC device
230 depends on two drivers:
231 - sandbox PMIC I/O driver - implements dm pmic operations
232 - sandbox PMIC i2c emul driver - emulates the PMIC's I2C transmission
233
234 A detailed information can be found in header: '<power/sandbox_pmic.h>'
235
236 The Sandbox PMIC info:
237 * I/O interface:
238 - I2C chip address: 0x40
239 - first register address: 0x0
240 - register count: 0x10
241 * Adjustable outputs:
242 - 2x LDO
243 - 2x BUCK
244 - Each, with a different operating conditions (header).
245 * Reset values:
246 - set by i2c emul driver's probe() (defaults in header)
247
248 Driver binding info: doc/device-tree-bindings/pmic/sandbox.txt
Simon Glassc0871112015-07-02 18:15:58 -0600249
Simon Glass01651492015-07-02 18:16:00 -0600250config PMIC_S5M8767
251 bool "Enable Driver Model for the Samsung S5M8767 PMIC"
Simon Glass01651492015-07-02 18:16:00 -0600252 ---help---
253 The S5M8767 PMIC provides a large array of LDOs and BUCKs for use
254 as a SoC power controller. It also provides 32KHz clock outputs. This
255 driver provides basic register access and sets up the attached
256 regulators if regulator support is enabled.
257
Stefan Agnerb084ddd2016-10-05 15:27:09 -0700258config PMIC_RN5T567
259 bool "Enable driver for Ricoh RN5T567 PMIC"
Stefan Agnerb084ddd2016-10-05 15:27:09 -0700260 ---help---
261 The RN5T567 is a PMIC with 4 step-down DC/DC converters, 5 LDO
262 regulators Real-Time Clock and 4 GPIOs. This driver provides
263 register access only.
264
Simon Glassc0871112015-07-02 18:15:58 -0600265config PMIC_TPS65090
266 bool "Enable driver for Texas Instruments TPS65090 PMIC"
Simon Glassc0871112015-07-02 18:15:58 -0600267 ---help---
268 The TPS65090 is a PMIC containing several LDOs, DC to DC convertors,
269 FETs and a battery charger. This driver provides register access
270 only, and you can enable the regulator/charger drivers separately if
271 required.
Keerthyf0df1b12016-09-30 09:20:43 +0530272
273config PMIC_PALMAS
274 bool "Enable driver for Texas Instruments PALMAS PMIC"
Keerthyf0df1b12016-09-30 09:20:43 +0530275 ---help---
276 The PALMAS is a PMIC containing several LDOs, SMPS.
277 This driver binds the pmic children.
Keerthy662797b2016-09-30 09:34:02 +0530278
279config PMIC_LP873X
280 bool "Enable driver for Texas Instruments LP873X PMIC"
Keerthy662797b2016-09-30 09:34:02 +0530281 ---help---
282 The LP873X is a PMIC containing couple of LDOs and couple of SMPS.
283 This driver binds the pmic children.
Hou Zhiqiang6d6e5ee2016-12-09 16:08:57 +0800284
Keerthy3006c922017-06-07 19:08:28 +0530285config PMIC_LP87565
286 bool "Enable driver for Texas Instruments LP87565 PMIC"
Keerthy3006c922017-06-07 19:08:28 +0530287 ---help---
288 The LP87565 is a PMIC containing a bunch of SMPS.
289 This driver binds the pmic children.
290
Hou Zhiqiang6d6e5ee2016-12-09 16:08:57 +0800291config POWER_MC34VR500
292 bool "Enable driver for Freescale MC34VR500 PMIC"
293 ---help---
294 The MC34VR500 is used in conjunction with the FSL T1 and LS1 series
295 SoC. It provides 4 buck DC-DC convertors and 5 LDOs, and it is accessed
296 via an I2C interface.
Felix Brack9493f0e2017-11-30 13:52:37 +0100297
298config DM_PMIC_TPS65910
299 bool "Enable driver for Texas Instruments TPS65910 PMIC"
Felix Brack9493f0e2017-11-30 13:52:37 +0100300 ---help---
301 The TPS65910 is a PMIC containing 3 buck DC-DC converters, one boost
302 DC-DC converter, 8 LDOs and a RTC. This driver binds the SMPS and LDO
303 pmic children.
Patrick Delaunay3cba4512018-03-12 10:46:12 +0100304
Patrick Delaunayd79218f2019-02-04 11:26:17 +0100305config PMIC_STPMIC1
306 bool "Enable support for STMicroelectronics STPMIC1 PMIC"
Samuel Hollandaad02792021-10-08 00:17:14 -0500307 depends on DM_I2C
Urja Rannikkoe008ebf2019-05-16 21:48:42 +0000308 select SYSRESET_CMD_POWEROFF if CMD_POWEROFF && !ARM_PSCI_FW
Patrick Delaunay3cba4512018-03-12 10:46:12 +0100309 ---help---
Patrick Delaunayd79218f2019-02-04 11:26:17 +0100310 The STPMIC1 PMIC provides 4 BUCKs, 6 LDOs, 1 VREF and 2 power switches.
Patrick Delaunay3cba4512018-03-12 10:46:12 +0100311 It is accessed via an I2C interface. The device is used with STM32MP1
312 SoCs. This driver implements register read/write operations.
Keerthya23e47e2019-06-06 16:06:55 +0530313
314config SPL_PMIC_PALMAS
315 bool "Enable driver for Texas Instruments PALMAS PMIC"
Keerthya23e47e2019-06-06 16:06:55 +0530316 help
317 The PALMAS is a PMIC containing several LDOs, SMPS.
318 This driver binds the pmic children in SPL.
319
320config SPL_PMIC_LP873X
321 bool "Enable driver for Texas Instruments LP873X PMIC"
Keerthya23e47e2019-06-06 16:06:55 +0530322 help
323 The LP873X is a PMIC containing couple of LDOs and couple of SMPS.
324 This driver binds the pmic children in SPL.
325
326config SPL_PMIC_LP87565
327 bool "Enable driver for Texas Instruments LP87565 PMIC"
Keerthya23e47e2019-06-06 16:06:55 +0530328 help
329 The LP87565 is a PMIC containing a bunch of SMPS.
330 This driver binds the pmic children in SPL.
Keerthya36bb3c2019-10-24 15:00:50 +0530331
332config PMIC_TPS65941
333 bool "Enable driver for Texas Instruments TPS65941 PMIC"
Keerthya36bb3c2019-10-24 15:00:50 +0530334 help
335 The TPS65941 is a PMIC containing a bunch of SMPS & LDOs.
336 This driver binds the pmic children.
Samuel Hollandaad02792021-10-08 00:17:14 -0500337
338endif