]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/FaultTolerantWriteDxe/UpdateWorkingBlock.c
MdeModulePkg: Apply uncrustify changes
[mirror_edk2.git] / MdeModulePkg / Universal / FaultTolerantWriteDxe / UpdateWorkingBlock.c
index 703da6d330f3e99be46fed6f576d026671087702..61e7a92ccea15129b20f31c97305637888ff8fd5 100644 (file)
@@ -7,10 +7,9 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 \r
 **/\r
 \r
-\r
 #include "FaultTolerantWrite.h"\r
 \r
-EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER mWorkingBlockHeader = {ZERO_GUID, 0, 0, 0, 0, {0, 0, 0}, 0};\r
+EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER  mWorkingBlockHeader = { ZERO_GUID, 0, 0, 0, 0, { 0, 0, 0 }, 0 };\r
 \r
 /**\r
   Initialize a local work space header.\r
@@ -56,11 +55,13 @@ InitializeLocalWorkSpaceHeader (
   //\r
   // Calculate the Crc of woking block header\r
   //\r
-  mWorkingBlockHeader.Crc = FtwCalculateCrc32 (&mWorkingBlockHeader,\r
-                              sizeof (EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER));\r
+  mWorkingBlockHeader.Crc = FtwCalculateCrc32 (\r
+                              &mWorkingBlockHeader,\r
+                              sizeof (EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER)\r
+                              );\r
 \r
-  mWorkingBlockHeader.WorkingBlockValid    = FTW_VALID_STATE;\r
-  mWorkingBlockHeader.WorkingBlockInvalid  = FTW_INVALID_STATE;\r
+  mWorkingBlockHeader.WorkingBlockValid   = FTW_VALID_STATE;\r
+  mWorkingBlockHeader.WorkingBlockInvalid = FTW_INVALID_STATE;\r
 }\r
 \r
 /**\r
@@ -75,7 +76,7 @@ InitializeLocalWorkSpaceHeader (
 **/\r
 BOOLEAN\r
 IsValidWorkSpace (\r
-  IN EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER *WorkingHeader\r
+  IN EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER  *WorkingHeader\r
   )\r
 {\r
   if (WorkingHeader == NULL) {\r
@@ -101,7 +102,7 @@ IsValidWorkSpace (
 **/\r
 EFI_STATUS\r
 InitWorkSpaceHeader (\r
-  IN EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER *WorkingHeader\r
+  IN EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER  *WorkingHeader\r
   )\r
 {\r
   if (WorkingHeader == NULL) {\r
@@ -129,17 +130,17 @@ InitWorkSpaceHeader (
 **/\r
 EFI_STATUS\r
 ReadWorkSpaceData (\r
-  IN EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL *FvBlock,\r
-  IN UINTN                              BlockSize,\r
-  IN EFI_LBA                            Lba,\r
-  IN UINTN                              Offset,\r
-  IN UINTN                              Length,\r
-  OUT UINT8                             *Buffer\r
+  IN EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL  *FvBlock,\r
+  IN UINTN                               BlockSize,\r
+  IN EFI_LBA                             Lba,\r
+  IN UINTN                               Offset,\r
+  IN UINTN                               Length,\r
+  OUT UINT8                              *Buffer\r
   )\r
 {\r
-  EFI_STATUS            Status;\r
-  UINT8                 *Ptr;\r
-  UINTN                 MyLength;\r
+  EFI_STATUS  Status;\r
+  UINT8       *Ptr;\r
+  UINTN       MyLength;\r
 \r
   //\r
   // Calculate the real Offset and Lba to write.\r
@@ -167,9 +168,10 @@ ReadWorkSpaceData (
     if (EFI_ERROR (Status)) {\r
       return EFI_ABORTED;\r
     }\r
-    Offset = 0;\r
+\r
+    Offset  = 0;\r
     Length -= MyLength;\r
-    Ptr += MyLength;\r
+    Ptr    += MyLength;\r
     Lba++;\r
   }\r
 \r
@@ -192,17 +194,17 @@ ReadWorkSpaceData (
 **/\r
 EFI_STATUS\r
 WriteWorkSpaceData (\r
-  IN EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL *FvBlock,\r
-  IN UINTN                              BlockSize,\r
-  IN EFI_LBA                            Lba,\r
-  IN UINTN                              Offset,\r
-  IN UINTN                              Length,\r
-  IN UINT8                              *Buffer\r
+  IN EFI_FIRMWARE_VOLUME_BLOCK_PROTOCOL  *FvBlock,\r
+  IN UINTN                               BlockSize,\r
+  IN EFI_LBA                             Lba,\r
+  IN UINTN                               Offset,\r
+  IN UINTN                               Length,\r
+  IN UINT8                               *Buffer\r
   )\r
 {\r
-  EFI_STATUS            Status;\r
-  UINT8                 *Ptr;\r
-  UINTN                 MyLength;\r
+  EFI_STATUS  Status;\r
+  UINT8       *Ptr;\r
+  UINTN       MyLength;\r
 \r
   //\r
   // Calculate the real Offset and Lba to write.\r
@@ -230,11 +232,13 @@ WriteWorkSpaceData (
     if (EFI_ERROR (Status)) {\r
       return EFI_ABORTED;\r
     }\r
-    Offset = 0;\r
+\r
+    Offset  = 0;\r
     Length -= MyLength;\r
-    Ptr += MyLength;\r
+    Ptr    += MyLength;\r
     Lba++;\r
   }\r
+\r
   return EFI_SUCCESS;\r
 }\r
 \r
@@ -252,8 +256,8 @@ WorkSpaceRefresh (
   IN EFI_FTW_DEVICE  *FtwDevice\r
   )\r
 {\r
-  EFI_STATUS                      Status;\r
-  UINTN                           RemainingSpaceSize;\r
+  EFI_STATUS  Status;\r
+  UINTN       RemainingSpaceSize;\r
 \r
   //\r
   // Initialize WorkSpace as FTW_ERASED_BYTE\r
@@ -278,15 +282,16 @@ WorkSpaceRefresh (
   if (EFI_ERROR (Status)) {\r
     return EFI_ABORTED;\r
   }\r
+\r
   //\r
   // Refresh the FtwLastWriteHeader\r
   //\r
   Status = FtwGetLastWriteHeader (\r
-            FtwDevice->FtwWorkSpaceHeader,\r
-            FtwDevice->FtwWorkSpaceSize,\r
-            &FtwDevice->FtwLastWriteHeader\r
-            );\r
-  RemainingSpaceSize = FtwDevice->FtwWorkSpaceSize - ((UINTN) FtwDevice->FtwLastWriteHeader - (UINTN) FtwDevice->FtwWorkSpace);\r
+             FtwDevice->FtwWorkSpaceHeader,\r
+             FtwDevice->FtwWorkSpaceSize,\r
+             &FtwDevice->FtwLastWriteHeader\r
+             );\r
+  RemainingSpaceSize = FtwDevice->FtwWorkSpaceSize - ((UINTN)FtwDevice->FtwLastWriteHeader - (UINTN)FtwDevice->FtwWorkSpace);\r
   DEBUG ((DEBUG_INFO, "Ftw: Remaining work space size - %x\n", RemainingSpaceSize));\r
   //\r
   // If FtwGetLastWriteHeader() returns error, or the remaining space size is even not enough to contain\r
@@ -294,7 +299,7 @@ WorkSpaceRefresh (
   // pointed by FtwDevice->FtwLastWriteHeader or record pointed by FtwDevice->FtwLastWriteRecord may contain invalid data),\r
   // it needs to reclaim work space.\r
   //\r
-  if (EFI_ERROR (Status) || RemainingSpaceSize < sizeof (EFI_FAULT_TOLERANT_WRITE_HEADER) + sizeof (EFI_FAULT_TOLERANT_WRITE_RECORD)) {\r
+  if (EFI_ERROR (Status) || (RemainingSpaceSize < sizeof (EFI_FAULT_TOLERANT_WRITE_HEADER) + sizeof (EFI_FAULT_TOLERANT_WRITE_RECORD))) {\r
     //\r
     // reclaim work space in working block.\r
     //\r
@@ -303,6 +308,7 @@ WorkSpaceRefresh (
       DEBUG ((DEBUG_ERROR, "Ftw: Reclaim workspace - %r\n", Status));\r
       return EFI_ABORTED;\r
     }\r
+\r
     //\r
     // Read from working block again\r
     //\r
@@ -319,21 +325,22 @@ WorkSpaceRefresh (
     }\r
 \r
     Status = FtwGetLastWriteHeader (\r
-              FtwDevice->FtwWorkSpaceHeader,\r
-              FtwDevice->FtwWorkSpaceSize,\r
-              &FtwDevice->FtwLastWriteHeader\r
-              );\r
+               FtwDevice->FtwWorkSpaceHeader,\r
+               FtwDevice->FtwWorkSpaceSize,\r
+               &FtwDevice->FtwLastWriteHeader\r
+               );\r
     if (EFI_ERROR (Status)) {\r
       return EFI_ABORTED;\r
     }\r
   }\r
+\r
   //\r
   // Refresh the FtwLastWriteRecord\r
   //\r
   Status = FtwGetLastWriteRecord (\r
-            FtwDevice->FtwLastWriteHeader,\r
-            &FtwDevice->FtwLastWriteRecord\r
-            );\r
+             FtwDevice->FtwLastWriteHeader,\r
+             &FtwDevice->FtwLastWriteRecord\r
+             );\r
   if (EFI_ERROR (Status)) {\r
     return EFI_ABORTED;\r
   }\r
@@ -358,17 +365,17 @@ FtwReclaimWorkSpace (
   IN BOOLEAN         PreserveRecord\r
   )\r
 {\r
-  EFI_STATUS                              Status;\r
-  UINTN                                   Length;\r
-  EFI_FAULT_TOLERANT_WRITE_HEADER         *Header;\r
-  UINT8                                   *TempBuffer;\r
-  UINTN                                   TempBufferSize;\r
-  UINTN                                   SpareBufferSize;\r
-  UINT8                                   *SpareBuffer;\r
-  EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER *WorkingBlockHeader;\r
-  UINTN                                   Index;\r
-  UINT8                                   *Ptr;\r
-  EFI_LBA                                 WorkSpaceLbaOffset;\r
+  EFI_STATUS                               Status;\r
+  UINTN                                    Length;\r
+  EFI_FAULT_TOLERANT_WRITE_HEADER          *Header;\r
+  UINT8                                    *TempBuffer;\r
+  UINTN                                    TempBufferSize;\r
+  UINTN                                    SpareBufferSize;\r
+  UINT8                                    *SpareBuffer;\r
+  EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER  *WorkingBlockHeader;\r
+  UINTN                                    Index;\r
+  UINT8                                    *Ptr;\r
+  EFI_LBA                                  WorkSpaceLbaOffset;\r
 \r
   DEBUG ((DEBUG_INFO, "Ftw: start to reclaim work space\n"));\r
 \r
@@ -387,12 +394,12 @@ FtwReclaimWorkSpace (
   for (Index = 0; Index < FtwDevice->NumberOfWorkBlock; Index += 1) {\r
     Length = FtwDevice->WorkBlockSize;\r
     Status = FtwDevice->FtwFvBlock->Read (\r
-                                          FtwDevice->FtwFvBlock,\r
-                                          FtwDevice->FtwWorkBlockLba + Index,\r
-                                          0,\r
-                                          &Length,\r
-                                          Ptr\r
-                                          );\r
+                                      FtwDevice->FtwFvBlock,\r
+                                      FtwDevice->FtwWorkBlockLba + Index,\r
+                                      0,\r
+                                      &Length,\r
+                                      Ptr\r
+                                      );\r
     if (EFI_ERROR (Status)) {\r
       FreePool (TempBuffer);\r
       return EFI_ABORTED;\r
@@ -400,11 +407,12 @@ FtwReclaimWorkSpace (
 \r
     Ptr += Length;\r
   }\r
+\r
   //\r
   // Clean up the workspace, remove all the completed records.\r
   //\r
   Ptr = TempBuffer +\r
-        (UINTN) WorkSpaceLbaOffset * FtwDevice->WorkBlockSize +\r
+        (UINTN)WorkSpaceLbaOffset * FtwDevice->WorkBlockSize +\r
         FtwDevice->FtwWorkSpaceBase;\r
 \r
   //\r
@@ -459,9 +467,9 @@ FtwReclaimWorkSpace (
   //\r
   // Set the WorkingBlockValid and WorkingBlockInvalid as INVALID\r
   //\r
-  WorkingBlockHeader                      = (EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER *) (TempBuffer +\r
-                                            (UINTN) WorkSpaceLbaOffset * FtwDevice->WorkBlockSize +\r
-                                            FtwDevice->FtwWorkSpaceBase);\r
+  WorkingBlockHeader = (EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER *)(TempBuffer +\r
+                                                                   (UINTN)WorkSpaceLbaOffset * FtwDevice->WorkBlockSize +\r
+                                                                   FtwDevice->FtwWorkSpaceBase);\r
   WorkingBlockHeader->WorkingBlockValid   = FTW_INVALID_STATE;\r
   WorkingBlockHeader->WorkingBlockInvalid = FTW_INVALID_STATE;\r
 \r
@@ -494,38 +502,42 @@ FtwReclaimWorkSpace (
 \r
     Ptr += Length;\r
   }\r
+\r
   //\r
   // Write the memory buffer to spare block\r
   //\r
-  Status  = FtwEraseSpareBlock (FtwDevice);\r
+  Status = FtwEraseSpareBlock (FtwDevice);\r
   if (EFI_ERROR (Status)) {\r
     FreePool (TempBuffer);\r
     FreePool (SpareBuffer);\r
     return EFI_ABORTED;\r
   }\r
-  Ptr     = TempBuffer;\r
+\r
+  Ptr = TempBuffer;\r
   for (Index = 0; TempBufferSize > 0; Index += 1) {\r
     if (TempBufferSize > FtwDevice->SpareBlockSize) {\r
       Length = FtwDevice->SpareBlockSize;\r
     } else {\r
       Length = TempBufferSize;\r
     }\r
+\r
     Status = FtwDevice->FtwBackupFvb->Write (\r
-                                            FtwDevice->FtwBackupFvb,\r
-                                            FtwDevice->FtwSpareLba + Index,\r
-                                            0,\r
-                                            &Length,\r
-                                            Ptr\r
-                                            );\r
+                                        FtwDevice->FtwBackupFvb,\r
+                                        FtwDevice->FtwSpareLba + Index,\r
+                                        0,\r
+                                        &Length,\r
+                                        Ptr\r
+                                        );\r
     if (EFI_ERROR (Status)) {\r
       FreePool (TempBuffer);\r
       FreePool (SpareBuffer);\r
       return EFI_ABORTED;\r
     }\r
 \r
-    Ptr += Length;\r
+    Ptr            += Length;\r
     TempBufferSize -= Length;\r
   }\r
+\r
   //\r
   // Free TempBuffer\r
   //\r
@@ -535,16 +547,17 @@ FtwReclaimWorkSpace (
   // Set the WorkingBlockValid in spare block\r
   //\r
   Status = FtwUpdateFvState (\r
-            FtwDevice->FtwBackupFvb,\r
-            FtwDevice->SpareBlockSize,\r
-            FtwDevice->FtwSpareLba + FtwDevice->FtwWorkSpaceLbaInSpare,\r
-            FtwDevice->FtwWorkSpaceBaseInSpare + sizeof (EFI_GUID) + sizeof (UINT32),\r
-            WORKING_BLOCK_VALID\r
-            );\r
+             FtwDevice->FtwBackupFvb,\r
+             FtwDevice->SpareBlockSize,\r
+             FtwDevice->FtwSpareLba + FtwDevice->FtwWorkSpaceLbaInSpare,\r
+             FtwDevice->FtwWorkSpaceBaseInSpare + sizeof (EFI_GUID) + sizeof (UINT32),\r
+             WORKING_BLOCK_VALID\r
+             );\r
   if (EFI_ERROR (Status)) {\r
     FreePool (SpareBuffer);\r
     return EFI_ABORTED;\r
   }\r
+\r
   //\r
   // Before erase the working block, set WorkingBlockInvalid in working block.\r
   //\r
@@ -552,12 +565,12 @@ FtwReclaimWorkSpace (
   //                          WorkingBlockInvalid);\r
   //\r
   Status = FtwUpdateFvState (\r
-            FtwDevice->FtwFvBlock,\r
-            FtwDevice->WorkBlockSize,\r
-            FtwDevice->FtwWorkSpaceLba,\r
-            FtwDevice->FtwWorkSpaceBase + sizeof (EFI_GUID) + sizeof (UINT32),\r
-            WORKING_BLOCK_INVALID\r
-            );\r
+             FtwDevice->FtwFvBlock,\r
+             FtwDevice->WorkBlockSize,\r
+             FtwDevice->FtwWorkSpaceLba,\r
+             FtwDevice->FtwWorkSpaceBase + sizeof (EFI_GUID) + sizeof (UINT32),\r
+             WORKING_BLOCK_INVALID\r
+             );\r
   if (EFI_ERROR (Status)) {\r
     FreePool (SpareBuffer);\r
     return EFI_ABORTED;\r
@@ -573,15 +586,17 @@ FtwReclaimWorkSpace (
     FreePool (SpareBuffer);\r
     return Status;\r
   }\r
+\r
   //\r
   // Restore spare backup buffer into spare block , if no failure happened during FtwWrite.\r
   //\r
-  Status  = FtwEraseSpareBlock (FtwDevice);\r
+  Status = FtwEraseSpareBlock (FtwDevice);\r
   if (EFI_ERROR (Status)) {\r
     FreePool (SpareBuffer);\r
     return EFI_ABORTED;\r
   }\r
-  Ptr     = SpareBuffer;\r
+\r
+  Ptr = SpareBuffer;\r
   for (Index = 0; Index < FtwDevice->NumberOfSpareBlock; Index += 1) {\r
     Length = FtwDevice->SpareBlockSize;\r
     Status = FtwDevice->FtwBackupFvb->Write (\r