summaryrefslogtreecommitdiff
path: root/firmware/lib/vboot_ui_menu.c
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/lib/vboot_ui_menu.c')
-rw-r--r--firmware/lib/vboot_ui_menu.c25
1 files changed, 22 insertions, 3 deletions
diff --git a/firmware/lib/vboot_ui_menu.c b/firmware/lib/vboot_ui_menu.c
index deab020f..29c561b5 100644
--- a/firmware/lib/vboot_ui_menu.c
+++ b/firmware/lib/vboot_ui_menu.c
@@ -572,10 +572,29 @@ VbError_t vb2_update_menu(struct vb2_context *ctx)
* because need to do in different order.
*/
current_menu = prev_menu;
- current_menu_idx = 0;
prev_menu = VB_MENU_LANGUAGES;
- selected = 0;
-
+ /* default to power off index */
+ switch (current_menu) {
+ case VB_MENU_DEV_WARNING:
+ current_menu_idx = VB_WARN_POWER_OFF;
+ break;
+ case VB_MENU_DEV:
+ current_menu_idx = VB_DEV_POWER_OFF;
+ break;
+ case VB_MENU_TO_NORM:
+ current_menu_idx = VB_TO_NORM_POWER_OFF;
+ break;
+ case VB_MENU_RECOVERY:
+ current_menu_idx = VB_RECOVERY_POWER_OFF;
+ break;
+ case VB_MENU_TO_DEV:
+ current_menu_idx = VB_TO_DEV_POWER_OFF;
+ break;
+ default:
+ current_menu_idx = 0;
+ break;
+ }
+ selected = current_menu_idx;
break;
}
default: