bootmode: add display_init_required()
Some of the Chrome OS boards were directly calling vboot called in some form after contorting around #ifdef preprocessor macros. The reasoning is that Chrome OS doesn't always do display initialization during startup. It's runtime dependent. While this is a requirement that doesn't mean vboot functions should be sprinkled around in the mainboard and chipset code. Instead provide one function, display_init_required(), that provides the policy for determining display initialization action. For Chrome OS devices this function honors vboot_skip_display_init() and all other configurations default to initializing display. Change-Id: I403213e22c0e621e148773597a550addfbaf3f7e Signed-off-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: http://review.coreboot.org/11490 Tested-by: build bot (Jenkins) Reviewed-by: Martin Roth <martinroth@google.com>
This commit is contained in:
@ -19,9 +19,7 @@
|
||||
|
||||
#include <rules.h>
|
||||
#include <bootmode.h>
|
||||
#if CONFIG_CHROMEOS || CONFIG_VBOOT_VERIFY_FIRMWARE
|
||||
#include <vendorcode/google/chromeos/chromeos.h>
|
||||
#endif
|
||||
|
||||
#if CONFIG_BOOTMODE_STRAPS
|
||||
int developer_mode_enabled(void)
|
||||
@ -78,3 +76,13 @@ void gfx_set_init_done(int done)
|
||||
gfx_init_done = done;
|
||||
}
|
||||
#endif
|
||||
|
||||
int display_init_required(void)
|
||||
{
|
||||
/* For Chrome OS always honor vboot_skip_display_init(). */
|
||||
if (IS_ENABLED(CONFIG_CHROMEOS))
|
||||
return !vboot_skip_display_init();
|
||||
|
||||
/* By default always initialize display. */
|
||||
return 1;
|
||||
}
|
||||
|
Reference in New Issue
Block a user