summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEvan Green <evgreen@chromium.org>2019-06-07 13:22:46 -0700
committerCommit Bot <commit-bot@chromium.org>2021-12-15 01:33:35 +0000
commit27c7dbf75c673d53c31c4513e21cf89f9a8f265e (patch)
tree4c18271615c5fd9656cc48ed0157e572c326cf97
parent4a234565aafde284f4ed28c323ea4097931da452 (diff)
downloadchrome-ec-27c7dbf75c673d53c31c4513e21cf89f9a8f265e.tar.gz
common/battery: Avoid negative display percentages
Battery charges less than batt_host_shutdown_pct cause the display charge to go negative. This looks silly in EC console prints: [38.474266 Battery 2% (Display -2.-7 %) / 3h:15 to full] BUG=b:134586427 BRANCH=None TEST=Run kohaku down to low battery, observe display stays at 0. Change-Id: If8eb477b8bb21451069bac5c1474b7a408b30582 Signed-off-by: Evan Green <evgreen@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1650136 Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org> Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3336665 Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org>
-rw-r--r--common/battery.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/common/battery.c b/common/battery.c
index 1582a33bc9..7563552143 100644
--- a/common/battery.c
+++ b/common/battery.c
@@ -607,6 +607,8 @@ void battery_compensate_params(struct batt_params *batt)
denom = lfcc * (100 - batt_host_shutdown_pct);
/* Rounding (instead of truncating) */
batt->display_charge = (numer + denom / 2) / denom;
+ if (batt->display_charge < 0)
+ batt->display_charge = 0;
}
__overridable void board_battery_compensate_params(struct batt_params *batt)