diff options
author | Dmitry Baryshkov <dbaryshkov@gmail.com> | 2009-03-25 12:15:28 +0300 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2009-03-25 13:13:57 +0300 |
commit | 8cb52f788c73cfcbff4aca66063c55baa3e6d313 (patch) | |
tree | c49e128472c0ae40b11c1e9ac72438f386f238dc /arch/arm/mach-sa1100/collie_pm.c | |
parent | 224be092d116b663ac426c4615e34ee54bab4a14 (diff) | |
download | linux-8cb52f788c73cfcbff4aca66063c55baa3e6d313.tar.xz |
[ARM] 5430/1: collie_pm: use new GPIO API to control charger
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-sa1100/collie_pm.c')
-rw-r--r-- | arch/arm/mach-sa1100/collie_pm.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/arch/arm/mach-sa1100/collie_pm.c b/arch/arm/mach-sa1100/collie_pm.c index b39307f26b52..444f266ecc06 100644 --- a/arch/arm/mach-sa1100/collie_pm.c +++ b/arch/arm/mach-sa1100/collie_pm.c @@ -22,6 +22,7 @@ #include <linux/interrupt.h> #include <linux/device.h> #include <linux/platform_device.h> +#include <linux/gpio.h> #include <asm/irq.h> #include <mach/hardware.h> @@ -58,6 +59,9 @@ static void collie_charger_init(void) return; } + gpio_request(COLLIE_GPIO_CHARGE_ON, "charge on"); + gpio_direction_output(COLLIE_GPIO_CHARGE_ON, 1); + ucb1x00_io_set_dir(ucb, 0, COLLIE_TC35143_GPIO_MBAT_ON | COLLIE_TC35143_GPIO_TMP_ON | COLLIE_TC35143_GPIO_BBAT_ON); return; @@ -73,17 +77,11 @@ static void collie_measure_temp(int on) static void collie_charge(int on) { - extern struct platform_device colliescoop_device; - /* Zaurus seems to contain LTC1731; it should know when to * stop charging itself, so setting charge on should be * relatively harmless (as long as it is not done too often). */ - if (on) { - set_scoop_gpio(&colliescoop_device.dev, COLLIE_SCP_CHARGE_ON); - } else { - reset_scoop_gpio(&colliescoop_device.dev, COLLIE_SCP_CHARGE_ON); - } + gpio_set_value(COLLIE_GPIO_CHARGE_ON, on); } static void collie_discharge(int on) |