summaryrefslogtreecommitdiff
path: root/util
diff options
context:
space:
mode:
authorVic Yang <victoryang@chromium.org>2012-07-12 15:10:00 +0800
committerGerrit <chrome-bot@google.com>2012-07-12 21:08:09 -0700
commit23d031343f00b88a900c701aa59636ea3b64aa33 (patch)
tree9e5c07debe4e3aee82fbff84399b914c5ac3a2e6 /util
parent8c701a7100cc63d664d6061651f8888bbe51f9e8 (diff)
downloadchrome-ec-23d031343f00b88a900c701aa59636ea3b64aa33.tar.gz
Add a host command to force charge state in IDLE mode
This command should only be accessible when flash write protect is unlocked. BUG=chrome-os-partner:9716 TEST= - Check we can charge and discharge normally. - Connect AC and force idle. Check battery current is 0 mA. Change-Id: I74a318c1f5562d6a23b722736615fd1f883dc35a Reviewed-on: https://gerrit.chromium.org/gerrit/27259 Commit-Ready: Vic Yang <victoryang@chromium.org> Reviewed-by: Vic Yang <victoryang@chromium.org> Tested-by: Vic Yang <victoryang@chromium.org>
Diffstat (limited to 'util')
-rw-r--r--util/ectool.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/util/ectool.c b/util/ectool.c
index 4857ec43ff..c25f92270a 100644
--- a/util/ectool.c
+++ b/util/ectool.c
@@ -31,6 +31,8 @@ const char help_str[] =
" Enable/disable LCD backlight\n"
" battery\n"
" Prints battery info\n"
+ " chargeforceidle\n"
+ " Force charge state machine to stop in idle mode\n"
" chipinfo\n"
" Prints chip info\n"
" cmdversions <cmd>\n"
@@ -1662,6 +1664,20 @@ int cmd_lcd_backlight(int argc, char *argv[])
}
+int cmd_charge_force_idle(int argc, char *argv[])
+{
+ int rv = ec_command(EC_CMD_CHARGE_FORCE_IDLE,
+ 0, NULL, 0, NULL, 0);
+ if (rv < 0) {
+ fprintf(stderr, "Is AC connected?\n");
+ return rv;
+ }
+
+ printf("Charge state machine force idle.\n");
+ return 0;
+}
+
+
int cmd_battery(int argc, char *argv[])
{
char batt_text[EC_MEMMAP_TEXT_MAX];
@@ -1870,6 +1886,7 @@ const struct command commands[] = {
{"autofanctrl", cmd_thermal_auto_fan_ctrl},
{"backlight", cmd_lcd_backlight},
{"battery", cmd_battery},
+ {"chargeforceidle", cmd_charge_force_idle},
{"chipinfo", cmd_chipinfo},
{"cmdversions", cmd_cmdversions},
{"echash", cmd_ec_hash},