aboutsummaryrefslogtreecommitdiff
path: root/drivers/power/pmic/Kconfig
blob: 176fb07c651a55af1ae70fca86136a19d6fee2eb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
config DM_PMIC
	bool "Enable Driver Model for PMIC drivers (UCLASS_PMIC)"
	depends on DM
	---help---
	This config enables the driver-model PMIC support.
	UCLASS_PMIC - designed to provide an I/O interface for PMIC devices.
	For the multi-function PMIC devices, this can be used as parent I/O
	device for each IC's interface. Then, each children uses its parent
	for read/write. For detailed description, please refer to the files:
	- 'drivers/power/pmic/pmic-uclass.c'
	- 'include/power/pmic.h'

if DM_PMIC

config SPL_DM_PMIC
	bool "Enable Driver Model for PMIC drivers (UCLASS_PMIC) in SPL"
	depends on SPL_DM
	default y
	---help---
	This config enables the driver-model PMIC support in SPL.
	UCLASS_PMIC - designed to provide an I/O interface for PMIC devices.
	For the multi-function PMIC devices, this can be used as parent I/O
	device for each IC's interface. Then, each children uses its parent
	for read/write. For detailed description, please refer to the files:
	- 'drivers/power/pmic/pmic-uclass.c'
	- 'include/power/pmic.h'

config PMIC_CHILDREN
	bool "Allow child devices for PMICs"
	default y
	---help---
	This allows PMICs to support child devices (such as regulators) in
	SPL. This adds quite a bit of code so if you are not using this
	feature you can turn it off. Most likely you should turn it on for
	U-Boot proper.

config SPL_PMIC_CHILDREN
	bool "Allow child devices for PMICs in SPL"
	depends on SPL_DM_PMIC
	default y
	---help---
	This allows PMICs to support child devices (such as regulators) in
	SPL. This adds quite a bit of code so if you are not using this
	feature you can turn it off. In this case you may need a 'back door'
	to call your regulator code (e.g. see rk8xx.c for direct functions
	for use in SPL).

config PMIC_AB8500
	bool "Enable driver for ST-Ericsson AB8500 PMIC via PRCMU"
	select REGMAP
	select SYSCON
	help
	  Enable support for the ST-Ericsson AB8500 (Analog Baseband) PMIC.
	  It connects with the ST-Ericsson DB8500 SoC via an I2C bus managed by
	  the power/reset/clock management unit (PRCMU) firmware.

config PMIC_ACT8846
	bool "Enable support for the active-semi 8846 PMIC"
	depends on DM_I2C
	---help---
	This PMIC includes 4 DC/DC step-down buck regulators and 8 low-dropout
	regulators (LDOs). It also provides some GPIO, reset and battery
	functions. It uses an I2C interface and is designed for use with
	tablets and smartphones.

config PMIC_AXP
	bool "Enable Driver Model for X-Powers AXP PMICs"
	depends on DM_I2C
	select SYSRESET_CMD_POWEROFF if SYSRESET && CMD_POWEROFF
	imply CMD_POWEROFF if SYSRESET
	help
	  This config enables driver-model PMIC uclass features for
	  X-Powers AXP152, AXP2xx, and AXP8xx PMICs.

config SPL_PMIC_AXP
	bool "Enable Driver Model for X-Powers AXP PMICs in SPL"
	depends on SPL_DM_I2C && SPL_DM_PMIC
	help
	  This config enables driver-model PMIC uclass features in the SPL for
	  X-Powers AXP152, AXP2xx, and AXP8xx PMICs.

config DM_PMIC_DA9063
	bool "Enable Driver Model for the Dialog DA9063 PMIC"
	help
	  This config enables implementation of driver-model pmic uclass features
	  for PMIC DA9063. The driver implements read/write operations.

config SPL_DM_PMIC_DA9063
	bool "Enable Driver Model for the Dialog DA9063 PMIC in SPL"
	depends on SPL_DM_PMIC
	help
	  This config enables implementation of driver-model pmic uclass features
	  for PMIC DA9063. The driver implements read/write operations.

config PMIC_AS3722
	bool "Enable support for the Austria Micro Systems (AMS) AS7322 PMIC"
	help
	  The AS3722 includes 7 DC/DC buck convertors, 11 low-noise LDOs, a
	  real-time clock, GPIOs, ADC and a few other features. It uses an I2C
	  interface and is designs to cover most of the power managementment
	  required for a tablets or laptop.

