diff options
author | Alec Berg <alecaberg@chromium.org> | 2014-05-28 18:10:25 -0700 |
---|---|---|
committer | chrome-internal-fetch <chrome-internal-fetch@google.com> | 2014-06-09 22:20:48 +0000 |
commit | 72357cd1edf885e559dbb715b33cfb861a0a3265 (patch) | |
tree | 48e3181ecd32c2124d80b50b39a965c2f6ac1893 /include/charge_state.h | |
parent | f7ae0fb81b4b43c939ec1be674e940377b8c8d64 (diff) | |
download | chrome-ec-72357cd1edf885e559dbb715b33cfb861a0a3265.tar.gz |
samus: Allow samus to charge w/o battery or with dead batterystabilize-5942.B
Use a EC to PD host command to notify the PD MCU when a battery
is present and charged enough that it is ok to negotiate for a
higher power. The PD MCU will not negotiate until the host command
is received, which allows the system to be powered without a
battery or with a dead battery with 5V.
BUG=chrome-os-partner:28611
BRANCH=none
TEST=Tested on a samus:
1) Tested the normal case of battery charged and plugged in. When
charger is plugged in, the device immediately starts negotiating
for 20V and starts charging.
2) Tested with no battery. Plug in a charger, samus boots and stays
alive. VBUS measured at 5V. When a battery is plugged in, device
negotiates for 20V and starts charging.
3) Tested dead battery by taking a battery with no charge, and
plugging in zinger. Everything boots, but PD does not negotiate
for power. Then when battery reaches 1%, PD negotiates and zinger
switches to 20V without causing a reboot.
Change-Id: Iaa451403674e86cddbd3fe80e9503584910be576
Signed-off-by: Alec Berg <alecaberg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/201958
Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
Diffstat (limited to 'include/charge_state.h')
-rw-r--r-- | include/charge_state.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/charge_state.h b/include/charge_state.h index 0da544422f..c23e70c260 100644 --- a/include/charge_state.h +++ b/include/charge_state.h @@ -50,6 +50,8 @@ enum charge_state { #define CHARGE_FLAG_FORCE_IDLE (1 << 0) /* External (AC) power is present */ #define CHARGE_FLAG_EXTERNAL_POWER (1 << 1) +/* Battery is responsive */ +#define CHARGE_FLAG_BATT_RESPONSIVE (1 << 2) /* Debugging constants, in the same order as enum charge_state. This string * table was moved here to sync with enum above. |