aboutsummaryrefslogtreecommitdiffstats
path: root/src/include/ipxe/sanboot.h
diff options
context:
space:
mode:
authorMichael Brown <mcb30@ipxe.org>2024-03-04 14:21:59 +0000
committerMichael Brown <mcb30@ipxe.org>2024-03-04 15:25:25 +0000
commit37edfea72be8d202d2590c89e9b8416f3c615216 (patch)
treec214704d3d4dd0844e48aa04f1f327e2b487160b /src/include/ipxe/sanboot.h
parenteb720d2224c3d0b311f526c922c7388819d97778 (diff)
downloadipxe-37edfea72be8d202d2590c89e9b8416f3c615216.tar.gz
[efi] Generalise block device boot to support arbitrary EFI handles
SAN devices created by iPXE are visible to the firmware, and may be accessed using the firmware's standard block I/O device interface (e.g. INT 13 for BIOS, or EFI_BLOCK_IO_PROTOCOL for UEFI). The iPXE code to perform a SAN boot acts as a client of this standard block I/O device interface, even when the underlying block I/O is being performed by iPXE itself. We rely on this separation to allow the "sanboot" command to be used to boot from a local disk: since the code to perform a SAN boot does not need direct access to an underlying iPXE SAN device, it may be used to boot from any device providing the firmware's standard block I/O device interface. Clean up the EFI SAN boot code to require only a drive number and an EFI_BLOCK_IO_PROTOCOL handle, in preparation for adding support for booting from a local disk under UEFI. Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/include/ipxe/sanboot.h')
0 files changed, 0 insertions, 0 deletions