diff options
Diffstat (limited to 'common')
-rw-r--r-- | common/Kconfig.boot | 17 | ||||
-rw-r--r-- | common/log.c | 1 | ||||
-rw-r--r-- | common/spl/spl_fit.c | 15 |
3 files changed, 26 insertions, 7 deletions
diff --git a/common/Kconfig.boot b/common/Kconfig.boot index 522f5f3d6a4..3f6d9c1a258 100644 --- a/common/Kconfig.boot +++ b/common/Kconfig.boot @@ -343,6 +343,23 @@ config ARCH_FIXUP_FDT_MEMORY used for booting OS with different memory setup where the part of the memory location should be used for different purpose. +config CHROMEOS + bool "Support booting Chrome OS" + help + Chrome OS requires U-Boot to set up a table indicating the boot mode + (e.g. Developer mode) and a few other things. Enable this if you are + booting on a Chromebook to avoid getting an error about an invalid + firmware ID. + +config CHROMEOS_VBOOT + bool "Support Chrome OS verified boot" + help + This is intended to enable the full Chrome OS verified boot support + in U-Boot. It is not actually implemented in the U-Boot source code + at present, so this option is always set to 'n'. It allows + distinguishing between booting Chrome OS in a basic way (developer + mode) and a full boot. + endmenu # Boot images menu "Boot timing" diff --git a/common/log.c b/common/log.c index 4b6f3fcd04a..ce39918e045 100644 --- a/common/log.c +++ b/common/log.c @@ -26,6 +26,7 @@ static const char *const log_cat_name[] = { "bloblist", "devres", "acpi", + "boot", }; _Static_assert(ARRAY_SIZE(log_cat_name) == LOGC_COUNT - LOGC_NONE, diff --git a/common/spl/spl_fit.c b/common/spl/spl_fit.c index f5109e86d14..6418062b93a 100644 --- a/common/spl/spl_fit.c +++ b/common/spl/spl_fit.c @@ -6,13 +6,13 @@ #include <common.h> #include <errno.h> -#include <board.h> #include <fpga.h> #include <gzip.h> #include <image.h> #include <log.h> #include <malloc.h> #include <spl.h> +#include <sysinfo.h> #include <asm/cache.h> #include <linux/libfdt.h> @@ -74,7 +74,7 @@ static int spl_fit_get_image_name(const void *fit, int images, const char *type, int index, const char **outname) { - struct udevice *board; + struct udevice *sysinfo; const char *name, *str; __maybe_unused int node; int conf_node; @@ -110,19 +110,20 @@ static int spl_fit_get_image_name(const void *fit, int images, } } - if (!found && !board_get(&board)) { + if (!found && CONFIG_IS_ENABLED(SYSINFO) && !sysinfo_get(&sysinfo)) { int rc; /* - * no string in the property for this index. Check if the board - * level code can supply one. + * no string in the property for this index. Check if the + * sysinfo-level code can supply one. */ - rc = board_get_fit_loadable(board, index - i - 1, type, &str); + rc = sysinfo_get_fit_loadable(sysinfo, index - i - 1, type, + &str); if (rc && rc != -ENOENT) return rc; if (!rc) { /* - * The board provided a name for a loadable. + * The sysinfo provided a name for a loadable. * Try to match it against the description properties * first. If no matching node is found, use it as a * node name. |