summaryrefslogtreecommitdiff
path: root/firmware/lib/vboot_display.c
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/lib/vboot_display.c')
-rw-r--r--firmware/lib/vboot_display.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/firmware/lib/vboot_display.c b/firmware/lib/vboot_display.c
index f3cb4d6e..24ac0725 100644
--- a/firmware/lib/vboot_display.c
+++ b/firmware/lib/vboot_display.c
@@ -23,6 +23,7 @@
static uint32_t disp_current_screen = VB_SCREEN_BLANK;
static uint32_t disp_current_index = 0;
+static uint32_t disp_disabled_idx_mask = 0;
static uint32_t disp_width = 0, disp_height = 0;
__attribute__((weak))
@@ -375,7 +376,7 @@ VbError_t VbDisplayScreen(struct vb2_context *ctx,
VbError_t VbDisplayMenu(struct vb2_context *ctx,
VbCommonParams *cparams, uint32_t screen, int force,
- uint32_t selected_index)
+ uint32_t selected_index, uint32_t disabled_idx_mask)
{
uint32_t locale;
VbError_t rv;
@@ -400,7 +401,8 @@ VbError_t VbDisplayMenu(struct vb2_context *ctx,
/* Read the locale last saved */
locale = vb2_nv_get(ctx, VB2_NV_LOCALIZATION_INDEX);
- rv = VbExDisplayMenu(screen, locale, selected_index, redraw_base_screen);
+ rv = VbExDisplayMenu(screen, locale, selected_index,
+ disabled_idx_mask, redraw_base_screen);
if (rv == VBERROR_SUCCESS) {
/*
@@ -409,6 +411,7 @@ VbError_t VbDisplayMenu(struct vb2_context *ctx,
*/
disp_current_screen = screen;
disp_current_index = selected_index;
+ disp_disabled_idx_mask = disabled_idx_mask;
}
return rv;
@@ -613,7 +616,8 @@ VbError_t VbDisplayDebugInfo(struct vb2_context *ctx, VbCommonParams *cparams)
* highlighted. On a non-detachable screen, this will be a
* no-op.
*/
- VbDisplayMenu(ctx, cparams, disp_current_screen, 1, disp_current_index);
+ VbDisplayMenu(ctx, cparams, disp_current_screen, 1,
+ disp_current_index, disp_disabled_idx_mask);
/* Add hardware ID */
VbRegionReadHWID(cparams, hwid, sizeof(hwid));