xref: /openbmc/u-boot/drivers/power/pmic/Kconfig (revision f2288c5a)
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 DM_PMIC_MAX8998
58	bool "Enable Driver Model for PMIC MAX8998"
59	depends on DM_PMIC
60	---help---
61	This config enables implementation of driver-model pmic uclass features
62	for PMIC MAX8998. The driver implements read/write operations.
63
64config PMIC_MAX8997
65	bool "Enable Driver Model for PMIC MAX8997"
66	depends on DM_PMIC
67	---help---
68	This config enables implementation of driver-model pmic uclass features
69	for PMIC MAX8997. The driver implements read/write operations.
70	This is a Power Management IC with RTC, Fuel Gauge, MUIC control on Chip.
71	- 21x LDOs
72	- 12x GPIOs
73	- Haptic Motor driver
74	- RTC with two alarms
75	- Fueal Gauge and One backup battery charger
76	- MUIC
77	- Others
78
79config PMIC_PM8916
80	bool "Enable Driver Model for Qualcomm PM8916 PMIC"
81	depends on DM_PMIC
82	---help---
83	The PM8916 is a PMIC connected to one (or several) processors
84	with SPMI bus. It has 2 slaves with several peripherals:
85	- 18x LDO
86	- 4x GPIO
87	- Power and Reset buttons
88	- Watchdog
89	- RTC
90	- Vibrator drivers
91	- Others
92
93	Driver binding info: doc/device-tree-bindings/pmic/pm8916.txt
94
95config PMIC_RK808
96	bool "Enable support for Rockchip PMIC RK808"
97	depends on DM_PMIC
98	---help---
99	The Rockchip RK808 PMIC provides four buck DC-DC convertors, 8 LDOs,
100	an RTC and two low Rds (resistance (drain to source)) switches. It is
101	accessed via an I2C interface. The device is used with Rockchip SoCs.
102	This driver implements register read/write operations.
103
104config PMIC_S2MPS11
105	bool "Enable Driver Model for PMIC Samsung S2MPS11"
106	depends on DM_PMIC
107	---help---
108	The Samsung S2MPS11 PMIC provides:
109	 - 38 adjustable LDO regulators
110	 - 9 High-Efficiency Buck Converters
111	 - 1 BuckBoost Converter
112	 - RTC with two alarms
113	 - Backup battery charger
114	 - I2C Configuration Interface
115	This driver provides access to I/O interface only.
116	Binding info: doc/device-tree-bindings/pmic/s2mps11.txt
117
118config DM_PMIC_SANDBOX
119	bool "Enable Driver Model for emulated Sandbox PMIC "
120	depends on DM_PMIC
121	---help---
122	Enable the driver for Sandbox PMIC emulation. The emulated PMIC device
123	depends on two drivers:
124	- sandbox PMIC I/O driver - implements dm pmic operations
125	- sandbox PMIC i2c emul driver - emulates the PMIC's I2C transmission
126
127	A detailed information can be found in header: '<power/sandbox_pmic.h>'
128
129	The Sandbox PMIC info:
130	* I/O interface:
131	  - I2C chip address:       0x40
132	  - first register address: 0x0
133	  - register count:         0x10
134	* Adjustable outputs:
135	  - 2x LDO
136	  - 2x BUCK
137	  - Each, with a different operating conditions (header).
138	* Reset values:
139	  - set by i2c emul driver's probe() (defaults in header)
140
141	Driver binding info: doc/device-tree-bindings/pmic/sandbox.txt
142
143config PMIC_S5M8767
144	bool "Enable Driver Model for the Samsung S5M8767 PMIC"
145	depends on DM_PMIC
146	---help---
147	The S5M8767 PMIC provides a large array of LDOs and BUCKs for use
148	as a SoC power controller. It also provides 32KHz clock outputs. This
149	driver provides basic register access and sets up the attached
150	regulators if regulator support is enabled.
151
152config PMIC_RN5T567
153	bool "Enable driver for Ricoh RN5T567 PMIC"
154	depends on DM_PMIC
155	---help---
156	The RN5T567 is a PMIC with 4 step-down DC/DC converters, 5 LDO
157	regulators Real-Time Clock and 4 GPIOs. This driver provides
158	register access only.
159
160config PMIC_TPS65090
161	bool "Enable driver for Texas Instruments TPS65090 PMIC"
162	depends on DM_PMIC
163	---help---
164	The TPS65090 is a PMIC containing several LDOs, DC to DC convertors,
165	FETs and a battery charger. This driver provides register access
166	only, and you can enable the regulator/charger drivers separately if
167	required.
168
169config PMIC_PALMAS
170	bool "Enable driver for Texas Instruments PALMAS PMIC"
171	depends on DM_PMIC
172	---help---
173	The PALMAS is a PMIC containing several LDOs, SMPS.
174	This driver binds the pmic children.
175
176config PMIC_LP873X
177	bool "Enable driver for Texas Instruments LP873X PMIC"
178	depends on DM_PMIC
179	---help---
180	The LP873X is a PMIC containing couple of LDOs and couple of SMPS.
181	This driver binds the pmic children.
182
183config POWER_MC34VR500
184	bool "Enable driver for Freescale MC34VR500 PMIC"
185	---help---
186	The MC34VR500 is used in conjunction with the FSL T1 and LS1 series
187	SoC. It provides 4 buck DC-DC convertors and 5 LDOs, and it is accessed
188	via an I2C interface.
189