summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordnojiri <dnojiri@chromium.org>2020-03-27 16:22:13 -0700
committerCommit Bot <commit-bot@chromium.org>2020-03-31 20:05:52 +0000
commite398cef7976ca7fe9a1795dae497036bb3d051d7 (patch)
tree215f8f89e8cfae0fd3c3ca230be975906bd54a20
parent32159f96b56d60475386a5df0e102142cb0a9527 (diff)
downloadchrome-ec-e398cef7976ca7fe9a1795dae497036bb3d051d7.tar.gz
EFS2: Add EC_FEATURE_EFS2
This patch adds EC_EEATURE_EFS2. It allows AP, servo, and a developer to query whether EFS2 is supported or not. Signed-off-by: dnojiri <dnojiri@chromium.org> BUG=b/152449880 BRANCH=none TEST=Verify ectool inventory prints 38 on Helios. Change-Id: Id308cad4115314380ca47c45c3212e2e6fb4095d Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2125410 Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Tested-by: Daisuke Nojiri <dnojiri@chromium.org> Auto-Submit: Daisuke Nojiri <dnojiri@chromium.org> Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org>
-rw-r--r--common/ec_features.c3
-rw-r--r--include/ec_commands.h6
-rw-r--r--util/ectool.c1
3 files changed, 10 insertions, 0 deletions
diff --git a/common/ec_features.c b/common/ec_features.c
index 568f3e8bef..adca658445 100644
--- a/common/ec_features.c
+++ b/common/ec_features.c
@@ -128,6 +128,9 @@ uint32_t get_feature_flags1(void)
#if defined(CONFIG_LID_ANGLE) && defined(CONFIG_TABLET_MODE)
| EC_FEATURE_MASK_1(EC_FEATURE_REFINED_TABLET_MODE_HYSTERESIS)
#endif
+#ifdef CONFIG_VBOOT_EFS2
+ | EC_FEATURE_MASK_1(EC_FEATURE_EFS2)
+#endif
#ifdef CONFIG_IPI
| EC_FEATURE_MASK_1(EC_FEATURE_SCP)
#endif
diff --git a/include/ec_commands.h b/include/ec_commands.h
index b43fdd0812..07700a89d5 100644
--- a/include/ec_commands.h
+++ b/include/ec_commands.h
@@ -1390,6 +1390,12 @@ enum ec_feature_code {
* MOTIONSENSE_CMD_TABLET_MODE_LID_ANGLE.
*/
EC_FEATURE_REFINED_TABLET_MODE_HYSTERESIS = 37,
+ /*
+ * Early Firmware Selection ver.2. Enabled by CONFIG_VBOOT_EFS2.
+ * Note this is a RO feature. So, a query (EC_CMD_GET_FEATURES) should
+ * be sent to RO to be precise.
+ */
+ EC_FEATURE_EFS2 = 38,
/* The MCU is a System Companion Processor (SCP). */
EC_FEATURE_SCP = 39,
/* The MCU is an Integrated Sensor Hub */
diff --git a/util/ectool.c b/util/ectool.c
index 63b8477db1..4a6e0a6f02 100644
--- a/util/ectool.c
+++ b/util/ectool.c
@@ -766,6 +766,7 @@ static const char * const ec_feature_names[] = {
"Tight timestamp for sensors events",
[EC_FEATURE_REFINED_TABLET_MODE_HYSTERESIS] =
"Refined tablet mode hysteresis",
+ [EC_FEATURE_EFS2] = "Early Firmware Selection v2",
[EC_FEATURE_ISH] = "Intel Integrated Sensor Hub",
};