/** @file\r
HOB related definitions in PI.\r
\r
- Copyright (c) 2006 - 2008, Intel Corporation \r
+ Copyright (c) 2006 - 2009, Intel Corporation \r
All rights reserved. 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
#ifndef __PI_HOB_H__\r
#define __PI_HOB_H__\r
\r
-#include <ProcessorBind.h>\r
-#include <Pi/PiBootMode.h>\r
-#include <Uefi/UefiBaseType.h>\r
-#include <Uefi/UefiMultiPhase.h>\r
-\r
//\r
// HobType of EFI_HOB_GENERIC_HEADER.\r
// \r
#define EFI_HOB_TYPE_MEMORY_POOL 0x0007\r
#define EFI_HOB_TYPE_FV2 0x0009\r
#define EFI_HOB_TYPE_LOAD_PEIM 0x000A\r
+#define EFI_HOB_TYPE_UEFI_CAPSULE 0x000B\r
#define EFI_HOB_TYPE_UNUSED 0xFFFE\r
#define EFI_HOB_TYPE_END_OF_HOB_LIST 0xFFFF\r
\r
EFI_HOB_GENERIC_HEADER Header;\r
} EFI_HOB_MEMORY_POOL;\r
\r
+///\r
+/// Each UEFI capsule HOB details the location of a UEFI capsule. It includes a base address and length\r
+/// which is based upon memory blocks with a EFI_CAPSULE_HEADER and the associated\r
+/// CapsuleImageSize-based payloads. These HOB's shall be created by the PEI PI firmware\r
+/// sometime after the UEFI UpdateCapsule service invocation with the\r
+/// CAPSULE_FLAGS_POPULATE_SYSTEM_TABLE flag set in the EFI_CAPSULE_HEADER.\r
+///\r
+typedef struct {\r
+ ///\r
+ /// The HOB generic header where Header.HobType = EFI_HOB_TYPE_UEFI_CAPSULE.\r
+ ///\r
+ EFI_HOB_GENERIC_HEADER Header;\r
+ \r
+ ///\r
+ /// The physical memory-mapped base address of an UEFI capsule. This value is set to\r
+ /// point to the base of the contiguous memory of the UEFI capsule.\r
+ /// The length of the contiguous memory in bytes\r
+ ///\r
+ EFI_PHYSICAL_ADDRESS BaseAddress;\r
+ UINT64 Length;\r
+} EFI_HOB_UEFI_CAPSULE;\r
+\r
///\r
/// Union of all the possible HOB Types\r
///\r
EFI_HOB_FIRMWARE_VOLUME2 *FirmwareVolume2;\r
EFI_HOB_CPU *Cpu;\r
EFI_HOB_MEMORY_POOL *Pool;\r
+ EFI_HOB_UEFI_CAPSULE *Capsule;\r
UINT8 *Raw;\r
} EFI_PEI_HOB_POINTERS;\r
\r