diff options
author | Ilias Apalodimas <ilias.apalodimas@linaro.org> | 2020-12-30 18:07:14 +0300 |
---|---|---|
committer | Heinrich Schuchardt <xypron.glpk@gmx.de> | 2020-12-31 16:33:22 +0300 |
commit | 47d2b3b9c98e1adf231f8143bc01b0046ebd5c9c (patch) | |
tree | 91e1a063c9b1c87114452aa57cdb48e287587c63 /include/efi_loader.h | |
parent | 0c4445283212599a1d59684f89428b23e63d19c6 (diff) | |
download | u-boot-47d2b3b9c98e1adf231f8143bc01b0046ebd5c9c.tar.xz |
efi_loader: Remove unconditional installation of file2 protocol for initrd
Up to now we install the EFI_LOAD_FILE2_PROTOCOL to load an initrd
unconditionally. Although we correctly return various EFI exit codes
depending on the file status (i.e EFI_NO_MEDIA, EFI_NOT_FOUND etc), the
kernel loader only falls back to the cmdline interpreted initrd if the
protocol is not installed.
This creates a problem for EFI installers, since they won't be able to
load their own initrd and start the installation.
A following patch introduces a different logic where we search for an
initrd path defined in an EFI variable named 'Initrd####'.
If the bootmgr is used to launch the EFI payload, we'll will try to match
the BootCurrent value and find the corresponding initrd
(i.e Boot0000 -> Initrd0000 etc). If the file is found, we'll install
the required protocol which the kernel's efi-stub can use and load our
initrd.
Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Diffstat (limited to 'include/efi_loader.h')
0 files changed, 0 insertions, 0 deletions