]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/EsrtDxe/EsrtDxe.c
MdeModulePkg: Update coding style
[mirror_edk2.git] / MdeModulePkg / Universal / EsrtDxe / EsrtDxe.c
index 742abde4a6a125c7ab044687a91e97ed97107d7b..16b18e0a54dea7545ea4c005c165d5ed57435743 100644 (file)
@@ -33,7 +33,7 @@ ESRT_MANAGEMENT_PROTOCOL  mEsrtManagementProtocolTemplate = {
   Get ESRT entry from ESRT Cache by FwClass Guid \r
 \r
   @param[in]       FwClass                FwClass of Esrt entry to get  \r
-  @param[in out]  Entry                   Esrt entry returned \r
+  @param[in, out]  Entry                  Esrt entry returned \r
   \r
   @retval EFI_SUCCESS                   The variable saving this Esrt Entry exists.\r
   @retval EF_NOT_FOUND                  No correct variable found.\r
@@ -217,7 +217,7 @@ EsrtDxeRegisterEsrtEntry(
 /**\r
   This function syn up Cached ESRT with data from FMP instances\r
   Function should be called after Connect All in order to locate all FMP protocols\r
-  installed\r
+  installed.\r
 \r
   @retval EFI_SUCCESS                      Successfully sync cache repository from FMP instances\r
   @retval EFI_NOT_FOUND                   No FMP Instance are found\r
@@ -587,8 +587,13 @@ EsrtReadyToBootEventNotify (
   EsrtTable->FwResourceCount    = (UINT32)((NonFmpRepositorySize + FmpRepositorySize) / sizeof(EFI_SYSTEM_RESOURCE_ENTRY));  \r
   EsrtTable->FwResourceCountMax = PcdGet32(PcdMaxNonFmpEsrtCacheNum) + PcdGet32(PcdMaxFmpEsrtCacheNum);\r
 \r
-  CopyMem(EsrtTable + 1, NonFmpEsrtRepository, NonFmpRepositorySize);\r
-  CopyMem((UINT8 *)(EsrtTable + 1) + NonFmpRepositorySize, FmpEsrtRepository, FmpRepositorySize);\r
+  if (NonFmpRepositorySize != 0 && NonFmpEsrtRepository != NULL) {\r
+    CopyMem(EsrtTable + 1, NonFmpEsrtRepository, NonFmpRepositorySize);\r
+  }\r
+\r
+  if (FmpRepositorySize != 0 && FmpEsrtRepository != NULL) {\r
+    CopyMem((UINT8 *)(EsrtTable + 1) + NonFmpRepositorySize, FmpEsrtRepository, FmpRepositorySize);\r
+  }\r
 \r
   //\r
   // Publish Esrt to system config table\r
@@ -611,7 +616,17 @@ EXIT:
   }\r
 }\r
 \r
+/**\r
+  The module Entry Point of the Esrt DXE driver that manages cached ESRT repository \r
+  & publishes ESRT table\r
 \r
+  @param[in]  ImageHandle    The firmware allocated handle for the EFI image.\r
+  @param[in]  SystemTable    A pointer to the EFI System Table.\r
+\r
+  @retval EFI_SUCCESS    The entry point is executed successfully.\r
+  @retval Other          Some error occurs when executing this entry point.\r
+\r
+**/\r
 EFI_STATUS\r
 EFIAPI\r
 EsrtDxeEntryPoint (\r