Hi! This is v2 of [1].
There's been a couple of changes regarding where we install the protocol. The initial patchset was completely disregarding BootNext, so that's taken into account now and we can use the new feature. This brought a few changes on the selftests as well, since we now use the loaded image handle to install the protocol, as a consequence the custom handle in the tests is now uninstalled during the test .teardown(), but the overall approach remains identical. Changes since v1: - Use efi_create_indexed_name() instead of open coding it. An extra patch has been applied to efi_create_indexed_name() to ensure the destination buffer is big enough for our variable name. - Install the protocol during do_efibootmgr() on the loaded image handle and adjust selftests accordingly. The protocol will be uninstalled if efi_exit() is called from and EFI app now. - Make sure strings are null terminated in efi_helper.c - Added documentation in uefi.rst describing the new feature. [1] https://lists.denx.de/pipermail/u-boot/2020-December/436080.html Ilias Apalodimas (8): efi_loader: Remove unused headers from efi_load_initrd.c efi_loader: Remove unconditional installation of file2 protocol for initrd efi_loader: Add size checks to efi_create_indexed_name() efi_loader: Introduce helper functions for EFI efi_loader: bootmgr: Use get_var from efi_helper file efi_loader: Replace config option with EFI variable for initrd loading efi_selftest: Modify self-tests for initrd loading via Loadfile2 doc: uefi: Add instruction for initrd loading cmd/bootefi.c | 13 ++ doc/uefi/uefi.rst | 15 ++ include/efi_helper.h | 28 +++ include/efi_loader.h | 5 +- lib/efi_loader/Kconfig | 13 +- lib/efi_loader/Makefile | 2 +- lib/efi_loader/efi_bootmgr.c | 37 +--- lib/efi_loader/efi_helper.c | 180 ++++++++++++++++++++ lib/efi_loader/efi_load_initrd.c | 101 ++++------- lib/efi_loader/efi_setup.c | 5 - lib/efi_loader/efi_string.c | 10 +- lib/efi_selftest/efi_selftest_load_initrd.c | 100 ++++++++++- test/unicode_ut.c | 2 +- 13 files changed, 384 insertions(+), 127 deletions(-) create mode 100644 include/efi_helper.h create mode 100644 lib/efi_loader/efi_helper.c -- 2.30.0

