mirror of
https://github.com/ukui/kernel.git
synced 2026-03-09 10:07:04 -07:00
regulator: da9063: Add Dialog DA9063 voltage regulators support.
The driver adds support for the following DA9063 PMIC regulators:
- 11x LDOs (named LDO1 - LDO11),
- 6x buck converters (BCORE1, BCORE2, BPRO, BMEM, BIO, BPERI),
Regulators provide following operations:
- REGULATOR_CHANGE_STATUS and REGULATOR_CHANGE_VOLTAGE for all regulators,
- REGULATOR_CHANGE_MODE for LDOs and buck converters, where:
- LDOs allow REGULATOR_MODE_NORMAL and REGULATOR_MODE_STANDBY,
- buck converters allow REGULATOR_MODE_FAST, REGULATOR_MODE_NORMAL
and REGULATOR_MODE_STANDBY,
- REGULATOR_CHANGE_CURRENT for buck converters (current limits).
The driver generates REGULATOR_EVENT_OVER_CURRENT for LDO3, LDO4, LDO7, LDO8
and LDO11.
Internally, PMIC provides two voltage configurations for normal and suspend
system state for each regulator. The driver switches between those on
suspend/wake-up to provide quick and fluent output voltage change.
This driver requires MFD core driver for operation.
Signed-off-by: Krystian Garbaciak <krystian.garbaciak@diasemi.com>
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Mark Brown <broonie@linaro.org>
This commit is contained in:
committed by
Mark Brown
parent
c93e5bc9cb
commit
69ca3e58d1
@@ -147,6 +147,16 @@ config REGULATOR_DA9055
|
||||
This driver can also be built as a module. If so, the module
|
||||
will be called da9055-regulator.
|
||||
|
||||
config REGULATOR_DA9063
|
||||
tristate "Dialog Semiconductor DA9063 regulators"
|
||||
depends on MFD_DA9063
|
||||
help
|
||||
Say y here to support the BUCKs and LDOs regulators found on
|
||||
DA9063 PMICs.
|
||||
|
||||
This driver can also be built as a module. If so, the module
|
||||
will be called da9063-regulator.
|
||||
|
||||
config REGULATOR_DA9210
|
||||
tristate "Dialog Semiconductor DA9210 regulator"
|
||||
depends on I2C
|
||||
|
||||
@@ -20,6 +20,7 @@ obj-$(CONFIG_REGULATOR_AS3711) += as3711-regulator.o
|
||||
obj-$(CONFIG_REGULATOR_DA903X) += da903x.o
|
||||
obj-$(CONFIG_REGULATOR_DA9052) += da9052-regulator.o
|
||||
obj-$(CONFIG_REGULATOR_DA9055) += da9055-regulator.o
|
||||
obj-$(CONFIG_REGULATOR_DA9063) += da9063-regulator.o
|
||||
obj-$(CONFIG_REGULATOR_DA9210) += da9210-regulator.o
|
||||
obj-$(CONFIG_REGULATOR_DBX500_PRCMU) += dbx500-prcmu.o
|
||||
obj-$(CONFIG_REGULATOR_DB8500_PRCMU) += db8500-prcmu.o
|
||||
|
||||
941
drivers/regulator/da9063-regulator.c
Normal file
941
drivers/regulator/da9063-regulator.c
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user