X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=OldMdePkg%2FInclude%2FCommon%2FFirmwareVolumeImageFormat.h;fp=OldMdePkg%2FInclude%2FCommon%2FFirmwareVolumeImageFormat.h;h=0000000000000000000000000000000000000000;hp=14fa41bf262bb57c6797754d8dea520169e5699c;hb=808def96aa4589fba9c2d0ea55837754a3b7a4f7;hpb=9216450d1143056a50a5f916984a2d7faf590488 diff --git a/OldMdePkg/Include/Common/FirmwareVolumeImageFormat.h b/OldMdePkg/Include/Common/FirmwareVolumeImageFormat.h deleted file mode 100644 index 14fa41bf26..0000000000 --- a/OldMdePkg/Include/Common/FirmwareVolumeImageFormat.h +++ /dev/null @@ -1,277 +0,0 @@ -/** @file - This file defines the data structures that are architecturally defined for file - images loaded via the FirmwareVolume protocol. The Firmware Volume specification - is the basis for these definitions. - - Copyright (c) 2006, 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: FimrwareVolumeImageFormat.h - - @par Revision Reference: - These definitions are from Firmware Volume Spec 0.9. - -**/ - -#ifndef __FIRMWARE_VOLUME_IMAGE_FORMAT_H__ -#define __FIRMWARE_VOLUME_IMAGE_FORMAT_H__ - -// -// pack all data structures since this is actually a binary format and we cannot -// allow internal padding in the data structures because of some compilerism.. -// -#pragma pack(1) -// -// //////////////////////////////////////////////////////////////////////////// -// -// Architectural file types -// -typedef UINT8 EFI_FV_FILETYPE; - -#define EFI_FV_FILETYPE_ALL 0x00 -#define EFI_FV_FILETYPE_RAW 0x01 -#define EFI_FV_FILETYPE_FREEFORM 0x02 -#define EFI_FV_FILETYPE_SECURITY_CORE 0x03 -#define EFI_FV_FILETYPE_PEI_CORE 0x04 -#define EFI_FV_FILETYPE_DXE_CORE 0x05 -#define EFI_FV_FILETYPE_PEIM 0x06 -#define EFI_FV_FILETYPE_DRIVER 0x07 -#define EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER 0x08 -#define EFI_FV_FILETYPE_APPLICATION 0x09 -// -// File type 0x0A is reserved and should not be used -// -#define EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE 0x0B - -// -// //////////////////////////////////////////////////////////////////////////// -// -// Section types -// -typedef UINT8 EFI_SECTION_TYPE; - -// -// ************************************************************ -// The section type EFI_SECTION_ALL is a psuedo type. It is -// used as a wildcard when retrieving sections. The section -// type EFI_SECTION_ALL matches all section types. -// ************************************************************ -// -#define EFI_SECTION_ALL 0x00 - -// -// ************************************************************ -// Encapsulation section Type values -// ************************************************************ -// -#define EFI_SECTION_COMPRESSION 0x01 -#define EFI_SECTION_GUID_DEFINED 0x02 - -// -// ************************************************************ -// Leaf section Type values -// ************************************************************ -// -#define EFI_SECTION_FIRST_LEAF_SECTION_TYPE 0x10 - -#define EFI_SECTION_PE32 0x10 -#define EFI_SECTION_PIC 0x11 -#define EFI_SECTION_TE 0x12 -#define EFI_SECTION_DXE_DEPEX 0x13 -#define EFI_SECTION_VERSION 0x14 -#define EFI_SECTION_USER_INTERFACE 0x15 -#define EFI_SECTION_COMPATIBILITY16 0x16 -#define EFI_SECTION_FIRMWARE_VOLUME_IMAGE 0x17 -#define EFI_SECTION_FREEFORM_SUBTYPE_GUID 0x18 -#define EFI_SECTION_RAW 0x19 -#define EFI_SECTION_PEI_DEPEX 0x1B - -#define EFI_SECTION_LAST_LEAF_SECTION_TYPE 0x1B -#define EFI_SECTION_LAST_SECTION_TYPE 0x1B - -// -// //////////////////////////////////////////////////////////////////////////// -// -// Common section header -// -typedef struct { - UINT8 Size[3]; - UINT8 Type; -} EFI_COMMON_SECTION_HEADER; - -#define SECTION_SIZE(SectionHeaderPtr) \ - ((UINT32) (*((UINT32 *) ((EFI_COMMON_SECTION_HEADER *) SectionHeaderPtr)->Size) & 0x00ffffff)) - -// -// //////////////////////////////////////////////////////////////////////////// -// -// Compression section -// -// -// CompressionType values -// -#define EFI_NOT_COMPRESSED 0x00 -#define EFI_STANDARD_COMPRESSION 0x01 -#define EFI_CUSTOMIZED_COMPRESSION 0x02 - -typedef struct { - EFI_COMMON_SECTION_HEADER CommonHeader; - UINT32 UncompressedLength; - UINT8 CompressionType; -} EFI_COMPRESSION_SECTION; - -// -// //////////////////////////////////////////////////////////////////////////// -// -// GUID defined section -// -typedef struct { - EFI_COMMON_SECTION_HEADER CommonHeader; - EFI_GUID SectionDefinitionGuid; - UINT16 DataOffset; - UINT16 Attributes; -} EFI_GUID_DEFINED_SECTION; - -// -// Bit values for Attributes -// -#define EFI_GUIDED_SECTION_PROCESSING_REQUIRED 0x01 -#define EFI_GUIDED_SECTION_AUTH_STATUS_VALID 0x02 - -// -// Bit values for AuthenticationStatus -// -#define EFI_AGGREGATE_AUTH_STATUS_PLATFORM_OVERRIDE 0x000001 -#define EFI_AGGREGATE_AUTH_STATUS_IMAGE_SIGNED 0x000002 -#define EFI_AGGREGATE_AUTH_STATUS_NOT_TESTED 0x000004 -#define EFI_AGGREGATE_AUTH_STATUS_TEST_FAILED 0x000008 -#define EFI_AGGREGATE_AUTH_STATUS_ALL 0x00000f - -#define EFI_LOCAL_AUTH_STATUS_PLATFORM_OVERRIDE 0x010000 -#define EFI_LOCAL_AUTH_STATUS_IMAGE_SIGNED 0x020000 -#define EFI_LOCAL_AUTH_STATUS_NOT_TESTED 0x040000 -#define EFI_LOCAL_AUTH_STATUS_TEST_FAILED 0x080000 -#define EFI_LOCAL_AUTH_STATUS_ALL 0x0f0000 - -// -// //////////////////////////////////////////////////////////////////////////// -// -// PE32+ section -// -typedef struct { - EFI_COMMON_SECTION_HEADER CommonHeader; -} EFI_PE32_SECTION; - -// -// //////////////////////////////////////////////////////////////////////////// -// -// PIC section -// -typedef struct { - EFI_COMMON_SECTION_HEADER CommonHeader; -} EFI_PIC_SECTION; - -// -// //////////////////////////////////////////////////////////////////////////// -// -// PEIM header section -// -typedef struct { - EFI_COMMON_SECTION_HEADER CommonHeader; -} EFI_PEIM_HEADER_SECTION; - -// -// //////////////////////////////////////////////////////////////////////////// -// -// DEPEX section -// -typedef struct { - EFI_COMMON_SECTION_HEADER CommonHeader; -} EFI_DEPEX_SECTION; - -// -// //////////////////////////////////////////////////////////////////////////// -// -// Version section -// -typedef struct { - EFI_COMMON_SECTION_HEADER CommonHeader; - UINT16 BuildNumber; - INT16 VersionString[1]; -} EFI_VERSION_SECTION; - -// -// //////////////////////////////////////////////////////////////////////////// -// -// User interface section -// -typedef struct { - EFI_COMMON_SECTION_HEADER CommonHeader; - INT16 FileNameString[1]; -} EFI_USER_INTERFACE_SECTION; - -// -// //////////////////////////////////////////////////////////////////////////// -// -// Code16 section -// -typedef struct { - EFI_COMMON_SECTION_HEADER CommonHeader; -} EFI_CODE16_SECTION; - -// -// //////////////////////////////////////////////////////////////////////////// -// -// Firmware Volume Image section -// -typedef struct { - EFI_COMMON_SECTION_HEADER CommonHeader; -} EFI_FIRMWARE_VOLUME_IMAGE_SECTION; - -// -// //////////////////////////////////////////////////////////////////////////// -// -// Freeform subtype GUID section -// -typedef struct { - EFI_COMMON_SECTION_HEADER CommonHeader; - EFI_GUID SubTypeGuid; -} EFI_FREEFORM_SUBTYPE_GUID_SECTION; - -// -// //////////////////////////////////////////////////////////////////////////// -// -// Raw section -// -typedef struct { - EFI_COMMON_SECTION_HEADER CommonHeader; -} EFI_RAW_SECTION; - -// -// undo the pragma from the beginning... -// -#pragma pack() - -typedef union { - EFI_COMMON_SECTION_HEADER *CommonHeader; - EFI_COMPRESSION_SECTION *CompressionSection; - EFI_GUID_DEFINED_SECTION *GuidDefinedSection; - EFI_PE32_SECTION *Pe32Section; - EFI_PIC_SECTION *PicSection; - EFI_PEIM_HEADER_SECTION *PeimHeaderSection; - EFI_DEPEX_SECTION *DependencySection; - EFI_VERSION_SECTION *VersionSection; - EFI_USER_INTERFACE_SECTION *UISection; - EFI_CODE16_SECTION *Code16Section; - EFI_FIRMWARE_VOLUME_IMAGE_SECTION *FVImageSection; - EFI_FREEFORM_SUBTYPE_GUID_SECTION *FreeformSubtypeSection; - EFI_RAW_SECTION *RawSection; -} EFI_FILE_SECTION_POINTER; - -#endif