[edk2-devel] [PATCH v2 1/1] MdePkg: add definition of LINUX_EFI_INITRD_MEDIA_GUID

Jeff Brasen via groups.io jbrasen=nvidia.com at groups.io
Tue Jul 27 16:45:43 UTC 2021


Add LINUX_EFI_INITRD_MEDIA_GUID to our collection of GUID definitions,
it can be used in a media device path to specify a Linux style initrd
that can be loaded by the OS using the LoadFile2 protocol.

Move these defines to MdePkg from OvmfPkg as these are relevant to
non-OVMF targets as well.

Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2564
Signed-off-by: Jeff Brasen <jbrasen at nvidia.com>
---
 MdePkg/MdePkg.dec                          |  5 ++++
 OvmfPkg/OvmfPkg.dec                        |  1 -
 MdePkg/Include/Guid/LinuxEfiInitrdMedia.h  | 31 ++++++++++++++++++++++
 OvmfPkg/Include/Guid/LinuxEfiInitrdMedia.h | 17 ------------
 4 files changed, 36 insertions(+), 18 deletions(-)
 create mode 100644 MdePkg/Include/Guid/LinuxEfiInitrdMedia.h
 delete mode 100644 OvmfPkg/Include/Guid/LinuxEfiInitrdMedia.h

diff --git a/MdePkg/MdePkg.dec b/MdePkg/MdePkg.dec
index c5319fdd71ca..a28a2daaffa8 100644
--- a/MdePkg/MdePkg.dec
+++ b/MdePkg/MdePkg.dec
@@ -818,6 +818,11 @@ [Guids]
   #
   gTianoCustomDecompressGuid     = { 0xA31280AD, 0x481E, 0x41B6, { 0x95, 0xE8, 0x12, 0x7F, 0x4C, 0x98, 0x47, 0x79 }}
 
+  #
+  # GUID used to provide initrd to linux via LoadFile2 protocol
+  #
+  gLinuxEfiInitrdMediaGuid       = {0x5568e427, 0x68fc, 0x4f3d, {0xac, 0x74, 0xca, 0x55, 0x52, 0x31, 0xcc, 0x68}}
+
 [Guids.IA32, Guids.X64]
   ## Include/Guid/Cper.h
   gEfiIa32X64ErrorTypeCacheCheckGuid = { 0xA55701F5, 0xE3EF, 0x43de, { 0xAC, 0x72, 0x24, 0x9B, 0x57, 0x3F, 0xAD, 0x2C }}
diff --git a/OvmfPkg/OvmfPkg.dec b/OvmfPkg/OvmfPkg.dec
index 6ae733f6e39f..3153f5ae4540 100644
--- a/OvmfPkg/OvmfPkg.dec
+++ b/OvmfPkg/OvmfPkg.dec
@@ -118,7 +118,6 @@ [Guids]
   gMicrosoftVendorGuid                  = {0x77fa9abd, 0x0359, 0x4d32, {0xbd, 0x60, 0x28, 0xf4, 0xe7, 0x8f, 0x78, 0x4b}}
   gEfiLegacyBiosGuid                    = {0x2E3044AC, 0x879F, 0x490F, {0x97, 0x60, 0xBB, 0xDF, 0xAF, 0x69, 0x5F, 0x50}}
   gEfiLegacyDevOrderVariableGuid        = {0xa56074db, 0x65fe, 0x45f7, {0xbd, 0x21, 0x2d, 0x2b, 0xdd, 0x8e, 0x96, 0x52}}
-  gLinuxEfiInitrdMediaGuid              = {0x5568e427, 0x68fc, 0x4f3d, {0xac, 0x74, 0xca, 0x55, 0x52, 0x31, 0xcc, 0x68}}
   gQemuKernelLoaderFsMediaGuid          = {0x1428f772, 0xb64a, 0x441e, {0xb8, 0xc3, 0x9e, 0xbd, 0xd7, 0xf8, 0x93, 0xc7}}
   gGrubFileGuid                         = {0xb5ae312c, 0xbc8a, 0x43b1, {0x9c, 0x62, 0xeb, 0xb8, 0x26, 0xdd, 0x5d, 0x07}}
   gConfidentialComputingSecretGuid      = {0xadf956ad, 0xe98c, 0x484c, {0xae, 0x11, 0xb5, 0x1c, 0x7d, 0x33, 0x64, 0x47}}
diff --git a/MdePkg/Include/Guid/LinuxEfiInitrdMedia.h b/MdePkg/Include/Guid/LinuxEfiInitrdMedia.h
new file mode 100644
index 000000000000..0e7db8bd8140
--- /dev/null
+++ b/MdePkg/Include/Guid/LinuxEfiInitrdMedia.h
@@ -0,0 +1,31 @@
+/** @file
+  GUID definition for the Linux Initrd media device path
+
+  Linux distro boot generally relies on an initial ramdisk (initrd)
+  which is provided by the loader, and which contains additional kernel
+  modules (for storage and network, for instance), and the initial user
+  space startup code, i.e., the code which brings up the user space side
+  of the entire OS.
+
+  In order to provide a standard method to locate this file,
+  the GUID defined in this file is used to describe the device path
+  for a LoadFile2 Protocol instance that is responsible for loading the initrd file.
+
+  The kernel EFI Stub will locate and use this instance to load the initrd,
+  therefore the firmware/loader should install an instance of this to load the
+  relevant initrd.
+
+  Copyright (c) 2020, Arm, Ltd. All rights reserved.<BR>
+
+  SPDX-License-Identifier: BSD-2-Clause-Patent
+**/
+
+#ifndef LINUX_EFI_INITRD_MEDIA_GUID_H__
+#define LINUX_EFI_INITRD_MEDIA_GUID_H__
+
+#define LINUX_EFI_INITRD_MEDIA_GUID \
+  {0x5568e427, 0x68fc, 0x4f3d, {0xac, 0x74, 0xca, 0x55, 0x52, 0x31, 0xcc, 0x68}}
+
+extern EFI_GUID gLinuxEfiInitrdMediaGuid;
+
+#endif
diff --git a/OvmfPkg/Include/Guid/LinuxEfiInitrdMedia.h b/OvmfPkg/Include/Guid/LinuxEfiInitrdMedia.h
deleted file mode 100644
index 83fc3fc79aa6..000000000000
--- a/OvmfPkg/Include/Guid/LinuxEfiInitrdMedia.h
+++ /dev/null
@@ -1,17 +0,0 @@
-/** @file
-  GUID definition for the Linux Initrd media device path
-
-  Copyright (c) 2020, Arm, Ltd. All rights reserved.<BR>
-
-  SPDX-License-Identifier: BSD-2-Clause-Patent
-**/
-
-#ifndef LINUX_EFI_INITRD_MEDIA_GUID_H__
-#define LINUX_EFI_INITRD_MEDIA_GUID_H__
-
-#define LINUX_EFI_INITRD_MEDIA_GUID \
-  {0x5568e427, 0x68fc, 0x4f3d, {0xac, 0x74, 0xca, 0x55, 0x52, 0x31, 0xcc, 0x68}}
-
-extern EFI_GUID gLinuxEfiInitrdMediaGuid;
-
-#endif
-- 
2.25.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#78232): https://edk2.groups.io/g/devel/message/78232
Mute This Topic: https://groups.io/mt/84486005/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-






More information about the edk2-devel-archive mailing list