Add efivar(1) to manipulate EFI variables. It uses a similar command
line interface to the Linux program, as well as adding a number of
useful features to make using it in shell scripts easier (since we
don't have a filesystem to fall back on interacting with).
Create libefivar library. This library aims to provide the same API as
the GPL'd version of this library. It implements the common Linux API
for programatically manipulating UEFI environment varibales using the
UEFI Runtime Services the kernel provides. It replaces the old efi
library since it is programmed to a different interface, but retails
the CHAR16 to UTF-8 and vice versa conversion routines. The new name
is to match Linux program's expectations.
Create /dev/efidev to provide an ioctl interface to userland. This
device attaches to the nexus. It supports userland interfaces to UEFI
Runtime Services.
Define efi_rt_avail: Are the UEFI runtime services currently available?