lkml.org 
[lkml]   [2020]   [Oct]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH v2 1/2] docs: admin-guide: fdt and initrd load in EFI stub
Date
Describe how a device tree and an initial RAM disk can be passed to the EFI
Boot Stub.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
---
v2:
mention EFI_GENERIC_STUB_INITRD_CMDLINE_LOADER (thx Atish)
---
Documentation/admin-guide/efi-stub.rst | 35 ++++++++++++++++++++++++++
1 file changed, 35 insertions(+)

diff --git a/Documentation/admin-guide/efi-stub.rst b/Documentation/admin-guide/efi-stub.rst
index 833edb0d0bc4..4965dec48af4 100644
--- a/Documentation/admin-guide/efi-stub.rst
+++ b/Documentation/admin-guide/efi-stub.rst
@@ -38,6 +38,34 @@ arch/arm/boot/zImage should be copied to the system partition, and it
may not need to be renamed. Similarly for arm64, arch/arm64/boot/Image
should be copied but not necessarily renamed.

+Passing an initial RAM disk to the EFI Boot Stub
+------------------------------------------------
+
+The following means sorted by decreasing priority can be used to provide an
+initial RAM disk to the EFI Boot Stub:
+
+* The firmware may provide a UEFI Load File 2 Protocol. The stub will try to
+ load the RAM disk by calling the LoadFile() service of the protocol using
+ a vendor device path with the vendor GUID
+ 5568e427-0x68fc-4f3d-ac74-ca555231cc68.
+* Next the EFI stub will try to load the file indicated by the "initrd=" command
+ line parameter if CONFIG_EFI_GENERIC_STUB_INITRD_CMDLINE_LOADER is enabled.
+* The prior boot stage may pass the location of the initial RAM disk via the
+ "linux,initrd-start" and "linux,initrd-end" properties of the "/chosen" node
+ of the device-tree.
+
+The first two items are inhibited by the "noinitrd" command line parameter.
+
+Passing a device-tree to the EFI Boot Stub
+------------------------------------------
+
+A device-tree can be passed to the EFI Boot Stub in decreasing priority using
+
+* command line option dtb=
+* a UEFI configuration table with GUID b1b621d5-f19c-41a5-830b-d9152c69aae0.
+
+The command line option is only available if CONFIG_EFI_ARMSTUB_DTB_LOADER=y
+and secure boot is disabled.

Passing kernel parameters from the EFI shell
--------------------------------------------
@@ -46,6 +74,10 @@ Arguments to the kernel can be passed after bzImage.efi, e.g.::

fs0:> bzImage.efi console=ttyS0 root=/dev/sda4

+The "noinitrd" option
+---------------------
+
+The "noinitrd" option stops the EFI stub from loading an initial RAM disk.

The "initrd=" option
--------------------
@@ -98,3 +130,6 @@ CONFIGURATION TABLE.

"dtb=" is processed in the same manner as the "initrd=" option that is
described above.
+
+This option is only available if CONFIG_EFI_ARMSTUB_DTB_LOADER=y and secure
+boot is disabled.
--
2.28.0
\
 
 \ /
  Last update: 2020-10-03 08:38    [W:1.172 / U:0.396 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site