diff options
author | Steve Bavin <pondlife@pondlife.me> | 2007-11-03 13:45:12 +0000 |
---|---|---|
committer | Steve Bavin <pondlife@pondlife.me> | 2007-11-03 13:45:12 +0000 |
commit | 4d822319e990783539cb504f3a0787311dfc3068 (patch) | |
tree | 1f8949e474f4259994c995da56484a23ac25f151 /firmware | |
parent | 8d03282f91ad17734a6f63505c53451181a465b8 (diff) | |
download | rockbox-4d822319e990783539cb504f3a0787311dfc3068.tar.gz rockbox-4d822319e990783539cb504f3a0787311dfc3068.zip |
Little tidy-up on previous commit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15433 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/powermgmt.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/firmware/powermgmt.c b/firmware/powermgmt.c index 6b20996fab..4d5cf5422f 100644 --- a/firmware/powermgmt.c +++ b/firmware/powermgmt.c @@ -111,8 +111,7 @@ static void battery_status_update(void) /* change the values: */ if (charging) { - battery_millivolts += (unsigned int)(BATT_MAXMVOLT - BATT_MINMVOLT) / 101; - if (battery_millivolts >= (unsigned int)BATT_MAXMVOLT) + if (battery_millivolts >= BATT_MAXMVOLT) { /* Pretend the charger was disconnected */ charging = false; @@ -122,8 +121,7 @@ static void battery_status_update(void) } else { - battery_millivolts -= (unsigned int)(BATT_MAXMVOLT - BATT_MINMVOLT) / 101; - if (battery_millivolts <= (unsigned int)BATT_MINMVOLT) + if (battery_millivolts <= BATT_MINMVOLT) { /* Pretend the charger was connected */ charging = true; @@ -131,6 +129,10 @@ static void battery_status_update(void) last_sent_battery_level = 0; } } + if (charging) + battery_millivolts += (BATT_MAXMVOLT - BATT_MINMVOLT) / 50; + else + battery_millivolts -= (BATT_MAXMVOLT - BATT_MINMVOLT) / 100; battery_percent = 100 * (battery_millivolts - BATT_MINMVOLT) / (BATT_MAXMVOLT - BATT_MINMVOLT); powermgmt_est_runningtime_min = battery_percent * BATT_MAXRUNTIME / 100; @@ -1220,7 +1222,7 @@ void shutdown_hw(void) #endif /* #ifndef SIMULATOR */ } -/* Send system battery level update events on reaching certain significant +/* Send system battery level update events on reaching certain significant levels. This must be called after battery_percent has been updated. */ static void send_battery_level_event(void) { |