config DM_PMIC_BD71837
 	bool "Enable Driver Model for PMIC BD71837"
 	help
	  This config enables implementation of driver-model pmic uclass features
	  for PMIC BD71837. The driver implements read/write operations.

config SPL_DM_PMIC_BD71837
	bool "Enable Driver Model for PMIC BD71837 in SPL stage"
	depends on SPL_DM_PMIC
	help
	  This config enables implementation of driver-model pmic uclass
	  features for PMIC BD71837. The driver implements read/write
	  operations.

config DM_PMIC_FAN53555
	bool "Enable support for OnSemi FAN53555"
	depends on DM_REGULATOR && DM_I2C
	select DM_REGULATOR_FAN53555
	help
	  This config enables implementation of driver-model PMIC
	  uclass features for the FAN53555 regulator. The FAN53555 is
	  a (family of) single-output regulators that supports
	  transitioning between two different output voltages based on
	  an voltage selection pin.

	  The driver implements read/write operations for use with the FAN53555
	  regulator driver and binds the regulator driver to its node.

config SPL_DM_PMIC_FAN53555
	bool "Enable support for OnSemi FAN53555 in SPL"
	depends on SPL_DM_REGULATOR && SPL_DM_I2C
	select SPL_DM_REGULATOR_FAN53555
	help
	  This config enables implementation of driver-model PMIC
	  uclass features for the FAN53555 regulator. The FAN53555 is
	  a (family of) single-output regulators that supports
	  transitioning between two different output voltages based on
	  an voltage selection pin.

	  The driver implements read/write operations for use with the FAN53555
	  regulator driver and binds the regulator driver to its node.

config DM_PMIC_MP5416
	bool "Enable Driver Model for PMIC MP5416"
	help
	  This config enables implementation of driver-model pmic uclass features
	  for PMIC MP5416. The driver implements read/write operations.

config SPL_DM_PMIC_MP5416
	bool "Enable Driver Model for PMIC MP5416 in SPL stage"
	depends on SPL_DM_PMIC
	help
	  This config enables implementation of driver-model pmic uclass
	  features for PMIC MP5416. The driver implements read/write
	  operations.

config DM_PMIC_PCA9450
	bool "Enable Driver Model for PMIC PCA9450"
	depends on DM_I2C
	help
	  This config enables implementation of driver-model pmic uclass features
	  for PMIC PCA9450. The driver implements read/write operations.

config SPL_DM_PMIC_PCA9450
	bool "Enable Driver Model for PMIC PCA9450 in SPL"
	depends on SPL_DM_PMIC
	depends on SPL_DM_I2C
	help
	  This config enables implementation of driver-model pmic uclass features
	  for PMIC PCA9450 in SPL. The driver implements read/write operations.

config DM_PMIC_PFUZE100
	bool "Enable Driver Model for PMIC PFUZE100"
	---help---
	This config enables implementation of driver-model pmic uclass features
	for PMIC PFUZE100. The driver implements read/write operations.

config SPL_DM_PMIC_PFUZE100
	bool "Enable Driver Model for PMIC PFUZE100 in SPL"
	depends on SPL_DM_PMIC
	---help---
	This config enables implementation of driver-model pmic uclass features
	for PMIC PFUZE100 in SPL. The driver implements read/write operations.

config DM_PMIC_MAX77686
	bool "Enable Driver Model for PMIC MAX77686"
	---help---
	This config enables implementation of driver-model pmic uclass features
	for PMIC MAX77686. The driver implements read/write operations.

config DM_PMIC_MAX8998
	bool "Enable Driver Model for PMIC MAX8998"
	---help---
	This config enables implementation of driver-model pmic uclass features
	for PMIC MAX8998. The driver implements read/write operations.

config DM_PMIC_MC34708
	bool "Enable Driver Model for PMIC MC34708"
	help
	 This config enables implementation of driver-model pmic uclass features
	 for PMIC MC34708. The driver implements read/write operations.

