summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDuncan Laurie <dlaurie@chromium.org>2012-08-14 10:39:48 -0700
committerDuncan Laurie <dlaurie@chromium.org>2012-08-14 10:51:19 -0700
commitede6168a372fe8dc7589388940d41090523c32f9 (patch)
treeb609d40c7200265a572e7b6f3433a67b3e94167a
parent4557f4a265e82491d87845a5db57cade02c7c85a (diff)
downloadvboot-ede6168a372fe8dc7589388940d41090523c32f9.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 Old-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> (cherry picked from commit 9ea8e0d390cccff2057acc71dcc3807e3709c2fb) Change-Id: I7d2a85e53a396b9fcdb76e90c09b2f8d3c4a5368 Signed-off-by: Duncan Laurie <dlaurie@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/30247
-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: