Pull request for efi-next-18112023

Hi Tom,
The following changes since commit ae7ec8b0be41b59ef323f7531c0fe6745e8fef45:
Merge branch '2023-11-16-assorted-updates' into next (2023-11-17 08:38:05 -0500)
are available in the Git repository at:
https://source.denx.de/u-boot/custodians/u-boot-tpm/ tags/efi-next-18112023
for you to fetch changes up to c022eed4bedf2e16e737fde22b03289d2a48cb27:
doc: uefi: add HTTP Boot support (2023-11-18 10:08:09 +0200)
EFI HTTP Boot is currently supported by using a combination of wget, blkmap and bootefi commands. The user has to download the image, mount it using blkmap and then execute the efi installer using bootefi. This series simplifies the user experience. Instead of doing all the steps manually, users can now enable a new Kconfig (EFI_HTTP_BOOT) which will select wget, blkmap and dns options. They can then use efidebug command to add a boot option for the EFI Bootmanager using => efidebug boot add -u 3 netinst http://<path> => efidebug boot order 3 => bootefi bootmgr
The boot manager will automatically download and mount the image. Once it's mounted it will locate and launch the installer.
It's worth noting that this rarely fails, but the reason is irrelevant to the current patchset. More information can be found here https://lore.kernel.org/u-boot/CAOMZO5CoduEgwgdQiybmoKh6qQZOezUtRRQO4ecaGdZB... The tl;dr is that wget sometimes fails to download the file correctly or set the size env variables. We expect all these to be solved once LWIP is stable and pulled
The CI reported no issues https://source.denx.de/u-boot/custodians/u-boot-tpm/-/pipelines/18623 Please consider pulling!
---------------------------------------------------------------- Add EFI HTTP Boot support options for the EFI Bootmanager
---------------------------------------------------------------- Masahisa Kojima (8): net: wget: prevent overwriting reserved memory net: wget: add wget with dns utility function blk: blkmap: add ramdisk creation utility function efi_loader: add missing const classifier for event service efi_loader: add return to efibootmgr event group efi_loader: support boot from URI device path cmd: efidebug: add uri device path doc: uefi: add HTTP Boot support
Raymond Mao (1): efi_loader: Boot var automatic management
cmd/bootefi.c | 12 + cmd/efidebug.c | 78 +++++ doc/develop/uefi/uefi.rst | 34 ++ drivers/block/Makefile | 3 +- drivers/block/blkmap.c | 15 - drivers/block/blkmap_helper.c | 53 +++ include/blkmap.h | 29 ++ include/efi_api.h | 5 +- include/efi_loader.h | 4 +- include/net.h | 17 + lib/efi_loader/Kconfig | 9 + lib/efi_loader/efi_bootmgr.c | 386 +++++++++++++++++++++ lib/efi_loader/efi_boottime.c | 7 +- lib/efi_loader/efi_disk.c | 18 + lib/efi_loader/efi_setup.c | 7 + net/wget.c | 205 ++++++++++- test/py/tests/test_efi_secboot/test_signed.py | 42 +-- .../py/tests/test_efi_secboot/test_signed_intca.py | 14 +- test/py/tests/test_efi_secboot/test_unsigned.py | 14 +- test/py/tests/test_fs/test_erofs.py | 9 + .../py/tests/test_fs/test_squashfs/test_sqfs_ls.py | 9 + 21 files changed, 908 insertions(+), 62 deletions(-) create mode 100644 drivers/block/blkmap_helper.c

On Sat, Nov 18, 2023 at 10:29:45PM +0200, Ilias Apalodimas wrote:
Hi Tom,
The following changes since commit ae7ec8b0be41b59ef323f7531c0fe6745e8fef45:
Merge branch '2023-11-16-assorted-updates' into next (2023-11-17 08:38:05 -0500)
are available in the Git repository at:
https://source.denx.de/u-boot/custodians/u-boot-tpm/ tags/efi-next-18112023
for you to fetch changes up to c022eed4bedf2e16e737fde22b03289d2a48cb27:
doc: uefi: add HTTP Boot support (2023-11-18 10:08:09 +0200)
EFI HTTP Boot is currently supported by using a combination of wget, blkmap and bootefi commands. The user has to download the image, mount it using blkmap and then execute the efi installer using bootefi. This series simplifies the user experience. Instead of doing all the steps manually, users can now enable a new Kconfig (EFI_HTTP_BOOT) which will select wget, blkmap and dns options. They can then use efidebug command to add a boot option for the EFI Bootmanager using => efidebug boot add -u 3 netinst http://<path> => efidebug boot order 3 => bootefi bootmgr
The boot manager will automatically download and mount the image. Once it's mounted it will locate and launch the installer.
It's worth noting that this rarely fails, but the reason is irrelevant to the current patchset. More information can be found here https://lore.kernel.org/u-boot/CAOMZO5CoduEgwgdQiybmoKh6qQZOezUtRRQO4ecaGdZB... The tl;dr is that wget sometimes fails to download the file correctly or set the size env variables. We expect all these to be solved once LWIP is stable and pulled
The CI reported no issues https://source.denx.de/u-boot/custodians/u-boot-tpm/-/pipelines/18623 Please consider pulling!
Applied to u-boot/next, thanks!
participants (2)
-
Ilias Apalodimas
-
Tom Rini