diff --git a/MdeModulePkg/Include/Guid/CapsuleVendor.h b/MdeModulePkg/Include/Guid/CapsuleVendor.h index a97a9b546c..8ac5d0cf46 100644 --- a/MdeModulePkg/Include/Guid/CapsuleVendor.h +++ b/MdeModulePkg/Include/Guid/CapsuleVendor.h @@ -37,4 +37,12 @@ Abstract: extern EFI_GUID gEfiCapsuleVendorGuid; +// +// Data structure of capsule guid hob +// +typedef struct { + EFI_PHYSICAL_ADDRESS BaseAddress; + UINT32 Length; +} CAPSULE_HOB_INFO; + #endif // #ifndef _EFI_CAPSULE_VENDOR_GUID_H_ diff --git a/MdeModulePkg/Include/Library/CapsuleLib.h b/MdeModulePkg/Include/Library/CapsuleLib.h new file mode 100644 index 0000000000..b8691bc4ab --- /dev/null +++ b/MdeModulePkg/Include/Library/CapsuleLib.h @@ -0,0 +1,47 @@ +/** @file + Capsule Library. This library class defines a set of interfaces on + how to process capusle image update. + + Copyright (c) 2007, Intel Corporation + All rights reserved. This program and the accompanying materials + are licensed and made available under the terms and conditions of the BSD License + which accompanies this distribution. The full text of the license may be found at + http://opensource.org/licenses/bsd-license.php + + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + +**/ + +#ifndef __CAPSULE_LIB_H__ +#define __CAPSULE_LIB_H__ + +/** + Those capsules supported by the firmwares. + + @retval EFI_SUCESS Input capsule is supported by firmware. + @retval EFI_UNSUPPORTED Input capsule is not supported by the firmware. +**/ +EFI_STATUS +EFIAPI +SupportCapsuleImage ( + IN EFI_CAPSULE_HEADER *CapsuleHeader + ) +; + +/** + The firmware implements to process the capsule image. + + @retval EFI_SUCESS Process Capsule Image successfully. + @retval EFI_UNSUPPORTED Capsule image is not supported by the firmware. +**/ +EFI_STATUS +EFIAPI +ProcessCapsuleImage ( + IN EFI_CAPSULE_HEADER *CapsuleHeader + ) +; + +#endif + +