aboutsummaryrefslogtreecommitdiff
path: root/resources/libreboot/patch/vboot/0005-firmware-Screen-blank-and-wait-at-disabled-USB-boot-.patch
blob: 82d0d9511701b8ff6456763a484800b4a0eebf10 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
From 05a34ae55a702d0e415811fedb959f71bbd782d5 Mon Sep 17 00:00:00 2001
From: Paul Kocialkowski <contact@paulk.fr>
Date: Mon, 10 Aug 2015 23:13:49 +0200
Subject: [PATCH 5/7] firmware: Screen blank and wait at disabled USB boot
 warning

This blanks the screen before showing the disabled USB boot warning.
It also waits for the user to press any key to come back to the developer mode
screen.

Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
---
 firmware/lib/vboot_api_kernel.c | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/firmware/lib/vboot_api_kernel.c b/firmware/lib/vboot_api_kernel.c
index e191137..6463571 100644
--- a/firmware/lib/vboot_api_kernel.c
+++ b/firmware/lib/vboot_api_kernel.c
@@ -266,6 +266,7 @@ VbError_t VbBootDeveloper(VbCommonParams *cparams, LoadKernelParams *p)
 	if (gbb->flags & GBB_FLAG_FORCE_DEV_BOOT_LEGACY)
 		allow_legacy = 1;
 
+developer_mode_screen:
 	/* Show the dev mode warning screen */
 	VbDisplayScreen(cparams, VB_SCREEN_DEVELOPER_WARNING, 0, &vnc);
 
@@ -388,14 +389,23 @@ VbError_t VbBootDeveloper(VbCommonParams *cparams, LoadKernelParams *p)
 			if (!allow_usb) {
 				VBDEBUG(("VbBootDeveloper() - "
 					 "USB booting is disabled\n"));
+
+				VbDisplayScreen(cparams, VB_SCREEN_BLANK, 1,
+						&vnc);
+
 				VbExDisplayDebugInfo(
 					"WARNING: Booting from external media "
 					"(USB/SD) has not been enabled. Refer "
 					"to the developer-mode documentation "
-					"for details.\n");
+					"for details.\n\n"
+					"Press any key to continue.\n\n");
 				VbExBeep(120, 400);
 				VbExSleepMs(120);
 				VbExBeep(120, 400);
+
+				while (!VbExKeyboardRead()) ;
+
+				goto developer_mode_screen;
 			} else {
 				/*
 				 * Clear the screen to show we get the Ctrl+U
-- 
1.9.1