diff options
Diffstat (limited to 'projects/vboot/patches/0002-firmware-Text-based-screen-display-in-priority.patch')
-rw-r--r-- | projects/vboot/patches/0002-firmware-Text-based-screen-display-in-priority.patch | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/projects/vboot/patches/0002-firmware-Text-based-screen-display-in-priority.patch b/projects/vboot/patches/0002-firmware-Text-based-screen-display-in-priority.patch new file mode 100644 index 00000000..924d19bc --- /dev/null +++ b/projects/vboot/patches/0002-firmware-Text-based-screen-display-in-priority.patch @@ -0,0 +1,61 @@ +From 5f402b9d365dbc17ea68803aeb9a95da01708b9f Mon Sep 17 00:00:00 2001 +From: Paul Kocialkowski <contact@paulk.fr> +Date: Mon, 10 Aug 2015 22:44:50 +0200 +Subject: [PATCH 2/7] firmware: Text-based screen display in priority + +This allows showing text-based screen displays before looking at the GBB bitmaps +since those encourage the use of non-free software (Chrome OS) and don't display +enough information to the user. + +Change-Id: I1dc454cd5de1cf096a15957832a8114d4f758eac +Signed-off-by: Paul Kocialkowski <contact@paulk.fr> +--- + firmware/lib/vboot_display.c | 17 ++++++----------- + 1 file changed, 6 insertions(+), 11 deletions(-) + +diff --git a/firmware/lib/vboot_display.c b/firmware/lib/vboot_display.c +index 1abed92..50a2e54 100644 +--- a/firmware/lib/vboot_display.c ++++ b/firmware/lib/vboot_display.c +@@ -335,20 +335,18 @@ static VbError_t VbDisplayScreenLegacy(VbCommonParams *cparams, uint32_t screen, + /* If the screen is blank, turn off the backlight; else turn it on. */ + VbExDisplayBacklight(VB_SCREEN_BLANK == screen ? 0 : 1); + +- /* Look in the GBB first */ +- if (VBERROR_SUCCESS == VbDisplayScreenFromGBB(cparams, screen, +- vncptr, locale)) ++ /* Display default first */ ++ if (VBERROR_SUCCESS == VbExDisplayScreen(screen, locale)) + return VBERROR_SUCCESS; + +- /* If screen wasn't in the GBB bitmaps, fall back to a default */ +- return VbExDisplayScreen(screen, locale); ++ /* If default doesn't have anything to show, fall back to GBB bitmaps */ ++ return VbDisplayScreenFromGBB(cparams, screen, vncptr, locale); + } + + VbError_t VbDisplayScreen(VbCommonParams *cparams, uint32_t screen, + int force, VbNvContext *vncptr) + { + uint32_t locale; +- GoogleBinaryBlockHeader *gbb = cparams->gbb; + VbError_t rv; + + /* If requested screen is the same as the current one, we're done. */ +@@ -358,11 +356,8 @@ VbError_t VbDisplayScreen(VbCommonParams *cparams, uint32_t screen, + /* Read the locale last saved */ + VbNvGet(vncptr, VBNV_LOCALIZATION_INDEX, &locale); + +- if (gbb->bmpfv_size == 0) +- rv = VbExDisplayScreen(screen, locale); +- else +- rv = VbDisplayScreenLegacy(cparams, screen, force, vncptr, +- locale); ++ rv = VbDisplayScreenLegacy(cparams, screen, force, vncptr, ++ locale); + + if (rv == VBERROR_SUCCESS) + /* Keep track of the currently displayed screen */ +-- +2.10.2 + |