[U-Boot] [PATCH 00/16] efi: Enable basic sandbox support for EFI loader

Simon Glass sjg at chromium.org
Sun Sep 17 22:59:11 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


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 setup 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                     | 54 ++++++++++++++++++++++++++++++++++-----
 common/bootm.c                    |  4 +++
 configs/sandbox_defconfig         |  1 +
 include/bootm.h                   |  8 ++++++
 include/config_distro_bootcmd.h   |  2 +-
 include/efi_loader.h              | 13 ++++++++--
 include/os.h                      | 21 +++++++++++++++
 lib/efi_loader/Kconfig            | 12 ++++++++-
 lib/efi_loader/Makefile           |  1 +
 lib/efi_loader/efi_boottime.c     |  4 +++
 lib/efi_loader/efi_memory.c       | 33 +++++++++++++-----------
 lib/efi_loader/efi_runtime.c      |  7 +++++
 lib/efi_loader/efi_smbios.c       |  6 +++--
 lib/efi_loader/efi_test.c         | 17 ++++++++++++
 lib/smbios.c                      | 38 ++++++++++++++++++++-------
 24 files changed, 277 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.14.1.690.gbb1197296e-goog



More information about the U-Boot mailing list