[PATCH 0/5 v4] Loadfile2 for initrd loading
Ilias Apalodimas
ilias.apalodimas at linaro.org
Wed Mar 17 20:54:57 CET 2021
Hi!
This is v4 of [1]
Changes since v3:
- Slightly tweaked the efidebug argument parsing following Heinrich's
suggestion. Instead of calculating the file device path initially and
appending the initrd, the 2 two device paths are now calculated
independently and concatenated later, allowing us to easier handle the
various switches (-i, -b etc)
- Fixed documentation typo that prevented htmldocs from building
- Removed [1/6] patch which was already merged
Changes since v2:
- Lengths checks when interpreting a device path, to make sure we aren't
going out of bounds
- renamed efi_get_file_size -> efi_file_size and moved it in efi_file.c
- Fix uninitialized variable related errors reported by Cppcheck
- Fixed various error messages for easier end user readability
- renamed _efi_dp_append() -> efi_dp_append_or_concatenate()
- Picked up Reviewed-by tags
- Enabling the protocol by default
Changes since v1:
- minor coding style fixes from Heinrich
- changed the DP format. Instead of VenMedia - 0x01 - initrd, we skip
the 0x01 between VenMedia and the first file.
- final device path is stripped in efi_get_dp_from_boot() instead of
get_initrd_fp()
- Fixed comments on documentation
[1] https://lists.denx.de/pipermail/u-boot/2021-March/443399.html
Ilias Apalodimas (5):
efi_loader: Add device path related functions for initrd via Boot####
efi_loader: Add helper functions for EFI
efi_loader: Replace config option for initrd loading
efidebug: add multiple device path instances on Boot####
doc: Update uefi documentation for initrd loading options
cmd/bootefi.c | 3 +
cmd/efidebug.c | 191 +++++++++++++----
doc/board/emulation/qemu_capsule_update.rst | 4 +-
doc/uefi/uefi.rst | 24 ++-
include/efi_loader.h | 12 ++
lib/efi_loader/Kconfig | 17 +-
lib/efi_loader/Makefile | 1 +
lib/efi_loader/efi_bootmgr.c | 19 +-
lib/efi_loader/efi_device_path.c | 106 ++++++++-
lib/efi_loader/efi_file.c | 39 ++++
lib/efi_loader/efi_helper.c | 98 +++++++++
lib/efi_loader/efi_load_initrd.c | 202 +++++++++++-------
lib/efi_loader/efi_var_common.c | 33 +++
.../test_efi_capsule/test_capsule_firmware.py | 6 +-
test/py/tests/test_efi_secboot/test_signed.py | 16 +-
.../test_efi_secboot/test_signed_intca.py | 8 +-
.../tests/test_efi_secboot/test_unsigned.py | 8 +-
17 files changed, 625 insertions(+), 162 deletions(-)
create mode 100644 lib/efi_loader/efi_helper.c
--
2.31.0
More information about the U-Boot
mailing list