summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWei-Ning Huang <wnhuang@google.com>2017-05-05 05:40:26 +0800
committerchrome-bot <chrome-bot@chromium.org>2017-05-11 05:31:53 -0700
commitfc562bbf9bbe418a6e5995c13c004cdf5e111ce7 (patch)
tree3a38e636949f6d0215067c1e8d257c8358fdc85a
parent543bb07c90a302e955a3d1a80467770317761aac (diff)
downloadchrome-ec-fc562bbf9bbe418a6e5995c13c004cdf5e111ce7.tar.gz
rwsig: expose a new feature bit when RWSIG task is enabled
Expose EC_FEATURE_RWSIG if RWSIG task is enabled. This allows flashrom to run EC_CMD_RWSIG_ACTION and abort RWSIG jump, then perform regular firmware update flow. BRANCH=none BUG=b:37584134 TEST=on eve, `ectool --name=cros_tp inventory` should show 'RWSIG task'. Change-Id: Iea14f4f01fab201767dccd07d711ae9e1b638f6a Signed-off-by: Wei-Ning Huang <wnhuang@google.com> Reviewed-on: https://chromium-review.googlesource.com/497788 Commit-Ready: Wei-Ning Huang <wnhuang@chromium.org> Tested-by: Wei-Ning Huang <wnhuang@chromium.org> Reviewed-by: Nicolas Boichat <drinkcat@chromium.org> Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
-rw-r--r--common/host_command.c3
-rw-r--r--include/ec_commands.h2
-rw-r--r--util/ectool.c1
3 files changed, 6 insertions, 0 deletions
diff --git a/common/host_command.c b/common/host_command.c
index f5382b533f..33eb813bda 100644
--- a/common/host_command.c
+++ b/common/host_command.c
@@ -793,6 +793,9 @@ static int host_command_get_features(struct host_cmd_handler_args *args)
#ifdef HAS_TASK_CENTROIDING
| EC_FEATURE_MASK_0(EC_FEATURE_TOUCHPAD)
#endif
+#ifdef HAS_TASK_RWSIG
+ | EC_FEATURE_MASK_0(EC_FEATURE_RWSIG)
+#endif
;
return EC_RES_SUCCESS;
}
diff --git a/include/ec_commands.h b/include/ec_commands.h
index f8f8306af9..84aa055d04 100644
--- a/include/ec_commands.h
+++ b/include/ec_commands.h
@@ -1080,6 +1080,8 @@ enum ec_feature_code {
EC_FEATURE_FINGERPRINT = 28,
/* The MCU exposes a Touchpad */
EC_FEATURE_TOUCHPAD = 29,
+ /* The MCU has RWSIG task enabled */
+ EC_FEATURE_RWSIG = 30,
};
#define EC_FEATURE_MASK_0(event_code) (1UL << (event_code % 32))
diff --git a/util/ectool.c b/util/ectool.c
index 71f28969fd..651fcfcbaa 100644
--- a/util/ectool.c
+++ b/util/ectool.c
@@ -515,6 +515,7 @@ static const char * const ec_feature_names[] = {
[EC_FEATURE_USBC_SS_MUX_VIRTUAL] = "Host-controlled USB-C SS mux",
[EC_FEATURE_RTC] = "Real-time clock",
[EC_FEATURE_TOUCHPAD] = "Touchpad",
+ [EC_FEATURE_RWSIG] = "RWSIG task",
};
int cmd_inventory(int argc, char *argv[])