blob: 337e9e7471c7b09103cdd6ed6e72699fe7dd8cf2 [file] [log] [blame]
Przemyslaw Marczak08edd002015-04-20 20:07:42 +02001config DM_REGULATOR
2 bool "Enable Driver Model for REGULATOR drivers (UCLASS_REGULATOR)"
3 depends on DM
4 ---help---
5 This config enables the driver model regulator support.
6 UCLASS_REGULATOR - designed to provide a common API for basic regulator's
7 functions, like get/set Voltage or Current value, enable state, etc...
8 Note:
9 When enabling this, please read the description, found in the files:
10 - 'include/power/pmic.h'
11 - 'include/power/regulator.h'
12 - 'drivers/power/pmic/pmic-uclass.c'
13 - 'drivers/power/pmic/regulator-uclass.c'
14 It's important to call the device_bind() with the proper node offset,
15 when binding the regulator devices. The pmic_bind_childs() can be used
Simon Glass09128c52016-07-05 17:10:09 -060016 for this purpose if PMIC I/O driver is implemented or dm_scan_fdt_dev()
Przemyslaw Marczak75692a32015-05-13 13:38:27 +020017 otherwise. Detailed information can be found in the header file.
Przemyslaw Marczakafee81e2015-04-20 20:07:47 +020018
Simon Glassc8db7b42016-01-21 19:43:55 -070019config SPL_DM_REGULATOR
20 bool "Enable regulators for SPL"
21 depends on DM_REGULATOR
22 ---help---
23 Regulators are seldom needed in SPL. Even if they are accessed, some
24 code space can be saved by accessing the PMIC registers directly.
25 Enable this option if you need regulators in SPL and can cope with
26 the extra code size.
27
Simon Glassd102cf62015-08-30 16:55:30 -060028config REGULATOR_ACT8846
29 bool "Enable driver for ACT8846 regulator"
30 depends on DM_REGULATOR && PMIC_ACT8846
31 ---help---
32 Enable support for the regulator functions of the ACT8846 PMIC. The
33 driver implements get/set api for the various BUCKS and LDOS supported
34 by the PMIC device. This driver is controlled by a device tree node
35 which includes voltage limits.
36
Simon Glass8f189512017-07-25 08:30:10 -060037config REGULATOR_AS3722
38 bool "Enable driver for AS7322 regulator"
39 depends on DM_REGULATOR && PMIC_AS3722
40 help
41 Enable support for the regulator functions of the AS3722. The
42 driver implements enable/disable for step-down bucks and LDOs,
43 but does not yet support change voltages. Currently this must be
44 done using direct register writes to the PMIC.
45
Peng Fan54ee6a42015-08-07 16:43:45 +080046config DM_REGULATOR_PFUZE100
47 bool "Enable Driver Model for REGULATOR PFUZE100"
48 depends on DM_REGULATOR && DM_PMIC_PFUZE100
49 ---help---
50 This config enables implementation of driver-model regulator uclass
51 features for REGULATOR PFUZE100. The driver implements get/set api for:
52 value, enable and mode.
53
Kever Yang8bbe1cc2016-09-23 15:57:19 +080054config REGULATOR_PWM
55 bool "Enable driver for PWM regulators"
56 depends on DM_REGULATOR
57 ---help---
58 Enable support for the PWM regulator functions which voltage are
59 controlled by PWM duty ratio. Some of Rockchip board using this kind
60 of regulator. The driver implements get/set api for the various BUCKS.
61 This driver is controlled by a device tree node
62 which includes voltage limits.
63
Christoph Muellner4484b852019-01-02 15:09:16 +010064config SPL_REGULATOR_PWM
65 bool "Enable Driver for PWM regulators in SPL"
66 depends on REGULATOR_PWM
67 help
68 This config enables implementation of driver-model regulator uclass
69 features for PWM regulators in SPL.
70
Przemyslaw Marczakafee81e2015-04-20 20:07:47 +020071config DM_REGULATOR_MAX77686
72 bool "Enable Driver Model for REGULATOR MAX77686"
73 depends on DM_REGULATOR && DM_PMIC_MAX77686
74 ---help---
75 This config enables implementation of driver-model regulator uclass
76 features for REGULATOR MAX77686. The driver implements get/set api for:
77 value, enable and mode.
Przemyslaw Marczak3753f282015-04-20 20:07:48 +020078
Philipp Tomsichb7f57e12018-11-30 20:00:08 +010079config DM_REGULATOR_FAN53555
80 bool "Enable Driver Model for REGULATOR FAN53555"
81 depends on DM_PMIC_FAN53555
82 help
83 This config enables implementation of driver-model regulator
84 uclass features for the FAN53555 regulator. The FAN53555 is
85 a (family of) single-output regulators that supports
86 transitioning between two different output voltages based on
87 an voltage selection pin.
88
89 The driver implements a get/set api for the voltage of the
90 'normal mode' voltage only. Switching to 'suspend mode'
91 (i.e. the alternate voltage), disabling output via software,
92 or switching the mode is not supported by this driver (at
93 this time).
94
Sven Schwermer25957522019-06-24 13:03:33 +020095config DM_REGULATOR_COMMON
96 bool
97 depends on DM_REGULATOR
98
99config SPL_DM_REGULATOR_COMMON
100 bool
101 depends on DM_REGULATOR
102
Przemyslaw Marczak3753f282015-04-20 20:07:48 +0200103config DM_REGULATOR_FIXED
104 bool "Enable Driver Model for REGULATOR Fixed value"
105 depends on DM_REGULATOR
Sven Schwermer25957522019-06-24 13:03:33 +0200106 select DM_REGULATOR_COMMON
Przemyslaw Marczak3753f282015-04-20 20:07:48 +0200107 ---help---
108 This config enables implementation of driver-model regulator uclass
109 features for fixed value regulators. The driver implements get/set api
110 for enable and get only for voltage value.
Przemyslaw Marczakd5175dc2015-05-13 13:38:32 +0200111
Philipp Tomsichd52626c2017-09-29 19:28:02 +0200112config SPL_DM_REGULATOR_FIXED
113 bool "Enable Driver Model for REGULATOR Fixed value in SPL"
114 depends on DM_REGULATOR_FIXED
Sven Schwermer25957522019-06-24 13:03:33 +0200115 select SPL_DM_REGULATOR_COMMON
Philipp Tomsichd52626c2017-09-29 19:28:02 +0200116 ---help---
117 This config enables implementation of driver-model regulator uclass
118 features for fixed value regulators in SPL.
119
Keerthy17b3fe72016-09-15 17:04:06 +0530120config DM_REGULATOR_GPIO
121 bool "Enable Driver Model for GPIO REGULATOR"
Lokesh Vutla638d2342018-10-24 21:06:50 +0530122 depends on DM_REGULATOR && DM_GPIO
Sven Schwermerdb58d9e2019-06-24 13:03:34 +0200123 select DM_REGULATOR_COMMON
Keerthy17b3fe72016-09-15 17:04:06 +0530124 ---help---
125 This config enables implementation of driver-model regulator uclass
126 features for gpio regulators. The driver implements get/set for
127 voltage value.
128
Lokesh Vutla638d2342018-10-24 21:06:50 +0530129config SPL_DM_REGULATOR_GPIO
130 bool "Enable Driver Model for GPIO REGULATOR in SPL"
131 depends on DM_REGULATOR_GPIO && SPL_GPIO_SUPPORT
Sven Schwermerdb58d9e2019-06-24 13:03:34 +0200132 select SPL_DM_REGULATOR_COMMON
Lokesh Vutla638d2342018-10-24 21:06:50 +0530133 ---help---
134 This config enables implementation of driver-model regulator uclass
135 features for gpio regulators in SPL.
136
Jacob Chen614704b2017-05-02 14:54:52 +0800137config REGULATOR_RK8XX
138 bool "Enable driver for RK8XX regulators"
139 depends on DM_REGULATOR && PMIC_RK8XX
Simon Glassadecfef2016-01-21 19:43:30 -0700140 ---help---
Jacob Chen614704b2017-05-02 14:54:52 +0800141 Enable support for the regulator functions of the RK8XX PMIC. The
Simon Glassadecfef2016-01-21 19:43:30 -0700142 driver implements get/set api for the various BUCKS and LDOs supported
143 by the PMIC device. This driver is controlled by a device tree node
144 which includes voltage limits.
145
Jaehoon Chung76f20082018-01-16 15:33:50 +0900146config DM_REGULATOR_S2MPS11
147 bool "Enable driver for S2MPS11 regulator"
148 depends on DM_REGULATOR && PMIC_S2MPS11
149 ---help---
150 This enables implementation of driver-model regulator uclass
151 features for REGULATOR S2MPS11.
152 The driver implements get/set api for: value and enable.
153
Simon Glass23361032015-07-02 18:16:01 -0600154config REGULATOR_S5M8767
155 bool "Enable support for S5M8767 regulator"
156 depends on DM_REGULATOR && PMIC_S5M8767
157 ---help---
158 This enables the regulator features of the S5M8767, allowing voltages
159 to be set, etc. The driver is not fully complete but supports most
160 common requirements, including all LDOs and BUCKs. This allows many
161 supplies to be set automatically using the device tree values.
162
Przemyslaw Marczakd5175dc2015-05-13 13:38:32 +0200163config DM_REGULATOR_SANDBOX
164 bool "Enable Driver Model for Sandbox PMIC regulator"
165 depends on DM_REGULATOR && DM_PMIC_SANDBOX
166 ---help---
167 Enable the regulator driver for emulated Sandbox PMIC.
168 The emulated PMIC device depends on two drivers:
169 - sandbox PMIC I/O driver - implements dm pmic operations
170 - sandbox PMIC regulator driver - implements dm regulator operations
171 - sandbox PMIC i2c emul driver - emulates the PMIC's I2C transmission
172
173 The regulator driver provides uclass operations for sandbox PMIC's
174 regulators. The driver implements get/set api for: voltage, current,
175 operation mode and enable state.
176 The driver supports LDO and BUCK regulators.
177
178 The Sandbox PMIC info:
179 * I/O interface:
180 - I2C chip address: 0x40
181 - first register address: 0x0
182 - register count: 0x10
183 * Adjustable outputs:
184 - 2x LDO
185 - 2x BUCK
186 - Each, with a different operating conditions (header).
187 * Reset values:
188 - set by i2c emul driver's probe() (defaults in header)
189
190 A detailed information can be found in header: '<power/sandbox_pmic.h>'
191 Binding info: 'doc/device-tree-bindings/pmic/max77686.txt'
Simon Glass9fa8e9c2015-07-02 18:15:59 -0600192
193config REGULATOR_TPS65090
194 bool "Enable driver for TPS65090 PMIC regulators"
195 depends on PMIC_TPS65090
196 ---help---
197 The TPS65090 provides several FETs (Field-effect Transistors,
198 effectively switches) which are supported by this driver as
199 regulators, one for each FET. The standard regulator interface is
200 supported, but it is only possible to turn the regulators on or off.
201 There is no voltage/current control.
Keerthyffed0ea2016-09-30 09:20:44 +0530202
203config DM_REGULATOR_PALMAS
204 bool "Enable driver for PALMAS PMIC regulators"
205 depends on PMIC_PALMAS
206 ---help---
207 This enables implementation of driver-model regulator uclass
208 features for REGULATOR PALMAS and the family of PALMAS PMICs.
209 The driver implements get/set api for: value and enable.
Keerthy947d9282016-09-30 09:34:03 +0530210
Jean-Jacques Hiblot4612bdd2017-09-21 17:03:10 +0200211config DM_REGULATOR_PBIAS
212 bool "Enable driver for PBIAS regulator"
213 depends on DM_REGULATOR
214 select REGMAP
215 select SYSCON
216 ---help---
217 This enables implementation of driver-model regulator uclass
218 features for pseudo-regulator PBIAS found in the OMAP SOCs.
219 This pseudo-regulator is used to provide a BIAS voltage to MMC1
220 signal pads and must be configured properly during a voltage switch.
221 Voltage switching is required by some operating modes of SDcards and
222 eMMC.
223
Keerthy947d9282016-09-30 09:34:03 +0530224config DM_REGULATOR_LP873X
225 bool "Enable driver for LP873X PMIC regulators"
226 depends on PMIC_LP873X
227 ---help---
228 This enables implementation of driver-model regulator uclass
229 features for REGULATOR LP873X and the family of LP873X PMICs.
230 The driver implements get/set api for: value and enable.
Keerthy22831662017-06-07 19:08:29 +0530231
232config DM_REGULATOR_LP87565
233 bool "Enable driver for LP87565 PMIC regulators"
234 depends on PMIC_LP87565
235 ---help---
236 This enables implementation of driver-model regulator uclass
237 features for REGULATOR LP87565 and the family of LP87565 PMICs.
238 LP87565 series of PMICs have 4 single phase BUCKs that can also
239 be configured in multi phase modes. The driver implements
240 get/set api for value and enable.
Felix Brack9493f0e2017-11-30 13:52:37 +0100241
Fabrice Gasnier95c868e2018-04-26 17:00:46 +0200242config DM_REGULATOR_STM32_VREFBUF
243 bool "Enable driver for STMicroelectronics STM32 VREFBUF"
244 depends on DM_REGULATOR && (STM32H7 || ARCH_STM32MP)
245 help
246 This driver supports STMicroelectronics STM32 VREFBUF (voltage
247 reference buffer) which can be used as voltage reference for
248 internal ADCs, DACs and also for external components through
249 dedicated Vref+ pin.
250
Felix Brack9493f0e2017-11-30 13:52:37 +0100251config DM_REGULATOR_TPS65910
252 bool "Enable driver for TPS65910 PMIC regulators"
253 depends on DM_PMIC_TPS65910
254 ---help---
255 The TPS65910 PMIC provides 4 SMPSs and 8 LDOs. This driver supports all
256 regulator types of the TPS65910 (BUCK, BOOST and LDO). It implements
257 the get/set api for value and enable.
Christophe Kerello1b659742018-04-26 17:13:09 +0200258
Patrick Delaunayd79218f2019-02-04 11:26:17 +0100259config DM_REGULATOR_STPMIC1
260 bool "Enable driver for STPMIC1 regulators"
261 depends on DM_REGULATOR && PMIC_STPMIC1
Christophe Kerello1b659742018-04-26 17:13:09 +0200262 ---help---
Patrick Delaunayd79218f2019-02-04 11:26:17 +0100263 Enable support for the regulator functions of the STPMIC1 PMIC. The
Christophe Kerello1b659742018-04-26 17:13:09 +0200264 driver implements get/set api for the various BUCKS and LDOs supported
265 by the PMIC device. This driver is controlled by a device tree node
266 which includes voltage limits.
Patrick Delaunayd79218f2019-02-04 11:26:17 +0100267
268config SPL_DM_REGULATOR_STPMIC1
269 bool "Enable driver for STPMIC1 regulators in SPL"
270 depends on SPL_DM_REGULATOR && PMIC_STPMIC1
271 help
272 Enable support for the regulator functions of the STPMIC1 PMIC in SPL.
Keerthyfb043902019-06-06 16:06:56 +0530273
274config SPL_DM_REGULATOR_PALMAS
275 bool "Enable driver for PALMAS PMIC regulators"
276 depends on SPL_PMIC_PALMAS
277 help
278 This enables implementation of driver-model regulator uclass
279 features for REGULATOR PALMAS and the family of PALMAS PMICs.
280 The driver implements get/set api for: value and enable in SPL.
281
282config SPL_DM_REGULATOR_LP87565
283 bool "Enable driver for LP87565 PMIC regulators"
284 depends on SPL_PMIC_LP87565
285 help
286 This enables implementation of driver-model regulator uclass
287 features for REGULATOR LP87565 and the family of LP87565 PMICs.
288 LP87565 series of PMICs have 4 single phase BUCKs that can also
289 be configured in multi phase modes. The driver implements
290 get/set api for value and enable in SPL.
291
292config SPL_DM_REGULATOR_LP873X
293 bool "Enable driver for LP873X PMIC regulators"
294 depends on SPL_PMIC_LP873X
295 help
296 This enables implementation of driver-model regulator uclass
297 features for REGULATOR LP873X and the family of LP873X PMICs.
298 The driver implements get/set api for: value and enable in SPL.