diff options
author | bxing <bxing@6f19259b-4bc3-4df7-8a09-765794883524> | 2007-07-04 12:27:48 +0000 |
---|---|---|
committer | bxing <bxing@6f19259b-4bc3-4df7-8a09-765794883524> | 2007-07-04 12:27:48 +0000 |
commit | 0c8a18cc5146243175144bc68efcb10407d33026 (patch) | |
tree | 098b753256cc5e68127d0ca0326b035448a8ad1f | |
parent | 0106da0f8db75d00f158c9d1f93bec29f3137f3c (diff) | |
download | edk2-0c8a18cc5146243175144bc68efcb10407d33026.zip edk2-0c8a18cc5146243175144bc68efcb10407d33026.tar.gz edk2-0c8a18cc5146243175144bc68efcb10407d33026.tar.bz2 |
Added Capsule.h for capsule related definitions in Framework spec.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@3053 6f19259b-4bc3-4df7-8a09-765794883524
-rw-r--r-- | IntelFrameworkPkg/Include/Framework/Capsule.h | 69 | ||||
-rw-r--r-- | IntelFrameworkPkg/Include/FrameworkPei.h | 3 |
2 files changed, 71 insertions, 1 deletions
diff --git a/IntelFrameworkPkg/Include/Framework/Capsule.h b/IntelFrameworkPkg/Include/Framework/Capsule.h new file mode 100644 index 0000000..8457934 --- /dev/null +++ b/IntelFrameworkPkg/Include/Framework/Capsule.h @@ -0,0 +1,69 @@ +/** @file
+ Defines for the EFI Capsule functionality.
+
+ 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.
+
+ Module Name: Capsule.h
+
+ @par Revision Reference:
+ These definitions are from Capsule Spec Version 0.9.
+
+**/
+
+#ifndef _EFI_CAPSULE_H_
+#define _EFI_CAPSULE_H_
+
+#include <PiPei.h>
+
+//
+// Bits in the flags field of the capsule header
+//
+#define EFI_CAPSULE_HEADER_FLAG_SETUP 0x00000001 // supports setup changes
+
+
+#define CAPSULE_BLOCK_DESCRIPTOR_SIGNATURE EFI_SIGNATURE_32 ('C', 'B', 'D', 'S')
+
+//
+// An array of these describe the blocks that make up a capsule for
+// a capsule update.
+//
+typedef struct {
+ UINT64 Length; // length of the data block
+ EFI_PHYSICAL_ADDRESS Data; // physical address of the data block
+ UINT32 Signature; // CBDS
+ UINT32 CheckSum; // to sum this structure to 0
+} FRAMEWORK_EFI_CAPSULE_BLOCK_DESCRIPTOR;
+
+typedef struct {
+ EFI_GUID OemGuid;
+ UINT32 HeaderSize;
+ //
+ // UINT8 OemHdrData[];
+ //
+} EFI_CAPSULE_OEM_HEADER;
+
+typedef struct {
+ EFI_GUID CapsuleGuid;
+ UINT32 HeaderSize;
+ UINT32 Flags;
+ UINT32 CapsuleImageSize;
+ UINT32 SequenceNumber;
+ EFI_GUID InstanceId;
+ UINT32 OffsetToSplitInformation;
+ UINT32 OffsetToCapsuleBody;
+ UINT32 OffsetToOemDefinedHeader;
+ UINT32 OffsetToAuthorInformation;
+ UINT32 OffsetToRevisionInformation;
+ UINT32 OffsetToShortDescription;
+ UINT32 OffsetToLongDescription;
+ UINT32 OffsetToApplicableDevices;
+} FRAMEWORK_EFI_CAPSULE_HEADER;
+
+#endif // #ifndef _EFI_CAPSULE_H_
diff --git a/IntelFrameworkPkg/Include/FrameworkPei.h b/IntelFrameworkPkg/Include/FrameworkPei.h index 6719db3..f7255bb 100644 --- a/IntelFrameworkPkg/Include/FrameworkPei.h +++ b/IntelFrameworkPkg/Include/FrameworkPei.h @@ -22,12 +22,13 @@ #include <PiPei.h>
+#include <Framework/Capsule.h>
+#include <Framework/DataHubRecords.h>
#include <Framework/FirmwareFileSystem.h>
#include <Framework/FirmwareVolumeImageFormat.h>
#include <Framework/FirmwareVolumeHeader.h>
#include <Framework/Hob.h>
#include <Framework/Legacy16.h>
-#include <Framework/DataHubRecords.h>
#include <Framework/StatusCode.h>
#include <Framework/StatusCodeDataTypeId.h>
|