mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-06-13 15:03:58 +03:00
efi: Add support for loading U-Boot through an EFI stub
It is useful to be able to load U-Boot onto a board even if is it already running EFI. This can allow access to the U-Boot command interface, flexible booting options and easier development. The easiest way to do this is to build U-Boot as a binary blob and have an EFI stub copy it into RAM. Add support for this feature, targeting 32-bit initially. Also add a way to detect when U-Boot has been loaded via a stub. This goes in common.h since it needs to be widely available so that we avoid redoing initialisation that should be skipped. Signed-off-by: Simon Glass <sjg@chromium.org> Improvements to how the payload is built: Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com>
This commit is contained in:
@@ -1021,6 +1021,13 @@ int cpu_release(int nr, int argc, char * const argv[]);
|
||||
offsetof(struct structure, member) == offset, \
|
||||
"`struct " #structure "` offset for `" #member "` is not " #offset)
|
||||
|
||||
/* Avoid using CONFIG_EFI_STUB directly as we may boot from other loaders */
|
||||
#ifdef CONFIG_EFI_STUB
|
||||
#define ll_boot_init() false
|
||||
#else
|
||||
#define ll_boot_init() true
|
||||
#endif
|
||||
|
||||
/* Pull in stuff for the build system */
|
||||
#ifdef DO_DEPS_ONLY
|
||||
# include <environment.h>
|
||||
|
||||
Reference in New Issue
Block a user