summaryrefslogtreecommitdiff
path: root/util
diff options
context:
space:
mode:
authorGrzegorz Bernacki <bernacki@google.com>2023-02-02 11:32:42 +0000
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2023-04-14 10:16:45 +0000
commit9ff4e036137220774e9bbbc26239278f0a3f1387 (patch)
tree5f644b90a21138a8eca4d98e4f6a50d84830a0b4 /util
parent4232722401d59e8fcf0a8bd7902506945f1df835 (diff)
downloadchrome-ec-9ff4e036137220774e9bbbc26239278f0a3f1387.tar.gz
ectool: Add command to get/set s0ix counter
BUG=b:261869264 TEST=Tested on skyrim and nissa BRANCH=none Change-Id: Id6d7eb138f44559fb0c8c601935f6ab94c367b44 Signed-off-by: Grzegorz Bernacki <bernacki@google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4239444 Reviewed-by: Robert Zieba <robertzieba@google.com>
Diffstat (limited to 'util')
-rw-r--r--util/ectool.cc41
1 files changed, 41 insertions, 0 deletions
diff --git a/util/ectool.cc b/util/ectool.cc
index 055ac9e4ba..b3ccaf49c3 100644
--- a/util/ectool.cc
+++ b/util/ectool.cc
@@ -11394,6 +11394,46 @@ int cmd_cec(int argc, char *argv[])
return -1;
}
+static void cmd_s0ix_counter_help(char *cmd)
+{
+ fprintf(stderr,
+ " Usage: %s get - to get the value of s0ix counter\n"
+ " %s reset - to reset s0ix counter \n",
+ cmd, cmd);
+}
+
+static int cmd_s0ix_counter(int argc, char *argv[])
+{
+ struct ec_params_s0ix_cnt p;
+ struct ec_response_s0ix_cnt r;
+ int rv;
+
+ if (argc != 2) {
+ fprintf(stderr, "Invalid number of params\n");
+ cmd_s0ix_counter_help(argv[0]);
+ return -1;
+ }
+
+ if (!strcasecmp(argv[1], "get")) {
+ p.flags = 0;
+ } else if (!strcasecmp(argv[1], "reset")) {
+ p.flags = EC_S0IX_COUNTER_RESET;
+ } else {
+ fprintf(stderr, "Bad subcommand: %s\n", argv[1]);
+ return -1;
+ }
+
+ rv = ec_command(EC_CMD_GET_S0IX_COUNTER, 0, &p, sizeof(p), &r,
+ sizeof(r));
+ if (rv < 0) {
+ return rv;
+ }
+
+ printf("s0ix_counter: %u\n", r.s0ix_counter);
+
+ return 0;
+}
+
/* NULL-terminated list of commands */
const struct command commands[] = {
{ "adcread", cmd_adc_read },
@@ -11511,6 +11551,7 @@ const struct command commands[] = {
{ "rwsigaction", cmd_rwsig_action_legacy },
{ "rwsigstatus", cmd_rwsig_status },
{ "sertest", cmd_serial_test },
+ { "s0ix_counter", cmd_s0ix_counter },
{ "smartdischarge", cmd_smart_discharge },
{ "stress", cmd_stress_test },
{ "sysinfo", cmd_sysinfo },