summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2015-05-04 11:31:09 -0600
committerSimon Glass <sjg@chromium.org>2015-05-14 18:49:34 -0600
commitb5279249544c6ad261991a2f4c20bb05376522d4 (patch)
tree71cc68b5fbde1827e34bb1412b49b66daa6afd05
parent38068820426f08224bf3a146086a7eb380bc04f0 (diff)
downloadu-boot-imx-b5279249544c6ad261991a2f4c20bb05376522d4.zip
u-boot-imx-b5279249544c6ad261991a2f4c20bb05376522d4.tar.gz
u-boot-imx-b5279249544c6ad261991a2f4c20bb05376522d4.tar.bz2
sandbox: cros_ec: Support EC_CMD_ENTERING_MODE emulation
Emualate this function which is used with Chrome OS verified boot. Signed-off-by: Simon Glass <sjg@chromium.org>
-rw-r--r--drivers/misc/cros_ec_sandbox.c2
-rw-r--r--include/ec_commands.h15
2 files changed, 17 insertions, 0 deletions
diff --git a/drivers/misc/cros_ec_sandbox.c b/drivers/misc/cros_ec_sandbox.c
index df41e82..7509612 100644
--- a/drivers/misc/cros_ec_sandbox.c
+++ b/drivers/misc/cros_ec_sandbox.c
@@ -459,6 +459,8 @@ static int process_cmd(struct ec_state *ec,
case EC_CMD_MKBP_STATE:
len = cros_ec_keyscan(ec, resp_data);
break;
+ case EC_CMD_ENTERING_MODE:
+ break;
default:
printf(" ** Unknown EC command %#02x\n", req_hdr->command);
return -1;
diff --git a/include/ec_commands.h b/include/ec_commands.h
index 78baab1..7605066 100644
--- a/include/ec_commands.h
+++ b/include/ec_commands.h
@@ -1555,6 +1555,21 @@ struct ec_params_sb_wr_block {
uint16_t data[32];
} __packed;
+/*
+ * Entering Verified Boot Mode Command
+ * Default mode is VBOOT_MODE_NORMAL if EC did not receive this command.
+ * Valid Modes are: normal, developer, and recovery.
+ */
+#define EC_CMD_ENTERING_MODE 0xb6
+
+struct ec_params_entering_mode {
+ int vboot_mode;
+} __packed;
+
+#define VBOOT_MODE_NORMAL 0
+#define VBOOT_MODE_DEVELOPER 1
+#define VBOOT_MODE_RECOVERY 2
+
/*****************************************************************************/
/* System commands */