diff options
author | Simon Glass <sjg@chromium.org> | 2023-05-05 12:50:48 -0600 |
---|---|---|
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2023-05-09 22:29:41 +0000 |
commit | 0b76ed29fdbb81b0933993c455958883cea4056f (patch) | |
tree | 9350177724826db5f68897bf05e77c486f656cff /common/charge_state_v2.c | |
parent | 5be73aa62a6ce6ccb72624c128c3dd76b5ac828b (diff) | |
download | chrome-ec-0b76ed29fdbb81b0933993c455958883cea4056f.tar.gz |
charger: Make prev_charge_base static
Move use of this variable wholly within charger_base.c by adding two
functions to deal with what charger_state_v2.c needs:
- seeing if charge_base has changed since last time
- committing that change
I did toy with the idea of making these two functions static inlines,
but that does tend to obfuscate the fact that they only exist when the
base is present. So for now at least I have left two IS_ENABLED()
calls in the code.
This makes no functional change.
BUG=b:218332694
TEST=zmake build dev-posix
Check size on lux:
*** 69552 bytes in flash and 1152 bytes in RAM lux RO ****
*** 69448 bytes in flash and 1120 bytes in RAM lux RW ****
Change-Id: Ib9bdbce62cefb99b12aeb235450eac5d29861d3b
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4510246
Reviewed-by: Tristan Honscheid <honscheid@google.com>
Commit-Queue: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'common/charge_state_v2.c')
-rw-r--r-- | common/charge_state_v2.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/common/charge_state_v2.c b/common/charge_state_v2.c index bd52a682f5..aa7c54ddf1 100644 --- a/common/charge_state_v2.c +++ b/common/charge_state_v2.c @@ -1147,17 +1147,15 @@ void check_battery_change_soc(bool is_full, bool prev_full) { if ((!(curr.batt.flags & BATT_FLAG_BAD_STATE_OF_CHARGE) && curr.batt.state_of_charge != prev_charge) || -#ifdef CONFIG_EC_EC_COMM_BATTERY_CLIENT - (charge_base != prev_charge_base) || -#endif + (IS_ENABLED(CONFIG_EC_EC_COMM_BATTERY_CLIENT) && + charger_base_charge_changed()) || is_full != prev_full || (curr.state != prev_state) || (charge_get_display_charge() != prev_disp_charge)) { show_charging_progress(is_full); prev_charge = curr.batt.state_of_charge; prev_disp_charge = charge_get_display_charge(); -#ifdef CONFIG_EC_EC_COMM_BATTERY_CLIENT - prev_charge_base = charge_base; -#endif + if (IS_ENABLED(CONFIG_EC_EC_COMM_BATTERY_CLIENT)) + charger_base_charge_update(); hook_notify(HOOK_BATTERY_SOC_CHANGE); } } |