summaryrefslogtreecommitdiff
path: root/env
diff options
context:
space:
mode:
authorKyle Evans <kevans@FreeBSD.org>2022-04-10 16:05:55 -0500
committerHeinrich Schuchardt <heinrich.schuchardt@canonical.com>2022-04-23 22:05:33 +0200
commit2058983689f0e42f639a5fbece26ecd9fed5fa41 (patch)
treefcf7a5878215de29f6c5fa59fb2219ff1e410264 /env
parent11343854b6c9875491d8a642fbc9ccf5606b55fb (diff)
cmd: bootefi: restore ability to boot arbitrary blob
Up until commit 5f59518a7b1ae ("efi_loader: setting boot device"), we could boot an arbitrary blob with bootefi. Indeed, efi_run_image() even has a special case for missing device paths indicating a payload that was directly loaded via JTAG, for example. Restore the ability to inject a UEFI payload into memory and `bootefi` it. If the address passed isn't the last PE-COFF loaded, then we'll wipe out the pre-existing DP/Image information and let efi_run_image() synthesize a memory device path. An image size is required if we're booting an arbitrary payload, and the FDT argument has been changed to accept `-`. The size could be deduced from the image header, but it's required anyways as an explicit acknowledgment that one's trying to boot an arbitrary payload rather than accidentally using the wrong address in the single-addr form. Fixes: 5f59518a7b1a ("efi_loader: setting boot device") Signed-off-by: Kyle Evans <kevans@FreeBSD.org> Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Diffstat (limited to 'env')
0 files changed, 0 insertions, 0 deletions