mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-30 00:21:06 +00:00
477dfe2ffc
Add support for gpio regulators. As of now this driver caters to gpio regulators with one gpio. Supports setting voltage values to gpio regulators and retrieving the values. Signed-off-by: Keerthy <j-keerthy@ti.com> Reviewed-by: Simon Glass <sjg@chromium.org>
135 lines
5.2 KiB
Text
135 lines
5.2 KiB
Text
config DM_REGULATOR
|
|
bool "Enable Driver Model for REGULATOR drivers (UCLASS_REGULATOR)"
|
|
depends on DM
|
|
---help---
|
|
This config enables the driver model regulator support.
|
|
UCLASS_REGULATOR - designed to provide a common API for basic regulator's
|
|
functions, like get/set Voltage or Current value, enable state, etc...
|
|
Note:
|
|
When enabling this, please read the description, found in the files:
|
|
- 'include/power/pmic.h'
|
|
- 'include/power/regulator.h'
|
|
- 'drivers/power/pmic/pmic-uclass.c'
|
|
- 'drivers/power/pmic/regulator-uclass.c'
|
|
It's important to call the device_bind() with the proper node offset,
|
|
when binding the regulator devices. The pmic_bind_childs() can be used
|
|
for this purpose if PMIC I/O driver is implemented or dm_scan_fdt_dev()
|
|
otherwise. Detailed information can be found in the header file.
|
|
|
|
config SPL_DM_REGULATOR
|
|
bool "Enable regulators for SPL"
|
|
depends on DM_REGULATOR
|
|
---help---
|
|
Regulators are seldom needed in SPL. Even if they are accessed, some
|
|
code space can be saved by accessing the PMIC registers directly.
|
|
Enable this option if you need regulators in SPL and can cope with
|
|
the extra code size.
|
|
|
|
config REGULATOR_ACT8846
|
|
bool "Enable driver for ACT8846 regulator"
|
|
depends on DM_REGULATOR && PMIC_ACT8846
|
|
---help---
|
|
Enable support for the regulator functions of the ACT8846 PMIC. The
|
|
driver implements get/set api for the various BUCKS and LDOS supported
|
|
by the PMIC device. This driver is controlled by a device tree node
|
|
which includes voltage limits.
|
|
|
|
config DM_REGULATOR_PFUZE100
|
|
bool "Enable Driver Model for REGULATOR PFUZE100"
|
|
depends on DM_REGULATOR && DM_PMIC_PFUZE100
|
|
---help---
|
|
This config enables implementation of driver-model regulator uclass
|
|
features for REGULATOR PFUZE100. The driver implements get/set api for:
|
|
value, enable and mode.
|
|
|
|
config REGULATOR_PWM
|
|
bool "Enable driver for PWM regulators"
|
|
depends on DM_REGULATOR
|
|
---help---
|
|
Enable support for the PWM regulator functions which voltage are
|
|
controlled by PWM duty ratio. Some of Rockchip board using this kind
|
|
of regulator. The driver implements get/set api for the various BUCKS.
|
|
This driver is controlled by a device tree node
|
|
which includes voltage limits.
|
|
|
|
config DM_REGULATOR_MAX77686
|
|
bool "Enable Driver Model for REGULATOR MAX77686"
|
|
depends on DM_REGULATOR && DM_PMIC_MAX77686
|
|
---help---
|
|
This config enables implementation of driver-model regulator uclass
|
|
features for REGULATOR MAX77686. The driver implements get/set api for:
|
|
value, enable and mode.
|
|
|
|
config DM_REGULATOR_FIXED
|
|
bool "Enable Driver Model for REGULATOR Fixed value"
|
|
depends on DM_REGULATOR
|
|
---help---
|
|
This config enables implementation of driver-model regulator uclass
|
|
features for fixed value regulators. The driver implements get/set api
|
|
for enable and get only for voltage value.
|
|
|
|
config DM_REGULATOR_GPIO
|
|
bool "Enable Driver Model for GPIO REGULATOR"
|
|
depends on DM_REGULATOR
|
|
---help---
|
|
This config enables implementation of driver-model regulator uclass
|
|
features for gpio regulators. The driver implements get/set for
|
|
voltage value.
|
|
|
|
config REGULATOR_RK808
|
|
bool "Enable driver for RK808 regulators"
|
|
depends on DM_REGULATOR && PMIC_RK808
|
|
---help---
|
|
Enable support for the regulator functions of the RK808 PMIC. The
|
|
driver implements get/set api for the various BUCKS and LDOs supported
|
|
by the PMIC device. This driver is controlled by a device tree node
|
|
which includes voltage limits.
|
|
|
|
config REGULATOR_S5M8767
|
|
bool "Enable support for S5M8767 regulator"
|
|
depends on DM_REGULATOR && PMIC_S5M8767
|
|
---help---
|
|
This enables the regulator features of the S5M8767, allowing voltages
|
|
to be set, etc. The driver is not fully complete but supports most
|
|
common requirements, including all LDOs and BUCKs. This allows many
|
|
supplies to be set automatically using the device tree values.
|
|
|
|
config DM_REGULATOR_SANDBOX
|
|
bool "Enable Driver Model for Sandbox PMIC regulator"
|
|
depends on DM_REGULATOR && DM_PMIC_SANDBOX
|
|
---help---
|
|
Enable the regulator driver for emulated Sandbox PMIC.
|
|
The emulated PMIC device depends on two drivers:
|
|
- sandbox PMIC I/O driver - implements dm pmic operations
|
|
- sandbox PMIC regulator driver - implements dm regulator operations
|
|
- sandbox PMIC i2c emul driver - emulates the PMIC's I2C transmission
|
|
|
|
The regulator driver provides uclass operations for sandbox PMIC's
|
|
regulators. The driver implements get/set api for: voltage, current,
|
|
operation mode and enable state.
|
|
The driver supports LDO and BUCK regulators.
|
|
|
|
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)
|
|
|
|
A detailed information can be found in header: '<power/sandbox_pmic.h>'
|
|
Binding info: 'doc/device-tree-bindings/pmic/max77686.txt'
|
|
|
|
config REGULATOR_TPS65090
|
|
bool "Enable driver for TPS65090 PMIC regulators"
|
|
depends on PMIC_TPS65090
|
|
---help---
|
|
The TPS65090 provides several FETs (Field-effect Transistors,
|
|
effectively switches) which are supported by this driver as
|
|
regulators, one for each FET. The standard regulator interface is
|
|
supported, but it is only possible to turn the regulators on or off.
|
|
There is no voltage/current control.
|