xref: /aosp_15_r20/external/coreboot/src/lib/bootmode.c (revision b9411a12aaaa7e1e6a6fb7c5e057f44ee179a49c)
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #include <assert.h>
4 #include <bootmode.h>
5 #include <security/vboot/misc.h>
6 #include <vb2_api.h>
7 
8 static int gfx_init_done = -1;
9 
gfx_get_init_done(void)10 int gfx_get_init_done(void)
11 {
12 	if (gfx_init_done < 0)
13 		return 0;
14 	return gfx_init_done;
15 }
16 
gfx_set_init_done(int done)17 void gfx_set_init_done(int done)
18 {
19 	gfx_init_done = done;
20 }
21 
display_init_required(void)22 int display_init_required(void)
23 {
24 	/* For vboot, honor VB2_CONTEXT_DISPLAY_INIT. */
25 	if (CONFIG(VBOOT)) {
26 		/* Must always select MUST_REQUEST_DISPLAY when using this
27 		   function. */
28 		if (!CONFIG(VBOOT_MUST_REQUEST_DISPLAY))
29 			dead_code();
30 		return vboot_get_context()->flags & VB2_CONTEXT_DISPLAY_INIT;
31 	}
32 
33 	/* By default always initialize display. */
34 	return 1;
35 }
36