/** @file\r
\r
-Copyright (c) 2004 - 2008, Intel Corporation \r
-All rights reserved. This program and the accompanying materials \r
+Copyright (c) 2004 - 2011, 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
http://opensource.org/licenses/bsd-license.php \r
#define MAX_NUMBER_OF_FILES_IN_FV 1000\r
#define MAX_NUMBER_OF_FILES_IN_CAP 1000\r
#define EFI_FFS_FILE_HEADER_ALIGNMENT 8\r
-\r
//\r
// INF file strings\r
//\r
-#define OPTIONS_SECTION_STRING "[options]"\r
-#define ATTRIBUTES_SECTION_STRING "[attributes]"\r
-#define FILES_SECTION_STRING "[files]"\r
+#define OPTIONS_SECTION_STRING "[options]"\r
+#define ATTRIBUTES_SECTION_STRING "[attributes]"\r
+#define FILES_SECTION_STRING "[files]"\r
+#define FV_BASE_ADDRESS_STRING "[FV_BASE_ADDRESS]"\r
\r
//\r
// Options section\r
#define EFI_CAPSULE_HEADER_SIZE_STRING "EFI_CAPSULE_HEADER_SIZE"\r
#define EFI_CAPSULE_FLAGS_STRING "EFI_CAPSULE_FLAGS"\r
#define EFI_CAPSULE_VERSION_STRING "EFI_CAPSULE_VERSION"\r
-#define EFI_FV_BOOT_DRIVER_BASE_ADDRESS_STRING "EFI_BOOT_DRIVER_BASE_ADDRESS"\r
-#define EFI_FV_RUNTIME_DRIVER_BASE_ADDRESS_STRING "EFI_RUNTIME_DRIVER_BASE_ADDRESS"\r
\r
#define EFI_FV_TOTAL_SIZE_STRING "EFI_FV_TOTAL_SIZE"\r
#define EFI_FV_TAKEN_SIZE_STRING "EFI_FV_TAKEN_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 FALSE_STRING "FALSE"\r
#define NULL_STRING "NULL"\r
\r
+//\r
+//\r
+//\r
+#define EFI_FV_EXT_HEADER_FILE_NAME "EFI_FV_EXT_HEADER_FILE_NAME"\r
+\r
+\r
//\r
// VTF (Firmware Volume Top File) signatures\r
//\r
#define FIT_TYPE_MASK 0x7F\r
#define CHECKSUM_BIT_MASK 0x80\r
\r
-//\r
-// Rebase File type\r
-//\r
-#define REBASE_XIP_FILE 0x1\r
-#define REBASE_BOOTTIME_FILE 0x2\r
-#define REBASE_RUNTIME_FILE 0x4\r
-\r
//\r
// Private data types\r
//\r
typedef struct {\r
BOOLEAN BaseAddressSet;\r
EFI_PHYSICAL_ADDRESS BaseAddress;\r
- EFI_PHYSICAL_ADDRESS BootBaseAddress;\r
- EFI_PHYSICAL_ADDRESS RuntimeBaseAddress; \r
EFI_GUID FvFileSystemGuid;\r
BOOLEAN FvFileSystemGuidSet;\r
EFI_GUID FvNameGuid;\r
BOOLEAN FvNameGuidSet;\r
+ CHAR8 FvExtHeaderFile[_MAX_PATH];\r
UINTN Size;\r
- EFI_FVB_ATTRIBUTES FvAttributes;\r
+ EFI_FVB_ATTRIBUTES_2 FvAttributes;\r
CHAR8 FvName[_MAX_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
UINT32 SizeofFvFiles[MAX_NUMBER_OF_FILES_IN_FV];\r
BOOLEAN IsPiFvImage;\r
+ INT8 ForceRebase;\r
} FV_INFO;\r
\r
typedef struct {\r
extern EFI_GUID mEfiFirmwareFileSystem2Guid;\r
extern UINT32 mFvTotalSize;\r
extern UINT32 mFvTakenSize;\r
+\r
+extern EFI_PHYSICAL_ADDRESS mFvBaseAddress[];\r
+extern UINT32 mFvBaseAddressNumber;\r
//\r
// Local function prototypes\r
//\r