]> git.proxmox.com Git - mirror_edk2.git/blobdiff - UefiCpuPkg/SecCore/SecBist.c
UefiCpuPkg/CpuDxe: Enable protection for newly added page table
[mirror_edk2.git] / UefiCpuPkg / SecCore / SecBist.c
index dd5c5e5edacf7156c5a3d69b7a075b41cefb22a1..a9d36acadb0d652a85732b5b92315b60bdcfb2f6 100644 (file)
@@ -37,8 +37,8 @@ EFI_PEI_PPI_DESCRIPTOR mPeiSecPlatformInformation2 = {
 /**\r
   Worker function to parse CPU BIST information from Guided HOB.\r
 \r
-  @param[out] StructureSize     Pointer to the variable describing size of the input buffer.\r
-  @param[out] StructureBuffer   Pointer to the buffer save CPU BIST information.\r
+  @param[in, out] StructureSize     Pointer to the variable describing size of the input buffer.\r
+  @param[in, out] StructureBuffer   Pointer to the buffer save CPU BIST information.\r
 \r
   @retval EFI_SUCCESS           The data was successfully returned.\r
   @retval EFI_BUFFER_TOO_SMALL  The buffer was too small.\r
@@ -79,9 +79,9 @@ GetBistFromHob (
 /**\r
   Implementation of the PlatformInformation service in EFI_SEC_PLATFORM_INFORMATION_PPI.\r
 \r
-  @param[in]  PeiServices                Pointer to the PEI Services Table.\r
-  @param[out] StructureSize              Pointer to the variable describing size of the input buffer.\r
-  @param[out  PlatformInformationRecord  Pointer to the EFI_SEC_PLATFORM_INFORMATION_RECORD.\r
+  @param[in]      PeiServices                Pointer to the PEI Services Table.\r
+  @param[in, out] StructureSize              Pointer to the variable describing size of the input buffer.\r
+  @param[out]     PlatformInformationRecord  Pointer to the EFI_SEC_PLATFORM_INFORMATION_RECORD.\r
 \r
   @retval EFI_SUCCESS                    The data was successfully returned.\r
   @retval EFI_BUFFER_TOO_SMALL           The buffer was too small.\r
@@ -101,9 +101,9 @@ SecPlatformInformationBist (
 /**\r
   Implementation of the PlatformInformation2 service in EFI_SEC_PLATFORM_INFORMATION2_PPI.\r
 \r
-  @param[in]  PeiServices                The pointer to the PEI Services Table.\r
-  @param[out] StructureSize              The pointer to the variable describing size of the input buffer.\r
-  @param[out] PlatformInformationRecord2 The pointer to the EFI_SEC_PLATFORM_INFORMATION_RECORD2.\r
+  @param[in]      PeiServices                The pointer to the PEI Services Table.\r
+  @param[in, out] StructureSize              The pointer to the variable describing size of the input buffer.\r
+  @param[out]     PlatformInformationRecord2 The pointer to the EFI_SEC_PLATFORM_INFORMATION_RECORD2.\r
 \r
   @retval EFI_SUCCESS                    The data was successfully returned.\r
   @retval EFI_BUFFER_TOO_SMALL           The buffer was too small. The current buffer size needed to\r
@@ -230,9 +230,9 @@ RepublishSecPlatformInformationPpi (
       (UINTN) BistInformationSize\r
       );\r
     //\r
-    // The old SecPlatformInformation data is on CAR.\r
-    // After memory discovered, we should never get it from CAR, or the data will be crashed.\r
-    // So, we reinstall SecPlatformInformation PPI here.\r
+    // The old SecPlatformInformation2 data is on temporary memory.\r
+    // After memory discovered, we should never get it from temporary memory,\r
+    // or the data will be crashed. So, we reinstall SecPlatformInformation2 PPI here.\r
     //\r
     Status = PeiServicesReInstallPpi (\r
                SecInformationDescriptor,\r
@@ -253,14 +253,16 @@ RepublishSecPlatformInformationPpi (
         (UINTN) BistInformationSize\r
         );\r
       //\r
-      // The old SecPlatformInformation2 data is on CAR.\r
-      // After memory discovered, we should never get it from CAR, or the data will be crashed.\r
-      // So, we reinstall SecPlatformInformation2 PPI here.\r
+      // The old SecPlatformInformation data is on temporary memory.\r
+      // After memory discovered, we should never get it from temporary memory,\r
+      // or the data will be crashed. So, we reinstall SecPlatformInformation PPI here.\r
       //\r
       Status = PeiServicesReInstallPpi (\r
                  SecInformationDescriptor,\r
                  &mPeiSecPlatformInformation\r
                  );\r
+    } else if (Status == EFI_NOT_FOUND) {\r
+      return;\r
     }\r
   }\r
 \r