Many EFI Updates Prepped For Linux 4.7 Kernel
Matt Fleming at Intel sent out the set of patches he intends to submit as the queue of EFI changes for what will become the Linux 4.7 kernel. He noted of this queue, "this is probably the biggest EFI pull ever sent, and there quite a few different topics covered."
Among the EFI changes slated for Linux 4.7 include improving Secure Boot status checks on 64-bit ARM, EFI GOP frame-buffer support for ARM/ARM74, EFI memory attribute support for ARM/ARM64, an EFI bootloader control driver, core EFI capsule support, EFI memory map code unification between ARM and ARM64, and other changes.
The EFI capsule update support in full is ready to go for Linux 4.7. You can see an earlier version of that EFI capsule update support via these patches from March. "The EFI capsule mechanism allows data blobs to be passed to the EFI firmware. A common use case is performing firmware updates."
The EFI bootloader control driver is described as a means of passing data from the reboot command onto the bootloader when it's powering back-up:
Those interested in Linux EFI's implementation can find more details about the upcoming 4.7 material via this kernel mailing list patch series.
Among the EFI changes slated for Linux 4.7 include improving Secure Boot status checks on 64-bit ARM, EFI GOP frame-buffer support for ARM/ARM74, EFI memory attribute support for ARM/ARM64, an EFI bootloader control driver, core EFI capsule support, EFI memory map code unification between ARM and ARM64, and other changes.
The EFI capsule update support in full is ready to go for Linux 4.7. You can see an earlier version of that EFI capsule update support via these patches from March. "The EFI capsule mechanism allows data blobs to be passed to the EFI firmware. A common use case is performing firmware updates."
The EFI bootloader control driver is described as a means of passing data from the reboot command onto the bootloader when it's powering back-up:
This module installs a reboot hook, such that if reboot() is invoked with a string argument NNN, "NNN" is copied to the "LoaderEntryOneShot" EFI variable, to be read by the bootloader. If the string matches one of the boot labels defined in its configuration, the bootloader will boot once to that label. The "LoaderEntryRebootReason" EFI variable is set with the reboot reason: "reboot", "shutdown". The bootloader reads this reboot reason and takes particular action according to its policy.
There are reboot implementations that do "reboot reason", such as Android's reboot command and Upstart's reboot replacement, which pass the reason as an argument to the reboot syscall. There is no platform-agnostic way how those could be modified to pass the reason to the bootloader, regardless of platform or bootloader.
Those interested in Linux EFI's implementation can find more details about the upcoming 4.7 material via this kernel mailing list patch series.
13 Comments