linux-efi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/4] linux: implement LoadFile2 initrd loading
@ 2020-10-23 12:08 Ard Biesheuvel
  2020-10-23 12:08 ` [PATCH 1/4] loader/linux: permit NULL argument for argv[] in grub_initrd_load() Ard Biesheuvel
                   ` (4 more replies)
  0 siblings, 5 replies; 11+ messages in thread
From: Ard Biesheuvel @ 2020-10-23 12:08 UTC (permalink / raw)
  To: linux-efi; +Cc: Ard Biesheuvel, grub-devel, daniel.kiper, leif

This implements the LoadFile2 initrd loading protocol, which is
essentially a callback face into the bootloader to load the initrd
data into a caller provided buffer. This means the bootloader no
longer has to contain any policy regarding where to load the initrd
(which differs between architectures and kernel versions) and no
longer has to manipulate arch specific data structures such as DT
or struct bootparams to inform the OS where the initrd resides in
memory.

Sample output from booting a recent Linux/arm64 kernel:

  grub> insmod part_msdos
  grub> linux (hd0,msdos1)/Image
  grub> initrd (hd0,msdos1)/initrd.img
  grub> boot
  EFI stub: Booting Linux Kernel...
  EFI stub: EFI_RNG_PROTOCOL unavailable, KASLR will be disabled
  EFI stub: Generating empty DTB
  EFI stub: Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path
  EFI stub: Exiting boot services and installing virtual address map...
  [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x411fd070]

Cc: grub-devel@gnu.org
Cc: daniel.kiper@oracle.com
Cc: leif@nuviainc.com

Ard Biesheuvel (4):
  loader/linux: permit NULL argument for argv[] in grub_initrd_load()
  efi: add definition of LoadFile2 protocol
  efi: implemented LoadFile2 initr loading protocol for Linux
  linux: ignore FDT unless we need to modify it

 grub-core/commands/efi/lsefi.c |   1 +
 grub-core/loader/arm64/linux.c | 139 ++++++++++++++++++--
 grub-core/loader/efi/fdt.c     |   7 +-
 grub-core/loader/linux.c       |   2 +-
 include/grub/efi/api.h         |  15 +++
 5 files changed, 149 insertions(+), 15 deletions(-)

-- 
2.17.1


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2020-10-23 17:02 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-23 12:08 [PATCH 0/4] linux: implement LoadFile2 initrd loading Ard Biesheuvel
2020-10-23 12:08 ` [PATCH 1/4] loader/linux: permit NULL argument for argv[] in grub_initrd_load() Ard Biesheuvel
2020-10-23 12:08 ` [PATCH 2/4] efi: add definition of LoadFile2 protocol Ard Biesheuvel
2020-10-23 12:08 ` [PATCH 3/4] efi: implemented LoadFile2 initr loading protocol for Linux Ard Biesheuvel
2020-10-23 12:32   ` Leif Lindholm
2020-10-23 17:02     ` Ard Biesheuvel
2020-10-23 12:08 ` [PATCH 4/4] linux: ignore FDT unless we need to modify it Ard Biesheuvel
2020-10-23 12:47   ` Leif Lindholm
2020-10-23 13:12     ` Ard Biesheuvel
2020-10-23 13:16       ` Leif Lindholm
2020-10-23 12:50 ` [PATCH 0/4] linux: implement LoadFile2 initrd loading Leif Lindholm

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).