]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ArmVirtPkg/Library/ArmVirtGicArchLib/ArmVirtGicArchLib.c
ArmVirtPkg/ArmVirtGicArchLib: eliminate unchecked PcdSetXX() calls
[mirror_edk2.git] / ArmVirtPkg / Library / ArmVirtGicArchLib / ArmVirtGicArchLib.c
index 648806126e7807721275ebf403154f6f59b3a899..dc1f5155f1fc00862f99f54cc7eca251391499de 100644 (file)
@@ -41,6 +41,7 @@ ArmVirtGicArchLibConstructor (
   UINTN                 GicRevision;\r
   EFI_STATUS            Status;\r
   UINT64                DistBase, CpuBase, RedistBase;\r
+  RETURN_STATUS         PcdStatus;\r
 \r
   Status = gBS->LocateProtocol (&gFdtClientProtocolGuid, NULL,\r
                   (VOID **)&FdtClient);\r
@@ -85,8 +86,10 @@ ArmVirtGicArchLibConstructor (
     RedistBase = SwapBytes64 (Reg[2]);\r
     ASSERT (RedistBase < MAX_UINTN);\r
 \r
-    PcdSet64 (PcdGicDistributorBase, DistBase);\r
-    PcdSet64 (PcdGicRedistributorsBase, RedistBase);\r
+    PcdStatus = PcdSet64S (PcdGicDistributorBase, DistBase);\r
+    ASSERT_RETURN_ERROR (PcdStatus);\r
+    PcdStatus = PcdSet64S (PcdGicRedistributorsBase, RedistBase);\r
+    ASSERT_RETURN_ERROR (PcdStatus);\r
 \r
     DEBUG ((EFI_D_INFO, "Found GIC v3 (re)distributor @ 0x%Lx (0x%Lx)\n",\r
       DistBase, RedistBase));\r
@@ -120,8 +123,10 @@ ArmVirtGicArchLibConstructor (
     ASSERT (DistBase < MAX_UINTN);\r
     ASSERT (CpuBase < MAX_UINTN);\r
 \r
-    PcdSet64 (PcdGicDistributorBase, DistBase);\r
-    PcdSet64 (PcdGicInterruptInterfaceBase, CpuBase);\r
+    PcdStatus = PcdSet64S (PcdGicDistributorBase, DistBase);\r
+    ASSERT_RETURN_ERROR (PcdStatus);\r
+    PcdStatus = PcdSet64S (PcdGicInterruptInterfaceBase, CpuBase);\r
+    ASSERT_RETURN_ERROR (PcdStatus);\r
 \r
     DEBUG ((EFI_D_INFO, "Found GIC @ 0x%Lx/0x%Lx\n", DistBase, CpuBase));\r
 \r