diff options
author | Nicolas Boichat <drinkcat@chromium.org> | 2018-01-24 12:25:31 +0800 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2018-02-09 07:55:34 -0800 |
commit | b34b34e6e867f832f134c27790937b35eb6debef (patch) | |
tree | 290026b5614a3924b576ed658f0f0c6e09ced888 | |
parent | abdb022a2be9cac6a108b69253ccba1dd7e09ba3 (diff) | |
download | chrome-ec-b34b34e6e867f832f134c27790937b35eb6debef.tar.gz |
charge_state_v2: No base/lid power transfer in S0ix/S5
BRANCH=none
BUG=b:71881017
TEST=Suspend system, see that base does not provide power to lid,
and vice-versa.
Change-Id: I54e26c9b8decff2afdebc34adb62d4f5cef18e37
Signed-off-by: Nicolas Boichat <drinkcat@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/882524
Reviewed-by: Randall Spangler <rspangler@chromium.org>
-rw-r--r-- | common/charge_state_v2.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/common/charge_state_v2.c b/common/charge_state_v2.c index ebcf8cc263..5c92ae0bf0 100644 --- a/common/charge_state_v2.c +++ b/common/charge_state_v2.c @@ -464,6 +464,16 @@ static void charge_allocate_input_current_limit(void) prev_lid_system_power = -1; prev_lid_battery_power = -1; + /* + * System is suspended/off, let the lid and base run on their + * own power. + */ + if (chipset_in_state(CHIPSET_STATE_ANY_OFF | + CHIPSET_STATE_ANY_SUSPEND)) { + set_base_lid_current(0, 0, 0, 0); + return; + } + if (charge_base > db_policy.min_charge_base_otg) { int lid_current = db_policy.max_base_to_lid_current; int base_current = add_margin(lid_current, |