openwrt/target/linux/s3c24xx/patches-2.6.24/1254-fix-pcf50633-usbrem-ch...

47 lines
1.3 KiB
Diff

From 27fc8d82e365c47065f3a9240bfe21e67a50edf2 Mon Sep 17 00:00:00 2001
From: Andy Green <andy@openmoko.com>
Date: Wed, 6 Aug 2008 15:08:34 +0100
Subject: [PATCH] fix-pcf50633-usbrem-charging-led.patch
If the charger was removed, we fell through back to old
hdq-driven code with normally wrong but slightly random
results for charging LED behaviour in that circumstance
This patch makes us use the tracked charger status
callbacks alone if they are defined in the platform
data.
Signed-off-by: Andy Green <andy@openmoko.com>
---
drivers/power/bq27000_battery.c | 12 ++++++++----
1 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/drivers/power/bq27000_battery.c b/drivers/power/bq27000_battery.c
index 7020608..4c7e862 100644
--- a/drivers/power/bq27000_battery.c
+++ b/drivers/power/bq27000_battery.c
@@ -182,12 +182,16 @@ static int bq27000_battery_get_property(struct power_supply *psy,
*/
if (!di->pdata->get_charger_active_status)
goto use_bat;
- if ((di->pdata->get_charger_active_status)())
+
+ if ((di->pdata->get_charger_active_status)()) {
val->intval = POWER_SUPPLY_STATUS_CHARGING;
- else
- val->intval = POWER_SUPPLY_STATUS_NOT_CHARGING;
- break;
+ break;
+ }
}
+
+ val->intval = POWER_SUPPLY_STATUS_NOT_CHARGING;
+ break;
+
use_bat:
/*
* either the charger is not connected, or the
--
1.5.6.5