summaryrefslogtreecommitdiff
path: root/src/include/bootmode.h
diff options
context:
space:
mode:
authorHsuan Ting Chen <roccochen@chromium.org>2021-08-12 15:47:06 +0800
committerJulius Werner <jwerner@chromium.org>2021-09-16 23:44:20 +0000
commit6260bf712a836762b18d80082505e981e040f4bc (patch)
tree70314d8702b2a8d3b293a570634f2bf7f7cb9434 /src/include/bootmode.h
parent7a474a5bb73ba66eb32da930315e53d5fd74e207 (diff)
vboot_logic: Set VB2_CONTEXT_EC_TRUSTED in verstage_main
vboot_reference is introducing a new field (ctx) to store the current boot mode in crrev/c/2944250 (ctx->bootmode), which will be leveraged in both vboot flow and elog_add_boot_reason in coreboot. In current steps of deciding bootmode, a function vb2ex_ec_trusted is required. This function checks gpio EC_IN_RW pin and will return 'trusted' only if EC is not in RW. Therefore, we need to implement similar utilities in coreboot. We will deprecate vb2ex_ec_trusted and use the flag, VB2_CONTEXT_EC_TRUSTED, in vboot, vb2api_fw_phase1 and set that flag in coreboot, verstage_main. Also add a help function get_ec_is_trusted which needed to be implemented per mainboard. BUG=b:177196147, b:181931817 BRANCH=none TEST=Test on trogdor if manual recovery works Signed-off-by: Hsuan Ting Chen <roccochen@chromium.org> Change-Id: I479c8f80e45cc524ba87db4293d19b29bdfa2192 Reviewed-on: https://review.coreboot.org/c/coreboot/+/57048 Reviewed-by: Yu-Ping Wu <yupingso@google.com> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/include/bootmode.h')
-rw-r--r--src/include/bootmode.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/include/bootmode.h b/src/include/bootmode.h
index aadecba334..da2dbf6565 100644
--- a/src/include/bootmode.h
+++ b/src/include/bootmode.h
@@ -11,6 +11,7 @@ int get_recovery_mode_retrain_switch(void);
int clear_recovery_mode_switch(void);
int get_wipeout_mode_switch(void);
int get_lid_switch(void);
+int get_ec_is_trusted(void);
/* Return 1 if display initialization is required. 0 if not. */
int display_init_required(void);