This series provides an implementation of VBE from TPL through to U-Boot proper, using VBE to load the relevant firmware stages. It buils a single image.bin file containing all the phases:
TPL - initial phase, loads VPL using binman symbols VPL - main firmware phase, loads SPL using VBE parameters SPL - loads U-Boot proper using VBE parameters U-Boot - final firmware phase, where OS booting is processed This series does not include the OS-booting phase. That will be the subject of a future series. The implementation is entirely handled by sandbox. It should be possible to enable this on a real board without much effort, but that is also the subject of a future series. Changes in v3: - Drop the *** from strings also - Update commit message to mention an existing example - Add comments to the renamed functions Changes in v2: - Move the gitlab change into an RFC patch - Rebase to master - Drop the '*** ERROR: ' text as it is already clear that it is unexpected - Fix exceds typo - Refactor based on a change to the earlier patch in spl.c - Rebase to master - Expand docs a little to clarify that manual tests are otherwise normal - Add new patch to rename block functions - Add new patch to rename block_dev to desc in disc-uclass.c - Add a note as to why we have almost-duplicated code in two places - Rebase to master - Disable TPL_BLK by default - Update the comment style - Attach the phase to the image node instead of the configuration node - Update the documentation too - Attach the phase to the image node instead of the configuration node - Attach the phase to the image node instead of the configuration node - Add signature checking / hashing to make the image more realistic - Add new patch to allow signature verification - Drop patch 'rsa: Avoid warning in padding_pss_verify()' Simon Glass (43): WIP: gitlab: Install pyelftools Rename CONFIG_SYS_TEXT_BASE to CONFIG_TEXT_BASE disk: Drop debug messages in part_efi spl: Use binman suffix allow symbols of any SPL etype spl: Refactor controls for console output spl: Add a separate silence option for SPL binman: Allow obtaining a symbol value binman: Split out looking up a symbol into a function binman: Handle writing ELF symbols in the Entry class binman: Support writing symbols into ELF files test: Report skippped tests test: Update tests to use the skip feature test: Support tests which can only be run manually bootstd: Add a way to set up a bootflow disk: Rename block functions disk: Rename block_dev to desc dm: blk: Add udevice functions usb: Update the test to cover reading and writing bloblist: Drop debugging dm: blk: mmc: Tidy up some Makefile rules for SPL dm: mmc: Allow sandbox emulator to build without writes sandbox: Drop message about writing sandbox state image: Move comment for fit_conf_find_compat() sandbox: Generalise SPL booting sandbox: Add a way to specify the sandbox executable image: Add the concept of a phase to FIT image: Allow loading a FIT image for a particular phase vbe: Rename vbe_fixup to vbe_request vbe: Use a warning for a failed requests spl: Allow multiple loaders of the same time sandbox: Support obtaining the next phase from an image vbe: Support selecting operations by SPL phase vbe: Support reading the next SPL phase via VBE vbe: Move OS implementation into a separate file vbe: Drop the U-Boot prefix from the version vbe: Add Kconfig options for VPL vbe: Add info about the VBE device to the fwupd node sandbox: Add an image for VPL vpl: Allow signature verification vbe: Use a manual test vbe: Record which phases loaded using VBE vbe: Add a command to show the VBE state vbe: Add a test for the VBE flow into U-Boot proper .gitlab-ci.yml | 2 + Kconfig | 2 +- Makefile | 26 +- arch/arc/cpu/u-boot.lds | 2 +- arch/arm/Kconfig | 2 +- arch/arm/cpu/arm1176/start.S | 2 +- arch/arm/cpu/arm926ejs/mxs/Makefile | 4 +- arch/arm/cpu/armv7/ls102xa/fdt.c | 6 +- .../armv8/linux-kernel-image-header-vars.h | 2 +- arch/arm/cpu/armv8/start.S | 2 +- .../dts/fsl-ls1028a-kontron-sl28-u-boot.dtsi | 2 +- arch/arm/dts/imx8mm-u-boot.dtsi | 2 +- arch/arm/dts/imx8mn-beacon-kit-u-boot.dtsi | 2 +- .../dts/imx8mn-bsh-smm-s2-u-boot-common.dtsi | 2 +- arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi | 2 +- arch/arm/dts/imx8mn-evk-u-boot.dtsi | 2 +- .../dts/imx8mn-var-som-symphony-u-boot.dtsi | 2 +- arch/arm/dts/imx8mn-venice-u-boot.dtsi | 2 +- arch/arm/dts/imx8mp-u-boot.dtsi | 2 +- arch/arm/dts/imx8mq-cm-u-boot.dtsi | 2 +- arch/arm/dts/imx8mq-u-boot.dtsi | 2 +- arch/arm/dts/rockchip-optee.dtsi | 2 +- arch/arm/dts/sunxi-u-boot.dtsi | 2 +- arch/arm/dts/tegra-u-boot.dtsi | 2 +- arch/arm/include/asm/arch-mxs/sys_proto.h | 2 +- arch/arm/include/asm/arch-sunxi/boot0.h | 2 +- arch/arm/lib/crt0.S | 2 +- arch/arm/lib/relocate_64.S | 2 +- arch/arm/mach-apple/Kconfig | 4 +- arch/arm/mach-aspeed/Kconfig | 2 +- arch/arm/mach-at91/arm920t/lowlevel_init.S | 4 +- arch/arm/mach-at91/arm926ejs/lowlevel_init.S | 2 +- arch/arm/mach-exynos/spl_boot.c | 10 +- arch/arm/mach-imx/Makefile | 10 +- arch/arm/mach-imx/imx8/cpu.c | 4 +- arch/arm/mach-imx/mx7/Kconfig | 2 +- arch/arm/mach-imx/spl.c | 2 +- arch/arm/mach-ipq40xx/Kconfig | 2 +- arch/arm/mach-k3/config_secure.mk | 2 +- arch/arm/mach-k3/sysfw-loader.c | 2 +- arch/arm/mach-keystone/config.mk | 2 +- arch/arm/mach-nexell/include/mach/boot0.h | 6 +- arch/arm/mach-npcm/Kconfig | 2 +- arch/arm/mach-octeontx/cpu.c | 2 +- arch/arm/mach-octeontx2/cpu.c | 2 +- arch/arm/mach-omap2/config_secure.mk | 4 +- arch/arm/mach-owl/Kconfig | 2 +- arch/arm/mach-rockchip/Kconfig | 2 +- arch/arm/mach-socfpga/Kconfig | 2 +- arch/arm/mach-stm32mp/Kconfig.13x | 2 +- arch/arm/mach-stm32mp/Kconfig.15x | 2 +- arch/arm/mach-sunxi/board.c | 2 +- arch/arm/mach-sunxi/spl_spi_sunxi.c | 2 +- arch/arm/mach-zynqmp/mkimage_fit_atf.sh | 2 +- arch/m68k/cpu/mcf52x2/start.S | 12 +- arch/m68k/cpu/mcf530x/start.S | 4 +- arch/m68k/cpu/mcf5445x/start.S | 16 +- arch/microblaze/cpu/relocate.c | 6 +- arch/microblaze/cpu/start.S | 8 +- arch/mips/mach-jz47xx/jz4780/jz4780.c | 4 +- arch/mips/mach-mscc/lowlevel_init.S | 2 +- arch/mips/mach-mtmips/Kconfig | 2 +- arch/powerpc/cpu/mpc85xx/cpu_init_early.c | 4 +- arch/powerpc/cpu/mpc85xx/u-boot.lds | 2 +- arch/powerpc/dts/kmcent2-u-boot.dtsi | 4 +- arch/powerpc/dts/u-boot.dtsi | 4 +- arch/riscv/dts/binman.dtsi | 2 +- arch/sandbox/cpu/spl.c | 84 +++- arch/sandbox/cpu/start.c | 30 ++ arch/sandbox/cpu/state.c | 2 +- arch/sandbox/dts/sandbox.dts | 7 + arch/sandbox/dts/sandbox_vpl.dtsi | 84 ++++ arch/sandbox/dts/test.dts | 72 +++- arch/sandbox/include/asm/spl.h | 4 + arch/sandbox/include/asm/state.h | 3 +- arch/sh/cpu/u-boot.lds | 2 +- arch/x86/Kconfig | 4 +- arch/x86/cpu/apollolake/spl.c | 2 +- arch/x86/cpu/quark/quark.c | 2 +- arch/x86/cpu/start.S | 6 +- arch/x86/cpu/u-boot-64.lds | 4 +- arch/x86/cpu/u-boot.lds | 2 +- arch/x86/lib/relocate.c | 6 +- arch/x86/lib/spl.c | 6 +- board/BuS/eb_cpu5282/eb_cpu5282.c | 2 +- board/advantech/som-db5800-som-6867/Kconfig | 2 +- board/armltd/vexpress64/Kconfig | 4 +- board/beacon/beacon-rzg2m/beacon-rzg2m.c | 2 +- board/broadcom/bcmstb/bcmstb.c | 4 +- board/cobra5272/README | 8 +- board/congatec/cgtqmx8/cgtqmx8.c | 2 +- .../congatec/conga-qeval20-qa3-e3845/Kconfig | 2 +- board/coreboot/coreboot/Kconfig | 2 +- board/cssi/MCR3000/Kconfig | 2 +- board/davinci/da8xxevm/README.da850 | 2 +- board/dfi/dfi-bt700/Kconfig | 2 +- board/efi/efi-x86_payload/Kconfig | 2 +- board/emulation/qemu-arm/Kconfig | 2 +- board/emulation/qemu-riscv/Kconfig | 2 +- board/emulation/qemu-x86/Kconfig | 2 +- .../freescale/imx8qm_mek/uboot-container.cfg | 2 +- .../freescale/imx8qxp_mek/uboot-container.cfg | 2 +- board/freescale/ls1021atsn/ls1021atsn.c | 2 +- board/freescale/ls1021atwr/ls1021atwr.c | 2 +- board/freescale/ls1028a/Kconfig | 4 +- board/google/chromebook_coral/Kconfig | 2 +- board/google/chromebook_link/Kconfig | 2 +- board/google/chromebook_samus/Kconfig | 2 +- board/google/chromebox_panther/Kconfig | 2 +- board/hoperun/hihope-rzg2/hihope-rzg2.c | 2 +- board/hpe/gxp/Kconfig | 2 +- board/imgtec/boston/Kconfig | 2 +- board/imgtec/ci20/Kconfig | 2 +- board/imgtec/malta/Kconfig | 2 +- board/imgtec/xilfpga/Kconfig | 2 +- board/intel/bayleybay/Kconfig | 2 +- board/intel/cherryhill/Kconfig | 2 +- board/intel/cougarcanyon2/Kconfig | 2 +- board/intel/crownbay/Kconfig | 2 +- board/intel/edison/Kconfig | 2 +- board/intel/galileo/Kconfig | 2 +- board/intel/minnowmax/Kconfig | 2 +- board/intel/slimbootloader/Kconfig | 2 +- board/keymile/common/common.c | 4 +- board/kontron/sl28/Kconfig | 2 +- board/microchip/mpfs_icicle/Kconfig | 2 +- board/microchip/pic32mzda/Kconfig | 2 +- board/nokia/rx51/lowlevel_init.S | 6 +- board/openpiton/riscv64/Kconfig | 2 +- board/qca/ap121/Kconfig | 2 +- board/qca/ap143/Kconfig | 2 +- board/qca/ap152/Kconfig | 2 +- board/qualcomm/dragonboard820c/head.S | 2 +- board/renesas/falcon/falcon.c | 2 +- board/siemens/capricorn/uboot-container.cfg | 2 +- board/sifive/unleashed/Kconfig | 2 +- board/sifive/unmatched/Kconfig | 2 +- board/silinux/ek874/ek874.c | 2 +- board/sipeed/maix/Kconfig | 2 +- board/socrates/socrates.c | 2 +- board/synopsys/axs10x/headerize-axs.py | 2 +- board/synopsys/hsdk/headerize-hsdk.py | 2 +- board/ti/ks2_evm/board.c | 2 +- board/tplink/wdr4300/Kconfig | 2 +- board/tq/tqma6/Kconfig | 2 +- boot/Kconfig | 146 ++++++- boot/Makefile | 4 +- boot/bootdev-uclass.c | 5 +- boot/bootflow.c | 9 + boot/bootmeth-uclass.c | 5 +- boot/image-fit.c | 126 +++--- boot/image.c | 18 + boot/{vbe_fixup.c => vbe_request.c} | 8 +- boot/vbe_simple.c | 142 ++----- boot/vbe_simple.h | 71 ++++ boot/vbe_simple_fw.c | 206 ++++++++++ boot/vbe_simple_os.c | 104 +++++ cmd/sf.c | 2 +- cmd/vbe.c | 31 +- common/Kconfig | 29 ++ common/autoboot.c | 8 +- common/bloblist.c | 1 - common/board_f.c | 10 +- common/board_r.c | 2 +- common/spl/Kconfig.vpl | 30 ++ common/spl/spl.c | 82 ++-- common/spl/spl_atf.c | 2 +- common/spl/spl_nand.c | 6 +- common/spl/spl_optee.S | 2 +- configs/M5208EVBE_defconfig | 2 +- configs/M5235EVB_Flash32_defconfig | 2 +- configs/M5235EVB_defconfig | 2 +- configs/M5249EVB_defconfig | 2 +- configs/M5253DEMO_defconfig | 2 +- configs/M5272C3_defconfig | 2 +- configs/M5275EVB_defconfig | 2 +- configs/M5282EVB_defconfig | 2 +- configs/M53017EVB_defconfig | 2 +- configs/M5329AFEE_defconfig | 2 +- configs/M5329BFEE_defconfig | 2 +- configs/M5373EVB_defconfig | 2 +- configs/MCR3000_defconfig | 2 +- configs/MPC837XERDB_defconfig | 2 +- configs/MPC8548CDS_36BIT_defconfig | 2 +- configs/MPC8548CDS_defconfig | 2 +- configs/MPC8548CDS_legacy_defconfig | 2 +- configs/P1010RDB-PA_36BIT_NAND_defconfig | 2 +- configs/P1010RDB-PA_36BIT_NOR_defconfig | 2 +- configs/P1010RDB-PA_36BIT_SDCARD_defconfig | 2 +- configs/P1010RDB-PA_36BIT_SPIFLASH_defconfig | 2 +- configs/P1010RDB-PA_NAND_defconfig | 2 +- configs/P1010RDB-PA_NOR_defconfig | 2 +- configs/P1010RDB-PA_SDCARD_defconfig | 2 +- configs/P1010RDB-PA_SPIFLASH_defconfig | 2 +- configs/P1010RDB-PB_36BIT_NAND_defconfig | 2 +- configs/P1010RDB-PB_36BIT_NOR_defconfig | 2 +- configs/P1010RDB-PB_36BIT_SDCARD_defconfig | 2 +- configs/P1010RDB-PB_36BIT_SPIFLASH_defconfig | 2 +- configs/P1010RDB-PB_NAND_defconfig | 2 +- configs/P1010RDB-PB_NOR_defconfig | 2 +- configs/P1010RDB-PB_SDCARD_defconfig | 2 +- configs/P1010RDB-PB_SPIFLASH_defconfig | 2 +- configs/P1020RDB-PC_36BIT_NAND_defconfig | 2 +- configs/P1020RDB-PC_36BIT_SDCARD_defconfig | 2 +- configs/P1020RDB-PC_36BIT_SPIFLASH_defconfig | 2 +- configs/P1020RDB-PC_36BIT_defconfig | 2 +- configs/P1020RDB-PC_NAND_defconfig | 2 +- configs/P1020RDB-PC_SDCARD_defconfig | 2 +- configs/P1020RDB-PC_SPIFLASH_defconfig | 2 +- configs/P1020RDB-PC_defconfig | 2 +- configs/P1020RDB-PD_NAND_defconfig | 2 +- configs/P1020RDB-PD_SDCARD_defconfig | 2 +- configs/P1020RDB-PD_SPIFLASH_defconfig | 2 +- configs/P1020RDB-PD_defconfig | 2 +- configs/P2020RDB-PC_36BIT_NAND_defconfig | 2 +- configs/P2020RDB-PC_36BIT_SDCARD_defconfig | 2 +- configs/P2020RDB-PC_36BIT_SPIFLASH_defconfig | 2 +- configs/P2020RDB-PC_36BIT_defconfig | 2 +- configs/P2020RDB-PC_NAND_defconfig | 2 +- configs/P2020RDB-PC_SDCARD_defconfig | 2 +- configs/P2020RDB-PC_SPIFLASH_defconfig | 2 +- configs/P2020RDB-PC_defconfig | 2 +- configs/P2041RDB_NAND_defconfig | 2 +- configs/P2041RDB_SDCARD_defconfig | 2 +- configs/P2041RDB_SPIFLASH_defconfig | 2 +- configs/P2041RDB_defconfig | 2 +- configs/SBx81LIFKW_defconfig | 2 +- configs/SBx81LIFXCAT_defconfig | 2 +- configs/T1024RDB_NAND_defconfig | 2 +- configs/T1024RDB_SDCARD_defconfig | 2 +- configs/T1024RDB_SPIFLASH_defconfig | 2 +- configs/T1024RDB_defconfig | 2 +- configs/T1042D4RDB_NAND_defconfig | 2 +- configs/T1042D4RDB_SDCARD_defconfig | 2 +- configs/T1042D4RDB_SPIFLASH_defconfig | 2 +- configs/T1042D4RDB_defconfig | 2 +- configs/T2080QDS_NAND_defconfig | 2 +- configs/T2080QDS_SDCARD_defconfig | 2 +- configs/T2080QDS_SECURE_BOOT_defconfig | 2 +- configs/T2080QDS_SPIFLASH_defconfig | 2 +- configs/T2080QDS_SRIO_PCIE_BOOT_defconfig | 2 +- configs/T2080QDS_defconfig | 2 +- configs/T2080RDB_NAND_defconfig | 2 +- configs/T2080RDB_SDCARD_defconfig | 2 +- configs/T2080RDB_SPIFLASH_defconfig | 2 +- configs/T2080RDB_defconfig | 2 +- configs/T2080RDB_revD_NAND_defconfig | 2 +- configs/T2080RDB_revD_SDCARD_defconfig | 2 +- configs/T2080RDB_revD_SPIFLASH_defconfig | 2 +- configs/T2080RDB_revD_defconfig | 2 +- configs/T4240RDB_SDCARD_defconfig | 2 +- configs/T4240RDB_defconfig | 2 +- configs/a3y17lte_defconfig | 2 +- configs/a5y17lte_defconfig | 2 +- configs/a7y17lte_defconfig | 2 +- configs/ae350_rv32_defconfig | 2 +- configs/ae350_rv32_spl_defconfig | 2 +- configs/ae350_rv32_spl_xip_defconfig | 2 +- configs/ae350_rv32_xip_defconfig | 2 +- configs/ae350_rv64_defconfig | 2 +- configs/ae350_rv64_spl_defconfig | 2 +- configs/ae350_rv64_spl_xip_defconfig | 2 +- configs/ae350_rv64_xip_defconfig | 2 +- configs/alt_defconfig | 2 +- configs/am3517_evm_defconfig | 2 +- configs/am43xx_evm_qspiboot_defconfig | 2 +- configs/amcore_defconfig | 2 +- configs/ap121_defconfig | 2 +- configs/ap143_defconfig | 2 +- configs/ap152_defconfig | 2 +- configs/apalis-imx8_defconfig | 2 +- configs/apalis-tk1_defconfig | 2 +- configs/apalis_imx6_defconfig | 2 +- configs/apalis_t30_defconfig | 2 +- configs/aristainetos2c_defconfig | 2 +- configs/aristainetos2ccslb_defconfig | 2 +- configs/arndale_defconfig | 2 +- configs/astro_mcf5373l_defconfig | 2 +- configs/at91sam9260ek_dataflash_cs0_defconfig | 2 +- configs/at91sam9260ek_dataflash_cs1_defconfig | 2 +- configs/at91sam9260ek_nandflash_defconfig | 2 +- configs/at91sam9261ek_dataflash_cs0_defconfig | 2 +- configs/at91sam9261ek_dataflash_cs3_defconfig | 2 +- configs/at91sam9261ek_nandflash_defconfig | 2 +- configs/at91sam9263ek_dataflash_cs0_defconfig | 2 +- configs/at91sam9263ek_dataflash_defconfig | 2 +- configs/at91sam9263ek_nandflash_defconfig | 2 +- configs/at91sam9263ek_norflash_boot_defconfig | 2 +- configs/at91sam9263ek_norflash_defconfig | 2 +- configs/at91sam9g10ek_dataflash_cs0_defconfig | 2 +- configs/at91sam9g10ek_dataflash_cs3_defconfig | 2 +- configs/at91sam9g10ek_nandflash_defconfig | 2 +- configs/at91sam9g20ek_2mmc_defconfig | 2 +- .../at91sam9g20ek_2mmc_nandflash_defconfig | 2 +- configs/at91sam9g20ek_dataflash_cs0_defconfig | 2 +- configs/at91sam9g20ek_dataflash_cs1_defconfig | 2 +- configs/at91sam9g20ek_nandflash_defconfig | 2 +- configs/at91sam9m10g45ek_mmc_defconfig | 2 +- configs/at91sam9m10g45ek_nandflash_defconfig | 2 +- configs/at91sam9n12ek_mmc_defconfig | 2 +- configs/at91sam9n12ek_nandflash_defconfig | 2 +- configs/at91sam9n12ek_spiflash_defconfig | 2 +- configs/at91sam9rlek_dataflash_defconfig | 2 +- configs/at91sam9rlek_mmc_defconfig | 2 +- configs/at91sam9rlek_nandflash_defconfig | 2 +- configs/at91sam9x5ek_dataflash_defconfig | 2 +- configs/at91sam9x5ek_mmc_defconfig | 2 +- configs/at91sam9x5ek_nandflash_defconfig | 2 +- configs/at91sam9x5ek_spiflash_defconfig | 2 +- configs/at91sam9xeek_dataflash_cs0_defconfig | 2 +- configs/at91sam9xeek_dataflash_cs1_defconfig | 2 +- configs/at91sam9xeek_nandflash_defconfig | 2 +- ...edev_cc_v1_0_ultrazedev_som_v1_0_defconfig | 2 +- configs/axm_defconfig | 2 +- configs/axs101_defconfig | 2 +- configs/axs103_defconfig | 2 +- configs/bananapi-m5_defconfig | 2 +- configs/bayleybay_defconfig | 2 +- configs/bcm7260_defconfig | 2 +- configs/bcm7445_defconfig | 2 +- configs/bcm947622_defconfig | 2 +- configs/bcm963158_ram_defconfig | 2 +- configs/bcm96753ref_ram_defconfig | 2 +- configs/bcm968360bg_ram_defconfig | 2 +- configs/bcm968380gerg_ram_defconfig | 2 +- configs/bcm968580xref_ram_defconfig | 2 +- configs/bcm_ns3_defconfig | 2 +- configs/beaver_defconfig | 2 +- configs/beelink-gsking-x_defconfig | 2 +- configs/beelink-gtking_defconfig | 2 +- configs/beelink-gtkingpro_defconfig | 2 +- configs/bitmain_antminer_s9_defconfig | 2 +- configs/bk4r1_defconfig | 2 +- configs/blanche_defconfig | 2 +- configs/boston32r2_defconfig | 2 +- configs/boston32r2el_defconfig | 2 +- configs/boston32r6_defconfig | 2 +- configs/boston32r6el_defconfig | 2 +- configs/boston64r2_defconfig | 2 +- configs/boston64r2el_defconfig | 2 +- configs/boston64r6_defconfig | 2 +- configs/boston64r6el_defconfig | 2 +- configs/brppt2_defconfig | 2 +- configs/cardhu_defconfig | 2 +- configs/cei-tk1-som_defconfig | 2 +- configs/cgtqmx8_defconfig | 2 +- configs/cherryhill_defconfig | 2 +- configs/chromebit_mickey_defconfig | 2 +- configs/chromebook_bob_defconfig | 2 +- configs/chromebook_coral_defconfig | 2 +- configs/chromebook_jerry_defconfig | 2 +- configs/chromebook_kevin_defconfig | 2 +- configs/chromebook_link_defconfig | 2 +- configs/chromebook_minnie_defconfig | 2 +- configs/chromebook_samus_defconfig | 2 +- configs/chromebook_samus_tpl_defconfig | 2 +- configs/chromebook_speedy_defconfig | 2 +- configs/chromebox_panther_defconfig | 2 +- configs/ci20_mmc_defconfig | 2 +- configs/clearfog_defconfig | 2 +- configs/clearfog_gt_8k_defconfig | 2 +- configs/cm_fx6_defconfig | 2 +- configs/cobra5272_defconfig | 2 +- configs/colibri-imx6ull-emmc_defconfig | 2 +- configs/colibri-imx6ull_defconfig | 2 +- configs/colibri-imx8x_defconfig | 2 +- configs/colibri_imx6_defconfig | 2 +- configs/colibri_t20_defconfig | 2 +- configs/colibri_t30_defconfig | 2 +- configs/colibri_vf_defconfig | 2 +- configs/comtrend_ar5315u_ram_defconfig | 2 +- configs/comtrend_ar5387un_ram_defconfig | 2 +- configs/comtrend_ct5361_ram_defconfig | 2 +- configs/comtrend_vr3032u_ram_defconfig | 2 +- configs/comtrend_wap5813n_ram_defconfig | 2 +- ...-qeval20-qa3-e3845-internal-uart_defconfig | 2 +- configs/conga-qeval20-qa3-e3845_defconfig | 2 +- configs/controlcenterdc_defconfig | 2 +- configs/coreboot64_defconfig | 2 +- configs/coreboot_defconfig | 2 +- configs/corstone1000_defconfig | 2 +- configs/cortina_presidio-asic-base_defconfig | 2 +- configs/cortina_presidio-asic-emmc_defconfig | 2 +- configs/cortina_presidio-asic-pnand_defconfig | 2 +- configs/corvus_defconfig | 2 +- configs/cougarcanyon2_defconfig | 2 +- configs/crownbay_defconfig | 2 +- configs/crs305-1g-4s-bit_defconfig | 2 +- configs/crs305-1g-4s_defconfig | 2 +- configs/crs326-24g-2s-bit_defconfig | 2 +- configs/crs326-24g-2s_defconfig | 2 +- configs/crs328-4c-20s-4s-bit_defconfig | 2 +- configs/crs328-4c-20s-4s_defconfig | 2 +- configs/d2net_v2_defconfig | 2 +- configs/da850evm_defconfig | 2 +- configs/da850evm_direct_nor_defconfig | 2 +- configs/da850evm_nand_defconfig | 2 +- configs/dalmore_defconfig | 2 +- configs/db-88f6720_defconfig | 2 +- configs/db-88f6820-amc_defconfig | 2 +- configs/db-88f6820-gp_defconfig | 2 +- configs/db-mv784mp-gp_defconfig | 2 +- configs/db-xc3-24g4xg_defconfig | 2 +- configs/deneb_defconfig | 2 +- configs/devkit3250_defconfig | 2 +- configs/devkit8000_defconfig | 2 +- configs/dfi-bt700-q7x-151_defconfig | 2 +- configs/dh_imx6_defconfig | 2 +- configs/display5_defconfig | 2 +- configs/display5_factory_defconfig | 2 +- configs/dns325_defconfig | 2 +- configs/dockstar_defconfig | 2 +- configs/draco_defconfig | 2 +- configs/dragonboard410c_defconfig | 2 +- configs/dragonboard820c_defconfig | 2 +- configs/dreamplug_defconfig | 2 +- configs/ds109_defconfig | 2 +- configs/ds414_defconfig | 2 +- configs/durian_defconfig | 2 +- configs/eDPU_defconfig | 2 +- configs/ea-lpc3250devkitv2_defconfig | 2 +- configs/eb_cpu5282_defconfig | 2 +- configs/eb_cpu5282_internal_defconfig | 2 +- configs/edison_defconfig | 2 +- configs/elgin-rv1108_defconfig | 2 +- configs/emsdp_defconfig | 2 +- configs/espresso7420_defconfig | 2 +- configs/etamin_defconfig | 2 +- configs/ethernut5_defconfig | 2 +- configs/ev-imx280-nano-x-mb_defconfig | 2 +- configs/evb-ast2500_defconfig | 2 +- configs/evb-ast2600_defconfig | 2 +- configs/evb-px30_defconfig | 2 +- configs/evb-px5_defconfig | 2 +- configs/evb-rk3036_defconfig | 2 +- configs/evb-rk3128_defconfig | 2 +- configs/evb-rk3229_defconfig | 2 +- configs/evb-rk3288_defconfig | 2 +- configs/evb-rk3308_defconfig | 2 +- configs/evb-rk3328_defconfig | 2 +- configs/evb-rk3399_defconfig | 2 +- configs/evb-rk3568_defconfig | 2 +- configs/evb-rv1108_defconfig | 2 +- configs/ficus-rk3399_defconfig | 2 +- configs/firefly-px30_defconfig | 2 +- configs/firefly-rk3288_defconfig | 2 +- configs/firefly-rk3399_defconfig | 2 +- configs/galileo_defconfig | 2 +- .../gardena-smart-gateway-at91sam_defconfig | 2 +- configs/gazerbeam_defconfig | 2 +- configs/ge_b1x5v2_defconfig | 2 +- configs/ge_bx50v3_defconfig | 2 +- configs/geekbox_defconfig | 2 +- configs/giedi_defconfig | 2 +- configs/goflexhome_defconfig | 2 +- configs/gose_defconfig | 2 +- configs/grpeach_defconfig | 2 +- configs/gurnard_defconfig | 2 +- configs/guruplug_defconfig | 2 +- configs/gwventana_emmc_defconfig | 2 +- configs/gwventana_gw5904_defconfig | 2 +- configs/gwventana_nand_defconfig | 2 +- configs/harmony_defconfig | 2 +- configs/helios4_defconfig | 2 +- configs/highbank_defconfig | 2 +- configs/hihope_rzg2_defconfig | 2 +- configs/hikey960_defconfig | 2 +- configs/hikey_defconfig | 2 +- configs/hsdk_4xd_defconfig | 2 +- configs/hsdk_defconfig | 2 +- configs/huawei_hg556a_ram_defconfig | 2 +- configs/ib62x0_defconfig | 2 +- configs/iconnect_defconfig | 2 +- configs/imx28_xea_defconfig | 2 +- configs/imx28_xea_sb_defconfig | 2 +- configs/imx6dl_icore_nand_defconfig | 2 +- configs/imx6dl_mamoj_defconfig | 2 +- configs/imx6q_bosch_acc_defconfig | 2 +- configs/imx6q_icore_nand_defconfig | 2 +- configs/imx6q_logic_defconfig | 2 +- configs/imx6qdl_icore_mipi_defconfig | 2 +- configs/imx6qdl_icore_mmc_defconfig | 2 +- configs/imx6qdl_icore_nand_defconfig | 2 +- configs/imx6qdl_icore_rqs_defconfig | 2 +- configs/imx6ul_geam_mmc_defconfig | 2 +- configs/imx6ul_geam_nand_defconfig | 2 +- configs/imx6ul_isiot_emmc_defconfig | 2 +- configs/imx6ul_isiot_nand_defconfig | 2 +- configs/imx6ulz_smm_m2_defconfig | 2 +- configs/imx8mm-cl-iot-gate-optee_defconfig | 2 +- configs/imx8mm-cl-iot-gate_defconfig | 2 +- configs/imx8mm-icore-mx8mm-ctouch2_defconfig | 2 +- configs/imx8mm-icore-mx8mm-edimm2.2_defconfig | 2 +- configs/imx8mm-mx8menlo_defconfig | 2 +- configs/imx8mm_beacon_defconfig | 2 +- configs/imx8mm_data_modul_edm_sbc_defconfig | 2 +- configs/imx8mm_evk_defconfig | 2 +- configs/imx8mm_evk_fspi_defconfig | 2 +- configs/imx8mm_venice_defconfig | 2 +- configs/imx8mn_beacon_2g_defconfig | 2 +- configs/imx8mn_beacon_defconfig | 2 +- configs/imx8mn_bsh_smm_s2_defconfig | 2 +- configs/imx8mn_bsh_smm_s2pro_defconfig | 2 +- configs/imx8mn_ddr4_evk_defconfig | 2 +- configs/imx8mn_evk_defconfig | 2 +- configs/imx8mn_var_som_defconfig | 2 +- configs/imx8mn_venice_defconfig | 2 +- configs/imx8mp_dhcom_pdk2_defconfig | 2 +- configs/imx8mp_evk_defconfig | 2 +- configs/imx8mp_rsb3720a1_4G_defconfig | 2 +- configs/imx8mp_rsb3720a1_6G_defconfig | 2 +- configs/imx8mp_venice_defconfig | 2 +- configs/imx8mq_cm_defconfig | 2 +- configs/imx8mq_evk_defconfig | 2 +- configs/imx8mq_phanbell_defconfig | 2 +- configs/imx8qm_mek_defconfig | 2 +- configs/imx8qm_rom7720_a1_4G_defconfig | 2 +- configs/imx8qxp_mek_defconfig | 2 +- configs/imx8ulp_evk_defconfig | 2 +- configs/imx93_11x11_evk_defconfig | 2 +- configs/imxrt1020-evk_defconfig | 2 +- configs/imxrt1050-evk_defconfig | 2 +- configs/imxrt1170-evk_defconfig | 2 +- configs/inetspace_v2_defconfig | 2 +- configs/integratorap_cm720t_defconfig | 2 +- configs/integratorap_cm920t_defconfig | 2 +- configs/integratorap_cm926ejs_defconfig | 2 +- configs/integratorap_cm946es_defconfig | 2 +- configs/integratorcp_cm1136_defconfig | 2 +- configs/integratorcp_cm920t_defconfig | 2 +- configs/integratorcp_cm926ejs_defconfig | 2 +- configs/integratorcp_cm946es_defconfig | 2 +- configs/iot_devkit_defconfig | 2 +- configs/jethub_j100_defconfig | 2 +- configs/jethub_j80_defconfig | 2 +- configs/jetson-tk1_defconfig | 2 +- configs/k2e_evm_defconfig | 2 +- configs/k2e_hs_evm_defconfig | 2 +- configs/k2g_evm_defconfig | 2 +- configs/k2g_hs_evm_defconfig | 2 +- configs/k2hk_evm_defconfig | 2 +- configs/k2hk_hs_evm_defconfig | 2 +- configs/k2l_evm_defconfig | 2 +- configs/k2l_hs_evm_defconfig | 2 +- configs/khadas-edge-captain-rk3399_defconfig | 2 +- configs/khadas-edge-rk3399_defconfig | 2 +- configs/khadas-edge-v-rk3399_defconfig | 2 +- configs/khadas-vim2_defconfig | 2 +- configs/khadas-vim3_android_ab_defconfig | 2 +- configs/khadas-vim3_android_defconfig | 2 +- configs/khadas-vim3_defconfig | 2 +- configs/khadas-vim3l_android_ab_defconfig | 2 +- configs/khadas-vim3l_android_defconfig | 2 +- configs/khadas-vim3l_defconfig | 2 +- configs/khadas-vim_defconfig | 2 +- configs/kmcent2_defconfig | 2 +- configs/kmcoge5ne_defconfig | 2 +- configs/kmeter1_defconfig | 2 +- configs/kmopti2_defconfig | 2 +- configs/kmsupx5_defconfig | 2 +- configs/kmtepr2_defconfig | 2 +- configs/koelsch_defconfig | 2 +- configs/kontron-sl-mx6ul_defconfig | 2 +- configs/kontron-sl-mx8mm_defconfig | 2 +- configs/kontron_pitx_imx8m_defconfig | 2 +- configs/kp_imx53_defconfig | 2 +- configs/kp_imx6q_tpc_defconfig | 2 +- configs/kylin-rk3036_defconfig | 2 +- configs/lager_defconfig | 2 +- configs/leez-rk3399_defconfig | 2 +- configs/legoev3_defconfig | 2 +- configs/librem5_defconfig | 2 +- configs/libretech-ac_defconfig | 2 +- configs/libretech-cc_defconfig | 2 +- configs/libretech-cc_v2_defconfig | 2 +- configs/libretech-s905d-pc_defconfig | 2 +- configs/libretech-s912-pc_defconfig | 2 +- configs/lion-rk3368_defconfig | 2 +- configs/liteboard_defconfig | 2 +- configs/ls1012a2g5rdb_qspi_defconfig | 2 +- configs/ls1012a2g5rdb_tfa_defconfig | 2 +- configs/ls1012afrdm_qspi_defconfig | 2 +- configs/ls1012afrdm_tfa_defconfig | 2 +- .../ls1012afrwy_qspi_SECURE_BOOT_defconfig | 2 +- configs/ls1012afrwy_qspi_defconfig | 2 +- configs/ls1012afrwy_tfa_SECURE_BOOT_defconfig | 2 +- configs/ls1012afrwy_tfa_defconfig | 2 +- configs/ls1012aqds_qspi_defconfig | 2 +- configs/ls1012aqds_tfa_SECURE_BOOT_defconfig | 2 +- configs/ls1012aqds_tfa_defconfig | 2 +- configs/ls1012ardb_qspi_SECURE_BOOT_defconfig | 2 +- configs/ls1012ardb_qspi_defconfig | 2 +- configs/ls1012ardb_tfa_SECURE_BOOT_defconfig | 2 +- configs/ls1012ardb_tfa_defconfig | 2 +- configs/ls1021aiot_qspi_defconfig | 2 +- configs/ls1021aiot_sdcard_defconfig | 2 +- configs/ls1021aqds_ddr4_nor_defconfig | 2 +- configs/ls1021aqds_ddr4_nor_lpuart_defconfig | 2 +- configs/ls1021aqds_nand_defconfig | 2 +- configs/ls1021aqds_nor_SECURE_BOOT_defconfig | 2 +- configs/ls1021aqds_nor_defconfig | 2 +- configs/ls1021aqds_nor_lpuart_defconfig | 2 +- configs/ls1021aqds_qspi_defconfig | 2 +- configs/ls1021aqds_sdcard_ifc_defconfig | 2 +- configs/ls1021aqds_sdcard_qspi_defconfig | 2 +- configs/ls1021atsn_qspi_defconfig | 2 +- configs/ls1021atsn_sdcard_defconfig | 2 +- configs/ls1021atwr_nor_SECURE_BOOT_defconfig | 2 +- configs/ls1021atwr_nor_defconfig | 2 +- configs/ls1021atwr_nor_lpuart_defconfig | 2 +- configs/ls1021atwr_qspi_defconfig | 2 +- ...s1021atwr_sdcard_ifc_SECURE_BOOT_defconfig | 2 +- configs/ls1021atwr_sdcard_ifc_defconfig | 2 +- configs/ls1021atwr_sdcard_qspi_defconfig | 2 +- configs/ls1043aqds_defconfig | 2 +- configs/ls1043aqds_lpuart_defconfig | 2 +- configs/ls1043aqds_nand_defconfig | 2 +- configs/ls1043aqds_nor_ddr3_defconfig | 2 +- configs/ls1043aqds_qspi_defconfig | 2 +- configs/ls1043aqds_sdcard_ifc_defconfig | 2 +- configs/ls1043aqds_sdcard_qspi_defconfig | 2 +- configs/ls1043aqds_tfa_SECURE_BOOT_defconfig | 2 +- configs/ls1043aqds_tfa_defconfig | 2 +- configs/ls1043ardb_SECURE_BOOT_defconfig | 2 +- configs/ls1043ardb_defconfig | 2 +- configs/ls1043ardb_nand_SECURE_BOOT_defconfig | 2 +- configs/ls1043ardb_nand_defconfig | 2 +- .../ls1043ardb_sdcard_SECURE_BOOT_defconfig | 2 +- configs/ls1043ardb_sdcard_defconfig | 2 +- configs/ls1043ardb_tfa_SECURE_BOOT_defconfig | 2 +- configs/ls1043ardb_tfa_defconfig | 2 +- configs/ls1046afrwy_tfa_SECURE_BOOT_defconfig | 2 +- configs/ls1046afrwy_tfa_defconfig | 2 +- configs/ls1046aqds_SECURE_BOOT_defconfig | 2 +- configs/ls1046aqds_defconfig | 2 +- configs/ls1046aqds_lpuart_defconfig | 2 +- configs/ls1046aqds_nand_defconfig | 2 +- configs/ls1046aqds_qspi_defconfig | 2 +- configs/ls1046aqds_sdcard_ifc_defconfig | 2 +- configs/ls1046aqds_sdcard_qspi_defconfig | 2 +- configs/ls1046aqds_tfa_SECURE_BOOT_defconfig | 2 +- configs/ls1046aqds_tfa_defconfig | 2 +- configs/ls1046ardb_emmc_defconfig | 2 +- configs/ls1046ardb_qspi_SECURE_BOOT_defconfig | 2 +- configs/ls1046ardb_qspi_defconfig | 2 +- configs/ls1046ardb_qspi_spl_defconfig | 2 +- .../ls1046ardb_sdcard_SECURE_BOOT_defconfig | 2 +- configs/ls1046ardb_sdcard_defconfig | 2 +- configs/ls1046ardb_tfa_SECURE_BOOT_defconfig | 2 +- configs/ls1046ardb_tfa_defconfig | 2 +- configs/ls1088aqds_defconfig | 2 +- configs/ls1088aqds_qspi_SECURE_BOOT_defconfig | 2 +- configs/ls1088aqds_qspi_defconfig | 2 +- configs/ls1088aqds_sdcard_ifc_defconfig | 2 +- configs/ls1088aqds_sdcard_qspi_defconfig | 2 +- configs/ls1088aqds_tfa_defconfig | 2 +- configs/ls1088ardb_qspi_SECURE_BOOT_defconfig | 2 +- configs/ls1088ardb_qspi_defconfig | 2 +- ...1088ardb_sdcard_qspi_SECURE_BOOT_defconfig | 2 +- configs/ls1088ardb_sdcard_qspi_defconfig | 2 +- configs/ls1088ardb_tfa_SECURE_BOOT_defconfig | 2 +- configs/ls1088ardb_tfa_defconfig | 2 +- configs/ls2080aqds_SECURE_BOOT_defconfig | 2 +- configs/ls2080aqds_defconfig | 2 +- configs/ls2080aqds_nand_defconfig | 2 +- configs/ls2080aqds_qspi_defconfig | 2 +- configs/ls2080aqds_sdcard_defconfig | 2 +- configs/ls2080ardb_SECURE_BOOT_defconfig | 2 +- configs/ls2080ardb_defconfig | 2 +- configs/ls2080ardb_nand_defconfig | 2 +- configs/ls2081ardb_defconfig | 2 +- configs/ls2088aqds_tfa_defconfig | 2 +- configs/ls2088ardb_qspi_SECURE_BOOT_defconfig | 2 +- configs/ls2088ardb_qspi_defconfig | 2 +- configs/ls2088ardb_tfa_SECURE_BOOT_defconfig | 2 +- configs/ls2088ardb_tfa_defconfig | 2 +- configs/lschlv2_defconfig | 2 +- configs/lsxhl_defconfig | 2 +- configs/lx2160aqds_tfa_SECURE_BOOT_defconfig | 2 +- configs/lx2160aqds_tfa_defconfig | 2 +- configs/lx2160ardb_tfa_SECURE_BOOT_defconfig | 2 +- configs/lx2160ardb_tfa_defconfig | 2 +- configs/lx2160ardb_tfa_stmm_defconfig | 2 +- configs/lx2162aqds_tfa_SECURE_BOOT_defconfig | 2 +- configs/lx2162aqds_tfa_defconfig | 2 +- .../lx2162aqds_tfa_verified_boot_defconfig | 2 +- configs/m53menlo_defconfig | 2 +- configs/malta64_defconfig | 2 +- configs/malta64el_defconfig | 2 +- configs/malta_defconfig | 2 +- configs/maltael_defconfig | 2 +- configs/marsboard_defconfig | 2 +- configs/maxbcm_defconfig | 2 +- configs/mccmon6_nor_defconfig | 2 +- configs/mccmon6_sd_defconfig | 2 +- configs/medcom-wide_defconfig | 2 +- configs/meesc_dataflash_defconfig | 2 +- configs/meesc_defconfig | 2 +- configs/microblaze-generic_defconfig | 2 +- configs/minnowmax_defconfig | 2 +- configs/miqi-rk3288_defconfig | 2 +- configs/mk808_defconfig | 2 +- configs/mscc_jr2_defconfig | 2 +- configs/mscc_luton_defconfig | 2 +- configs/mscc_ocelot_defconfig | 2 +- configs/mscc_serval_defconfig | 2 +- configs/mscc_servalt_defconfig | 2 +- configs/mt7622_rfb_defconfig | 2 +- configs/mt7623a_unielec_u7623_02_defconfig | 2 +- configs/mt7623n_bpir2_defconfig | 2 +- configs/mt7629_rfb_defconfig | 2 +- configs/mt7981_emmc_rfb_defconfig | 2 +- configs/mt7981_rfb_defconfig | 2 +- configs/mt7981_sd_rfb_defconfig | 2 +- configs/mt7986_rfb_defconfig | 2 +- configs/mt7986a_bpir3_emmc_defconfig | 2 +- configs/mt7986a_bpir3_sd_defconfig | 2 +- configs/mt8183_pumpkin_defconfig | 2 +- configs/mt8512_bm1_emmc_defconfig | 2 +- configs/mt8516_pumpkin_defconfig | 2 +- configs/mt8518_ap1_emmc_defconfig | 2 +- configs/mvebu_crb_cn9130_defconfig | 2 +- configs/mvebu_db-88f3720_defconfig | 2 +- configs/mvebu_db_armada8k_defconfig | 2 +- configs/mvebu_db_cn9130_defconfig | 2 +- configs/mvebu_espressobin-88f3720_defconfig | 2 +- configs/mvebu_mcbin-88f8040_defconfig | 2 +- configs/mvebu_puzzle-m801-88f8040_defconfig | 2 +- configs/mx23_olinuxino_defconfig | 2 +- configs/mx23evk_defconfig | 2 +- configs/mx28evk_defconfig | 2 +- configs/mx51evk_defconfig | 2 +- configs/mx53cx9020_defconfig | 2 +- configs/mx53loco_defconfig | 2 +- configs/mx53ppd_defconfig | 2 +- configs/mx6cuboxi_defconfig | 2 +- configs/mx6memcal_defconfig | 2 +- configs/mx6qsabrelite_defconfig | 2 +- configs/mx6sabreauto_defconfig | 2 +- configs/mx6sabresd_defconfig | 2 +- configs/mx6slevk_defconfig | 2 +- configs/mx6slevk_spinor_defconfig | 2 +- configs/mx6slevk_spl_defconfig | 2 +- configs/mx6sllevk_defconfig | 2 +- configs/mx6sllevk_plugin_defconfig | 2 +- configs/mx6sxsabreauto_defconfig | 2 +- configs/mx6sxsabresd_defconfig | 2 +- configs/mx6ul_14x14_evk_defconfig | 2 +- configs/mx6ul_9x9_evk_defconfig | 2 +- configs/mx6ull_14x14_evk_defconfig | 2 +- configs/mx6ull_14x14_evk_plugin_defconfig | 2 +- configs/mx6ulz_14x14_evk_defconfig | 2 +- configs/mx7ulp_com_defconfig | 2 +- configs/mx7ulp_evk_defconfig | 2 +- configs/mx7ulp_evk_plugin_defconfig | 2 +- configs/myir_mys_6ulx_defconfig | 2 +- configs/nanopc-t4-rk3399_defconfig | 2 +- configs/nanopi-k2_defconfig | 2 +- configs/nanopi-m4-2gb-rk3399_defconfig | 2 +- configs/nanopi-m4-rk3399_defconfig | 2 +- configs/nanopi-m4b-rk3399_defconfig | 2 +- configs/nanopi-neo4-rk3399_defconfig | 2 +- configs/nanopi-r2s-rk3328_defconfig | 2 +- configs/nanopi-r4s-rk3399_defconfig | 2 +- configs/nas220_defconfig | 2 +- configs/net2big_v2_defconfig | 2 +- configs/netgear_cg3100d_ram_defconfig | 2 +- configs/netgear_dgnd3700v2_ram_defconfig | 2 +- configs/netspace_lite_v2_defconfig | 2 +- configs/netspace_max_v2_defconfig | 2 +- configs/netspace_mini_v2_defconfig | 2 +- configs/netspace_v2_defconfig | 2 +- configs/nitrogen6dl2g_defconfig | 2 +- configs/nitrogen6dl_defconfig | 2 +- configs/nitrogen6q2g_defconfig | 2 +- configs/nitrogen6q_defconfig | 2 +- configs/nitrogen6s1g_defconfig | 2 +- configs/nitrogen6s_defconfig | 2 +- configs/novena_defconfig | 2 +- configs/nsa310s_defconfig | 2 +- configs/nsim_700_defconfig | 2 +- configs/nsim_700be_defconfig | 2 +- configs/nsim_hs38_defconfig | 2 +- configs/nsim_hs38be_defconfig | 2 +- configs/nyan-big_defconfig | 2 +- configs/o4-imx6ull-nano_defconfig | 2 +- configs/octeon_ebb7304_defconfig | 2 +- configs/octeon_nic23_defconfig | 2 +- configs/octeontx2_95xx_defconfig | 2 +- configs/octeontx2_96xx_defconfig | 2 +- configs/octeontx_81xx_defconfig | 2 +- configs/octeontx_83xx_defconfig | 2 +- configs/odroid-c2_defconfig | 2 +- configs/odroid-c4_defconfig | 2 +- configs/odroid-go2_defconfig | 2 +- configs/odroid-hc4_defconfig | 2 +- configs/odroid-n2_defconfig | 2 +- configs/odroid-xu3_defconfig | 2 +- configs/odroid_defconfig | 2 +- configs/omap35_logic_defconfig | 2 +- configs/omap35_logic_somlv_defconfig | 2 +- configs/omap3_logic_defconfig | 2 +- configs/omap3_logic_somlv_defconfig | 2 +- configs/omapl138_lcdk_defconfig | 2 +- configs/openpiton_riscv64_defconfig | 2 +- configs/openpiton_riscv64_spl_defconfig | 2 +- configs/openrd_base_defconfig | 2 +- configs/openrd_client_defconfig | 2 +- configs/openrd_ultimate_defconfig | 2 +- configs/opos6uldev_defconfig | 2 +- configs/orangepi-rk3399_defconfig | 2 +- configs/origen_defconfig | 2 +- configs/p200_defconfig | 2 +- configs/p201_defconfig | 2 +- configs/p212_defconfig | 2 +- configs/p2371-0000_defconfig | 2 +- configs/p2371-2180_defconfig | 2 +- configs/p2571_defconfig | 2 +- configs/p2771-0000-000_defconfig | 2 +- configs/p2771-0000-500_defconfig | 2 +- configs/p3450-0000_defconfig | 2 +- configs/paz00_defconfig | 2 +- configs/pcm052_defconfig | 2 +- configs/pcm058_defconfig | 2 +- configs/peach-pi_defconfig | 2 +- configs/peach-pit_defconfig | 2 +- configs/pg_wcom_expu1_defconfig | 2 +- configs/pg_wcom_expu1_update_defconfig | 2 +- configs/pg_wcom_seli8_defconfig | 2 +- configs/pg_wcom_seli8_update_defconfig | 2 +- configs/phycore-imx8mm_defconfig | 2 +- configs/phycore-imx8mp_defconfig | 2 +- configs/phycore-rk3288_defconfig | 2 +- configs/phycore_pcl063_defconfig | 2 +- configs/phycore_pcl063_ull_defconfig | 2 +- configs/pic32mzdask_defconfig | 2 +- configs/pico-dwarf-imx6ul_defconfig | 2 +- configs/pico-hobbit-imx6ul_defconfig | 2 +- configs/pico-imx6_defconfig | 2 +- configs/pico-imx6ul_defconfig | 2 +- configs/pico-imx8mq_defconfig | 2 +- configs/pico-pi-imx6ul_defconfig | 2 +- configs/pinebook-pro-rk3399_defconfig | 2 +- configs/plutux_defconfig | 2 +- configs/pm9261_defconfig | 2 +- configs/pm9263_defconfig | 2 +- configs/pm9g45_defconfig | 2 +- configs/pogo_e02_defconfig | 2 +- configs/pogo_v4_defconfig | 2 +- configs/poleg_evb_defconfig | 2 +- configs/pomelo_defconfig | 2 +- configs/poplar_defconfig | 2 +- configs/popmetal-rk3288_defconfig | 2 +- configs/porter_defconfig | 2 +- configs/puma-rk3399_defconfig | 2 +- configs/px30-core-ctouch2-of10-px30_defconfig | 2 +- configs/px30-core-ctouch2-px30_defconfig | 2 +- configs/px30-core-edimm2.2-px30_defconfig | 2 +- configs/pxm2_defconfig | 2 +- configs/qemu-ppce500_defconfig | 2 +- configs/qemu-x86_64_defconfig | 2 +- configs/qemu-x86_defconfig | 2 +- configs/r2dplus_defconfig | 2 +- configs/r8a77970_eagle_defconfig | 2 +- configs/r8a77980_condor_defconfig | 2 +- configs/r8a77990_ebisu_defconfig | 2 +- configs/r8a77995_draak_defconfig | 2 +- configs/r8a779a0_falcon_defconfig | 2 +- configs/radxa-zero_defconfig | 2 +- configs/rastaban_defconfig | 2 +- configs/rcar3_ulcb_defconfig | 2 +- configs/riotboard_defconfig | 2 +- configs/roc-cc-rk3308_defconfig | 2 +- configs/roc-cc-rk3328_defconfig | 2 +- configs/roc-pc-mezzanine-rk3399_defconfig | 2 +- configs/roc-pc-rk3399_defconfig | 2 +- configs/rock-pi-4-rk3399_defconfig | 2 +- configs/rock-pi-4c-rk3399_defconfig | 2 +- configs/rock-pi-e-rk3328_defconfig | 2 +- configs/rock-pi-n10-rk3399pro_defconfig | 2 +- configs/rock-pi-n8-rk3288_defconfig | 2 +- configs/rock2_defconfig | 2 +- configs/rock64-rk3328_defconfig | 2 +- configs/rock960-rk3399_defconfig | 2 +- configs/rock_defconfig | 2 +- configs/rockpro64-rk3399_defconfig | 2 +- configs/rpi_0_w_defconfig | 2 +- configs/rpi_2_defconfig | 2 +- configs/rpi_3_32b_defconfig | 2 +- configs/rpi_3_b_plus_defconfig | 2 +- configs/rpi_3_defconfig | 2 +- configs/rpi_4_32b_defconfig | 2 +- configs/rpi_4_defconfig | 2 +- configs/rpi_arm64_defconfig | 2 +- configs/rpi_defconfig | 2 +- configs/rut_defconfig | 2 +- configs/rzg2_beacon_defconfig | 2 +- configs/s400_defconfig | 2 +- configs/s5p4418_nanopi2_defconfig | 2 +- configs/s5p_goni_defconfig | 2 +- configs/s5pc210_universal_defconfig | 2 +- configs/sagem_f@st1704_ram_defconfig | 2 +- configs/sam9x60_curiosity_mmc_defconfig | 2 +- configs/sam9x60ek_mmc_defconfig | 2 +- configs/sam9x60ek_nandflash_defconfig | 2 +- configs/sam9x60ek_qspiflash_defconfig | 2 +- configs/sama5d27_giantboard_defconfig | 2 +- configs/sama5d27_som1_ek_mmc1_defconfig | 2 +- configs/sama5d27_som1_ek_mmc_defconfig | 2 +- configs/sama5d27_som1_ek_qspiflash_defconfig | 2 +- configs/sama5d27_wlsom1_ek_mmc_defconfig | 2 +- .../sama5d27_wlsom1_ek_qspiflash_defconfig | 2 +- configs/sama5d2_icp_mmc_defconfig | 2 +- configs/sama5d2_icp_qspiflash_defconfig | 2 +- configs/sama5d2_ptc_ek_mmc_defconfig | 2 +- configs/sama5d2_ptc_ek_nandflash_defconfig | 2 +- configs/sama5d2_xplained_emmc_defconfig | 2 +- configs/sama5d2_xplained_mmc_defconfig | 2 +- configs/sama5d2_xplained_qspiflash_defconfig | 2 +- configs/sama5d2_xplained_spiflash_defconfig | 2 +- configs/sama5d36ek_cmp_mmc_defconfig | 2 +- configs/sama5d36ek_cmp_nandflash_defconfig | 2 +- configs/sama5d36ek_cmp_spiflash_defconfig | 2 +- configs/sama5d3_xplained_mmc_defconfig | 2 +- configs/sama5d3_xplained_nandflash_defconfig | 2 +- configs/sama5d3xek_mmc_defconfig | 2 +- configs/sama5d3xek_nandflash_defconfig | 2 +- configs/sama5d3xek_spiflash_defconfig | 2 +- configs/sama5d4_xplained_mmc_defconfig | 2 +- configs/sama5d4_xplained_nandflash_defconfig | 2 +- configs/sama5d4_xplained_spiflash_defconfig | 2 +- configs/sama5d4ek_mmc_defconfig | 2 +- configs/sama5d4ek_nandflash_defconfig | 2 +- configs/sama5d4ek_spiflash_defconfig | 2 +- configs/sama7g5ek_mmc1_defconfig | 2 +- configs/sama7g5ek_mmc_defconfig | 2 +- configs/sandbox64_defconfig | 2 +- configs/sandbox_defconfig | 2 +- configs/sandbox_flattree_defconfig | 2 +- configs/sandbox_noinst_defconfig | 2 +- configs/sandbox_spl_defconfig | 2 +- configs/sandbox_vpl_defconfig | 15 +- configs/seaboard_defconfig | 2 +- configs/seeed_npi_imx6ull_defconfig | 2 +- configs/sei510_defconfig | 2 +- configs/sei610_defconfig | 2 +- configs/sfr_nb4-ser_ram_defconfig | 2 +- configs/sheep-rk3368_defconfig | 2 +- configs/sheevaplug_defconfig | 2 +- configs/silinux_ek874_defconfig | 2 +- configs/silk_defconfig | 2 +- configs/sipeed_maix_smode_defconfig | 2 +- configs/smartweb_defconfig | 2 +- configs/smdk5250_defconfig | 2 +- configs/smdk5420_defconfig | 2 +- configs/smdkc100_defconfig | 2 +- configs/smdkv310_defconfig | 2 +- configs/sniper_defconfig | 2 +- configs/snow_defconfig | 2 +- configs/socfpga_agilex_atf_defconfig | 2 +- configs/socfpga_agilex_defconfig | 2 +- configs/socfpga_agilex_vab_defconfig | 2 +- configs/socfpga_n5x_atf_defconfig | 2 +- configs/socfpga_n5x_defconfig | 2 +- configs/socfpga_n5x_vab_defconfig | 2 +- configs/socfpga_stratix10_atf_defconfig | 2 +- configs/socfpga_stratix10_defconfig | 2 +- configs/socrates_defconfig | 2 +- configs/som-db5800-som-6867_defconfig | 2 +- configs/somlabs_visionsom_6ull_defconfig | 2 +- configs/spring_defconfig | 2 +- configs/stemmy_defconfig | 2 +- configs/stih410-b2260_defconfig | 2 +- configs/stm32746g-eval_defconfig | 2 +- configs/stm32746g-eval_spl_defconfig | 2 +- configs/stm32f429-discovery_defconfig | 2 +- configs/stm32f429-evaluation_defconfig | 2 +- configs/stm32f469-discovery_defconfig | 2 +- configs/stm32f746-disco_defconfig | 2 +- configs/stm32f746-disco_spl_defconfig | 2 +- configs/stm32f769-disco_defconfig | 2 +- configs/stm32f769-disco_spl_defconfig | 2 +- configs/stm32h743-disco_defconfig | 2 +- configs/stm32h743-eval_defconfig | 2 +- configs/stm32h750-art-pi_defconfig | 2 +- configs/stmark2_defconfig | 2 +- configs/stout_defconfig | 2 +- configs/stv0991_defconfig | 2 +- configs/synquacer_developerbox_defconfig | 2 +- configs/syzygy_hub_defconfig | 2 +- configs/taurus_defconfig | 2 +- configs/tb100_defconfig | 2 +- configs/tbs2910_defconfig | 2 +- configs/tec-ng_defconfig | 2 +- configs/tec_defconfig | 2 +- configs/ten64_tfa_defconfig | 2 +- ...able-x86-conga-qa3-e3845-pcie-x4_defconfig | 2 +- .../theadorable-x86-conga-qa3-e3845_defconfig | 2 +- configs/theadorable-x86-dfi-bt700_defconfig | 2 +- configs/theadorable_debug_defconfig | 2 +- configs/thuban_defconfig | 2 +- configs/thunderx_88xx_defconfig | 2 +- configs/tinker-rk3288_defconfig | 2 +- configs/tinker-s-rk3288_defconfig | 2 +- configs/tools-only_defconfig | 2 +- configs/topic_miami_defconfig | 2 +- configs/topic_miamilite_defconfig | 2 +- configs/topic_miamiplus_defconfig | 2 +- configs/total_compute_defconfig | 2 +- configs/tplink_wdr4300_defconfig | 2 +- configs/trats2_defconfig | 2 +- configs/trats_defconfig | 2 +- configs/trimslice_defconfig | 2 +- configs/tuge1_defconfig | 2 +- configs/turris_mox_defconfig | 2 +- configs/turris_omnia_defconfig | 2 +- configs/tuxx1_defconfig | 2 +- configs/u200_defconfig | 2 +- configs/uDPU_defconfig | 2 +- configs/udoo_defconfig | 2 +- configs/udoo_neo_defconfig | 2 +- configs/uniphier_ld4_sld8_defconfig | 2 +- configs/uniphier_v7_defconfig | 2 +- configs/uniphier_v8_defconfig | 2 +- configs/usb_a9263_dataflash_defconfig | 2 +- configs/usbarmory_defconfig | 2 +- configs/variscite_dart6ul_defconfig | 2 +- configs/venice2_defconfig | 2 +- configs/ventana_defconfig | 2 +- configs/verdin-imx8mm_defconfig | 2 +- configs/verdin-imx8mp_defconfig | 2 +- configs/vexpress_ca9x4_defconfig | 2 +- configs/vf610twr_defconfig | 2 +- configs/vf610twr_nand_defconfig | 2 +- configs/vinco_defconfig | 2 +- configs/vining_2000_defconfig | 2 +- configs/vyasa-rk3288_defconfig | 2 +- configs/wandboard_defconfig | 2 +- configs/wetek-core2_defconfig | 2 +- configs/work_92105_defconfig | 2 +- configs/x530_defconfig | 2 +- configs/xenguest_arm64_defconfig | 2 +- configs/xilinx_versal_mini_defconfig | 2 +- configs/xilinx_versal_mini_emmc0_defconfig | 2 +- configs/xilinx_versal_mini_emmc1_defconfig | 2 +- configs/xilinx_versal_net_mini_defconfig | 2 +- configs/xilinx_versal_net_virt_defconfig | 2 +- configs/xilinx_versal_virt_defconfig | 2 +- configs/xilinx_zynq_virt_defconfig | 2 +- configs/xilinx_zynqmp_mini_defconfig | 2 +- configs/xilinx_zynqmp_mini_emmc0_defconfig | 2 +- configs/xilinx_zynqmp_mini_emmc1_defconfig | 2 +- configs/xilinx_zynqmp_mini_nand_defconfig | 2 +- .../xilinx_zynqmp_mini_nand_single_defconfig | 2 +- configs/xilinx_zynqmp_mini_qspi_defconfig | 2 +- configs/xilinx_zynqmp_r5_defconfig | 2 +- configs/xilinx_zynqmp_virt_defconfig | 2 +- configs/zynq_cse_nand_defconfig | 2 +- configs/zynq_cse_nor_defconfig | 2 +- configs/zynq_cse_qspi_defconfig | 2 +- disk/disk-uclass.c | 62 +-- disk/part_efi.c | 150 ++++--- doc/README.arm-relocation | 10 +- doc/SPL/README.omap3 | 6 +- doc/arch/m68k.rst | 2 +- doc/arch/sandbox.rst | 2 +- doc/board/coreboot/coreboot.rst | 4 +- doc/board/google/chromebook_coral.rst | 4 +- doc/board/google/chromebook_samus.rst | 2 +- doc/board/intel/minnowmax.rst | 2 +- doc/board/intel/slimbootloader.rst | 4 +- doc/board/nxp/mx6ul_14x14_evk.rst | 4 +- doc/board/sipeed/maix.rst | 4 +- doc/chromium/chainload.rst | 8 +- doc/develop/moveconfig.rst | 4 +- doc/develop/tests_writing.rst | 27 ++ doc/imx/habv4/csf_examples/mx8m/csf.sh | 2 +- doc/imx/habv4/guides/mx8m_spl_secure_boot.txt | 4 +- doc/uImage.FIT/howto.txt | 6 + doc/uImage.FIT/source_file_format.txt | 3 + drivers/Makefile | 2 +- drivers/block/Kconfig | 1 - drivers/block/Makefile | 2 +- drivers/block/blk-uclass.c | 51 ++- drivers/mmc/Makefile | 2 +- drivers/mmc/sandbox_mmc.c | 10 +- drivers/scsi/scsi_emul.c | 9 + drivers/usb/emul/sandbox_flash.c | 35 +- include/blk.h | 39 +- include/bloblist.h | 1 + include/bootflow.h | 12 + include/bootstage.h | 2 + include/configs/MCR3000.h | 2 +- include/configs/MPC837XERDB.h | 10 +- include/configs/MPC8548CDS.h | 10 +- include/configs/P2041RDB.h | 6 +- include/configs/T102xRDB.h | 4 +- include/configs/T104xRDB.h | 2 +- include/configs/T208xQDS.h | 4 +- include/configs/T208xRDB.h | 4 +- include/configs/T4240RDB.h | 4 +- include/configs/am3517_evm.h | 2 +- include/configs/at91sam9260ek.h | 2 +- include/configs/baltos.h | 2 +- include/configs/bcmstb.h | 2 +- include/configs/cobra5272.h | 2 +- include/configs/corenet_ds.h | 365 ++++++++++++++++++ include/configs/corvus.h | 6 +- include/configs/devkit3250.h | 6 +- include/configs/evb_ast2500.h | 2 +- include/configs/evb_ast2600.h | 2 +- .../configs/gardena-smart-gateway-at91sam.h | 4 +- .../configs/gardena-smart-gateway-mt7688.h | 2 +- include/configs/hikey.h | 2 +- include/configs/hikey960.h | 2 +- include/configs/imx6-engicam.h | 2 +- include/configs/imx6_logic.h | 2 +- include/configs/kontron-sl-mx6ul.h | 2 +- include/configs/linkit-smart-7688.h | 2 +- include/configs/ls1021aqds.h | 4 +- include/configs/ls1043a_common.h | 6 +- include/configs/ls1046a_common.h | 4 +- include/configs/ls1046aqds.h | 2 +- include/configs/ls1088a_common.h | 2 +- include/configs/ls2080a_common.h | 2 +- include/configs/meesc.h | 2 +- include/configs/microblaze-generic.h | 2 +- include/configs/mt7620.h | 2 +- include/configs/mt7622.h | 4 +- include/configs/mt7628.h | 2 +- include/configs/mt7981.h | 4 +- include/configs/mt7986.h | 4 +- include/configs/mt8512.h | 2 +- include/configs/mv-common.h | 2 +- include/configs/octeontx2_common.h | 2 +- include/configs/octeontx_common.h | 2 +- include/configs/p1_p2_rdb_pc.h | 18 +- include/configs/rpi.h | 2 +- include/configs/siemens-am33x-common.h | 2 +- include/configs/smartweb.h | 6 +- include/configs/taurus.h | 6 +- include/configs/ti_armv7_common.h | 2 +- include/configs/vocore2.h | 2 +- include/configs/work_92105.h | 6 +- include/image.h | 127 +++++- include/part.h | 42 +- include/scsi.h | 10 + include/scsi_emul.h | 16 +- include/spl.h | 26 +- include/test/test.h | 10 + include/test/ut.h | 4 +- include/vbe.h | 37 ++ lib/efi/efi_stub.c | 10 +- lib/efi_loader/efi_disk.c | 6 +- lib/efi_loader/efi_runtime.c | 8 +- lib/trace.c | 4 +- test/boot/Makefile | 1 + test/boot/bootflow.c | 4 +- test/boot/bootmeth.c | 13 +- test/boot/image.c | 36 ++ test/boot/vbe_fixup.c | 19 +- test/boot/vbe_simple.c | 9 +- test/cmd_ut.c | 16 +- test/dm/of_platdata.c | 2 +- test/dm/ofnode.c | 25 +- test/dm/test-dm.c | 2 +- test/dm/usb.c | 30 +- test/py/conftest.py | 8 +- test/py/tests/test_event_dump.py | 4 +- test/py/tests/test_vbe.py | 7 +- test/py/tests/test_vbe_vpl.py | 38 ++ test/test-main.c | 50 ++- tools/binman/binman.rst | 4 +- tools/binman/elf.py | 92 ++++- tools/binman/entries.rst | 2 +- tools/binman/entry.py | 16 +- tools/binman/etype/blob.py | 5 +- tools/binman/etype/fit.py | 2 +- tools/binman/etype/section.py | 60 ++- tools/binman/etype/u_boot_spl.py | 7 +- tools/binman/etype/u_boot_spl_elf.py | 3 +- tools/binman/etype/u_boot_spl_nodtb.py | 6 +- tools/binman/etype/u_boot_tpl.py | 6 +- tools/binman/etype/u_boot_tpl_elf.py | 3 +- tools/binman/etype/u_boot_tpl_nodtb.py | 6 +- tools/binman/etype/u_boot_vpl.py | 6 +- tools/binman/etype/u_boot_vpl_elf.py | 25 ++ tools/binman/etype/u_boot_vpl_nodtb.py | 6 +- tools/binman/etype/u_boot_with_ucode_ptr.py | 2 +- tools/binman/ftest.py | 57 +++ tools/binman/test/256_symbols_elf.dts | 27 ++ 1191 files changed, 3672 insertions(+), 1790 deletions(-) create mode 100644 arch/sandbox/dts/sandbox_vpl.dtsi rename boot/{vbe_fixup.c => vbe_request.c} (96%) create mode 100644 boot/vbe_simple.h create mode 100644 boot/vbe_simple_fw.c create mode 100644 boot/vbe_simple_os.c create mode 100644 include/configs/corenet_ds.h create mode 100644 test/boot/image.c create mode 100644 test/py/tests/test_vbe_vpl.py create mode 100644 tools/binman/etype/u_boot_vpl_elf.py create mode 100644 tools/binman/test/256_symbols_elf.dts -- 2.38.0.135.g90850a2211-goog