diff options
author | Laszlo Ersek <lersek@redhat.com> | 2017-05-18 14:48:13 +0200 |
---|---|---|
committer | Laszlo Ersek <lersek@redhat.com> | 2017-05-29 14:42:36 +0200 |
commit | b9036ebee9ddaf26afc9fbe3236c3d03f83c1b0a (patch) | |
tree | c242e8c1f39ee6f4669d28b1b6c716f40bc571a0 | |
parent | d0d7289cce487eabc2180bb5b065886a37a257bd (diff) | |
download | edk2-b9036ebee9ddaf26afc9fbe3236c3d03f83c1b0a.tar.gz edk2-b9036ebee9ddaf26afc9fbe3236c3d03f83c1b0a.tar.bz2 edk2-b9036ebee9ddaf26afc9fbe3236c3d03f83c1b0a.zip |
QuarkPlatformPkg/SpiFvbServices: correct NumOfLba vararg type in EraseBlocks()
According to the PI spec, Volume 3,
EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL.EraseBlocks():
> The variable argument list is a list of tuples. Each tuple describes a
> range of LBAs to erase and consists of the following:
> * An EFI_LBA that indicates the starting LBA
> * A UINTN that indicates the number of blocks to erase
(NB, in edk2, EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL is a typedef to
EFI_FIRMWARE_VOLUME_BLOCK2_PROTOCOL.)
In this driver, the NumOfLba local variable is defined with type UINTN,
but the TYPE argument passed to VA_ARG() is UINT32. Fix the mismatch.
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Kelly Steele <kelly.steele@intel.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Reported-by: Jordan Justen <jordan.l.justen@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>
-rw-r--r-- | QuarkPlatformPkg/Platform/SpiFvbServices/FwBlockService.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/QuarkPlatformPkg/Platform/SpiFvbServices/FwBlockService.c b/QuarkPlatformPkg/Platform/SpiFvbServices/FwBlockService.c index dbb5512f38..0e7a7b79a1 100644 --- a/QuarkPlatformPkg/Platform/SpiFvbServices/FwBlockService.c +++ b/QuarkPlatformPkg/Platform/SpiFvbServices/FwBlockService.c @@ -1211,7 +1211,7 @@ Returns: break;
}
- NumOfLba = VA_ARG (args, UINT32);
+ NumOfLba = VA_ARG (args, UINTN);
//
// Check input parameters
@@ -1235,7 +1235,7 @@ Returns: break;
}
- NumOfLba = VA_ARG (args, UINT32);
+ NumOfLba = VA_ARG (args, UINTN);
while (NumOfLba > 0) {
Status = FvbEraseBlock (FvbDevice->Instance, StartingLba, mFvbModuleGlobal, EfiGoneVirtual ());
|