xref: /openbmc/u-boot/drivers/power/regulator/Kconfig (revision f615e6a64d23952d3c68b9ac92b4ef5fa5ebdf8a)
1af41e8dbSPrzemyslaw Marczakconfig DM_REGULATOR
2af41e8dbSPrzemyslaw Marczak	bool "Enable Driver Model for REGULATOR drivers (UCLASS_REGULATOR)"
3af41e8dbSPrzemyslaw Marczak	depends on DM
4af41e8dbSPrzemyslaw Marczak	---help---
5af41e8dbSPrzemyslaw Marczak	This config enables the driver model regulator support.
6af41e8dbSPrzemyslaw Marczak	UCLASS_REGULATOR - designed to provide a common API for basic regulator's
7af41e8dbSPrzemyslaw Marczak	functions, like get/set Voltage or Current value, enable state, etc...
8af41e8dbSPrzemyslaw Marczak	Note:
9af41e8dbSPrzemyslaw Marczak	When enabling this, please read the description, found in the files:
10af41e8dbSPrzemyslaw Marczak	- 'include/power/pmic.h'
11af41e8dbSPrzemyslaw Marczak	- 'include/power/regulator.h'
12af41e8dbSPrzemyslaw Marczak	- 'drivers/power/pmic/pmic-uclass.c'
13af41e8dbSPrzemyslaw Marczak	- 'drivers/power/pmic/regulator-uclass.c'
14af41e8dbSPrzemyslaw Marczak	It's important to call the device_bind() with the proper node offset,
15af41e8dbSPrzemyslaw Marczak	when binding the regulator devices. The pmic_bind_childs() can be used
16af41e8dbSPrzemyslaw Marczak	for this purpose if PMIC I/O driver is implemented or dm_scan_fdt_node()
173b880757SPrzemyslaw Marczak	otherwise. Detailed information can be found in the header file.
181757df46SPrzemyslaw Marczak
191757df46SPrzemyslaw Marczakconfig DM_REGULATOR_MAX77686
201757df46SPrzemyslaw Marczak	bool "Enable Driver Model for REGULATOR MAX77686"
211757df46SPrzemyslaw Marczak	depends on DM_REGULATOR && DM_PMIC_MAX77686
221757df46SPrzemyslaw Marczak	---help---
231757df46SPrzemyslaw Marczak	This config enables implementation of driver-model regulator uclass
241757df46SPrzemyslaw Marczak	features for REGULATOR MAX77686. The driver implements get/set api for:
251757df46SPrzemyslaw Marczak	value, enable and mode.
269923a8b4SPrzemyslaw Marczak
279923a8b4SPrzemyslaw Marczakconfig DM_REGULATOR_FIXED
289923a8b4SPrzemyslaw Marczak	bool "Enable Driver Model for REGULATOR Fixed value"
299923a8b4SPrzemyslaw Marczak	depends on DM_REGULATOR
309923a8b4SPrzemyslaw Marczak	---help---
319923a8b4SPrzemyslaw Marczak	This config enables implementation of driver-model regulator uclass
329923a8b4SPrzemyslaw Marczak	features for fixed value regulators. The driver implements get/set api
339923a8b4SPrzemyslaw Marczak	for enable and get only for voltage value.
345d387d0dSPrzemyslaw Marczak
35*f615e6a6SSimon Glassconfig REGULATOR_S5M8767
36*f615e6a6SSimon Glass	bool "Enable support for S5M8767 regulator"
37*f615e6a6SSimon Glass	depends on DM_REGULATOR && PMIC_S5M8767
38*f615e6a6SSimon Glass	---help---
39*f615e6a6SSimon Glass	This enables the regulator features of the S5M8767, allowing voltages
40*f615e6a6SSimon Glass	to be set, etc. The driver is not fully complete but supports most
41*f615e6a6SSimon Glass	common requirements, including all LDOs and BUCKs. This allows many
42*f615e6a6SSimon Glass	supplies to be set automatically using the device tree values.
43*f615e6a6SSimon Glass
445d387d0dSPrzemyslaw Marczakconfig DM_REGULATOR_SANDBOX
455d387d0dSPrzemyslaw Marczak	bool "Enable Driver Model for Sandbox PMIC regulator"
465d387d0dSPrzemyslaw Marczak	depends on DM_REGULATOR && DM_PMIC_SANDBOX
475d387d0dSPrzemyslaw Marczak	---help---
485d387d0dSPrzemyslaw Marczak	Enable the regulator driver for emulated Sandbox PMIC.
495d387d0dSPrzemyslaw Marczak	The emulated PMIC device depends on two drivers:
505d387d0dSPrzemyslaw Marczak	- sandbox PMIC I/O driver - implements dm pmic operations
515d387d0dSPrzemyslaw Marczak	- sandbox PMIC regulator driver - implements dm regulator operations
525d387d0dSPrzemyslaw Marczak	- sandbox PMIC i2c emul driver - emulates the PMIC's I2C transmission
535d387d0dSPrzemyslaw Marczak
545d387d0dSPrzemyslaw Marczak	The regulator driver provides uclass operations for sandbox PMIC's
555d387d0dSPrzemyslaw Marczak	regulators. The driver implements get/set api for: voltage, current,
565d387d0dSPrzemyslaw Marczak	operation mode and enable state.
575d387d0dSPrzemyslaw Marczak	The driver supports LDO and BUCK regulators.
585d387d0dSPrzemyslaw Marczak
595d387d0dSPrzemyslaw Marczak	The Sandbox PMIC info:
605d387d0dSPrzemyslaw Marczak	* I/O interface:
615d387d0dSPrzemyslaw Marczak	  - I2C chip address:       0x40
625d387d0dSPrzemyslaw Marczak	  - first register address: 0x0
635d387d0dSPrzemyslaw Marczak	  - register count:         0x10
645d387d0dSPrzemyslaw Marczak	* Adjustable outputs:
655d387d0dSPrzemyslaw Marczak	  - 2x LDO
665d387d0dSPrzemyslaw Marczak	  - 2x BUCK
675d387d0dSPrzemyslaw Marczak	  - Each, with a different operating conditions (header).
685d387d0dSPrzemyslaw Marczak	* Reset values:
695d387d0dSPrzemyslaw Marczak	  - set by i2c emul driver's probe() (defaults in header)
705d387d0dSPrzemyslaw Marczak
715d387d0dSPrzemyslaw Marczak	A detailed information can be found in header: '<power/sandbox_pmic.h>'
725d387d0dSPrzemyslaw Marczak	Binding info: 'doc/device-tree-bindings/pmic/max77686.txt'
731c88b67eSSimon Glass
741c88b67eSSimon Glassconfig REGULATOR_TPS65090
751c88b67eSSimon Glass	bool "Enable driver for TPS65090 PMIC regulators"
761c88b67eSSimon Glass	depends on PMIC_TPS65090
771c88b67eSSimon Glass	---help---
781c88b67eSSimon Glass	The TPS65090 provides several FETs (Field-effect Transistors,
791c88b67eSSimon Glass	effectively switches) which are supported by this driver as
801c88b67eSSimon Glass	regulators, one for each FET. The standard regulator interface is
811c88b67eSSimon Glass	supported, but it is only possible to turn the regulators on or off.
821c88b67eSSimon Glass	There is no voltage/current control.
83