summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUwe Freese <thebreaker@rockbox.org>2003-01-19 20:42:09 +0000
committerUwe Freese <thebreaker@rockbox.org>2003-01-19 20:42:09 +0000
commit8ee6275a06595d6f5487e3e49141cd9726fd898c (patch)
treeb086cbc6aa06916e860e199d4978009ce25befea
parentbc8029ee59ff6aeb55d9f90cd943c3f331c69301 (diff)
downloadrockbox-8ee6275a06595d6f5487e3e49141cd9726fd898c.tar.gz
rockbox-8ee6275a06595d6f5487e3e49141cd9726fd898c.zip
Start new charge cycle should be possible in trickle mode. This should fix the battries getting empty in USB mode.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3129 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/powermgmt.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/firmware/powermgmt.c b/firmware/powermgmt.c
index e640fdde06..8fdb168e50 100644
--- a/firmware/powermgmt.c
+++ b/firmware/powermgmt.c
@@ -496,7 +496,12 @@ static void power_thread(void)
496 /* turn it off now */ 496 /* turn it off now */
497 if (charger_enabled) 497 if (charger_enabled)
498 charger_enable(false); 498 charger_enable(false);
499 }
499 500
501 /* Start new charge cycle? This must be possible also in trickle/top-off, because when usb connected, */
502 /* the trickle charge amount may not be enough */
503
504 if ((charge_state == 0) || (charge_state > 1))
500 /* if battery is not full, enable charging */ 505 /* if battery is not full, enable charging */
501 /* make sure charging starts if 1%-lazyness in battery_level_update() is too slow */ 506 /* make sure charging starts if 1%-lazyness in battery_level_update() is too slow */
502 if ( (battery_level() < charge_restart_level) 507 if ( (battery_level() < charge_restart_level)
@@ -530,7 +535,7 @@ static void power_thread(void)
530 power_history[i] = power_history[POWER_HISTORY_LEN-1]; 535 power_history[i] = power_history[POWER_HISTORY_LEN-1];
531 } 536 }
532 } 537 }
533 } 538
534 } else { 539 } else {
535 /* charger not inserted */ 540 /* charger not inserted */
536 if (charge_state > 0) { 541 if (charge_state > 0) {