[ipxe-devel] UEFI support
Michael Brown
mbrown at fensystems.co.uk
Thu Mar 21 01:21:35 UTC 2013
A major change was implemented recently for iPXE UEFI ROMs. Previously, an
iPXE UEFI ROM would provide only an SNP driver (equivalent to an UNDI driver),
with the control of the network boot process handled by the UEFI platform
firmware. This has now been upgraded so that attempting to boot via an iPXE
UEFI ROM will present the standard iPXE user interface, bypassing the
relatively primitive UEFI network boot process.
All images loaded by iPXE are exposed to the booted image via a UEFI
filesystem. This allows a kernel+initrd to be loaded directly, for example:
#!ipxe
initrd http://boot.ipxe.org/demo/initrd.img
chain http://boot.ipxe.org/demo/vmlinuz initrd=initrd.img
Other work is ongoing: in particular, support for UEFI SAN booting is the next
major feature to be integrated.
I have obtained a signing key for UEFI Secure Boot, and should be able to
provide a prebuilt set of iPXE binaries which could be used as-is on platforms
with Secure Boot enabled. (iPXE will remain completely free and open-source;
the prebuilt signed binaries will just be for convenience.)
There's some explanatory blurb at http://ipxe.org/efi/vision which provides
background on the motivation for taking this approach to UEFI support.
I'll make further announcements as features are completed; in the meantime,
testing reports are welcome. (Please note that iPXE as a UEFI _application_
does not work at present; you can use iPXE only as a UEFI ROM (.efirom) or as a
UEFI driver (.efidrv). This will be fixed soon.)
Michael
More information about the ipxe-devel
mailing list