diff options
author | Evan Green <evgreen@chromium.org> | 2019-06-07 13:22:46 -0700 |
---|---|---|
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2022-09-13 17:33:17 +0000 |
commit | 128b32a479efeb1394c518dfde6a11f5c6fbe411 (patch) | |
tree | 158127a1e323fde57bd624700fc05202ba89322d | |
parent | 3abcd13ee3ed69af1517d29378137148a4a2a750 (diff) | |
download | chrome-ec-128b32a479efeb1394c518dfde6a11f5c6fbe411.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/+/3872563
Auto-Submit: Daisuke Nojiri <dnojiri@chromium.org>
Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org>
Tested-by: Daisuke Nojiri <dnojiri@chromium.org>
-rw-r--r-- | common/battery.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/common/battery.c b/common/battery.c index f791545e20..8ed0626af2 100644 --- a/common/battery.c +++ b/common/battery.c @@ -598,6 +598,8 @@ void battery_compensate_params(struct batt_params *batt) denom = full * (batt_host_full_factor - batt_host_shutdown_pct); /* Rounding (instead of truncating) */ batt->display_charge = (numer + denom / 2) / denom; + if (batt->display_charge < 0) + batt->display_charge = 0; } __attribute__((weak)) int get_battery_manufacturer_name(char *dest, int size) |