diff options
author | Joel Kitching <kitching@google.com> | 2020-02-13 10:43:42 +0800 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2020-02-14 11:51:42 +0000 |
commit | 6d87e4f33f07323e791f09f4c5798978c1b5e0c8 (patch) | |
tree | 7279bc1c61a3766a27177505f55968720a031aba | |
parent | 92af7d9f9e04b7acc6e0bea42a7482f65951ef27 (diff) | |
download | vboot-6d87e4f33f07323e791f09f4c5798978c1b5e0c8.tar.gz |
vboot: check for recovery mode with VB2_CONTEXT_RECOVERY_MODE
When the specific recovery reason is not needed, just use
(ctx->flags & VB2_CONTEXT_RECOVERY_MODE) to determine whether
or not we are in recovery mode.
BUG=b:124141368
TEST=make clean && make runtests
BRANCH=none
Change-Id: I37f1bc066d970a51dfd7ef38cba519c00e1e764f
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/vboot_reference/+/2053252
Commit-Queue: Joel Kitching <kitching@chromium.org>
Tested-by: Joel Kitching <kitching@chromium.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
-rw-r--r-- | firmware/2lib/2api.c | 4 | ||||
-rw-r--r-- | firmware/2lib/2auxfw_sync.c | 3 | ||||
-rw-r--r-- | firmware/2lib/2ec_sync.c | 3 | ||||
-rw-r--r-- | firmware/lib/vboot_display.c | 2 |
4 files changed, 5 insertions, 7 deletions
diff --git a/firmware/2lib/2api.c b/firmware/2lib/2api.c index f9b8bebb..0f57d78b 100644 --- a/firmware/2lib/2api.c +++ b/firmware/2lib/2api.c @@ -80,7 +80,7 @@ vb2_error_t vb2api_fw_phase1(struct vb2_context *ctx) /* * Check for possible reasons to ask the firmware to make display - * available. sd->recovery_reason may have been set above by + * available. VB2_CONTEXT_RECOVERY_MODE may have been set above by * vb2_check_recovery. VB2_SD_FLAG_DEV_MODE_ENABLED may have been set * above by vb2_check_dev_switch. VB2_NV_DIAG_REQUEST may have been * set during the last boot in recovery mode. @@ -88,7 +88,7 @@ vb2_error_t vb2api_fw_phase1(struct vb2_context *ctx) if (!(ctx->flags & VB2_CONTEXT_DISPLAY_INIT) && (vb2_nv_get(ctx, VB2_NV_DISPLAY_REQUEST) || sd->flags & VB2_SD_FLAG_DEV_MODE_ENABLED || - sd->recovery_reason || + ctx->flags & VB2_CONTEXT_RECOVERY_MODE || vb2_nv_get(ctx, VB2_NV_DIAG_REQUEST))) ctx->flags |= VB2_CONTEXT_DISPLAY_INIT; /* Mark display as available for downstream vboot and vboot callers. */ diff --git a/firmware/2lib/2auxfw_sync.c b/firmware/2lib/2auxfw_sync.c index 222b1214..ec0c8345 100644 --- a/firmware/2lib/2auxfw_sync.c +++ b/firmware/2lib/2auxfw_sync.c @@ -30,13 +30,12 @@ static void display_wait_screen(struct vb2_context *ctx) */ static int auxfw_sync_allowed(struct vb2_context *ctx) { - struct vb2_shared_data *sd = vb2_get_sd(ctx); struct vb2_gbb_header *gbb = vb2_get_gbb(ctx); /* Reasons not to do sync at all */ if (gbb->flags & VB2_GBB_FLAG_DISABLE_AUXFW_SOFTWARE_SYNC) return 0; - if (sd->recovery_reason) + if (ctx->flags & VB2_CONTEXT_RECOVERY_MODE) return 0; return 1; } diff --git a/firmware/2lib/2ec_sync.c b/firmware/2lib/2ec_sync.c index 4fa0932c..684c8905 100644 --- a/firmware/2lib/2ec_sync.c +++ b/firmware/2lib/2ec_sync.c @@ -395,7 +395,6 @@ static int ec_will_update_slowly(struct vb2_context *ctx) static int ec_sync_allowed(struct vb2_context *ctx) { - struct vb2_shared_data *sd = vb2_get_sd(ctx); struct vb2_gbb_header *gbb = vb2_get_gbb(ctx); /* Reasons not to do sync at all */ @@ -403,7 +402,7 @@ static int ec_sync_allowed(struct vb2_context *ctx) return 0; if (gbb->flags & VB2_GBB_FLAG_DISABLE_EC_SOFTWARE_SYNC) return 0; - if (sd->recovery_reason) + if (ctx->flags & VB2_CONTEXT_RECOVERY_MODE) return 0; return 1; } diff --git a/firmware/lib/vboot_display.c b/firmware/lib/vboot_display.c index 0211a92b..4e8c8821 100644 --- a/firmware/lib/vboot_display.c +++ b/firmware/lib/vboot_display.c @@ -334,7 +334,7 @@ vb2_error_t VbDisplayDebugInfo(struct vb2_context *ctx) } /* If we're in dev-mode, show the kernel subkey that we expect, too. */ - if (sd->recovery_reason == VB2_RECOVERY_NOT_REQUESTED && + if (!(ctx->flags & VB2_CONTEXT_RECOVERY_MODE) && sd->kernel_key_offset) { struct vb2_packed_key *key = vb2_member_of(sd, sd->kernel_key_offset); |