summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHung-Te Lin <hungte@chromium.org>2012-08-13 18:29:26 +0800
committerGerrit <chrome-bot@google.com>2012-08-13 17:25:13 -0700
commit9ea8e0d390cccff2057acc71dcc3807e3709c2fb (patch)
treec783824a7489948852402f02d7394c9517133ccf
parent8057d1bf48aca379340d240927d879505c6e5612 (diff)
downloadvboot-9ea8e0d390cccff2057acc71dcc3807e3709c2fb.tar.gz
firmware: Add TONORM_CONFIRM screen.
We need to alert user his change has been accepted for 5 seconds. BUG=chrome-os-partner:11078 TEST=emerge-daisy vboot_reference-firmware vboot_reference chromeos-u-boot chromeos-boogimage Change-Id: I6a3b13e7543479fbd6543d759093ecf501fb1d04 Reviewed-on: https://gerrit.chromium.org/gerrit/29982 Reviewed-by: Bill Richardson <wfrichar@chromium.org> Reviewed-by: Randall Spangler <rspangler@chromium.org> Commit-Ready: Hung-Te Lin <hungte@chromium.org> Tested-by: Hung-Te Lin <hungte@chromium.org>
-rw-r--r--firmware/include/vboot_api.h1
-rw-r--r--firmware/lib/vboot_api_kernel.c2
-rw-r--r--firmware/lib/vboot_display.c3
3 files changed, 6 insertions, 0 deletions
diff --git a/firmware/include/vboot_api.h b/firmware/include/vboot_api.h
index 41a7f3e0..b5f3fb34 100644
--- a/firmware/include/vboot_api.h
+++ b/firmware/include/vboot_api.h
@@ -528,6 +528,7 @@ enum VbScreenType_t {
VB_SCREEN_RECOVERY_TO_DEV = 0x204, /* Recovery - confirm dev mode */
VB_SCREEN_DEVELOPER_TO_NORM = 0x205, /* Developer - confirm normal mode */
VB_SCREEN_WAIT = 0x206, /* Please wait - programming EC */
+ VB_SCREEN_TO_NORM_CONFIRMED = 0x207, /* Confirm after DEVELOPER_TO_NORM */
};
/* Initialize and clear the display. Set width and height to the screen
diff --git a/firmware/lib/vboot_api_kernel.c b/firmware/lib/vboot_api_kernel.c
index 6c68d73b..8b5b2034 100644
--- a/firmware/lib/vboot_api_kernel.c
+++ b/firmware/lib/vboot_api_kernel.c
@@ -237,6 +237,8 @@ VbError_t VbBootDeveloper(VbCommonParams* cparams, LoadKernelParams* p) {
case 1:
VBDEBUG(("%s() - leaving dev-mode...\n", __func__));
VbNvSet(&vnc, VBNV_DISABLE_DEV_REQUEST, 1);
+ VbDisplayScreen(cparams, VB_SCREEN_TO_NORM_CONFIRMED, 0, &vnc);
+ VbExSleepMs(5000);
return VBERROR_TPM_REBOOT_REQUIRED;
case -1:
VBDEBUG(("%s() - shutdown requested\n", __func__));
diff --git a/firmware/lib/vboot_display.c b/firmware/lib/vboot_display.c
index 94feff1d..16b1ea1a 100644
--- a/firmware/lib/vboot_display.c
+++ b/firmware/lib/vboot_display.c
@@ -228,6 +228,9 @@ VbError_t VbDisplayScreenFromGBB(VbCommonParams* cparams, uint32_t screen,
case VB_SCREEN_WAIT:
screen_index = 6;
break;
+ case VB_SCREEN_TO_NORM_CONFIRMED:
+ screen_index = 7;
+ break;
case VB_SCREEN_BLANK:
case VB_SCREEN_DEVELOPER_EGG:
default: