diff options
author | Wai-Hong Tam <waihong@google.com> | 2018-11-08 14:28:12 -0800 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2018-11-15 02:16:28 -0800 |
commit | 38b16336b7d254f52261bb0ba12d6a8d691323ab (patch) | |
tree | 6986956c5e5e4c45e46906990b9eb41dc80051af /util | |
parent | f02c6f83fae3cdce2933da60a0de44206295489f (diff) | |
download | chrome-ec-38b16336b7d254f52261bb0ba12d6a8d691323ab.tar.gz |
chipset: Add a host command to issue AP reset
The host command is enabled by defining CONFIG_HOSTCMD_AP_RESET.
It calls the chipset_reset() function, similar to the console
command "apreset".
BRANCH=none
BUG=b:119261783
TEST=Manually tested as follow:
Enabled CONFIG_HOSTCMD_AP_RESET on Cheza and flashed EC image.
Copied the compiled ectool to Cheza. Ran "ectool apreset".
Checked EC console:
[6698.093141 chipset_reset(4)]
[6698.093753 power off 5]
...
the power state changing S0 -> S5 -> S0
Change-Id: I09f26f0c7ccd22905979e8b8675185505ad739eb
Signed-off-by: Wai-Hong Tam <waihong@google.com>
Reviewed-on: https://chromium-review.googlesource.com/1327841
Reviewed-by: Randall Spangler <rspangler@chromium.org>
Diffstat (limited to 'util')
-rw-r--r-- | util/ectool.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/util/ectool.c b/util/ectool.c index ece78749c6..24c0c7955e 100644 --- a/util/ectool.c +++ b/util/ectool.c @@ -58,6 +58,8 @@ const char help_str[] = " Read an ADC channel.\n" " addentropy [reset]\n" " Add entropy to device secret\n" + " apreset\n" + " Issue AP reset\n" " autofanctrl <on>\n" " Turn on automatic fan speed control.\n" " backlight <enabled>\n" @@ -715,6 +717,7 @@ static const char *reset_cause_to_str(uint16_t cause) "reset: board custom", "reset: ap hang detected", "reset: console command", + "reset: host command", "reset: keyboard sysreset", "reset: keyboard warm reboot", "reset: debug warm reboot", @@ -1332,6 +1335,11 @@ int cmd_rollback_info(int argc, char *argv[]) return rv; } +int cmd_apreset(int argc, char *argv[]) +{ + return ec_command(EC_CMD_AP_RESET, 0, NULL, 0, NULL, 0); +} + #define FP_FRAME_INDEX_SIMPLE_IMAGE -1 /* @@ -8338,6 +8346,7 @@ int cmd_cec(int argc, char *argv[]) const struct command commands[] = { {"adcread", cmd_adc_read}, {"addentropy", cmd_add_entropy}, + {"apreset", cmd_apreset}, {"autofanctrl", cmd_thermal_auto_fan_ctrl}, {"backlight", cmd_lcd_backlight}, {"battery", cmd_battery}, |