aboutsummaryrefslogtreecommitdiff
path: root/resources/libreboot/patch/vboot/933c4e7aa4b873f0ad9cd4c348a1ea4f37f66aa7/depthcharge/veyron_speedy/0005-firmware-Screen-blank-and-wait-at-disabled-USB-boot-.patch
blob: 152aee8006d7107054995e0e25e2830df77abd3a (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 5f41175ef44c71f2aa3e3bebd33a079c93f60a5f 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 5e784eb..7d22c93 100644
--- a/firmware/lib/vboot_api_kernel.c
+++ b/firmware/lib/vboot_api_kernel.c
@@ -320,6 +320,7 @@ VbError_t VbBootDeveloper(VbCommonParams *cparams, LoadKernelParams *p)
 		use_usb = 0;
 	}
 
+developer_mode_screen:
 	/* Show the dev mode warning screen */
 	VbDisplayScreen(cparams, VB_SCREEN_DEVELOPER_WARNING, 0, &vnc);
 
@@ -442,14 +443,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
-- 
2.8.0