config PMIC_MAX8997
	bool "Enable Driver Model for PMIC MAX8997"
	---help---
	This config enables implementation of driver-model pmic uclass features
	for PMIC MAX8997. The driver implements read/write operations.
	This is a Power Management IC with RTC, Fuel Gauge, MUIC control on Chip.
	- 21x LDOs
	- 12x GPIOs
	- Haptic Motor driver
	- RTC with two alarms
	- Fueal Gauge and One backup battery charger
	- MUIC
	- Others

config PMIC_QCOM
	bool "Enable Driver Model for Qualcomm generic PMIC"
	---help---
	The Qcom PMIC is connected to one (or several) processors
	with SPMI bus. It has 2 slaves with several peripherals:
	- 18x LDO
	- 4x GPIO
	- Power and Reset buttons
	- Watchdog
	- RTC
	- Vibrator drivers
	- Others

	Driver binding info: doc/device-tree-bindings/pmic/qcom,spmi-pmic.txt

config PMIC_RK8XX
	bool "Enable support for Rockchip PMIC RK8XX"
	---help---
	The Rockchip RK808 PMIC provides four buck DC-DC convertors, 8 LDOs,
	an RTC and two low Rds (resistance (drain to source)) switches. It is
	accessed via an I2C interface. The device is used with Rockchip SoCs.
	This driver implements register read/write operations.

config SPL_PMIC_RK8XX
	bool "Enable support for Rockchip PMIC RK8XX"
	depends on SPL_DM_PMIC
	---help---
	The Rockchip RK808 PMIC provides four buck DC-DC convertors, 8 LDOs,
	an RTC and two low Rds (resistance (drain to source)) switches. It is
	accessed via an I2C interface. The device is used with Rockchip SoCs.
	This driver implements register read/write operations.

config PMIC_S2MPS11
	bool "Enable Driver Model for PMIC Samsung S2MPS11"
	---help---
	The Samsung S2MPS11 PMIC provides:
	 - 38 adjustable LDO regulators
	 - 9 High-Efficiency Buck Converters
	 - 1 BuckBoost Converter
	 - RTC with two alarms
	 - Backup battery charger
	 - I2C Configuration Interface
	This driver provides access to I/O interface only.
	Binding info: doc/device-tree-bindings/pmic/s2mps11.txt

config DM_PMIC_SANDBOX
	bool "Enable Driver Model for emulated Sandbox PMIC"
	---help---
	Enable the driver for Sandbox PMIC emulation. The emulated PMIC device
	depends on two drivers:
	- sandbox PMIC I/O driver - implements dm pmic operations
	- sandbox PMIC i2c emul driver - emulates the PMIC's I2C transmission

	A detailed information can be found in header: '<power/sandbox_pmic.h>'

	The Sandbox PMIC info:
	* I/O interface:
	  - I2C chip address:       0x40
	  - first register address: 0x0
	  - register count:         0x10
	* Adjustable outputs:
	  - 2x LDO
	  - 2x BUCK
	  - Each, with a different operating conditions (header).
	* Reset values:
	  - set by i2c emul driver's probe() (defaults in header)

	Driver binding info: doc/device-tree-bindings/pmic/sandbox.txt

config PMIC_S5M8767
	bool "Enable Driver Model for the Samsung S5M8767 PMIC"
	---help---
	The S5M8767 PMIC provides a large array of LDOs and BUCKs for use
	as a SoC power controller. It also provides 32KHz clock outputs. This
	driver provides basic register access and sets up the attached
	regulators if regulator support is enabled.

config PMIC_RN5T567
	bool "Enable driver for Ricoh RN5T567 PMIC"
	---help---
	The RN5T567 is a PMIC with 4 step-down DC/DC converters, 5 LDO
	regulators Real-Time Clock and 4 GPIOs. This driver provides
	register access only.

config SPL_PMIC_RN5T567
	bool "Enable driver for Ricoh RN5T567 PMIC in SPL"
	depends on SPL_DM_PMIC
	---help---
	The RN5T567 is a PMIC with 4 step-down DC/DC converters, 5 LDO
	regulators Real-Time Clock and 4 GPIOs. This driver provides
	register access only.

config PMIC_TPS65090
	bool "Enable driver for Texas Instruments TPS65090 PMIC"
	---help---
	The TPS65090 is a PMIC containing several LDOs, DC to DC convertors,
	FETs and a battery charger. This driver provides register access
	only, and you can enable the regulator/charger drivers separately if
	required.

