firmware: fixing menu artifacts during printing
BUG=chrome-os-partner:61275
BRANCH=None
TEST=reboot and switch menus and make sure everything
is printing out properly.
Change-Id: I1269d3dc762a66dde0203673b7b400aba92afa75
Signed-off-by: Shelley Chen <shchen@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/424356
Reviewed-by: Randall Spangler <rspangler@chromium.org>
diff --git a/firmware/lib/vboot_ui_menu.c b/firmware/lib/vboot_ui_menu.c
index be4b837..1256e2e 100644
--- a/firmware/lib/vboot_ui_menu.c
+++ b/firmware/lib/vboot_ui_menu.c
@@ -235,7 +235,7 @@
};
static char *dev_menu[] = {
- "Boot Network Image\n",
+ "Boot Network Image (not working yet)\n",
"Boot Legacy BIOS\n",
"Boot USB Image\n",
"Boot Developer Image\n",
@@ -643,7 +643,6 @@
vb2_get_current_menu_size(current_menu,
NULL, &menu_size);
current_menu_idx = (current_menu_idx+1) % menu_size;
- VbDisplayScreen(ctx, cparams, VB_SCREEN_DEVELOPER_WARNING, 0);
vb2_print_current_menu();
break;
case VB_KEY_RIGHT:
@@ -902,6 +901,14 @@
ret = vb2_update_menu();
if (current_menu != VB_MENU_RECOVERY ||
current_menu_idx != VB_RECOVERY_DBG_INFO) {
+ // unfortunately we need this screen
+ // blanking to clear previous menus
+ // printed.
+ VbDisplayScreen(ctx, cparams, VB_SCREEN_BLANK, 0);
+ VbDisplayScreen(ctx, cparams, VBERROR_NO_DISK_FOUND == retval ?
+ VB_SCREEN_RECOVERY_INSERT :
+ VB_SCREEN_RECOVERY_NO_GOOD,
+ 0);
vb2_print_current_menu();
}