X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=BaseTools%2FSource%2FC%2FGenFv%2FGenFv.c;h=77537552bd40fcc2e32938cb3d6b30902e243984;hp=be3184031056a53dcea2bd3d6e8116a332d32fda;hb=f7496d717357b9af78414d19679b073403812340;hpb=39456d00f36e04b7e7efb208f350f4e83b6c3531
diff --git a/BaseTools/Source/C/GenFv/GenFv.c b/BaseTools/Source/C/GenFv/GenFv.c
index be31840310..77537552bd 100644
--- a/BaseTools/Source/C/GenFv/GenFv.c
+++ b/BaseTools/Source/C/GenFv/GenFv.c
@@ -1,17 +1,17 @@
/** @file
- This contains all code necessary to build the GenFvImage.exe utility.
+ This contains all code necessary to build the GenFvImage.exe utility.
This utility relies heavily on the GenFvImage Lib. Definitions for both
- can be found in the Tiano Firmware Volume Generation Utility
+ can be found in the Tiano Firmware Volume Generation Utility
Specification, review draft.
-Copyright (c) 2007 - 2017, 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.
+Copyright (c) 2007 - 2018, 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.
**/
@@ -38,7 +38,7 @@ EFI_GUID mEfiFirmwareFileSystem2Guid = EFI_FIRMWARE_FILE_SYSTEM2_GUID;
EFI_GUID mEfiFirmwareFileSystem3Guid = EFI_FIRMWARE_FILE_SYSTEM3_GUID;
STATIC
-VOID
+VOID
Version (
VOID
)
@@ -62,7 +62,7 @@ Returns:
}
STATIC
-VOID
+VOID
Usage (
VOID
)
@@ -86,11 +86,11 @@ Returns:
// Summary usage
//
fprintf (stdout, "\nUsage: %s [options]\n\n", UTILITY_NAME);
-
+
//
// Copyright declaration
- //
- fprintf (stdout, "Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.\n\n");
+ //
+ fprintf (stdout, "Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.\n\n");
//
// Details Option
@@ -128,7 +128,7 @@ Returns:
FV base address when current FV base address is set.\n");
fprintf (stdout, " -m logfile, --map logfile\n\
Logfile is the output fv map file name. if it is not\n\
- given, the FvName.map will be the default map file name\n");
+ given, the FvName.map will be the default map file name\n");
fprintf (stdout, " -g Guid, --guid Guid\n\
GuidValue is one specific capsule guid value\n\
or fv file system guid value.\n\
@@ -141,7 +141,7 @@ Returns:
Capsule OEM Flag is an integer between 0x0000 and 0xffff\n");
fprintf (stdout, " --capheadsize HeadSize\n\
HeadSize is one HEX or DEC format value\n\
- HeadSize is required by Capsule Image.\n");
+ HeadSize is required by Capsule Image.\n");
fprintf (stdout, " -c, --capsule Create Capsule Image.\n");
fprintf (stdout, " -p, --dump Dump Capsule Image header.\n");
fprintf (stdout, " -v, --verbose Turn on verbose output with informational messages.\n");
@@ -170,14 +170,14 @@ Arguments:
FvInfFileName The name of an FV image description file or Capsule Image.
Arguments come in pair in any order.
- -I FvInfFileName
+ -I FvInfFileName
Returns:
EFI_SUCCESS No error conditions detected.
EFI_INVALID_PARAMETER One or more of the input parameters is invalid.
- EFI_OUT_OF_RESOURCES A resource required by the utility was unavailable.
- Most commonly this will be memory allocation
+ EFI_OUT_OF_RESOURCES A resource required by the utility was unavailable.
+ Most commonly this will be memory allocation
or file creation.
EFI_LOAD_ERROR GenFvImage.lib could not be loaded.
EFI_ABORTED Error executing the GenFvImage lib.
@@ -216,7 +216,7 @@ Returns:
Status = EFI_SUCCESS;
SetUtilityName (UTILITY_NAME);
-
+
if (argc == 1) {
Error (NULL, 0, 1001, "Missing options", "No input options specified.");
Usage ();
@@ -227,13 +227,13 @@ Returns:
// Init global data to Zero
//
memset (&mFvDataInfo, 0, sizeof (FV_INFO));
- memset (&mCapDataInfo, 0, sizeof (CAP_INFO));
+ memset (&mCapDataInfo, 0, sizeof (CAP_INFO));
//
// Set the default FvGuid
//
memcpy (&mFvDataInfo.FvFileSystemGuid, &mEfiFirmwareFileSystem2Guid, sizeof (EFI_GUID));
mFvDataInfo.ForceRebase = -1;
-
+
//
// Parse command line
//
@@ -243,12 +243,12 @@ Returns:
if ((stricmp (argv[0], "-h") == 0) || (stricmp (argv[0], "--help") == 0)) {
Version ();
Usage ();
- return STATUS_SUCCESS;
+ return STATUS_SUCCESS;
}
if (stricmp (argv[0], "--version") == 0) {
Version ();
- return STATUS_SUCCESS;
+ return STATUS_SUCCESS;
}
while (argc > 0) {
@@ -260,7 +260,7 @@ Returns:
}
argc -= 2;
argv += 2;
- continue;
+ continue;
}
if ((stricmp (argv[0], "-a") == 0) || (stricmp (argv[0], "--addrfile") == 0)) {
@@ -271,7 +271,7 @@ Returns:
}
argc -= 2;
argv += 2;
- continue;
+ continue;
}
if ((stricmp (argv[0], "-o") == 0) || (stricmp (argv[0], "--outputfile") == 0)) {
@@ -282,54 +282,54 @@ Returns:
}
argc -= 2;
argv += 2;
- continue;
+ continue;
}
if ((stricmp (argv[0], "-r") == 0) || (stricmp (argv[0], "--baseaddr") == 0)) {
Status = AsciiStringToUint64 (argv[1], FALSE, &TempNumber);
if (EFI_ERROR (Status)) {
Error (NULL, 0, 1003, "Invalid option value", "%s = %s", argv[0], argv[1]);
- return STATUS_ERROR;
+ return STATUS_ERROR;
}
mFvDataInfo.BaseAddress = TempNumber;
mFvDataInfo.BaseAddressSet = TRUE;
argc -= 2;
argv += 2;
- continue;
+ continue;
}
if ((stricmp (argv[0], "-b") == 0) || (stricmp (argv[0], "--blocksize") == 0)) {
Status = AsciiStringToUint64 (argv[1], FALSE, &TempNumber);
if (EFI_ERROR (Status)) {
Error (NULL, 0, 1003, "Invalid option value", "%s = %s", argv[0], argv[1]);
- return STATUS_ERROR;
+ return STATUS_ERROR;
}
if (TempNumber == 0) {
Error (NULL, 0, 1003, "Invalid option value", "Fv block size can't be be set to zero");
- return STATUS_ERROR;
+ return STATUS_ERROR;
}
mFvDataInfo.FvBlocks[0].Length = (UINT32) TempNumber;
DebugMsg (NULL, 0, 9, "FV Block Size", "%s = 0x%llx", EFI_BLOCK_SIZE_STRING, (unsigned long long) TempNumber);
argc -= 2;
argv += 2;
- continue;
+ continue;
}
if ((stricmp (argv[0], "-n") == 0) || (stricmp (argv[0], "--numberblock") == 0)) {
Status = AsciiStringToUint64 (argv[1], FALSE, &TempNumber);
if (EFI_ERROR (Status)) {
Error (NULL, 0, 1003, "Invalid option value", "%s = %s", argv[0], argv[1]);
- return STATUS_ERROR;
+ return STATUS_ERROR;
}
if (TempNumber == 0) {
Error (NULL, 0, 1003, "Invalid option value", "Fv block number can't be set to zero");
- return STATUS_ERROR;
+ return STATUS_ERROR;
}
mFvDataInfo.FvBlocks[0].NumBlocks = (UINT32) TempNumber;
DebugMsg (NULL, 0, 9, "FV Number Block", "%s = 0x%llx", EFI_NUM_BLOCKS_STRING, (unsigned long long) TempNumber);
argc -= 2;
argv += 2;
- continue;
+ continue;
}
if ((strcmp (argv[0], "-f") == 0) || (stricmp (argv[0], "--ffsfile") == 0)) {
@@ -348,38 +348,38 @@ Returns:
argv += 2;
if (argc > 0) {
- if ((stricmp (argv[0], "-s") == 0) || (stricmp (argv[0], "--filetakensize") == 0)) {
- if (argv[1] == NULL) {
- Error (NULL, 0, 1003, "Invalid option value", "Ffsfile Size can't be null");
- return STATUS_ERROR;
- }
- Status = AsciiStringToUint64 (argv[1], FALSE, &TempNumber);
- if (EFI_ERROR (Status)) {
- Error (NULL, 0, 1003, "Invalid option value", "%s = %s", argv[0], argv[1]);
- return STATUS_ERROR;
- }
- mFvDataInfo.SizeofFvFiles[Index] = (UINT32) TempNumber;
- DebugMsg (NULL, 0, 9, "FV component file size", "the %uth size is %s", (unsigned) Index + 1, argv[1]);
- argc -= 2;
- argv += 2;
+ if ((stricmp (argv[0], "-s") == 0) || (stricmp (argv[0], "--filetakensize") == 0)) {
+ if (argv[1] == NULL) {
+ Error (NULL, 0, 1003, "Invalid option value", "Ffsfile Size can't be null");
+ return STATUS_ERROR;
+ }
+ Status = AsciiStringToUint64 (argv[1], FALSE, &TempNumber);
+ if (EFI_ERROR (Status)) {
+ Error (NULL, 0, 1003, "Invalid option value", "%s = %s", argv[0], argv[1]);
+ return STATUS_ERROR;
+ }
+ mFvDataInfo.SizeofFvFiles[Index] = (UINT32) TempNumber;
+ DebugMsg (NULL, 0, 9, "FV component file size", "the %uth size is %s", (unsigned) Index + 1, argv[1]);
+ argc -= 2;
+ argv += 2;
}
}
Index ++;
- continue;
+ continue;
}
if ((stricmp (argv[0], "-s") == 0) || (stricmp (argv[0], "--filetakensize") == 0)) {
Error (NULL, 0, 1003, "Invalid option", "It must be specified together with -f option to specify the file size.");
- return STATUS_ERROR;
+ return STATUS_ERROR;
}
if ((stricmp (argv[0], "-c") == 0) || (stricmp (argv[0], "--capsule") == 0)) {
CapsuleFlag = TRUE;
argc --;
argv ++;
- continue;
+ continue;
}
-
+
if ((strcmp (argv[0], "-F") == 0) || (stricmp (argv[0], "--force-rebase") == 0)) {
if (argv[1] == NULL) {
Error (NULL, 0, 1003, "Invalid option value", "Froce rebase flag can't be null");
@@ -397,8 +397,8 @@ Returns:
argc -= 2;
argv += 2;
- continue;
- }
+ continue;
+ }
if (stricmp (argv[0], "--capheadsize") == 0) {
//
@@ -407,13 +407,13 @@ Returns:
Status = AsciiStringToUint64 (argv[1], FALSE, &TempNumber);
if (EFI_ERROR (Status)) {
Error (NULL, 0, 1003, "Invalid option value", "%s = %s", argv[0], argv[1]);
- return STATUS_ERROR;
+ return STATUS_ERROR;
}
mCapDataInfo.HeaderSize = (UINT32) TempNumber;
DebugMsg (NULL, 0, 9, "Capsule Header size", "%s = 0x%llx", EFI_CAPSULE_HEADER_SIZE_STRING, (unsigned long long) TempNumber);
argc -= 2;
argv += 2;
- continue;
+ continue;
}
if (stricmp (argv[0], "--capflag") == 0) {
@@ -437,7 +437,7 @@ Returns:
DebugMsg (NULL, 0, 9, "Capsule Flag", argv[1]);
argc -= 2;
argv += 2;
- continue;
+ continue;
}
if (stricmp (argv[0], "--capoemflag") == 0) {
@@ -468,7 +468,7 @@ Returns:
DebugMsg (NULL, 0, 9, "Capsule Guid", "%s = %s", EFI_CAPSULE_GUID_STRING, argv[1]);
argc -= 2;
argv += 2;
- continue;
+ continue;
}
if ((stricmp (argv[0], "-g") == 0) || (stricmp (argv[0], "--guid") == 0)) {
@@ -486,7 +486,7 @@ Returns:
DebugMsg (NULL, 0, 9, "FV Guid", "%s = %s", EFI_FV_FILESYSTEMGUID_STRING, argv[1]);
argc -= 2;
argv += 2;
- continue;
+ continue;
}
if (stricmp (argv[0], "--FvNameGuid") == 0) {
@@ -502,14 +502,14 @@ Returns:
DebugMsg (NULL, 0, 9, "FV Name Guid", "%s = %s", EFI_FV_NAMEGUID_STRING, argv[1]);
argc -= 2;
argv += 2;
- continue;
+ continue;
}
if ((stricmp (argv[0], "-p") == 0) || (stricmp (argv[0], "--dump") == 0)) {
DumpCapsule = TRUE;
argc --;
argv ++;
- continue;
+ continue;
}
if ((stricmp (argv[0], "-m") == 0) || (stricmp (argv[0], "--map") == 0)) {
@@ -520,7 +520,7 @@ Returns:
}
argc -= 2;
argv += 2;
- continue;
+ continue;
}
if ((stricmp (argv[0], "-v") == 0) || (stricmp (argv[0], "--verbose") == 0)) {
@@ -564,7 +564,7 @@ Returns:
}
VerboseMsg ("%s tool start.", UTILITY_NAME);
-
+
//
// check input parameter, InfFileName can be NULL
//
@@ -581,7 +581,7 @@ Returns:
if (OutFileName != NULL) {
VerboseMsg ("the output file name is %s", OutFileName);
}
-
+
//
// Read the INF file image
//
@@ -591,7 +591,7 @@ Returns:
return STATUS_ERROR;
}
}
-
+
if (DumpCapsule) {
VerboseMsg ("Dump the capsule header information for the input capsule image %s", InfFileName);
//
@@ -636,7 +636,7 @@ Returns:
}
Status = GenerateCapImage (
- InfFileImage,
+ InfFileImage,
InfFileSize,
OutFileName
);
@@ -667,7 +667,7 @@ Returns:
if (InfFileImage != NULL) {
free (InfFileImage);
}
-
+
//
// update boot driver address and runtime driver address in address file
//
@@ -689,7 +689,7 @@ Returns:
fflush (FpFile);
fclose (FpFile);
}
-
+
if (Status == EFI_SUCCESS) {
DebugMsg (NULL, 0, 9, "The Total Fv Size", "%s = 0x%x", EFI_FV_TOTAL_SIZE_STRING, (unsigned) mFvTotalSize);
DebugMsg (NULL, 0, 9, "The used Fv Size", "%s = 0x%x", EFI_FV_TAKEN_SIZE_STRING, (unsigned) mFvTakenSize);