]> git.proxmox.com Git - mirror_edk2.git/blobdiff - UefiCpuPkg/CpuMpPei/CpuBist.c
UefiCpuPkg/CpuMpPei: Add parameter BistInformationSize
[mirror_edk2.git] / UefiCpuPkg / CpuMpPei / CpuBist.c
index 641eb10ca5809fba555963c7d9391f1a641b78b5..dae7d78f0411e9852b19d5b105945b785b3a26f1 100644 (file)
@@ -84,6 +84,7 @@ SecPlatformInformation2 (
   @param  PpiDescriptor       Return a pointer to instance of the\r
                               EFI_PEI_PPI_DESCRIPTOR\r
   @param  BistInformationData Pointer to BIST information data\r
+  @param  BistInformationSize Return the size in bytes of BIST information\r
 \r
   @retval EFI_SUCCESS         Retrieve of the BIST data successfully\r
   @retval EFI_NOT_FOUND       No sec platform information(2) ppi export\r
@@ -95,7 +96,8 @@ GetBistInfoFromPpi (
   IN CONST EFI_PEI_SERVICES     **PeiServices,\r
   IN CONST EFI_GUID             *Guid,\r
      OUT EFI_PEI_PPI_DESCRIPTOR **PpiDescriptor,\r
-     OUT VOID                   **BistInformationData\r
+     OUT VOID                   **BistInformationData,\r
+     OUT UINT64                 *BistInformationSize OPTIONAL\r
   )\r
 {\r
   EFI_STATUS                            Status;\r
@@ -140,6 +142,9 @@ GetBistInfoFromPpi (
                                                );\r
         if (Status == EFI_SUCCESS) {\r
           *BistInformationData = SecPlatformInformation2;\r
+          if (BistInformationSize != NULL) {\r
+            *BistInformationSize = InformationSize;\r
+          }\r
           return EFI_SUCCESS;\r
         }\r
       }\r
@@ -191,7 +196,8 @@ CollectBistDataFromPpi (
              PeiServices,\r
              &gEfiSecPlatformInformation2PpiGuid,\r
              &SecInformationDescriptor,\r
-             (VOID *) &SecPlatformInformation2\r
+             (VOID *) &SecPlatformInformation2,\r
+             NULL\r
              );\r
   if (Status == EFI_SUCCESS) {\r
     //\r
@@ -207,7 +213,8 @@ CollectBistDataFromPpi (
                PeiServices,\r
                &gEfiSecPlatformInformationPpiGuid,\r
                &SecInformationDescriptor,\r
-               (VOID *) &SecPlatformInformation\r
+               (VOID *) &SecPlatformInformation,\r
+               NULL\r
                );\r
     if (Status == EFI_SUCCESS) {\r
       NumberOfData = 1;\r