From 9e8485c558271c9a837b0d8f8b06a6eaf420e768 Mon Sep 17 00:00:00 2001 From: klu2 Date: Tue, 18 Aug 2009 08:21:07 +0000 Subject: [PATCH] Add EFI_HOB_UEFI_CAPSULE type defined in PI 1.2 volume 3. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9092 6f19259b-4bc3-4df7-8a09-765794883524 --- MdePkg/Include/Pi/PiHob.h | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/MdePkg/Include/Pi/PiHob.h b/MdePkg/Include/Pi/PiHob.h index 0c51f8e01c..6a62abcd71 100644 --- a/MdePkg/Include/Pi/PiHob.h +++ b/MdePkg/Include/Pi/PiHob.h @@ -402,6 +402,28 @@ typedef struct { EFI_HOB_GENERIC_HEADER Header; } EFI_HOB_MEMORY_POOL; +/// +/// Each UEFI capsule HOB details the location of a UEFI capsule. It includes a base address and length +/// which is based upon memory blocks with a EFI_CAPSULE_HEADER and the associated +/// CapsuleImageSize-based payloads. These HOB’s shall be created by the PEI PI firmware +/// sometime after the UEFI UpdateCapsule service invocation with the +/// CAPSULE_FLAGS_POPULATE_SYSTEM_TABLE flag set in the EFI_CAPSULE_HEADER. +/// +typedef struct { + /// + /// The HOB generic header where Header.HobType = EFI_HOB_TYPE_UEFI_CAPSULE. + /// + EFI_HOB_GENERIC_HEADER Header; + + /// + /// The physical memory-mapped base address of an UEFI capsule. This value is set to + /// point to the base of the contiguous memory of the UEFI capsule. + /// The length of the contiguous memory in bytes + /// + EFI_PHYSICAL_ADDRESS BaseAddress; + UINT64 Length; +} EFI_HOB_UEFI_CAPSULE; + /// /// Union of all the possible HOB Types /// @@ -418,6 +440,7 @@ typedef union { EFI_HOB_FIRMWARE_VOLUME2 *FirmwareVolume2; EFI_HOB_CPU *Cpu; EFI_HOB_MEMORY_POOL *Pool; + EFI_HOB_UEFI_CAPSULE *Capsule; UINT8 *Raw; } EFI_PEI_HOB_POINTERS;