From b5279249544c6ad261991a2f4c20bb05376522d4 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Mon, 4 May 2015 11:31:09 -0600 Subject: [PATCH] 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 --- drivers/misc/cros_ec_sandbox.c | 2 ++ include/ec_commands.h | 15 +++++++++++++++ 2 files changed, 17 insertions(+) diff --git a/drivers/misc/cros_ec_sandbox.c b/drivers/misc/cros_ec_sandbox.c index df41e82bc9..7509612fb8 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 78baab1641..7605066437 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 */