summaryrefslogtreecommitdiff
path: root/ArmPlatformPkg/Documentation/patches/BaseTools-GenFv-Fix-0x0-Based-FV.patch
diff options
context:
space:
mode:
Diffstat (limited to 'ArmPlatformPkg/Documentation/patches/BaseTools-GenFv-Fix-0x0-Based-FV.patch')
-rwxr-xr-xArmPlatformPkg/Documentation/patches/BaseTools-GenFv-Fix-0x0-Based-FV.patch51
1 files changed, 51 insertions, 0 deletions
diff --git a/ArmPlatformPkg/Documentation/patches/BaseTools-GenFv-Fix-0x0-Based-FV.patch b/ArmPlatformPkg/Documentation/patches/BaseTools-GenFv-Fix-0x0-Based-FV.patch
new file mode 100755
index 0000000000..b2029f21e4
--- /dev/null
+++ b/ArmPlatformPkg/Documentation/patches/BaseTools-GenFv-Fix-0x0-Based-FV.patch
@@ -0,0 +1,51 @@
+From 5552b8d1c885b1215cec72b8e21b5816a4511737 Mon Sep 17 00:00:00 2001
+From: Olivier Martin <olivier.martin@arm.com>
+Date: Wed, 8 Jun 2011 19:30:49 +0100
+Subject: [PATCH] Fix GenFv for FV files located at 0x0
+
+Fix GenFv for FV file rebased at 0x0 by using the more appropriate attribute 'BaseAddressSet' already defined in the FV_INFO structure.
+---
+ BaseTools/Source/C/GenFv/GenFv.c | 2 +-
+ BaseTools/Source/C/GenFv/GenFvInternalLib.c | 3 ++-
+ 2 files changed, 3 insertions(+), 2 deletions(-)
+ mode change 100644 => 100755 BaseTools/Source/C/GenFv/GenFv.c
+
+diff --git a/BaseTools/Source/C/GenFv/GenFv.c b/BaseTools/Source/C/GenFv/GenFv.c
+old mode 100644
+new mode 100755
+index 2cb8771..4662461
+--- a/BaseTools/Source/C/GenFv/GenFv.c
++++ b/BaseTools/Source/C/GenFv/GenFv.c
+@@ -598,7 +598,7 @@ Returns:
+ );
+ } else {
+ VerboseMsg ("Create Fv image and its map file");
+- if (mFvDataInfo.BaseAddress != 0) {
++ if (mFvDataInfo.BaseAddressSet) {
+ VerboseMsg ("FvImage Rebase Address is 0x%llX", (unsigned long long) mFvDataInfo.BaseAddress);
+ }
+ //
+diff --git a/BaseTools/Source/C/GenFv/GenFvInternalLib.c b/BaseTools/Source/C/GenFv/GenFvInternalLib.c
+index 189dc43..985e4d8 100644
+--- a/BaseTools/Source/C/GenFv/GenFvInternalLib.c
++++ b/BaseTools/Source/C/GenFv/GenFvInternalLib.c
+@@ -209,6 +209,7 @@ Returns:
+ DebugMsg (NULL, 0, 9, "rebase address", "%s = %s", EFI_FV_BASE_ADDRESS_STRING, Value);
+
+ FvInfo->BaseAddress = Value64;
++ FvInfo->BaseAddressSet = TRUE;
+ }
+ }
+
+@@ -2820,7 +2821,7 @@ Returns:
+ //
+ // Don't need to relocate image when BaseAddress is not set.
+ //
+- if (FvInfo->BaseAddress == 0) {
++ if (FvInfo->BaseAddressSet == FALSE) {
+ return EFI_SUCCESS;
+ }
+ XipBase = FvInfo->BaseAddress + XipOffset;
+--
+1.6.3.3
+