summaryrefslogtreecommitdiffstats
path: root/drivers/power
diff options
context:
space:
mode:
authorChen-Yu Tsai <wens@csie.org>2016-05-02 10:28:12 +0800
committerHans de Goede <hdegoede@redhat.com>2016-05-25 17:52:39 +0200
commit15278ccb848dbcd8825874f943bc21afda987219 (patch)
tree98526b20799ef16c414bf990e99dc26899d4e967 /drivers/power
parenta696253c1daf3424408868fc76840c83a896acfe (diff)
downloadblackbird-obmc-uboot-15278ccb848dbcd8825874f943bc21afda987219.tar.gz
blackbird-obmc-uboot-15278ccb848dbcd8825874f943bc21afda987219.zip
sunxi: power: axp818: Add support for switch SW
The AXP818 has a switchable output, SW. This is commonly used for controlling power to the LCD backlight. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Reviewed-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'drivers/power')
-rw-r--r--drivers/power/Kconfig7
-rw-r--r--drivers/power/axp818.c10
2 files changed, 17 insertions, 0 deletions
diff --git a/drivers/power/Kconfig b/drivers/power/Kconfig
index b365fd46fa..02cb8e7ba6 100644
--- a/drivers/power/Kconfig
+++ b/drivers/power/Kconfig
@@ -265,6 +265,13 @@ config AXP_FLDO3_VOLT
Set the voltage (mV) to program the axp pmic fldo3 at, set to 0 to
disable fldo3.
+config AXP_SW_ON
+ bool "axp pmic sw on"
+ depends on AXP818_POWER
+ default n
+ ---help---
+ Enable to turn on axp pmic sw.
+
config SY8106A_VOUT1_VOLT
int "SY8106A pmic VOUT1 voltage"
depends on SY8106A_POWER
diff --git a/drivers/power/axp818.c b/drivers/power/axp818.c
index 3ac05ffefe..bf6ecd6be5 100644
--- a/drivers/power/axp818.c
+++ b/drivers/power/axp818.c
@@ -225,6 +225,16 @@ int axp_set_fldo(int fldo_num, unsigned int mvolt)
AXP818_OUTPUT_CTRL3_FLDO1_EN << (fldo_num - 1));
}
+int axp_set_sw(bool on)
+{
+ if (on)
+ return pmic_bus_setbits(AXP818_OUTPUT_CTRL2,
+ AXP818_OUTPUT_CTRL2_SW_EN);
+
+ return pmic_bus_clrbits(AXP818_OUTPUT_CTRL2,
+ AXP818_OUTPUT_CTRL2_SW_EN);
+}
+
int axp_init(void)
{
u8 axp_chip_id;
OpenPOWER on IntegriCloud