]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Library/HobLib.h
MdePkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / MdePkg / Include / Library / HobLib.h
index fc48703826c5abcd2b21021a5c939fcd79b989e0..517365eae594ddbb2be2d60a69480856e463aa4a 100644 (file)
@@ -6,16 +6,10 @@
   defined in the PI Specification.\r
   A HOB is a Hand-Off Block, defined in the Framework architecture, that\r
   allows the PEI phase to pass information to the DXE phase. HOBs are position\r
-  independent and can be relocated easily to different memory memory locations.\r
+  independent and can be relocated easily to different memory locations.\r
 \r
-Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>\r
-This program and the accompanying materials\r
-are licensed and made available under the terms and conditions of the BSD License\r
-which accompanies this distribution.  The full text of the license may be found at\r
-http://opensource.org/licenses/bsd-license.php\r
-\r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
 **/\r
 \r
@@ -190,7 +184,7 @@ BuildModuleHob (
   This function builds a HOB that describes a chunk of system memory.\r
   It can only be invoked during PEI phase;\r
   for DXE phase, it will ASSERT() since PEI HOB is read-only for DXE phase.\r
-  \r
+\r
   If there is no additional space for HOB creation, then ASSERT().\r
 \r
   @param  ResourceType        The type of resource described by this HOB.\r
@@ -342,6 +336,38 @@ BuildFv2Hob (
   IN CONST    EFI_GUID                    *FileName\r
   );\r
 \r
+/**\r
+  Builds a EFI_HOB_TYPE_FV3 HOB.\r
+\r
+  This function builds a EFI_HOB_TYPE_FV3 HOB.\r
+  It can only be invoked during PEI phase;\r
+  for DXE phase, it will ASSERT() since PEI HOB is read-only for DXE phase.\r
+\r
+  If there is no additional space for HOB creation, then ASSERT().\r
+  If the FvImage buffer is not at its required alignment, then ASSERT().\r
+\r
+  @param BaseAddress            The base address of the Firmware Volume.\r
+  @param Length                 The size of the Firmware Volume in bytes.\r
+  @param AuthenticationStatus   The authentication status.\r
+  @param ExtractedFv            TRUE if the FV was extracted as a file within\r
+                                another firmware volume. FALSE otherwise.\r
+  @param FvName                 The name of the Firmware Volume.\r
+                                Valid only if IsExtractedFv is TRUE.\r
+  @param FileName               The name of the file.\r
+                                Valid only if IsExtractedFv is TRUE.\r
+\r
+**/\r
+VOID\r
+EFIAPI\r
+BuildFv3Hob (\r
+  IN          EFI_PHYSICAL_ADDRESS        BaseAddress,\r
+  IN          UINT64                      Length,\r
+  IN          UINT32                      AuthenticationStatus,\r
+  IN          BOOLEAN                     ExtractedFv,\r
+  IN CONST    EFI_GUID                    *FvName, OPTIONAL\r
+  IN CONST    EFI_GUID                    *FileName OPTIONAL\r
+  );\r
+\r
 /**\r
   Builds a Capsule Volume HOB.\r
 \r