mirror of
https://github.com/u-boot/u-boot.git
synced 2025-04-17 02:15:02 +00:00
boot: Allow use of FIT in TPL and VPL
With VBE we want to use FIT in all phases of the boot. Add Kconfig options to support this. Disable the options for sandbox_vpl for now. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
214dc4a160
commit
d5597ef845
2 changed files with 70 additions and 1 deletions
69
boot/Kconfig
69
boot/Kconfig
|
@ -163,6 +163,18 @@ config SPL_FIT
|
|||
select SPL_HASH
|
||||
select SPL_OF_LIBFDT
|
||||
|
||||
config VPL_FIT
|
||||
bool "Support Flattened Image Tree within VPL"
|
||||
depends on VPL
|
||||
select VPL_HASH
|
||||
select VPL_OF_LIBFDT
|
||||
|
||||
config TPL_FIT
|
||||
bool "Support Flattened Image Tree within TPL"
|
||||
depends on TPL
|
||||
select TPL_HASH
|
||||
select TPL_OF_LIBFDT
|
||||
|
||||
config SPL_FIT_PRINT
|
||||
bool "Support FIT printing within SPL"
|
||||
depends on SPL_FIT
|
||||
|
@ -268,6 +280,28 @@ config SPL_LOAD_FIT_FULL
|
|||
particular it can handle selecting from multiple device tree
|
||||
and passing the correct one to U-Boot.
|
||||
|
||||
config TPL_LOAD_FIT
|
||||
bool "Enable TPL loading U-Boot as a FIT (basic fitImage features)"
|
||||
depends on TPL
|
||||
select TPL_FIT
|
||||
help
|
||||
Normally with the SPL framework a legacy image is generated as part
|
||||
of the build. This contains U-Boot along with information as to
|
||||
where it should be loaded. This option instead enables generation
|
||||
of a FIT (Flat Image Tree) which provides more flexibility. In
|
||||
particular it can handle selecting from multiple device tree
|
||||
and passing the correct one to U-Boot.
|
||||
|
||||
This path has the following limitations:
|
||||
|
||||
1. "loadables" images, other than FDTs, which do not have a "load"
|
||||
property will not be loaded. This limitation also applies to FPGA
|
||||
images with the correct "compatible" string.
|
||||
2. For FPGA images, the supported "compatible" list is in the
|
||||
doc/uImage.FIT/source_file_format.txt.
|
||||
3. FDTs are only loaded for images with an "os" property of "u-boot".
|
||||
"linux" images are also supported with Falcon boot mode.
|
||||
|
||||
config SPL_FIT_IMAGE_POST_PROCESS
|
||||
bool "Enable post-processing of FIT artifacts after loading by the SPL"
|
||||
depends on SPL_LOAD_FIT
|
||||
|
@ -307,6 +341,22 @@ config VPL_FIT
|
|||
select VPL_HASH
|
||||
select VPL_OF_LIBFDT
|
||||
|
||||
config VPL_LOAD_FIT
|
||||
bool "Enable VPL loading U-Boot as a FIT (basic fitImage features)"
|
||||
select VPL_FIT
|
||||
default y
|
||||
|
||||
config VPL_LOAD_FIT_FULL
|
||||
bool "Enable SPL loading U-Boot as a FIT (full fitImage features)"
|
||||
select VPL_FIT
|
||||
help
|
||||
Normally with the SPL framework a legacy image is generated as part
|
||||
of the build. This contains U-Boot along with information as to
|
||||
where it should be loaded. This option instead enables generation
|
||||
of a FIT (Flat Image Tree) which provides more flexibility. In
|
||||
particular it can handle selecting from multiple device tree
|
||||
and passing the correct one to U-Boot.
|
||||
|
||||
config VPL_FIT_PRINT
|
||||
bool "Support FIT printing within VPL"
|
||||
depends on VPL_FIT
|
||||
|
@ -635,6 +685,15 @@ config VPL_BOOTMETH_VBE
|
|||
supports selection of various firmware components, selection of an OS to
|
||||
boot as well as updating these using fwupd.
|
||||
|
||||
config TPL_BOOTMETH_VBE
|
||||
bool "Bootdev support for Verified Boot for Embedded (TPL)"
|
||||
depends on TPL
|
||||
default y
|
||||
help
|
||||
Enables support for VBE boot. This is a standard boot method which
|
||||
supports selection of various firmware components, seleciton of an OS to
|
||||
boot as well as updating these using fwupd.
|
||||
|
||||
if BOOTMETH_VBE
|
||||
|
||||
config BOOTMETH_VBE_REQUEST
|
||||
|
@ -713,7 +772,15 @@ config VPL_BOOTMETH_VBE_SIMPLE_FW
|
|||
This option enabled for VPL, since it is the phase where the SPL
|
||||
decision is made.
|
||||
|
||||
endif # BOOTMETH_VBE
|
||||
config TPL_BOOTMETH_VBE_SIMPLE_FW
|
||||
bool "Bootdev support for VBE 'simple' method firmware phase (TPL)"
|
||||
depends on VPL
|
||||
default y
|
||||
help
|
||||
Enables support for the firmware parts of VBE 'simple' boot, in TPL.
|
||||
TPL loads a FIT containing the VPL binary and a suitable devicetree.
|
||||
|
||||
endif # BOOTMETH_VBE_SIMPLE
|
||||
|
||||
config EXPO
|
||||
bool "Support for expos - groups of scenes displaying a UI"
|
||||
|
|
|
@ -27,6 +27,8 @@ CONFIG_FIT=y
|
|||
CONFIG_FIT_VERBOSE=y
|
||||
CONFIG_FIT_BEST_MATCH=y
|
||||
CONFIG_SPL_LOAD_FIT=y
|
||||
# CONFIG_TPL_BOOTMETH_VBE is not set
|
||||
# CONFIG_TPL_BOOTMETH_VBE_SIMPLE_FW is not set
|
||||
CONFIG_UPL=y
|
||||
CONFIG_UPL_IN=y
|
||||
CONFIG_BOOTSTAGE=y
|
||||
|
|
Loading…
Add table
Reference in a new issue