From 5d1546b439b305785fc14456cdb2e2e9f96bf5ae Mon Sep 17 00:00:00 2001 From: Laszlo Ersek Date: Fri, 21 Oct 2016 11:59:36 +0200 Subject: [PATCH] ArmVirtPkg/FdtPciPcdProducerLib: eliminate unchecked PcdSetXX() calls These are deprecated / disabled under the DISABLE_NEW_DEPRECATED_INTERFACES feature test macro. Introduce a variable called PcdStatus, and use it to assert the success of these operations (there is no reason for them to fail here). Cc: Ard Biesheuvel Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=165 Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek Reviewed-by: Ard Biesheuvel Tested-by: Ard Biesheuvel # RVCT Reviewed-by: Jordan Justen --- .../FdtPciPcdProducerLib/FdtPciPcdProducerLib.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/ArmVirtPkg/Library/FdtPciPcdProducerLib/FdtPciPcdProducerLib.c b/ArmVirtPkg/Library/FdtPciPcdProducerLib/FdtPciPcdProducerLib.c index ea27cda7b7..072f54ef7d 100644 --- a/ArmVirtPkg/Library/FdtPciPcdProducerLib/FdtPciPcdProducerLib.c +++ b/ArmVirtPkg/Library/FdtPciPcdProducerLib/FdtPciPcdProducerLib.c @@ -98,6 +98,7 @@ FdtPciPcdProducerLibConstructor ( INT32 Node; RETURN_STATUS RetStatus; UINT64 IoTranslation; + RETURN_STATUS PcdStatus; PciExpressBaseAddress = PcdGet64 (PcdPciExpressBaseAddress); if (PciExpressBaseAddress != MAX_UINT64) { @@ -126,12 +127,14 @@ FdtPciPcdProducerLibConstructor ( if (!EFI_ERROR (Status) && RegSize == 2 * sizeof (UINT64)) { PciExpressBaseAddress = SwapBytes64 (*Reg); - PcdSetBool (PcdPciDisableBusEnumeration, FALSE); + PcdStatus = PcdSetBoolS (PcdPciDisableBusEnumeration, FALSE); + ASSERT_RETURN_ERROR (PcdStatus); IoTranslation = 0; RetStatus = GetPciIoTranslation (FdtClient, Node, &IoTranslation); if (!RETURN_ERROR (RetStatus)) { - PcdSet64 (PcdPciIoTranslation, IoTranslation); + PcdStatus = PcdSet64S (PcdPciIoTranslation, IoTranslation); + ASSERT_RETURN_ERROR (PcdStatus); } else { // // Support for I/O BARs is not mandatory, and so it does not make sense @@ -145,7 +148,8 @@ FdtPciPcdProducerLibConstructor ( } } - PcdSet64 (PcdPciExpressBaseAddress, PciExpressBaseAddress); + PcdStatus = PcdSet64S (PcdPciExpressBaseAddress, PciExpressBaseAddress); + ASSERT_RETURN_ERROR (PcdStatus); return RETURN_SUCCESS; }