1

I'm trying to embed ipxe snp into u-boot and run ipxe efi application with bootefi command.

This document describe the process of running the efi https://github.com/ARM-software/u-boot/blob/master/doc/README.uefi but it doesn't say how to embed the efi application into uboot.bin, how can I do it?

izissise
  • 898
  • 1
  • 7
  • 23
  • Currently there is not option in U-Boot to embed an EFI binary in U-Boot. U-Boot provides commands to load files form flash, eMMC, SD-card, ... What is your requirement that makes you think that embedding in U-Boot would be preferable? – Xypron Apr 14 '22 at 06:30
  • I want to transfer the next stage of a PXE boot using http instead of tftp. It feels like, it would be possible to just concatenate uboot and ipxe into the same file and point uboot to the right address once it runs? – izissise Apr 14 '22 at 07:41
  • If you have a storage medium like eMMC, SD-card, SPI-flash, you can load iPXE from there and execute it. There are different means to automate loading iPXE: CONFIG_PREBOOT, boot.scr, ... It is still unclear why you need to embed iPXE into U-Boot instead of loading it at runtime. – Xypron Apr 15 '22 at 08:29
  • Oh yes sorry, the main point is, there is no storage medium, the embeded firmware can do tftp and load u-boot over the network, and I would like to load the next stage using ipxe http – izissise Apr 15 '22 at 15:13

1 Answers1

2

The following patch should solve your problem:

https://patchwork.ozlabs.org/project/uboot/patch/20220419211641.316935-1-heinrich.schuchardt@canonical.com/

It allows to embed an image file with a file-system into U-Boot. If you have a partition table, you can access partition 1 as: mem 0:1. If you don't have a partition table use: mem 0:0.

Using a Squash file systems allows for good compression.

Xypron
  • 2,215
  • 1
  • 12
  • 24