]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/C/GenFv/GenFvInternalLib.h
Sync BaseTool trunk (version r2599) into EDKII BaseTools.
[mirror_edk2.git] / BaseTools / Source / C / GenFv / GenFvInternalLib.h
index 3c0e9336bd96fd467a8b036d06eb14382f81decf..40c23600ab8ea58c79bf384df6b8e49e1fc0ccde 100644 (file)
@@ -1,7 +1,7 @@
 /** @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
@@ -67,6 +67,7 @@ Abstract:
 #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
@@ -82,8 +83,6 @@ Abstract:
 #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
@@ -131,7 +130,7 @@ Abstract:
 #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
@@ -204,13 +203,6 @@ Abstract:
 #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
@@ -228,20 +220,19 @@ typedef struct {
 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
@@ -270,6 +261,9 @@ extern CAP_INFO   mCapDataInfo;
 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