[PATCH 00/10] Improve UEFI app support
Simon Glass
sjg at chromium.org
Sun Dec 1 17:15:12 CET 2024
Hi Matthew,
On Sat, 23 Nov 2024 at 12:56, Matthew Garrett <mjg59 at srcf.ucam.org> wrote:
>
> We run a mixed environment including traditional embedded Linux and
> UEFI. For consistency it's valuable to use U-Boot in both cases, but on
> UEFI systems we want to run the full Linux kernel UEFI boot stub. This
> patchset adds support for that, along with various other quality-of-life
> improvements such as automatically finding partitions based on their
> GUID, automatic identification of load addresses where the firmware has
> given us constraints, support for EFI variable access in the EFI app,
> drivers for EFI network adapters and TPMs, support for embedding DTBs in
> the EFI app, and a couple of bug fixes.
>
>
> Janis Danisevskis (1):
> Fix efi_bind_block.
>
> Matthew Garrett (9):
> Add EFI handover support to bootm
> Add part_find command
> Add a command to find a load address
> Hook up EFI env variable support in the EFI app
> Add EFI network driver
> Add UEFI TPM2 driver
> Support separate DTB files with the UEFI app
> Use the correct ramdisk address
> Add command to set an environment variable to an EFI variable
>
> Makefile | 7 +-
> arch/x86/config.mk | 2 +-
> arch/x86/lib/bootm.c | 60 ++++++++----
> arch/x86/lib/elf_x86_64_efi.lds | 4 +
> boot/bootm.c | 5 +
> cmd/Kconfig | 23 ++++-
> cmd/Makefile | 3 +
> cmd/addr_find.c | 87 +++++++++++++++++
> cmd/efigetenv.c | 133 ++++++++++++++++++++++++++
> cmd/part_find.c | 156 ++++++++++++++++++++++++++++++
> drivers/net/Kconfig | 7 ++
> drivers/net/Makefile | 1 +
> drivers/net/efi_net.c | 110 +++++++++++++++++++++
> drivers/tpm/Kconfig | 7 ++
> drivers/tpm/Makefile | 1 +
> drivers/tpm/tpm2_efi.c | 97 +++++++++++++++++++
> include/asm-generic/sections.h | 1 +
> include/bootm.h | 6 ++
> include/efi.h | 24 +++++
> include/efi_tcg2.h | 1 +
> lib/efi/Makefile | 2 +-
> lib/efi/efi.c | 1 +
> lib/efi/efi_app.c | 41 ++++++++
> lib/efi/efi_app_init.c | 163 ++++++++++++++++++++++++++++++--
> lib/efi/efi_dtb.S | 6 ++
> lib/efi/efi_vars.c | 44 +++++++++
> lib/fdtdec.c | 3 +
> 27 files changed, 967 insertions(+), 28 deletions(-)
> create mode 100644 cmd/addr_find.c
> create mode 100644 cmd/efigetenv.c
> create mode 100644 cmd/part_find.c
> create mode 100644 drivers/net/efi_net.c
> create mode 100644 drivers/tpm/tpm2_efi.c
> create mode 100644 lib/efi/efi_dtb.S
> create mode 100644 lib/efi/efi_vars.c
>
> --
> 2.47.0
>
Thank you for sending this and for your interesting talk at plumbers.
It is a novel approach and potentially provides an alternative to grub
and EFI_LOADER, etc.
I'd like to try getting this running in CI as we don't have any such
tests for the app or payload at present.
Regards,
Simon
More information about the U-Boot
mailing list