From 760ebb1dea74a6f96d30762f73b15d47814b0c33 Mon Sep 17 00:00:00 2001 From: Greg Meiste Date: Fri, 15 Oct 2010 14:22:00 -0500 Subject: [PATCH] power: ds2781: Reduce wakeups from suspend Increase SLOW_POLL to 20 minutes to improve current drain. However, if temperature is over TEMP_HOT, remain at fast poll rate. Change-Id: I9361a98b1a57f415cacf05008444e47adca13dc8 Signed-off-by: Greg Meiste --- drivers/power/ds2781_battery.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/power/ds2781_battery.c b/drivers/power/ds2781_battery.c index 3b2408c8e02a..985159ca9125 100644 --- a/drivers/power/ds2781_battery.c +++ b/drivers/power/ds2781_battery.c @@ -70,7 +70,7 @@ struct battery_status { * power, sample every SLOW_POLL seconds */ #define FAST_POLL (1 * 60) -#define SLOW_POLL (10 * 60) +#define SLOW_POLL (20 * 60) static DEFINE_MUTEX(battery_log_lock); static struct battery_status battery_log[BATTERY_LOG_MAX]; @@ -444,7 +444,8 @@ static int ds2781_suspend(struct device *dev) struct ds2781_device_info *di = dev_get_drvdata(dev); /* If on battery, reduce update rate until next resume. */ - if (!di->status.charge_source) { + if ((!di->status.charge_source) && + (di->status.temp_C < TEMP_HOT)) { ds2781_program_alarm(di, SLOW_POLL); di->slow_poll = 1; } -- 2.34.1