config PMIC_PALMAS
	bool "Enable driver for Texas Instruments PALMAS PMIC"
	---help---
	The PALMAS is a PMIC containing several LDOs, SMPS.
	This driver binds the pmic children.

config PMIC_LP873X
	bool "Enable driver for Texas Instruments LP873X PMIC"
	---help---
	The LP873X is a PMIC containing couple of LDOs and couple of SMPS.
	This driver binds the pmic children.

config PMIC_LP87565
	bool "Enable driver for Texas Instruments LP87565 PMIC"
	---help---
	The LP87565 is a PMIC containing a bunch of SMPS.
	This driver binds the pmic children.

config DM_PMIC_TPS65910
	bool "Enable driver for Texas Instruments TPS65910 PMIC"
	---help---
	The TPS65910 is a PMIC containing 3 buck DC-DC converters, one boost
	DC-DC converter, 8 LDOs and a RTC. This driver binds the SMPS and LDO
	pmic children.

config PMIC_STPMIC1
	bool "Enable support for STMicroelectronics STPMIC1 PMIC"
	depends on DM_I2C
	select SYSRESET_CMD_POWEROFF if CMD_POWEROFF && !ARM_PSCI_FW
	---help---
	The STPMIC1 PMIC provides 4 BUCKs, 6 LDOs, 1 VREF and 2 power switches.
	It is accessed via an I2C interface. The device is used with STM32MP1
	SoCs. This driver implements register read/write operations.

config SPL_PMIC_PALMAS
	bool "Enable driver for Texas Instruments PALMAS PMIC"
	depends on SPL_DM_PMIC
	help
	The PALMAS is a PMIC containing several LDOs, SMPS.
	This driver binds the pmic children in SPL.

config SPL_PMIC_LP873X
	bool "Enable driver for Texas Instruments LP873X PMIC"
	depends on SPL_DM_PMIC
	help
	The LP873X is a PMIC containing couple of LDOs and couple of SMPS.
	This driver binds the pmic children in SPL.

config SPL_PMIC_LP87565
	bool "Enable driver for Texas Instruments LP87565 PMIC"
	depends on SPL_DM_PMIC
	help
	The LP87565 is a PMIC containing a bunch of SMPS.
	This driver binds the pmic children in SPL.

config PMIC_TPS65941
	bool "Enable driver for Texas Instruments TPS65941 PMIC"
	help
	The TPS65941 is a PMIC containing a bunch of SMPS & LDOs.
	This driver binds the pmic children.

config PMIC_TPS65219
	bool "Enable driver for Texas Instruments TPS65219 PMIC"
	depends on DM_PMIC
	help
	The TPS65219 is a PMIC containing a bunch of SMPS & LDOs.
	This driver binds the pmic children.
endif

config PMIC_TPS65217
	bool "Enable driver for Texas Instruments TPS65217 PMIC"
	---help---
	The TPS65217 is a PMIC containing several LDOs, DC to DC convertors,
	FETs and a battery charger. This driver provides register access
	only, and you can enable the regulator/charger drivers separately if
	required.

config POWER_TPS65218
	bool "Enable legacy driver for TPS65218 PMIC"

config POWER_TPS62362
	bool "Enable legacy driver for TPS62362 PMIC"

config SPL_POWER_TPS62362
	bool "Enable legacy driver for TPS62362 PMIC in SPL"
	default y if POWER_TPS62362
	depends on SPL

config SPL_POWER_TPS65910
	bool "Enable legacy driver for TPS65910 PMIC in SPL"
	depends on SPL

if POWER_LEGACY || SPL_POWER_LEGACY

config POWER_HI6553
	bool "Enable legacy driver for HI6553 PMIC"

config POWER_LTC3676
	bool "Enable legacy driver for LTC3676 PMIC"

config POWER_PCA9450
	bool "Enable legacy driver for PCA9450 PMIC"

config POWER_PFUZE100
	bool "Enable legacy driver for PFUZE100 PMIC"

config POWER_PFUZE3000
	bool "Enable legacy driver for PFUZE3000 PMIC"

config POWER_MC34VR500
	bool "Enable driver for Freescale MC34VR500 PMIC"
	---help---
	The MC34VR500 is used in conjunction with the FSL T1 and LS1 series
	SoC. It provides 4 buck DC-DC convertors and 5 LDOs, and it is accessed
	via an I2C interface.

endif