[U-Boot] [PATCH v2 00/16] efi: Enable basic sandbox support for EFI loader
Simon Glass
sjg at chromium.org
Mon Dec 4 21:28:16 UTC 2017
A limitation of the EFI loader at present is that it does not build with
sandbox. This makes it hard to write tests, since sandbox is used for most
testing in U-Boot.
This series enables the EFI loader feature. It allows sandbox to build and
run a trivial function which calls the EFI API to output a message.
Much work remains but this should serve as a basis for adding tests more
easily for EFI loader.
This series sits on top of Heinrich's recent EFI test series. It is
available at u-boot-dm/efi-working
Changes in v2:
- Update return type of efi_smbios_register() to efi_status_t
- Use return value of efi_install_configuration_table
- Change return type of efi_init_obj_list() to efi_status_t
- Update commit message to dropping libfdt_env.h
- Update to use mapmem instead of a cast
- Rebase to master
Simon Glass (16):
efi: Update efi_smbios_register() to return error code
efi: Move the init check inside efi_init_obj_list()
efi: Add error checking for efi_init_obj_list()
efi: Add a TODO to efi_init_obj_list()
efi: Correct header order in efi_memory
efi: sandbox: Adjust memory usage for sandbox
sandbox: smbios: Update to support sandbox
sandbox: Add a setjmp() implementation
efi: sandbox: Add required linker sections
efi: sandbox: Add distroboot support
Define board_quiesce_devices() in a shared location
Add a comment for board_quiesce_devices()
efi: sandbox: Add relocation constants
efi: Add a comment about duplicated ELF constants
efi: sandbox: Enable EFI loader builder for sandbox
efi: sandbox: Add a simple 'bootefi test' command
arch/arm/include/asm/u-boot-arm.h | 1 -
arch/sandbox/cpu/cpu.c | 13 ++++++++
arch/sandbox/cpu/os.c | 17 +++++++++++
arch/sandbox/cpu/u-boot.lds | 29 ++++++++++++++++++
arch/sandbox/include/asm/setjmp.h | 21 +++++++++++++
arch/sandbox/lib/Makefile | 2 +-
arch/sandbox/lib/sections.c | 12 ++++++++
arch/x86/include/asm/u-boot-x86.h | 1 -
arch/x86/lib/bootm.c | 4 ---
cmd/bootefi.c | 62 +++++++++++++++++++++++++++++++++++----
common/bootm.c | 4 +++
configs/sandbox_defconfig | 1 +
include/bootm.h | 8 +++++
include/config_distro_bootcmd.h | 2 +-
include/efi_loader.h | 12 +++++++-
include/os.h | 21 +++++++++++++
lib/efi_loader/Kconfig | 12 +++++++-
lib/efi_loader/Makefile | 1 +
lib/efi_loader/efi_memory.c | 36 +++++++++++++----------
lib/efi_loader/efi_runtime.c | 7 +++++
lib/efi_loader/efi_smbios.c | 7 +++--
lib/efi_loader/efi_test.c | 17 +++++++++++
lib/smbios.c | 38 ++++++++++++++++++------
23 files changed, 284 insertions(+), 44 deletions(-)
create mode 100644 arch/sandbox/include/asm/setjmp.h
create mode 100644 arch/sandbox/lib/sections.c
create mode 100644 lib/efi_loader/efi_test.c
--
2.15.0.531.g2ccb3012c9-goog
More information about the U-Boot
mailing list