Feature #9664
closedFeature #10028: loader: implement framebuffer console
Feature #8918: loader.efi: add vesa edid support
loader: need UEFI32 support
100%
Description
Some hardware (like intel atom based) have UEFI32 firmware but can start 64-bit kernel, would like to be able to boot from such systems.
For code base it means we need to provide multiboot2 trampoline for 32-bit code, which is not that hard; we still only load the 64-bit kernels. The interesting part is later on, when we are implementing access to EFI Runtime Services from kernel - then we need to switch to 32-bit mode and back. EFI System table accesses are also to be done using native (32-bit) pointers.
As a visible change, we will build following binaries:
The current /boot/boot1.efi
will be replaced by two new files:
/boot/bootia32.efi
/boot/bootx64.efi
The current /boot/loader.efi
will also be replaced, by:
/boot/loader32.efi
/boot/loader64.efi
For users of the current boot1.efi
, this change is a flag day because we have no automated ESP update and boot code in ESP will need to be updated manually.
Updated by Joshua M. Clulow about 5 years ago
Note that in addition to there being no automated update of the EFI System Partition (ESP) where the *.efi
files are installed, there is also no automated installation at all: this flag day is not likely to affect many (any?) people, because EFI boot support still requires manual installation of files and only works with serial consoles today.
Updated by Electric Monk about 5 years ago
- Status changed from In Progress to Closed
git commit 83b4671e6262c5aa6b4f9fb5a384b1946dfc2e7f
commit 83b4671e6262c5aa6b4f9fb5a384b1946dfc2e7f Author: Toomas Soome <tsoome@me.com> Date: 2018-10-13T15:08:10.000Z 9664 loader: need UEFI32 support Reviewed by: Robert Mustacchi <rm@joyent.com> Reviewed by: Andrew Stormont <andyjstormont@gmail.com> Approved by: Gordon Ross <gwr@nexenta.com>