From 07ad9b81e3746c67d10696b0574c8010e11a5762 Mon Sep 17 00:00:00 2001 From: qwang12 Date: Thu, 23 Aug 2007 06:22:53 +0000 Subject: Add in BuildFv2Hob in HobLib git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3693 6f19259b-4bc3-4df7-8a09-765794883524 --- MdePkg/Library/PeiHobLib/HobLib.c | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'MdePkg/Library/PeiHobLib/HobLib.c') diff --git a/MdePkg/Library/PeiHobLib/HobLib.c b/MdePkg/Library/PeiHobLib/HobLib.c index 710e112dee..839a00f262 100644 --- a/MdePkg/Library/PeiHobLib/HobLib.c +++ b/MdePkg/Library/PeiHobLib/HobLib.c @@ -404,6 +404,39 @@ BuildFvHob ( Hob->Length = Length; } +/** + Builds a EFI_HOB_TYPE_FV2 HOB. + + This function builds a EFI_HOB_TYPE_FV2 HOB. + It can only be invoked during PEI phase; + for DXE phase, it will ASSERT() since PEI HOB is read-only for DXE phase. + If there is no additional space for HOB creation, then ASSERT(). + + @param BaseAddress The base address of the Firmware Volume. + @param Length The size of the Firmware Volume in bytes. + @param FvName The name of the Firmware Volume. + @param FileName The name of the file. + +**/ +VOID +EFIAPI +BuildFv2Hob ( + IN EFI_PHYSICAL_ADDRESS BaseAddress, + IN UINT64 Length, + IN CONST EFI_GUID *FvName, + IN CONST EFI_GUID *FileName + ) +{ + EFI_HOB_FIRMWARE_VOLUME2 *Hob; + + Hob = InternalPeiCreateHob (EFI_HOB_TYPE_FV2, sizeof (EFI_HOB_FIRMWARE_VOLUME2)); + + Hob->BaseAddress = BaseAddress; + Hob->Length = Length; + CopyMem (&Hob->FvName, FvName, sizeof (EFI_GUID)); + CopyMem (&Hob->FileName, FileName, sizeof (EFI_GUID)); +} + /** Builds a Capsule Volume HOB. -- cgit v1.2.3