/** @file\r
-\r
-Copyright (c) 2004 - 2010, Intel Corporation. All rights reserved.<BR>\r
+This file contains describes the public interfaces to the GenFvImage Library.\r
+The basic purpose of the library is to create Firmware Volume images.\r
+ \r
+Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR>\r
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
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
\r
-Module Name:\r
- \r
- GenFvInternalLib.h\r
-\r
-Abstract:\r
-\r
- This file contains describes the public interfaces to the GenFvImage Library.\r
- The basic purpose of the library is to create Firmware Volume images.\r
-\r
**/\r
\r
#ifndef _EFI_GEN_FV_INTERNAL_LIB_H\r
#define EFI_CAPSULE_GUID_STRING "EFI_CAPSULE_GUID"\r
#define EFI_CAPSULE_HEADER_SIZE_STRING "EFI_CAPSULE_HEADER_SIZE"\r
#define EFI_CAPSULE_FLAGS_STRING "EFI_CAPSULE_FLAGS"\r
+#define EFI_OEM_CAPSULE_FLAGS_STRING "EFI_OEM_CAPSULE_FLAGS"\r
#define EFI_CAPSULE_VERSION_STRING "EFI_CAPSULE_VERSION"\r
\r
#define EFI_FV_TOTAL_SIZE_STRING "EFI_FV_TOTAL_SIZE"\r
#define EFI_FVB2_ALIGNMENT_64K_STRING "EFI_FVB2_ALIGNMENT_64K" \r
#define EFI_FVB2_ALIGNMENT_128K_STRING "EFI_FVB2_ALIGNMENT_128K"\r
#define EFI_FVB2_ALIGNMENT_256K_STRING "EFI_FVB2_ALIGNMENT_256K"\r
-#define EFI_FVB2_ALIGNMNET_512K_STRING "EFI_FVB2_ALIGNMENT_512K"\r
+#define EFI_FVB2_ALIGNMENT_512K_STRING "EFI_FVB2_ALIGNMENT_512K"\r
#define EFI_FVB2_ALIGNMENT_1M_STRING "EFI_FVB2_ALIGNMENT_1M" \r
#define EFI_FVB2_ALIGNMENT_2M_STRING "EFI_FVB2_ALIGNMENT_2M" \r
#define EFI_FVB2_ALIGNMENT_4M_STRING "EFI_FVB2_ALIGNMENT_4M" \r
#define EFI_FVB2_ALIGNMENT_1G_STRING "EFI_FVB2_ALIGNMENT_1G" \r
#define EFI_FVB2_ALIGNMENT_2G_STRING "EFI_FVB2_ALIGNMENT_2G" \r
\r
+#define EFI_FV_WEAK_ALIGNMENT_STRING "EFI_WEAK_ALIGNMENT"\r
+\r
//\r
// File sections\r
//\r
// VTF (Firmware Volume Top File) signatures\r
//\r
#define IA32_X64_VTF_SIGNATURE_OFFSET 0x14\r
-#define IA32_X64_VTF0_SIGNATURE EFI_SIGNATURE_32('V','T','F',0)\r
+#define IA32_X64_VTF0_SIGNATURE SIGNATURE_32('V','T','F',0)\r
\r
//\r
// Defines to calculate the offset for PEI CORE entry points\r
//\r
typedef struct {\r
UINTN Size;\r
- CHAR8 ComponentName[_MAX_PATH];\r
+ CHAR8 ComponentName[MAX_LONG_FILE_PATH];\r
} COMPONENT_INFO;\r
\r
//\r
BOOLEAN FvFileSystemGuidSet;\r
EFI_GUID FvNameGuid;\r
BOOLEAN FvNameGuidSet;\r
- CHAR8 FvExtHeaderFile[_MAX_PATH];\r
+ CHAR8 FvExtHeaderFile[MAX_LONG_FILE_PATH];\r
UINTN Size;\r
- EFI_FVB_ATTRIBUTES FvAttributes;\r
- CHAR8 FvName[_MAX_PATH];\r
+ EFI_FVB_ATTRIBUTES_2 FvAttributes;\r
+ CHAR8 FvName[MAX_LONG_FILE_PATH];\r
EFI_FV_BLOCK_MAP_ENTRY FvBlocks[MAX_NUMBER_OF_FV_BLOCKS];\r
- CHAR8 FvFiles[MAX_NUMBER_OF_FILES_IN_FV][_MAX_PATH];\r
+ CHAR8 FvFiles[MAX_NUMBER_OF_FILES_IN_FV][MAX_LONG_FILE_PATH];\r
UINT32 SizeofFvFiles[MAX_NUMBER_OF_FILES_IN_FV];\r
BOOLEAN IsPiFvImage;\r
INT8 ForceRebase;\r
EFI_GUID CapGuid;\r
UINT32 HeaderSize;\r
UINT32 Flags;\r
- CHAR8 CapName[_MAX_PATH];\r
- CHAR8 CapFiles[MAX_NUMBER_OF_FILES_IN_CAP][_MAX_PATH];\r
+ CHAR8 CapName[MAX_LONG_FILE_PATH];\r
+ CHAR8 CapFiles[MAX_NUMBER_OF_FILES_IN_CAP][MAX_LONG_FILE_PATH];\r
} CAP_INFO;\r
\r
#pragma pack(1)\r
extern FV_INFO mFvDataInfo;\r
extern CAP_INFO mCapDataInfo;\r
extern EFI_GUID mEfiFirmwareFileSystem2Guid;\r
+extern EFI_GUID mEfiFirmwareFileSystem3Guid;\r
extern UINT32 mFvTotalSize;\r
extern UINT32 mFvTakenSize;\r
\r