summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--firmware/include/utility.h2
-rw-r--r--firmware/lib/include/vboot_display.h3
-rw-r--r--firmware/lib/vboot_display.c3
3 files changed, 5 insertions, 3 deletions
diff --git a/firmware/include/utility.h b/firmware/include/utility.h
index 931789cb..e0a710cf 100644
--- a/firmware/include/utility.h
+++ b/firmware/include/utility.h
@@ -47,7 +47,7 @@
#ifdef VBOOT_EASTER_EGG
#define VBEASTEREGG(A,B) VbExEasterEgg(A,B)
#else
-#define VBEASTEREGG(A,B)
+#define VBEASTEREGG(A,B) 0
#endif
/* Combine [msw] and [lsw] uint16s to a uint32_t with its [msw] and
diff --git a/firmware/lib/include/vboot_display.h b/firmware/lib/include/vboot_display.h
index 8dc22606..782fc877 100644
--- a/firmware/lib/include/vboot_display.h
+++ b/firmware/lib/include/vboot_display.h
@@ -19,7 +19,8 @@ VbError_t VbDisplayDebugInfo(VbCommonParams* cparams, VbNvContext *vncptr);
VbError_t VbCheckDisplayKey(VbCommonParams* cparams, uint32_t key,
VbNvContext *vncptr);
-void VbExEasterEgg(VbCommonParams* cparams, VbNvContext *vncptr);
+/* If not VBERROR_SUCCESS, will need to refresh the display */
+VbError_t VbExEasterEgg(VbCommonParams* cparams, VbNvContext *vncptr);
#endif /* VBOOT_REFERENCE_VBOOT_DISPLAY_H_ */
diff --git a/firmware/lib/vboot_display.c b/firmware/lib/vboot_display.c
index 5022d20e..92880492 100644
--- a/firmware/lib/vboot_display.c
+++ b/firmware/lib/vboot_display.c
@@ -605,7 +605,8 @@ VbError_t VbCheckDisplayKey(VbCommonParams* cparams, uint32_t key,
}
if (0 == Memcmp(MagicBuffer, MAGIC_WORD, MAGIC_WORD_LEN)) {
- VBEASTEREGG(cparams, vncptr);
+ if (VBEASTEREGG(cparams, vncptr))
+ (void)VbDisplayScreen(cparams, disp_current_screen, 1, vncptr);
}
return VBERROR_SUCCESS;