xref: /openbmc/u-boot/drivers/power/pmic/Kconfig (revision 12f229ea)
1config 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'
12
13config PMIC_CHILDREN
14	bool "Allow child devices for PMICs"
15	depends on DM_PMIC
16	default y
17	---help---
18	This allows PMICs to support child devices (such as regulators) in
19	SPL. This adds quite a bit of code so if you are not using this
20	feature you can turn it off. Most likely you should turn it on for
21	U-Boot proper.
22
23config SPL_PMIC_CHILDREN
24	bool "Allow child devices for PMICs in SPL"
25	depends on DM_PMIC
26	default y
27	---help---
28	This allows PMICs to support child devices (such as regulators) in
29	SPL. This adds quite a bit of code so if you are not using this
30	feature you can turn it off. In this case you may need a 'back door'
31	to call your regulator code (e.g. see rk808.c for direct functions
32	for use in SPL).
33
34config PMIC_ACT8846
35	bool "Enable support for the active-semi 8846 PMIC"
36	depends on DM_PMIC && DM_I2C
37	---help---
38	This PMIC includes 4 DC/DC step-down buck regulators and 8 low-dropout
39	regulators (LDOs). It also provides some GPIO, reset and battery
40	functions. It uses an I2C interface and is designed for use with
41	tablets and smartphones.
42
43config DM_PMIC_PFUZE100
44	bool "Enable Driver Model for PMIC PFUZE100"
45	depends on DM_PMIC
46	---help---
47	This config enables implementation of driver-model pmic uclass features
48	for PMIC PFUZE100. The driver implements read/write operations.
49
50config DM_PMIC_MAX77686
51	bool "Enable Driver Model for PMIC MAX77686"
52	depends on DM_PMIC
53	---help---
54	This config enables implementation of driver-model pmic uclass features
55	for PMIC MAX77686. The driver implements read/write operations.
56
57config PMIC_RK808
58	bool "Enable support for Rockchip PMIC RK808"
59	depends on DM_PMIC
60	---help---
61	The Rockchip RK808 PMIC provides four buck DC-DC convertors, 8 LDOs,
62	an RTC and two low Rds (resistance (drain to source)) switches. It is
63	accessed via an I2C interface. The device is used with Rockchip SoCs.
64	This driver implements register read/write operations.
65
66config PMIC_S2MPS11
67	bool "Enable Driver Model for PMIC Samsung S2MPS11"
68	depends on DM_PMIC
69	---help---
70	The Samsung S2MPS11 PMIC provides:
71	 - 38 adjustable LDO regulators
72	 - 9 High-Efficiency Buck Converters
73	 - 1 BuckBoost Converter
74	 - RTC with two alarms
75	 - Backup battery charger
76	 - I2C Configuration Interface
77	This driver provides access to I/O interface only.
78	Binding info: doc/device-tree-bindings/pmic/s2mps11.txt
79
80config DM_PMIC_SANDBOX
81	bool "Enable Driver Model for emulated Sandbox PMIC "
82	depends on DM_PMIC
83	---help---
84	Enable the driver for Sandbox PMIC emulation. The emulated PMIC device
85	depends on two drivers:
86	- sandbox PMIC I/O driver - implements dm pmic operations
87	- sandbox PMIC i2c emul driver - emulates the PMIC's I2C transmission
88
89	A detailed information can be found in header: '<power/sandbox_pmic.h>'
90
91	The Sandbox PMIC info:
92	* I/O interface:
93	  - I2C chip address:       0x40
94	  - first register address: 0x0
95	  - register count:         0x10
96	* Adjustable outputs:
97	  - 2x LDO
98	  - 2x BUCK
99	  - Each, with a different operating conditions (header).
100	* Reset values:
101	  - set by i2c emul driver's probe() (defaults in header)
102
103	Driver binding info: doc/device-tree-bindings/pmic/sandbox.txt
104
105config PMIC_S5M8767
106	bool "Enable Driver Model for the Samsung S5M8767 PMIC"
107	depends on DM_PMIC
108	---help---
109	The S5M8767 PMIC provides a large array of LDOs and BUCKs for use
110	as a SoC power controller. It also provides 32KHz clock outputs. This
111	driver provides basic register access and sets up the attached
112	regulators if regulator support is enabled.
113
114config PMIC_TPS65090
115	bool "Enable driver for Texas Instruments TPS65090 PMIC"
116	depends on DM_PMIC
117	---help---
118	The TPS65090 is a PMIC containing several LDOs, DC to DC convertors,
119	FETs and a battery charger. This driver provides register access
120	only, and you can enable the regulator/charger drivers separately if
121	required.
122