Browse Source

MdeModulePkg: Apply uncrustify changes

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3737

Apply uncrustify changes to .c/.h files in the MdeModulePkg package

Cc: Andrew Fish <afish@apple.com>
Cc: Leif Lindholm <leif@nuviainc.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
Michael Kubacki 2 years ago
parent
commit
1436aea4d5
100 changed files with 9754 additions and 9461 deletions
  1. 221 195
      MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenu.c
  2. 10 12
      MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenu.h
  3. 38 38
      MdeModulePkg/Application/CapsuleApp/AppSupport.c
  4. 274 242
      MdeModulePkg/Application/CapsuleApp/CapsuleApp.c
  5. 22 28
      MdeModulePkg/Application/CapsuleApp/CapsuleApp.h
  6. 292 275
      MdeModulePkg/Application/CapsuleApp/CapsuleDump.c
  7. 174 159
      MdeModulePkg/Application/CapsuleApp/CapsuleOnDisk.c
  8. 116 107
      MdeModulePkg/Application/DumpDynPcd/DumpDynPcd.c
  9. 4 4
      MdeModulePkg/Application/HelloWorld/HelloWorld.c
  10. 248 214
      MdeModulePkg/Application/MemoryProfileInfo/MemoryProfileInfo.c
  11. 196 177
      MdeModulePkg/Application/SmiHandlerProfileInfo/SmiHandlerProfileInfo.c
  12. 166 162
      MdeModulePkg/Application/UiApp/FrontPage.c
  13. 29 32
      MdeModulePkg/Application/UiApp/FrontPage.h
  14. 19 17
      MdeModulePkg/Application/UiApp/FrontPageCustomizedUi.c
  15. 9 9
      MdeModulePkg/Application/UiApp/FrontPageCustomizedUi.h
  16. 154 147
      MdeModulePkg/Application/UiApp/FrontPageCustomizedUiSupport.c
  17. 20 20
      MdeModulePkg/Application/UiApp/FrontPageCustomizedUiSupport.h
  18. 18 18
      MdeModulePkg/Application/UiApp/String.c
  19. 2 2
      MdeModulePkg/Application/UiApp/String.h
  20. 3 8
      MdeModulePkg/Application/UiApp/Ui.h
  21. 69 63
      MdeModulePkg/Application/VariableInfo/VariableInfo.c
  22. 258 253
      MdeModulePkg/Bus/Ata/AhciPei/AhciMode.c
  23. 52 45
      MdeModulePkg/Bus/Ata/AhciPei/AhciPei.c
  24. 168 168
      MdeModulePkg/Bus/Ata/AhciPei/AhciPei.h
  25. 49 45
      MdeModulePkg/Bus/Ata/AhciPei/AhciPeiBlockIo.c
  26. 1 1
      MdeModulePkg/Bus/Ata/AhciPei/AhciPeiBlockIo.h
  27. 58 53
      MdeModulePkg/Bus/Ata/AhciPei/AhciPeiPassThru.c
  28. 12 12
      MdeModulePkg/Bus/Ata/AhciPei/AhciPeiPassThru.h
  29. 22 17
      MdeModulePkg/Bus/Ata/AhciPei/AhciPeiS3.c
  30. 29 29
      MdeModulePkg/Bus/Ata/AhciPei/AhciPeiStorageSecurity.c
  31. 14 14
      MdeModulePkg/Bus/Ata/AhciPei/AhciPeiStorageSecurity.h
  32. 34 32
      MdeModulePkg/Bus/Ata/AhciPei/DevicePath.c
  33. 63 55
      MdeModulePkg/Bus/Ata/AhciPei/DmaMem.c
  34. 250 250
      MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AhciMode.c
  35. 207 207
      MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AhciMode.h
  36. 232 205
      MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c
  37. 173 173
      MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.h
  38. 15 16
      MdeModulePkg/Bus/Ata/AtaAtapiPassThru/ComponentName.c
  39. 221 220
      MdeModulePkg/Bus/Ata/AtaAtapiPassThru/IdeMode.c
  40. 34 34
      MdeModulePkg/Bus/Ata/AtaAtapiPassThru/IdeMode.h
  41. 243 247
      MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBus.c
  42. 135 144
      MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBus.h
  43. 166 159
      MdeModulePkg/Bus/Ata/AtaBusDxe/AtaPassThruExecute.c
  44. 18 17
      MdeModulePkg/Bus/Ata/AtaBusDxe/ComponentName.c
  45. 226 211
      MdeModulePkg/Bus/I2c/I2cDxe/I2cBus.c
  46. 14 13
      MdeModulePkg/Bus/I2c/I2cDxe/I2cDxe.c
  47. 87 87
      MdeModulePkg/Bus/I2c/I2cDxe/I2cDxe.h
  48. 108 107
      MdeModulePkg/Bus/I2c/I2cDxe/I2cHost.c
  49. 10 11
      MdeModulePkg/Bus/Isa/IsaBusDxe/ComponentName.c
  50. 7 8
      MdeModulePkg/Bus/Isa/IsaBusDxe/ComponentName.h
  51. 68 62
      MdeModulePkg/Bus/Isa/IsaBusDxe/IsaBusDxe.c
  52. 6 6
      MdeModulePkg/Bus/Isa/IsaBusDxe/IsaBusDxe.h
  53. 21 21
      MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/ComponentName.c
  54. 282 257
      MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KbdCtrller.c
  55. 85 74
      MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KbdTextIn.c
  56. 87 73
      MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2Keyboard.c
  57. 123 124
      MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2Keyboard.h
  58. 132 123
      MdeModulePkg/Bus/Isa/Ps2MouseDxe/CommPs2.c
  59. 44 44
      MdeModulePkg/Bus/Isa/Ps2MouseDxe/CommPs2.h
  60. 15 14
      MdeModulePkg/Bus/Isa/Ps2MouseDxe/ComponentName.c
  61. 94 91
      MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2Mouse.c
  62. 39 38
      MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2Mouse.h
  63. 16 18
      MdeModulePkg/Bus/Pci/EhciDxe/ComponentName.c
  64. 5 8
      MdeModulePkg/Bus/Pci/EhciDxe/ComponentName.h
  65. 322 324
      MdeModulePkg/Bus/Pci/EhciDxe/Ehci.c
  66. 55 59
      MdeModulePkg/Bus/Pci/EhciDxe/Ehci.h
  67. 23 27
      MdeModulePkg/Bus/Pci/EhciDxe/EhciDebug.c
  68. 7 11
      MdeModulePkg/Bus/Pci/EhciDxe/EhciDebug.h
  69. 70 99
      MdeModulePkg/Bus/Pci/EhciDxe/EhciReg.c
  70. 72 85
      MdeModulePkg/Bus/Pci/EhciDxe/EhciReg.h
  71. 183 198
      MdeModulePkg/Bus/Pci/EhciDxe/EhciSched.c
  72. 31 41
      MdeModulePkg/Bus/Pci/EhciDxe/EhciSched.h
  73. 156 165
      MdeModulePkg/Bus/Pci/EhciDxe/EhciUrb.c
  74. 147 154
      MdeModulePkg/Bus/Pci/EhciDxe/EhciUrb.h
  75. 80 92
      MdeModulePkg/Bus/Pci/EhciDxe/UsbHcMem.c
  76. 22 27
      MdeModulePkg/Bus/Pci/EhciDxe/UsbHcMem.h
  77. 47 42
      MdeModulePkg/Bus/Pci/EhciPei/DmaMem.c
  78. 294 291
      MdeModulePkg/Bus/Pci/EhciPei/EhcPeim.c
  79. 57 59
      MdeModulePkg/Bus/Pci/EhciPei/EhcPeim.h
  80. 62 65
      MdeModulePkg/Bus/Pci/EhciPei/EhciReg.h
  81. 69 73
      MdeModulePkg/Bus/Pci/EhciPei/EhciSched.c
  82. 9 9
      MdeModulePkg/Bus/Pci/EhciPei/EhciSched.h
  83. 149 148
      MdeModulePkg/Bus/Pci/EhciPei/EhciUrb.c
  84. 149 151
      MdeModulePkg/Bus/Pci/EhciPei/EhciUrb.h
  85. 124 123
      MdeModulePkg/Bus/Pci/EhciPei/UsbHcMem.c
  86. 15 16
      MdeModulePkg/Bus/Pci/EhciPei/UsbHcMem.h
  87. 219 215
      MdeModulePkg/Bus/Pci/IdeBusPei/AtapiPeim.c
  88. 103 107
      MdeModulePkg/Bus/Pci/IdeBusPei/AtapiPeim.h
  89. 130 130
      MdeModulePkg/Bus/Pci/IncompatiblePciDeviceSupportDxe/IncompatiblePciDeviceSupport.c
  90. 15 15
      MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/ComponentName.c
  91. 88 55
      MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceDxe.c
  92. 341 296
      MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceIo.c
  93. 21 21
      MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceIo.h
  94. 24 23
      MdeModulePkg/Bus/Pci/NvmExpressDxe/ComponentName.c
  95. 177 168
      MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpress.c
  96. 93 94
      MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpress.h
  97. 320 285
      MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressBlockIo.c
  98. 41 41
      MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressBlockIo.h
  99. 18 21
      MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDiskInfo.c
  100. 14 16
      MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDiskInfo.h

+ 221 - 195
MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenu.c

@@ -8,24 +8,24 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 
 #include "BootManagerMenu.h"
 
-EFI_HII_HANDLE gStringPackHandle;
+EFI_HII_HANDLE  gStringPackHandle;
 
-BOOLEAN   mModeInitialized = FALSE;
+BOOLEAN  mModeInitialized = FALSE;
 
 //
 // Boot video resolution and text mode.
 //
-UINT32    mBootHorizontalResolution    = 0;
-UINT32    mBootVerticalResolution      = 0;
-UINT32    mBootTextModeColumn          = 0;
-UINT32    mBootTextModeRow             = 0;
+UINT32  mBootHorizontalResolution = 0;
+UINT32  mBootVerticalResolution   = 0;
+UINT32  mBootTextModeColumn       = 0;
+UINT32  mBootTextModeRow          = 0;
 //
 // BIOS setup video resolution and text mode.
 //
-UINT32    mSetupTextModeColumn         = 0;
-UINT32    mSetupTextModeRow            = 0;
-UINT32    mSetupHorizontalResolution   = 0;
-UINT32    mSetupVerticalResolution     = 0;
+UINT32  mSetupTextModeColumn       = 0;
+UINT32  mSetupTextModeRow          = 0;
+UINT32  mSetupHorizontalResolution = 0;
+UINT32  mSetupVerticalResolution   = 0;
 
 /**
   Prints a unicode string to the default console, at
@@ -40,16 +40,16 @@ UINT32    mSetupVerticalResolution     = 0;
 **/
 UINTN
 PrintStringAt (
-  IN UINTN     Column,
-  IN UINTN     Row,
-  IN CHAR16    *String
+  IN UINTN   Column,
+  IN UINTN   Row,
+  IN CHAR16  *String
   )
 {
-  UINTN         ScreenWidth;
-  UINTN         ScreenRows;
-  CHAR16        *TurncateString;
-  EFI_STATUS    Status;
-  UINTN         ShowingLength;
+  UINTN       ScreenWidth;
+  UINTN       ScreenRows;
+  CHAR16      *TurncateString;
+  EFI_STATUS  Status;
+  UINTN       ShowingLength;
 
   gST->ConOut->SetCursorPosition (gST->ConOut, Column, Row);
 
@@ -60,7 +60,7 @@ PrintStringAt (
                  &ScreenRows
                  );
 
-  if (Column > (ScreenWidth - 1) || Row > (ScreenRows - 1)) {
+  if ((Column > (ScreenWidth - 1)) || (Row > (ScreenRows - 1))) {
     return 0;
   }
 
@@ -71,7 +71,7 @@ PrintStringAt (
     // TurncateString length should leave one character for draw box and
     // require one character for string end.
     //
-    ShowingLength = ScreenWidth - Column - 1;
+    ShowingLength  = ScreenWidth - Column - 1;
     TurncateString = AllocatePool ((ShowingLength + 1) * sizeof (CHAR16));
 
     if (TurncateString == NULL) {
@@ -89,7 +89,7 @@ PrintStringAt (
     *(TurncateString + ShowingLength - 2) = L'.';
     *(TurncateString + ShowingLength - 1) = L'.';
     *(TurncateString + ShowingLength)     = L'\0';
-    ShowingLength = Print (L"%s", TurncateString);
+    ShowingLength                         = Print (L"%s", TurncateString);
     FreePool (TurncateString);
     return ShowingLength;
   } else {
@@ -110,13 +110,13 @@ PrintStringAt (
 **/
 UINTN
 PrintCharAt (
-  IN UINTN     Column,
-  IN UINTN     Row,
-  CHAR16       Character
+  IN UINTN  Column,
+  IN UINTN  Row,
+  CHAR16    Character
   )
 {
-  UINTN         ScreenWidth;
-  UINTN         ScreenRows;
+  UINTN  ScreenWidth;
+  UINTN  ScreenRows;
 
   gST->ConOut->SetCursorPosition (gST->ConOut, Column, Row);
 
@@ -127,7 +127,7 @@ PrintCharAt (
                  &ScreenRows
                  );
 
-  if (Column > (ScreenWidth - 1) || Row > (ScreenRows - 1)) {
+  if ((Column > (ScreenWidth - 1)) || (Row > (ScreenRows - 1))) {
     return 0;
   }
 
@@ -145,30 +145,31 @@ PrintCharAt (
 **/
 UINTN
 GetLineWidth (
-  IN EFI_STRING_ID       StringId
+  IN EFI_STRING_ID  StringId
   )
 {
-  UINTN        Index;
-  UINTN        IncrementValue;
-  EFI_STRING   String;
-  UINTN        LineWidth;
+  UINTN       Index;
+  UINTN       IncrementValue;
+  EFI_STRING  String;
+  UINTN       LineWidth;
 
   LineWidth = 0;
-  String = HiiGetString (gStringPackHandle, StringId, NULL);
+  String    = HiiGetString (gStringPackHandle, StringId, NULL);
 
   if (String != NULL) {
-    Index           = 0;
-    IncrementValue  = 1;
+    Index          = 0;
+    IncrementValue = 1;
 
     do {
       //
       // Advance to the null-terminator or to the first width directive
       //
-      for (;
-           (String[Index] != NARROW_CHAR) && (String[Index] != WIDE_CHAR) && (String[Index] != 0);
-           Index++, LineWidth = LineWidth + IncrementValue
-          )
-        ;
+      for ( ;
+            (String[Index] != NARROW_CHAR) && (String[Index] != WIDE_CHAR) && (String[Index] != 0);
+            Index++, LineWidth = LineWidth + IncrementValue
+            )
+      {
+      }
 
       //
       // We hit the null-terminator, we now have a count
@@ -176,6 +177,7 @@ GetLineWidth (
       if (String[Index] == 0) {
         break;
       }
+
       //
       // We encountered a narrow directive - strip it from the size calculation since it doesn't get printed
       // and also set the flag that determines what we increment by.(if narrow, increment by 1, if wide increment by 2)
@@ -194,6 +196,7 @@ GetLineWidth (
         IncrementValue = 2;
       }
     } while (String[Index] != 0);
+
     FreePool (String);
   }
 
@@ -214,35 +217,37 @@ InitializeBootMenuScreen (
   IN OUT  BOOT_MENU_POPUP_DATA  *BootMenuData
   )
 {
-  UINTN         MaxStrWidth;
-  UINTN         StrWidth;
-  UINTN         Index;
-  UINTN         Column;
-  UINTN         Row;
-  UINTN         MaxPrintRows;
-  UINTN         UnSelectableItmes;
+  UINTN  MaxStrWidth;
+  UINTN  StrWidth;
+  UINTN  Index;
+  UINTN  Column;
+  UINTN  Row;
+  UINTN  MaxPrintRows;
+  UINTN  UnSelectableItmes;
 
   if (BootMenuData == NULL) {
     return EFI_INVALID_PARAMETER;
   }
+
   //
   // Get maximum string width
   //
   MaxStrWidth = 0;
   for (Index = 0; Index < TITLE_TOKEN_COUNT; Index++) {
-    StrWidth = GetLineWidth (BootMenuData->TitleToken[Index]);
+    StrWidth    = GetLineWidth (BootMenuData->TitleToken[Index]);
     MaxStrWidth = MaxStrWidth > StrWidth ? MaxStrWidth : StrWidth;
   }
 
   for (Index = 0; Index < BootMenuData->ItemCount; Index++) {
-    StrWidth = GetLineWidth (BootMenuData->PtrTokens[Index]);
+    StrWidth    = GetLineWidth (BootMenuData->PtrTokens[Index]);
     MaxStrWidth = MaxStrWidth > StrWidth ? MaxStrWidth : StrWidth;
   }
 
   for (Index = 0; Index < HELP_TOKEN_COUNT; Index++) {
-    StrWidth = GetLineWidth (BootMenuData->HelpToken[Index]);
+    StrWidth    = GetLineWidth (BootMenuData->HelpToken[Index]);
     MaxStrWidth = MaxStrWidth > StrWidth ? MaxStrWidth : StrWidth;
   }
+
   //
   // query current row and column to calculate boot menu location
   //
@@ -253,31 +258,34 @@ InitializeBootMenuScreen (
                  &Row
                  );
 
-  MaxPrintRows = Row - 6;
+  MaxPrintRows      = Row - 6;
   UnSelectableItmes = TITLE_TOKEN_COUNT + 2 + HELP_TOKEN_COUNT + 2;
   if (MaxStrWidth + 8 > Column) {
     BootMenuData->MenuScreen.Width = Column;
   } else {
     BootMenuData->MenuScreen.Width = MaxStrWidth + 8;
   }
+
   if (BootMenuData->ItemCount + UnSelectableItmes > MaxPrintRows) {
-    BootMenuData->MenuScreen.Height = MaxPrintRows;
-    BootMenuData->ScrollBarControl.HasScrollBar = TRUE;
+    BootMenuData->MenuScreen.Height                   = MaxPrintRows;
+    BootMenuData->ScrollBarControl.HasScrollBar       = TRUE;
     BootMenuData->ScrollBarControl.ItemCountPerScreen = MaxPrintRows - UnSelectableItmes;
-    BootMenuData->ScrollBarControl.FirstItem = 0;
-    BootMenuData->ScrollBarControl.LastItem = MaxPrintRows - UnSelectableItmes - 1;
+    BootMenuData->ScrollBarControl.FirstItem          = 0;
+    BootMenuData->ScrollBarControl.LastItem           = MaxPrintRows - UnSelectableItmes - 1;
   } else {
-    BootMenuData->MenuScreen.Height = BootMenuData->ItemCount + UnSelectableItmes;
-    BootMenuData->ScrollBarControl.HasScrollBar = FALSE;
+    BootMenuData->MenuScreen.Height                   = BootMenuData->ItemCount + UnSelectableItmes;
+    BootMenuData->ScrollBarControl.HasScrollBar       = FALSE;
     BootMenuData->ScrollBarControl.ItemCountPerScreen = BootMenuData->ItemCount;
-    BootMenuData->ScrollBarControl.FirstItem = 0;
-    BootMenuData->ScrollBarControl.LastItem = BootMenuData->ItemCount - 1;
+    BootMenuData->ScrollBarControl.FirstItem          = 0;
+    BootMenuData->ScrollBarControl.LastItem           = BootMenuData->ItemCount - 1;
   }
+
   BootMenuData->MenuScreen.StartCol = (Column -  BootMenuData->MenuScreen.Width) / 2;
   BootMenuData->MenuScreen.StartRow = (Row -  BootMenuData->MenuScreen.Height) / 2;
 
   return EFI_SUCCESS;
 }
+
 /**
   This function uses check boot option is wheher setup application or no
 
@@ -289,18 +297,18 @@ InitializeBootMenuScreen (
 **/
 BOOLEAN
 IsBootManagerMenu (
-  IN  EFI_BOOT_MANAGER_LOAD_OPTION    *BootOption
+  IN  EFI_BOOT_MANAGER_LOAD_OPTION  *BootOption
   )
 {
-  EFI_STATUS                          Status;
-  EFI_BOOT_MANAGER_LOAD_OPTION        BootManagerMenu;
+  EFI_STATUS                    Status;
+  EFI_BOOT_MANAGER_LOAD_OPTION  BootManagerMenu;
 
   Status = EfiBootManagerGetBootManagerMenu (&BootManagerMenu);
   if (!EFI_ERROR (Status)) {
     EfiBootManagerFreeLoadOption (&BootManagerMenu);
   }
 
-  return (BOOLEAN) (!EFI_ERROR (Status) && (BootOption->OptionNumber == BootManagerMenu.OptionNumber));
+  return (BOOLEAN)(!EFI_ERROR (Status) && (BootOption->OptionNumber == BootManagerMenu.OptionNumber));
 }
 
 /**
@@ -316,13 +324,13 @@ IgnoreBootOption (
   IN   EFI_BOOT_MANAGER_LOAD_OPTION  *BootOption
   )
 {
-  EFI_STATUS                    Status;
-  EFI_DEVICE_PATH_PROTOCOL      *ImageDevicePath;
+  EFI_STATUS                Status;
+  EFI_DEVICE_PATH_PROTOCOL  *ImageDevicePath;
 
   //
   // Ignore myself.
   //
-  Status = gBS->HandleProtocol (gImageHandle, &gEfiLoadedImageDevicePathProtocolGuid, (VOID **) &ImageDevicePath);
+  Status = gBS->HandleProtocol (gImageHandle, &gEfiLoadedImageDevicePathProtocolGuid, (VOID **)&ImageDevicePath);
   ASSERT_EFI_ERROR (Status);
   if (CompareMem (BootOption->FilePath, ImageDevicePath, GetDevicePathSize (ImageDevicePath)) == 0) {
     return TRUE;
@@ -363,10 +371,10 @@ InitializeBootMenuData (
   OUT  BOOT_MENU_POPUP_DATA          *BootMenuData
   )
 {
-  UINTN                         Index;
-  UINTN                         StrIndex;
+  UINTN  Index;
+  UINTN  StrIndex;
 
-  if (BootOption == NULL || BootMenuData == NULL) {
+  if ((BootOption == NULL) || (BootMenuData == NULL)) {
     return EFI_INVALID_PARAMETER;
   }
 
@@ -391,7 +399,7 @@ InitializeBootMenuData (
                                             );
   }
 
-  BootMenuData->ItemCount           = StrIndex;
+  BootMenuData->ItemCount    = StrIndex;
   BootMenuData->HelpToken[0] = STRING_TOKEN (STR_BOOT_POPUP_MENU_HELP1_STRING);
   BootMenuData->HelpToken[1] = STRING_TOKEN (STR_BOOT_POPUP_MENU_HELP2_STRING);
   BootMenuData->HelpToken[2] = STRING_TOKEN (STR_BOOT_POPUP_MENU_HELP3_STRING);
@@ -417,93 +425,101 @@ BootMenuSelectItem (
   IN OUT BOOT_MENU_POPUP_DATA  *BootMenuData
   )
 {
-  INT32                 SavedAttribute;
-  EFI_STRING            String;
-  UINTN                 StartCol;
-  UINTN                 StartRow;
-  UINTN                 PrintCol;
-  UINTN                 PrintRow;
-  UINTN                 TopShadeNum;
-  UINTN                 LowShadeNum;
-  UINTN                 FirstItem;
-  UINTN                 LastItem;
-  UINTN                 ItemCountPerScreen;
-  UINTN                 Index;
-  BOOLEAN               RePaintItems;
-
-  if (BootMenuData == NULL || WantSelectItem >= BootMenuData->ItemCount) {
+  INT32       SavedAttribute;
+  EFI_STRING  String;
+  UINTN       StartCol;
+  UINTN       StartRow;
+  UINTN       PrintCol;
+  UINTN       PrintRow;
+  UINTN       TopShadeNum;
+  UINTN       LowShadeNum;
+  UINTN       FirstItem;
+  UINTN       LastItem;
+  UINTN       ItemCountPerScreen;
+  UINTN       Index;
+  BOOLEAN     RePaintItems;
+
+  if ((BootMenuData == NULL) || (WantSelectItem >= BootMenuData->ItemCount)) {
     return EFI_INVALID_PARAMETER;
   }
+
   ASSERT (BootMenuData->ItemCount != 0);
   SavedAttribute = gST->ConOut->Mode->Attribute;
-  RePaintItems = FALSE;
-  StartCol = BootMenuData->MenuScreen.StartCol;
-  StartRow = BootMenuData->MenuScreen.StartRow;
+  RePaintItems   = FALSE;
+  StartCol       = BootMenuData->MenuScreen.StartCol;
+  StartRow       = BootMenuData->MenuScreen.StartRow;
   //
   // print selectable items again and adjust scroll bar if need
   //
   if (BootMenuData->ScrollBarControl.HasScrollBar &&
-      (WantSelectItem < BootMenuData->ScrollBarControl.FirstItem ||
-      WantSelectItem > BootMenuData->ScrollBarControl.LastItem ||
-      WantSelectItem == BootMenuData->SelectItem)) {
-    ItemCountPerScreen   = BootMenuData->ScrollBarControl.ItemCountPerScreen;
+      ((WantSelectItem < BootMenuData->ScrollBarControl.FirstItem) ||
+       (WantSelectItem > BootMenuData->ScrollBarControl.LastItem) ||
+       (WantSelectItem == BootMenuData->SelectItem)))
+  {
+    ItemCountPerScreen = BootMenuData->ScrollBarControl.ItemCountPerScreen;
     //
     // Set first item and last item
     //
     if (WantSelectItem < BootMenuData->ScrollBarControl.FirstItem) {
       BootMenuData->ScrollBarControl.FirstItem = WantSelectItem;
-      BootMenuData->ScrollBarControl.LastItem = WantSelectItem + ItemCountPerScreen - 1;
+      BootMenuData->ScrollBarControl.LastItem  = WantSelectItem + ItemCountPerScreen - 1;
     } else if (WantSelectItem > BootMenuData->ScrollBarControl.LastItem) {
       BootMenuData->ScrollBarControl.FirstItem = WantSelectItem - ItemCountPerScreen + 1;
-      BootMenuData->ScrollBarControl.LastItem = WantSelectItem;
+      BootMenuData->ScrollBarControl.LastItem  = WantSelectItem;
     }
+
     gST->ConOut->SetAttribute (gST->ConOut, EFI_WHITE | EFI_BACKGROUND_BLUE);
-    FirstItem = BootMenuData->ScrollBarControl.FirstItem;
-    LastItem  = BootMenuData->ScrollBarControl.LastItem;
+    FirstItem   = BootMenuData->ScrollBarControl.FirstItem;
+    LastItem    = BootMenuData->ScrollBarControl.LastItem;
     TopShadeNum = 0;
     if (FirstItem != 0) {
       TopShadeNum = (FirstItem * ItemCountPerScreen) / BootMenuData->ItemCount;
       if ((FirstItem * ItemCountPerScreen) % BootMenuData->ItemCount != 0) {
         TopShadeNum++;
       }
+
       PrintCol = StartCol  + BootMenuData->MenuScreen.Width - 2;
       PrintRow = StartRow + TITLE_TOKEN_COUNT + 2;
       for (Index = 0; Index < TopShadeNum; Index++, PrintRow++) {
         PrintCharAt (PrintCol, PrintRow, BLOCKELEMENT_LIGHT_SHADE);
       }
     }
+
     LowShadeNum = 0;
     if (LastItem != BootMenuData->ItemCount - 1) {
       LowShadeNum = ((BootMenuData->ItemCount - 1 - LastItem) * ItemCountPerScreen) / BootMenuData->ItemCount;
       if (((BootMenuData->ItemCount - 1 - LastItem) * ItemCountPerScreen) % BootMenuData->ItemCount != 0) {
         LowShadeNum++;
       }
+
       PrintCol = StartCol  + BootMenuData->MenuScreen.Width - 2;
       PrintRow = StartRow + TITLE_TOKEN_COUNT + 2 + ItemCountPerScreen - LowShadeNum;
       for (Index = 0; Index < LowShadeNum; Index++, PrintRow++) {
         PrintCharAt (PrintCol, PrintRow, BLOCKELEMENT_LIGHT_SHADE);
       }
     }
+
     PrintCol = StartCol  + BootMenuData->MenuScreen.Width - 2;
     PrintRow = StartRow + TITLE_TOKEN_COUNT + 2 + TopShadeNum;
     for (Index = TopShadeNum; Index < ItemCountPerScreen - LowShadeNum; Index++, PrintRow++) {
       PrintCharAt (PrintCol, PrintRow, BLOCKELEMENT_FULL_BLOCK);
     }
 
-
     //
     // Clear selectable items first
     //
     PrintCol = StartCol  + 1;
     PrintRow = StartRow + TITLE_TOKEN_COUNT + 2;
-    String = AllocateZeroPool ((BootMenuData->MenuScreen.Width - 2) * sizeof (CHAR16));
+    String   = AllocateZeroPool ((BootMenuData->MenuScreen.Width - 2) * sizeof (CHAR16));
     ASSERT (String != NULL);
     for (Index = 0; Index < BootMenuData->MenuScreen.Width - 3; Index++) {
       String[Index] = 0x20;
     }
+
     for (Index = 0; Index < ItemCountPerScreen; Index++) {
       PrintStringAt (PrintCol, PrintRow + Index, String);
     }
+
     FreePool (String);
     //
     // print selectable items
@@ -513,6 +529,7 @@ BootMenuSelectItem (
       PrintStringAt (PrintCol, PrintRow, String);
       FreePool (String);
     }
+
     RePaintItems = TRUE;
   }
 
@@ -521,9 +538,9 @@ BootMenuSelectItem (
   // items, clear select item
   //
   FirstItem = BootMenuData->ScrollBarControl.FirstItem;
-  if (WantSelectItem != BootMenuData->SelectItem && !RePaintItems) {
+  if ((WantSelectItem != BootMenuData->SelectItem) && !RePaintItems) {
     gST->ConOut->SetAttribute (gST->ConOut, EFI_WHITE | EFI_BACKGROUND_BLUE);
-    String = HiiGetString (gStringPackHandle, BootMenuData->PtrTokens[BootMenuData->SelectItem], NULL);
+    String   = HiiGetString (gStringPackHandle, BootMenuData->PtrTokens[BootMenuData->SelectItem], NULL);
     PrintCol = StartCol  + 1;
     PrintRow = StartRow + 3 + BootMenuData->SelectItem - FirstItem;
     PrintStringAt (PrintCol, PrintRow, String);
@@ -534,7 +551,7 @@ BootMenuSelectItem (
   // Print want to select item
   //
   gST->ConOut->SetAttribute (gST->ConOut, EFI_WHITE | EFI_BACKGROUND_BLACK);
-  String = HiiGetString (gStringPackHandle, BootMenuData->PtrTokens[WantSelectItem], NULL);
+  String   = HiiGetString (gStringPackHandle, BootMenuData->PtrTokens[WantSelectItem], NULL);
   PrintCol = StartCol  + 1;
   PrintRow = StartRow + TITLE_TOKEN_COUNT + 2 + WantSelectItem - FirstItem;
   PrintStringAt (PrintCol, PrintRow, String);
@@ -558,26 +575,26 @@ DrawBootPopupMenu (
   IN  BOOT_MENU_POPUP_DATA  *BootMenuData
   )
 {
-  EFI_STRING            String;
-  UINTN                 Index;
-  UINTN                 Width;
-  UINTN                 StartCol;
-  UINTN                 StartRow;
-  UINTN                 PrintRow;
-  UINTN                 PrintCol;
-  UINTN                 LineWidth;
-  INT32                 SavedAttribute;
-  UINTN                 ItemCountPerScreen;
+  EFI_STRING  String;
+  UINTN       Index;
+  UINTN       Width;
+  UINTN       StartCol;
+  UINTN       StartRow;
+  UINTN       PrintRow;
+  UINTN       PrintCol;
+  UINTN       LineWidth;
+  INT32       SavedAttribute;
+  UINTN       ItemCountPerScreen;
 
   gST->ConOut->ClearScreen (gST->ConOut);
 
   SavedAttribute = gST->ConOut->Mode->Attribute;
   gST->ConOut->SetAttribute (gST->ConOut, EFI_WHITE | EFI_BACKGROUND_BLUE);
-  Width    = BootMenuData->MenuScreen.Width;
-  StartCol = BootMenuData->MenuScreen.StartCol;
-  StartRow = BootMenuData->MenuScreen.StartRow;
+  Width              = BootMenuData->MenuScreen.Width;
+  StartCol           = BootMenuData->MenuScreen.StartCol;
+  StartRow           = BootMenuData->MenuScreen.StartRow;
   ItemCountPerScreen = BootMenuData->ScrollBarControl.ItemCountPerScreen;
-  PrintRow = StartRow;
+  PrintRow           = StartRow;
 
   gST->ConOut->EnableCursor (gST->ConOut, FALSE);
   //
@@ -587,6 +604,7 @@ DrawBootPopupMenu (
   for (Index = 1; Index < Width - 1; Index++) {
     PrintCharAt (StartCol + Index, PrintRow, BOXDRAW_HORIZONTAL);
   }
+
   PrintCharAt (StartCol + Width - 1, PrintRow, BOXDRAW_DOWN_LEFT);
 
   //
@@ -610,6 +628,7 @@ DrawBootPopupMenu (
   for (Index = 1; Index < Width - 1; Index++) {
     PrintCharAt (StartCol + Index, PrintRow, BOXDRAW_HORIZONTAL);
   }
+
   PrintCharAt (StartCol + Width - 1, PrintRow, BOXDRAW_VERTICAL_LEFT);
 
   //
@@ -627,6 +646,7 @@ DrawBootPopupMenu (
   for (Index = 1; Index < Width - 1; Index++) {
     PrintCharAt (StartCol + Index, PrintRow, BOXDRAW_HORIZONTAL);
   }
+
   PrintCharAt (StartCol + Width - 1, PrintRow, BOXDRAW_VERTICAL_LEFT);
 
   //
@@ -638,6 +658,7 @@ DrawBootPopupMenu (
     PrintStringAt (StartCol + 1, PrintRow, String);
     PrintCharAt (StartCol + Width - 1, PrintRow, BOXDRAW_VERTICAL);
   }
+
   FreePool (String);
 
   PrintRow++;
@@ -645,17 +666,17 @@ DrawBootPopupMenu (
   for (Index = 1; Index < Width - 1; Index++) {
     PrintCharAt (StartCol + Index, PrintRow, BOXDRAW_HORIZONTAL);
   }
-  PrintCharAt (StartCol + Width - 1, PrintRow, BOXDRAW_UP_LEFT);
 
+  PrintCharAt (StartCol + Width - 1, PrintRow, BOXDRAW_UP_LEFT);
 
   //
   // print title strings
   //
   PrintRow = StartRow + 1;
   for (Index = 0; Index < TITLE_TOKEN_COUNT; Index++, PrintRow++) {
-    String = HiiGetString (gStringPackHandle, BootMenuData->TitleToken[Index], NULL);
+    String    = HiiGetString (gStringPackHandle, BootMenuData->TitleToken[Index], NULL);
     LineWidth = GetLineWidth (BootMenuData->TitleToken[Index]);
-    PrintCol = StartCol + (Width - LineWidth) / 2;
+    PrintCol  = StartCol + (Width - LineWidth) / 2;
     PrintStringAt (PrintCol, PrintRow, String);
     FreePool (String);
   }
@@ -676,9 +697,9 @@ DrawBootPopupMenu (
   //
   PrintRow++;
   for (Index = 0; Index < HELP_TOKEN_COUNT; Index++, PrintRow++) {
-    String = HiiGetString (gStringPackHandle, BootMenuData->HelpToken[Index], NULL);
+    String    = HiiGetString (gStringPackHandle, BootMenuData->HelpToken[Index], NULL);
     LineWidth = GetLineWidth (BootMenuData->HelpToken[Index]);
-    PrintCol = StartCol + (Width - LineWidth) / 2;
+    PrintCol  = StartCol + (Width - LineWidth) / 2;
     PrintStringAt (PrintCol, PrintRow, String);
     FreePool (String);
   }
@@ -718,8 +739,8 @@ BootFromSelectOption (
   IN   UINTN                         SelectItem
   )
 {
-  UINTN                 ItemNum;
-  UINTN                 Index;
+  UINTN  ItemNum;
+  UINTN  Index;
 
   ASSERT (BootOptions != NULL);
 
@@ -778,7 +799,7 @@ BdsSetConsoleMode (
   Status = gBS->HandleProtocol (
                   gST->ConsoleOutHandle,
                   &gEfiGraphicsOutputProtocolGuid,
-                  (VOID**)&GraphicsOutput
+                  (VOID **)&GraphicsOutput
                   );
   if (EFI_ERROR (Status)) {
     GraphicsOutput = NULL;
@@ -787,7 +808,7 @@ BdsSetConsoleMode (
   Status = gBS->HandleProtocol (
                   gST->ConsoleOutHandle,
                   &gEfiSimpleTextOutProtocolGuid,
-                  (VOID**)&SimpleTextOut
+                  (VOID **)&SimpleTextOut
                   );
   if (EFI_ERROR (Status)) {
     SimpleTextOut = NULL;
@@ -816,7 +837,7 @@ BdsSetConsoleMode (
   }
 
   if (GraphicsOutput != NULL) {
-    MaxGopMode  = GraphicsOutput->Mode->MaxMode;
+    MaxGopMode = GraphicsOutput->Mode->MaxMode;
   }
 
   if (SimpleTextOut != NULL) {
@@ -832,22 +853,24 @@ BdsSetConsoleMode (
   //
   for (ModeNumber = 0; ModeNumber < MaxGopMode; ModeNumber++) {
     Status = GraphicsOutput->QueryMode (
-                       GraphicsOutput,
-                       ModeNumber,
-                       &SizeOfInfo,
-                       &Info
-                       );
+                               GraphicsOutput,
+                               ModeNumber,
+                               &SizeOfInfo,
+                               &Info
+                               );
     if (!EFI_ERROR (Status)) {
       if ((Info->HorizontalResolution == NewHorizontalResolution) &&
-          (Info->VerticalResolution == NewVerticalResolution)) {
+          (Info->VerticalResolution == NewVerticalResolution))
+      {
         if ((GraphicsOutput->Mode->Info->HorizontalResolution == NewHorizontalResolution) &&
-            (GraphicsOutput->Mode->Info->VerticalResolution == NewVerticalResolution)) {
+            (GraphicsOutput->Mode->Info->VerticalResolution == NewVerticalResolution))
+        {
           //
           // Current resolution is same with required resolution, check if text mode need be set
           //
           Status = SimpleTextOut->QueryMode (SimpleTextOut, SimpleTextOut->Mode->Mode, &CurrentColumn, &CurrentRow);
           ASSERT_EFI_ERROR (Status);
-          if (CurrentColumn == NewColumns && CurrentRow == NewRows) {
+          if ((CurrentColumn == NewColumns) && (CurrentRow == NewRows)) {
             //
             // If current text mode is same with required text mode. Do nothing
             //
@@ -859,7 +882,7 @@ BdsSetConsoleMode (
             //
             for (Index = 0; Index < MaxTextMode; Index++) {
               Status = SimpleTextOut->QueryMode (SimpleTextOut, Index, &CurrentColumn, &CurrentRow);
-              if (!EFI_ERROR(Status)) {
+              if (!EFI_ERROR (Status)) {
                 if ((CurrentColumn == NewColumns) && (CurrentRow == NewRows)) {
                   //
                   // Required text mode is supported, set it.
@@ -878,6 +901,7 @@ BdsSetConsoleMode (
                 }
               }
             }
+
             if (Index == MaxTextMode) {
               //
               // If required text mode is not supported, return error.
@@ -898,6 +922,7 @@ BdsSetConsoleMode (
           }
         }
       }
+
       FreePool (Info);
     }
   }
@@ -928,19 +953,21 @@ BdsSetConsoleMode (
   // Locate all the handles with GOP protocol and reconnect it.
   //
   Status = gBS->LocateHandleBuffer (
-                   ByProtocol,
-                   &gEfiSimpleTextOutProtocolGuid,
-                   NULL,
-                   &HandleCount,
-                   &HandleBuffer
-                   );
+                  ByProtocol,
+                  &gEfiSimpleTextOutProtocolGuid,
+                  NULL,
+                  &HandleCount,
+                  &HandleBuffer
+                  );
   if (!EFI_ERROR (Status)) {
     for (Index = 0; Index < HandleCount; Index++) {
       gBS->DisconnectController (HandleBuffer[Index], NULL, NULL);
     }
+
     for (Index = 0; Index < HandleCount; Index++) {
       gBS->ConnectController (HandleBuffer[Index], NULL, NULL, TRUE);
     }
+
     if (HandleBuffer != NULL) {
       FreePool (HandleBuffer);
     }
@@ -962,29 +989,29 @@ BdsSetConsoleMode (
 EFI_STATUS
 EFIAPI
 BootManagerMenuEntry (
-  IN EFI_HANDLE                            ImageHandle,
-  IN EFI_SYSTEM_TABLE                      *SystemTable
+  IN EFI_HANDLE        ImageHandle,
+  IN EFI_SYSTEM_TABLE  *SystemTable
   )
 {
-  EFI_BOOT_MANAGER_LOAD_OPTION    *BootOption;
-  UINTN                           BootOptionCount;
-  EFI_STATUS                      Status;
-  BOOT_MENU_POPUP_DATA            BootMenuData;
-  UINTN                           Index;
-  EFI_INPUT_KEY                   Key;
-  BOOLEAN                         ExitApplication;
-  UINTN                           SelectItem;
-  EFI_BOOT_LOGO_PROTOCOL          *BootLogo;
-  EFI_GRAPHICS_OUTPUT_PROTOCOL    *GraphicsOutput;
-  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL *SimpleTextOut;
-  UINTN                           BootTextColumn;
-  UINTN                           BootTextRow;
+  EFI_BOOT_MANAGER_LOAD_OPTION     *BootOption;
+  UINTN                            BootOptionCount;
+  EFI_STATUS                       Status;
+  BOOT_MENU_POPUP_DATA             BootMenuData;
+  UINTN                            Index;
+  EFI_INPUT_KEY                    Key;
+  BOOLEAN                          ExitApplication;
+  UINTN                            SelectItem;
+  EFI_BOOT_LOGO_PROTOCOL           *BootLogo;
+  EFI_GRAPHICS_OUTPUT_PROTOCOL     *GraphicsOutput;
+  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL  *SimpleTextOut;
+  UINTN                            BootTextColumn;
+  UINTN                            BootTextRow;
 
   //
   // Set Logo status invalid when boot manager menu is launched
   //
   BootLogo = NULL;
-  Status = gBS->LocateProtocol (&gEfiBootLogoProtocolGuid, NULL, (VOID **) &BootLogo);
+  Status   = gBS->LocateProtocol (&gEfiBootLogoProtocolGuid, NULL, (VOID **)&BootLogo);
   if (!EFI_ERROR (Status) && (BootLogo != NULL)) {
     Status = BootLogo->SetBootLogo (BootLogo, NULL, 0, 0, 0, 0);
     ASSERT_EFI_ERROR (Status);
@@ -993,11 +1020,11 @@ BootManagerMenuEntry (
   gBS->SetWatchdogTimer (0x0000, 0x0000, 0x0000, NULL);
 
   gStringPackHandle = HiiAddPackages (
-                         &gEfiCallerIdGuid,
-                         gImageHandle,
-                         BootManagerMenuAppStrings,
-                         NULL
-                         );
+                        &gEfiCallerIdGuid,
+                        gImageHandle,
+                        BootManagerMenuAppStrings,
+                        NULL
+                        );
   ASSERT (gStringPackHandle != NULL);
 
   //
@@ -1016,7 +1043,7 @@ BootManagerMenuEntry (
     Status = gBS->HandleProtocol (
                     gST->ConsoleOutHandle,
                     &gEfiGraphicsOutputProtocolGuid,
-                    (VOID**)&GraphicsOutput
+                    (VOID **)&GraphicsOutput
                     );
     if (EFI_ERROR (Status)) {
       GraphicsOutput = NULL;
@@ -1025,7 +1052,7 @@ BootManagerMenuEntry (
     Status = gBS->HandleProtocol (
                     gST->ConsoleOutHandle,
                     &gEfiSimpleTextOutProtocolGuid,
-                    (VOID**)&SimpleTextOut
+                    (VOID **)&SimpleTextOut
                     );
     if (EFI_ERROR (Status)) {
       SimpleTextOut = NULL;
@@ -1083,58 +1110,57 @@ BootManagerMenuEntry (
     Status = gST->ConIn->ReadKeyStroke (gST->ConIn, &Key);
     if (!EFI_ERROR (Status)) {
       switch (Key.UnicodeChar) {
+        case CHAR_NULL:
+          switch (Key.ScanCode) {
+            case SCAN_UP:
+              SelectItem = BootMenuData.SelectItem == 0 ? BootMenuData.ItemCount - 1 : BootMenuData.SelectItem - 1;
+              BootMenuSelectItem (SelectItem, &BootMenuData);
+              break;
+
+            case SCAN_DOWN:
+              SelectItem = BootMenuData.SelectItem == BootMenuData.ItemCount - 1 ? 0 : BootMenuData.SelectItem + 1;
+              BootMenuSelectItem (SelectItem, &BootMenuData);
+              break;
+
+            case SCAN_ESC:
+              gST->ConOut->ClearScreen (gST->ConOut);
+              ExitApplication = TRUE;
+              //
+              // Set boot resolution for normal boot
+              //
+              BdsSetConsoleMode (FALSE);
+              break;
 
-      case CHAR_NULL:
-        switch (Key.ScanCode) {
-
-        case SCAN_UP:
-          SelectItem = BootMenuData.SelectItem == 0 ? BootMenuData.ItemCount - 1 : BootMenuData.SelectItem - 1;
-          BootMenuSelectItem (SelectItem, &BootMenuData);
-          break;
+            default:
+              break;
+          }
 
-        case SCAN_DOWN:
-          SelectItem = BootMenuData.SelectItem == BootMenuData.ItemCount - 1 ? 0 : BootMenuData.SelectItem + 1;
-          BootMenuSelectItem (SelectItem, &BootMenuData);
           break;
 
-        case SCAN_ESC:
+        case CHAR_CARRIAGE_RETURN:
           gST->ConOut->ClearScreen (gST->ConOut);
-          ExitApplication = TRUE;
           //
           // Set boot resolution for normal boot
           //
           BdsSetConsoleMode (FALSE);
+          BootFromSelectOption (BootOption, BootOptionCount, BootMenuData.SelectItem);
+          //
+          // Back to boot manager menu again, set back to setup resolution
+          //
+          BdsSetConsoleMode (TRUE);
+          DrawBootPopupMenu (&BootMenuData);
           break;
 
         default:
           break;
-        }
-        break;
-
-      case CHAR_CARRIAGE_RETURN:
-        gST->ConOut->ClearScreen (gST->ConOut);
-        //
-        // Set boot resolution for normal boot
-        //
-        BdsSetConsoleMode (FALSE);
-        BootFromSelectOption (BootOption, BootOptionCount, BootMenuData.SelectItem);
-        //
-        // Back to boot manager menu again, set back to setup resolution
-        //
-        BdsSetConsoleMode (TRUE);
-        DrawBootPopupMenu (&BootMenuData);
-        break;
-
-      default:
-        break;
       }
     }
   }
+
   EfiBootManagerFreeLoadOptions (BootOption, BootOptionCount);
   FreePool (BootMenuData.PtrTokens);
 
   HiiRemovePackages (gStringPackHandle);
 
   return Status;
-
 }

+ 10 - 12
MdeModulePkg/Application/BootManagerMenuApp/BootManagerMenu.h

@@ -6,7 +6,6 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
-
 #ifndef _BOOT_MANAGER_MENU_H_
 #define _BOOT_MANAGER_MENU_H_
 
@@ -23,21 +22,21 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #include <Protocol/LoadedImage.h>
 #include <Protocol/BootLogo.h>
 
-#define TITLE_TOKEN_COUNT   1
-#define HELP_TOKEN_COUNT    3
+#define TITLE_TOKEN_COUNT  1
+#define HELP_TOKEN_COUNT   3
 
 typedef struct _BOOT_MENU_SCREEN {
-  UINTN        StartCol;
-  UINTN        StartRow;
-  UINTN        Width;
-  UINTN        Height;
+  UINTN    StartCol;
+  UINTN    StartRow;
+  UINTN    Width;
+  UINTN    Height;
 } BOOT_MENU_SCREEN;
 
 typedef struct _BOOT_MENU_SCROLL_BAR_CONTROL {
-  BOOLEAN      HasScrollBar;
-  UINTN        ItemCountPerScreen;
-  UINTN        FirstItem;
-  UINTN        LastItem;
+  BOOLEAN    HasScrollBar;
+  UINTN      ItemCountPerScreen;
+  UINTN      FirstItem;
+  UINTN      LastItem;
 } BOOT_MENU_SCROLL_BAR_CONTROL;
 
 typedef struct _BOOT_MENU_POPUP_DATA {
@@ -51,4 +50,3 @@ typedef struct _BOOT_MENU_POPUP_DATA {
 } BOOT_MENU_POPUP_DATA;
 
 #endif
-

+ 38 - 38
MdeModulePkg/Application/CapsuleApp/AppSupport.c

@@ -8,9 +8,9 @@
 
 #include "CapsuleApp.h"
 
-UINTN  Argc;
-CHAR16 **Argv;
-EFI_SHELL_PROTOCOL      *mShellProtocol = NULL;
+UINTN               Argc;
+CHAR16              **Argv;
+EFI_SHELL_PROTOCOL  *mShellProtocol = NULL;
 
 /**
 
@@ -23,15 +23,15 @@ GetArg (
   VOID
   )
 {
-  EFI_STATUS                    Status;
-  EFI_SHELL_PARAMETERS_PROTOCOL *ShellParameters;
+  EFI_STATUS                     Status;
+  EFI_SHELL_PARAMETERS_PROTOCOL  *ShellParameters;
 
   Status = gBS->HandleProtocol (
                   gImageHandle,
                   &gEfiShellParametersProtocolGuid,
-                  (VOID**)&ShellParameters
+                  (VOID **)&ShellParameters
                   );
-  if (EFI_ERROR(Status)) {
+  if (EFI_ERROR (Status)) {
     return Status;
   }
 
@@ -50,13 +50,13 @@ GetShellProtocol (
   VOID
   )
 {
-  EFI_STATUS            Status;
+  EFI_STATUS  Status;
 
   if (mShellProtocol == NULL) {
     Status = gBS->LocateProtocol (
                     &gEfiShellProtocolGuid,
                     NULL,
-                    (VOID **) &mShellProtocol
+                    (VOID **)&mShellProtocol
                     );
     if (EFI_ERROR (Status)) {
       mShellProtocol = NULL;
@@ -79,19 +79,19 @@ GetShellProtocol (
 **/
 EFI_STATUS
 ReadFileToBuffer (
-  IN  CHAR16                               *FileName,
-  OUT UINTN                                *BufferSize,
-  OUT VOID                                 **Buffer
+  IN  CHAR16  *FileName,
+  OUT UINTN   *BufferSize,
+  OUT VOID    **Buffer
   )
 {
-  EFI_STATUS                        Status;
-  EFI_SHELL_PROTOCOL                *ShellProtocol;
-  SHELL_FILE_HANDLE                 Handle;
-  UINT64                            FileSize;
-  UINTN                             TempBufferSize;
-  VOID                              *TempBuffer;
-
-  ShellProtocol = GetShellProtocol();
+  EFI_STATUS          Status;
+  EFI_SHELL_PROTOCOL  *ShellProtocol;
+  SHELL_FILE_HANDLE   Handle;
+  UINT64              FileSize;
+  UINTN               TempBufferSize;
+  VOID                *TempBuffer;
+
+  ShellProtocol = GetShellProtocol ();
   if (ShellProtocol == NULL) {
     return EFI_NOT_FOUND;
   }
@@ -117,8 +117,8 @@ ReadFileToBuffer (
     return Status;
   }
 
-  TempBufferSize = (UINTN) FileSize;
-  TempBuffer = AllocateZeroPool (TempBufferSize);
+  TempBufferSize = (UINTN)FileSize;
+  TempBuffer     = AllocateZeroPool (TempBufferSize);
   if (TempBuffer == NULL) {
     ShellProtocol->CloseFile (Handle);
     return EFI_OUT_OF_RESOURCES;
@@ -157,18 +157,18 @@ ReadFileToBuffer (
 **/
 EFI_STATUS
 WriteFileFromBuffer (
-  IN  CHAR16                               *FileName,
-  IN  UINTN                                BufferSize,
-  IN  VOID                                 *Buffer
+  IN  CHAR16  *FileName,
+  IN  UINTN   BufferSize,
+  IN  VOID    *Buffer
   )
 {
-  EFI_STATUS                        Status;
-  EFI_SHELL_PROTOCOL                *ShellProtocol;
-  SHELL_FILE_HANDLE                 Handle;
-  EFI_FILE_INFO                     *FileInfo;
-  UINTN                             TempBufferSize;
+  EFI_STATUS          Status;
+  EFI_SHELL_PROTOCOL  *ShellProtocol;
+  SHELL_FILE_HANDLE   Handle;
+  EFI_FILE_INFO       *FileInfo;
+  UINTN               TempBufferSize;
 
-  ShellProtocol = GetShellProtocol();
+  ShellProtocol = GetShellProtocol ();
   if (ShellProtocol == NULL) {
     return EFI_NOT_FOUND;
   }
@@ -202,24 +202,25 @@ WriteFileFromBuffer (
     // Set the file size to 0.
     //
     FileInfo->FileSize = 0;
-    Status = ShellProtocol->SetFileInfo (Handle, FileInfo);
+    Status             = ShellProtocol->SetFileInfo (Handle, FileInfo);
     if (EFI_ERROR (Status)) {
       FreePool (FileInfo);
       ShellProtocol->CloseFile (Handle);
       return Status;
     }
   }
+
   FreePool (FileInfo);
 
   //
   // Write the file data from the buffer
   //
   TempBufferSize = BufferSize;
-  Status = ShellProtocol->WriteFile (
-                            Handle,
-                            &TempBufferSize,
-                            Buffer
-                            );
+  Status         = ShellProtocol->WriteFile (
+                                    Handle,
+                                    &TempBufferSize,
+                                    Buffer
+                                    );
   if (EFI_ERROR (Status)) {
     ShellProtocol->CloseFile (Handle);
     return Status;
@@ -229,4 +230,3 @@ WriteFileFromBuffer (
 
   return EFI_SUCCESS;
 }
-

+ 274 - 242
MdeModulePkg/Application/CapsuleApp/CapsuleApp.c

@@ -27,52 +27,54 @@ CreateBmpFmp (
   VOID
   )
 {
-  CHAR16                                        *OutputCapsuleName;
-  VOID                                          *BmpBuffer;
-  UINTN                                         FileSize;
-  CHAR16                                        *BmpName;
-  UINT8                                         *FullCapsuleBuffer;
-  UINTN                                         FullCapsuleBufferSize;
-  EFI_DISPLAY_CAPSULE                           *DisplayCapsule;
-  EFI_STATUS                                    Status;
-  EFI_GRAPHICS_OUTPUT_PROTOCOL                  *Gop;
-  EFI_GRAPHICS_OUTPUT_MODE_INFORMATION          *Info;
-  EFI_GRAPHICS_OUTPUT_BLT_PIXEL                 *GopBlt;
-  UINTN                                         GopBltSize;
-  UINTN                                         Height;
-  UINTN                                         Width;
-
-  Status = gBS->LocateProtocol(&gEfiGraphicsOutputProtocolGuid, NULL, (VOID **)&Gop);
-  if (EFI_ERROR(Status)) {
-    Print(L"CapsuleApp: NO GOP is found.\n");
+  CHAR16                                *OutputCapsuleName;
+  VOID                                  *BmpBuffer;
+  UINTN                                 FileSize;
+  CHAR16                                *BmpName;
+  UINT8                                 *FullCapsuleBuffer;
+  UINTN                                 FullCapsuleBufferSize;
+  EFI_DISPLAY_CAPSULE                   *DisplayCapsule;
+  EFI_STATUS                            Status;
+  EFI_GRAPHICS_OUTPUT_PROTOCOL          *Gop;
+  EFI_GRAPHICS_OUTPUT_MODE_INFORMATION  *Info;
+  EFI_GRAPHICS_OUTPUT_BLT_PIXEL         *GopBlt;
+  UINTN                                 GopBltSize;
+  UINTN                                 Height;
+  UINTN                                 Width;
+
+  Status = gBS->LocateProtocol (&gEfiGraphicsOutputProtocolGuid, NULL, (VOID **)&Gop);
+  if (EFI_ERROR (Status)) {
+    Print (L"CapsuleApp: NO GOP is found.\n");
     return EFI_UNSUPPORTED;
   }
+
   Info = Gop->Mode->Info;
-  Print(L"Current GOP: Mode - %d, ", Gop->Mode->Mode);
-  Print(L"HorizontalResolution - %d, ", Info->HorizontalResolution);
-  Print(L"VerticalResolution - %d\n", Info->VerticalResolution);
+  Print (L"Current GOP: Mode - %d, ", Gop->Mode->Mode);
+  Print (L"HorizontalResolution - %d, ", Info->HorizontalResolution);
+  Print (L"VerticalResolution - %d\n", Info->VerticalResolution);
   // HorizontalResolution >= BMP_IMAGE_HEADER.PixelWidth
   // VerticalResolution   >= BMP_IMAGE_HEADER.PixelHeight
 
   if (Argc != 5) {
-    Print(L"CapsuleApp: Incorrect parameter count.\n");
+    Print (L"CapsuleApp: Incorrect parameter count.\n");
     return EFI_UNSUPPORTED;
   }
 
-  if (StrCmp(Argv[3], L"-O") != 0) {
-    Print(L"CapsuleApp: NO output capsule name.\n");
+  if (StrCmp (Argv[3], L"-O") != 0) {
+    Print (L"CapsuleApp: NO output capsule name.\n");
     return EFI_UNSUPPORTED;
   }
+
   OutputCapsuleName = Argv[4];
 
-  BmpBuffer = NULL;
-  FileSize = 0;
+  BmpBuffer         = NULL;
+  FileSize          = 0;
   FullCapsuleBuffer = NULL;
 
   BmpName = Argv[2];
-  Status = ReadFileToBuffer(BmpName, &FileSize, &BmpBuffer);
-  if (EFI_ERROR(Status)) {
-    Print(L"CapsuleApp: BMP image (%s) is not found.\n", BmpName);
+  Status  = ReadFileToBuffer (BmpName, &FileSize, &BmpBuffer);
+  if (EFI_ERROR (Status)) {
+    Print (L"CapsuleApp: BMP image (%s) is not found.\n", BmpName);
     goto Done;
   }
 
@@ -85,45 +87,48 @@ CreateBmpFmp (
              &Height,
              &Width
              );
-  if (EFI_ERROR(Status)) {
-    Print(L"CapsuleApp: BMP image (%s) is not valid.\n", BmpName);
+  if (EFI_ERROR (Status)) {
+    Print (L"CapsuleApp: BMP image (%s) is not valid.\n", BmpName);
     goto Done;
   }
+
   if (GopBlt != NULL) {
     FreePool (GopBlt);
   }
-  Print(L"BMP image (%s), Width - %d, Height - %d\n", BmpName, Width, Height);
+
+  Print (L"BMP image (%s), Width - %d, Height - %d\n", BmpName, Width, Height);
 
   if (Height > Info->VerticalResolution) {
     Status = EFI_INVALID_PARAMETER;
-    Print(L"CapsuleApp: BMP image (%s) height is larger than current resolution.\n", BmpName);
+    Print (L"CapsuleApp: BMP image (%s) height is larger than current resolution.\n", BmpName);
     goto Done;
   }
+
   if (Width > Info->HorizontalResolution) {
     Status = EFI_INVALID_PARAMETER;
-    Print(L"CapsuleApp: BMP image (%s) width is larger than current resolution.\n", BmpName);
+    Print (L"CapsuleApp: BMP image (%s) width is larger than current resolution.\n", BmpName);
     goto Done;
   }
 
-  FullCapsuleBufferSize = sizeof(EFI_DISPLAY_CAPSULE) + FileSize;
-  FullCapsuleBuffer = AllocatePool(FullCapsuleBufferSize);
+  FullCapsuleBufferSize = sizeof (EFI_DISPLAY_CAPSULE) + FileSize;
+  FullCapsuleBuffer     = AllocatePool (FullCapsuleBufferSize);
   if (FullCapsuleBuffer == NULL) {
-    Print(L"CapsuleApp: Capsule Buffer size (0x%x) too big.\n", FullCapsuleBufferSize);
+    Print (L"CapsuleApp: Capsule Buffer size (0x%x) too big.\n", FullCapsuleBufferSize);
     Status = EFI_OUT_OF_RESOURCES;
     goto Done;
   }
 
   DisplayCapsule = (EFI_DISPLAY_CAPSULE *)FullCapsuleBuffer;
-  CopyGuid(&DisplayCapsule->CapsuleHeader.CapsuleGuid, &gWindowsUxCapsuleGuid);
-  DisplayCapsule->CapsuleHeader.HeaderSize = sizeof(DisplayCapsule->CapsuleHeader);
-  DisplayCapsule->CapsuleHeader.Flags = CAPSULE_FLAGS_PERSIST_ACROSS_RESET;
+  CopyGuid (&DisplayCapsule->CapsuleHeader.CapsuleGuid, &gWindowsUxCapsuleGuid);
+  DisplayCapsule->CapsuleHeader.HeaderSize       = sizeof (DisplayCapsule->CapsuleHeader);
+  DisplayCapsule->CapsuleHeader.Flags            = CAPSULE_FLAGS_PERSIST_ACROSS_RESET;
   DisplayCapsule->CapsuleHeader.CapsuleImageSize = (UINT32)FullCapsuleBufferSize;
 
-  DisplayCapsule->ImagePayload.Version = 1;
-  DisplayCapsule->ImagePayload.Checksum = 0;
+  DisplayCapsule->ImagePayload.Version   = 1;
+  DisplayCapsule->ImagePayload.Checksum  = 0;
   DisplayCapsule->ImagePayload.ImageType = 0; // BMP
-  DisplayCapsule->ImagePayload.Reserved = 0;
-  DisplayCapsule->ImagePayload.Mode = Gop->Mode->Mode;
+  DisplayCapsule->ImagePayload.Reserved  = 0;
+  DisplayCapsule->ImagePayload.Mode      = Gop->Mode->Mode;
 
   //
   // Center the bitmap horizontally
@@ -140,26 +145,27 @@ CreateBmpFmp (
       (UINT32)(((3 * Info->VerticalResolution) - (2 * Height)) / 4)
       );
 
-  Print(L"BMP image (%s), OffsetX - %d, OffsetY - %d\n",
+  Print (
+    L"BMP image (%s), OffsetX - %d, OffsetY - %d\n",
     BmpName,
     DisplayCapsule->ImagePayload.OffsetX,
     DisplayCapsule->ImagePayload.OffsetY
     );
 
-  CopyMem((DisplayCapsule + 1), BmpBuffer, FileSize);
+  CopyMem ((DisplayCapsule + 1), BmpBuffer, FileSize);
 
-  DisplayCapsule->ImagePayload.Checksum = CalculateCheckSum8(FullCapsuleBuffer, FullCapsuleBufferSize);
+  DisplayCapsule->ImagePayload.Checksum = CalculateCheckSum8 (FullCapsuleBuffer, FullCapsuleBufferSize);
 
-  Status = WriteFileFromBuffer(OutputCapsuleName, FullCapsuleBufferSize, FullCapsuleBuffer);
-  Print(L"CapsuleApp: Write %s %r\n", OutputCapsuleName, Status);
+  Status = WriteFileFromBuffer (OutputCapsuleName, FullCapsuleBufferSize, FullCapsuleBuffer);
+  Print (L"CapsuleApp: Write %s %r\n", OutputCapsuleName, Status);
 
 Done:
   if (BmpBuffer != NULL) {
-    FreePool(BmpBuffer);
+    FreePool (BmpBuffer);
   }
 
   if (FullCapsuleBuffer != NULL) {
-    FreePool(FullCapsuleBuffer);
+    FreePool (FullCapsuleBuffer);
   }
 
   return Status;
@@ -174,18 +180,19 @@ Done:
 **/
 EFI_GUID *
 GetCapsuleImageTypeId (
-  IN EFI_CAPSULE_HEADER                            *CapsuleHeader
+  IN EFI_CAPSULE_HEADER  *CapsuleHeader
   )
 {
-  EFI_FIRMWARE_MANAGEMENT_CAPSULE_HEADER       *FmpCapsuleHeader;
-  UINT64                                       *ItemOffsetList;
-  EFI_FIRMWARE_MANAGEMENT_CAPSULE_IMAGE_HEADER *ImageHeader;
+  EFI_FIRMWARE_MANAGEMENT_CAPSULE_HEADER        *FmpCapsuleHeader;
+  UINT64                                        *ItemOffsetList;
+  EFI_FIRMWARE_MANAGEMENT_CAPSULE_IMAGE_HEADER  *ImageHeader;
 
   FmpCapsuleHeader = (EFI_FIRMWARE_MANAGEMENT_CAPSULE_HEADER *)((UINT8 *)CapsuleHeader + CapsuleHeader->HeaderSize);
-  ItemOffsetList = (UINT64 *)(FmpCapsuleHeader + 1);
+  ItemOffsetList   = (UINT64 *)(FmpCapsuleHeader + 1);
   if (FmpCapsuleHeader->PayloadItemCount == 0) {
     return NULL;
   }
+
   ImageHeader = (EFI_FIRMWARE_MANAGEMENT_CAPSULE_IMAGE_HEADER *)((UINT8 *)FmpCapsuleHeader + ItemOffsetList[FmpCapsuleHeader->EmbeddedDriverCount]);
   return &ImageHeader->UpdateImageTypeId;
 }
@@ -199,7 +206,7 @@ GetCapsuleImageTypeId (
 **/
 UINT32
 GetEsrtFwType (
-  IN  EFI_GUID                                      *ImageTypeId
+  IN  EFI_GUID  *ImageTypeId
   )
 {
   EFI_STATUS                 Status;
@@ -210,12 +217,12 @@ GetEsrtFwType (
   //
   // Check ESRT
   //
-  Status = EfiGetSystemConfigurationTable(&gEfiSystemResourceTableGuid, (VOID **)&Esrt);
-  if (!EFI_ERROR(Status)) {
-    ASSERT(Esrt != NULL);
+  Status = EfiGetSystemConfigurationTable (&gEfiSystemResourceTableGuid, (VOID **)&Esrt);
+  if (!EFI_ERROR (Status)) {
+    ASSERT (Esrt != NULL);
     EsrtEntry = (VOID *)(Esrt + 1);
     for (Index = 0; Index < Esrt->FwResourceCount; Index++, EsrtEntry++) {
-      if (CompareGuid(&EsrtEntry->FwClass, ImageTypeId)) {
+      if (CompareGuid (&EsrtEntry->FwClass, ImageTypeId)) {
         return EsrtEntry->FwType;
       }
     }
@@ -238,19 +245,22 @@ GetEsrtFwType (
 **/
 BOOLEAN
 IsValidCapsuleHeader (
-  IN EFI_CAPSULE_HEADER     *CapsuleHeader,
-  IN UINT64                 CapsuleSize
+  IN EFI_CAPSULE_HEADER  *CapsuleHeader,
+  IN UINT64              CapsuleSize
   )
 {
   if (CapsuleSize < sizeof (EFI_CAPSULE_HEADER)) {
     return FALSE;
   }
+
   if (CapsuleHeader->CapsuleImageSize != CapsuleSize) {
     return FALSE;
   }
+
   if (CapsuleHeader->HeaderSize > CapsuleHeader->CapsuleImageSize) {
     return FALSE;
   }
+
   if (CapsuleHeader->HeaderSize < sizeof (EFI_CAPSULE_HEADER)) {
     return FALSE;
   }
@@ -271,7 +281,7 @@ IsFmpCapsuleGuid (
   IN EFI_GUID  *CapsuleGuid
   )
 {
-  if (CompareGuid(&gEfiFmpCapsuleGuid, CapsuleGuid)) {
+  if (CompareGuid (&gEfiFmpCapsuleGuid, CapsuleGuid)) {
     return TRUE;
   }
 
@@ -291,96 +301,98 @@ CreateNestedFmp (
   VOID
   )
 {
-  CHAR16                                        *OutputCapsuleName;
-  VOID                                          *CapsuleBuffer;
-  UINTN                                         FileSize;
-  CHAR16                                        *CapsuleName;
-  UINT8                                         *FullCapsuleBuffer;
-  UINTN                                         FullCapsuleBufferSize;
-  EFI_CAPSULE_HEADER                            *NestedCapsuleHeader;
-  EFI_GUID                                      *ImageTypeId;
-  UINT32                                        FwType;
-  EFI_STATUS                                    Status;
+  CHAR16              *OutputCapsuleName;
+  VOID                *CapsuleBuffer;
+  UINTN               FileSize;
+  CHAR16              *CapsuleName;
+  UINT8               *FullCapsuleBuffer;
+  UINTN               FullCapsuleBufferSize;
+  EFI_CAPSULE_HEADER  *NestedCapsuleHeader;
+  EFI_GUID            *ImageTypeId;
+  UINT32              FwType;
+  EFI_STATUS          Status;
 
   if (Argc != 5) {
-    Print(L"CapsuleApp: Incorrect parameter count.\n");
+    Print (L"CapsuleApp: Incorrect parameter count.\n");
     return EFI_UNSUPPORTED;
   }
 
-  if (StrCmp(Argv[3], L"-O") != 0) {
-    Print(L"CapsuleApp: NO output capsule name.\n");
+  if (StrCmp (Argv[3], L"-O") != 0) {
+    Print (L"CapsuleApp: NO output capsule name.\n");
     return EFI_UNSUPPORTED;
   }
+
   OutputCapsuleName = Argv[4];
 
-  CapsuleBuffer = NULL;
-  FileSize = 0;
+  CapsuleBuffer     = NULL;
+  FileSize          = 0;
   FullCapsuleBuffer = NULL;
 
   CapsuleName = Argv[2];
-  Status = ReadFileToBuffer(CapsuleName, &FileSize, &CapsuleBuffer);
-  if (EFI_ERROR(Status)) {
-    Print(L"CapsuleApp: Capsule image (%s) is not found.\n", CapsuleName);
+  Status      = ReadFileToBuffer (CapsuleName, &FileSize, &CapsuleBuffer);
+  if (EFI_ERROR (Status)) {
+    Print (L"CapsuleApp: Capsule image (%s) is not found.\n", CapsuleName);
     goto Done;
   }
+
   if (!IsValidCapsuleHeader (CapsuleBuffer, FileSize)) {
-    Print(L"CapsuleApp: Capsule image (%s) is not a valid capsule.\n", CapsuleName);
+    Print (L"CapsuleApp: Capsule image (%s) is not a valid capsule.\n", CapsuleName);
     Status = EFI_INVALID_PARAMETER;
     goto Done;
   }
 
-  if (!IsFmpCapsuleGuid (&((EFI_CAPSULE_HEADER *) CapsuleBuffer)->CapsuleGuid)) {
-    Print(L"CapsuleApp: Capsule image (%s) is not a FMP capsule.\n", CapsuleName);
+  if (!IsFmpCapsuleGuid (&((EFI_CAPSULE_HEADER *)CapsuleBuffer)->CapsuleGuid)) {
+    Print (L"CapsuleApp: Capsule image (%s) is not a FMP capsule.\n", CapsuleName);
     Status = EFI_INVALID_PARAMETER;
     goto Done;
   }
 
-  ImageTypeId = GetCapsuleImageTypeId(CapsuleBuffer);
+  ImageTypeId = GetCapsuleImageTypeId (CapsuleBuffer);
   if (ImageTypeId == NULL) {
-    Print(L"CapsuleApp: Capsule ImageTypeId is not found.\n");
+    Print (L"CapsuleApp: Capsule ImageTypeId is not found.\n");
     Status = EFI_INVALID_PARAMETER;
     goto Done;
   }
-  FwType = GetEsrtFwType(ImageTypeId);
+
+  FwType = GetEsrtFwType (ImageTypeId);
   if ((FwType != ESRT_FW_TYPE_SYSTEMFIRMWARE) && (FwType != ESRT_FW_TYPE_DEVICEFIRMWARE)) {
-    Print(L"CapsuleApp: Capsule FwType is invalid.\n");
+    Print (L"CapsuleApp: Capsule FwType is invalid.\n");
     Status = EFI_INVALID_PARAMETER;
     goto Done;
   }
 
   FullCapsuleBufferSize = NESTED_CAPSULE_HEADER_SIZE + FileSize;
-  FullCapsuleBuffer = AllocatePool(FullCapsuleBufferSize);
+  FullCapsuleBuffer     = AllocatePool (FullCapsuleBufferSize);
   if (FullCapsuleBuffer == NULL) {
-    Print(L"CapsuleApp: Capsule Buffer size (0x%x) too big.\n", FullCapsuleBufferSize);
+    Print (L"CapsuleApp: Capsule Buffer size (0x%x) too big.\n", FullCapsuleBufferSize);
     Status = EFI_OUT_OF_RESOURCES;
     goto Done;
   }
 
   NestedCapsuleHeader = (EFI_CAPSULE_HEADER *)FullCapsuleBuffer;
-  ZeroMem(NestedCapsuleHeader, NESTED_CAPSULE_HEADER_SIZE);
-  CopyGuid(&NestedCapsuleHeader->CapsuleGuid, ImageTypeId);
-  NestedCapsuleHeader->HeaderSize = NESTED_CAPSULE_HEADER_SIZE;
-  NestedCapsuleHeader->Flags = (FwType == ESRT_FW_TYPE_SYSTEMFIRMWARE) ? SYSTEM_FIRMWARE_FLAG : DEVICE_FIRMWARE_FLAG;
+  ZeroMem (NestedCapsuleHeader, NESTED_CAPSULE_HEADER_SIZE);
+  CopyGuid (&NestedCapsuleHeader->CapsuleGuid, ImageTypeId);
+  NestedCapsuleHeader->HeaderSize       = NESTED_CAPSULE_HEADER_SIZE;
+  NestedCapsuleHeader->Flags            = (FwType == ESRT_FW_TYPE_SYSTEMFIRMWARE) ? SYSTEM_FIRMWARE_FLAG : DEVICE_FIRMWARE_FLAG;
   NestedCapsuleHeader->CapsuleImageSize = (UINT32)FullCapsuleBufferSize;
 
-  CopyMem((UINT8 *)NestedCapsuleHeader + NestedCapsuleHeader->HeaderSize, CapsuleBuffer, FileSize);
+  CopyMem ((UINT8 *)NestedCapsuleHeader + NestedCapsuleHeader->HeaderSize, CapsuleBuffer, FileSize);
 
-  Status = WriteFileFromBuffer(OutputCapsuleName, FullCapsuleBufferSize, FullCapsuleBuffer);
-  Print(L"CapsuleApp: Write %s %r\n", OutputCapsuleName, Status);
+  Status = WriteFileFromBuffer (OutputCapsuleName, FullCapsuleBufferSize, FullCapsuleBuffer);
+  Print (L"CapsuleApp: Write %s %r\n", OutputCapsuleName, Status);
 
 Done:
   if (CapsuleBuffer != NULL) {
-    FreePool(CapsuleBuffer);
+    FreePool (CapsuleBuffer);
   }
 
   if (FullCapsuleBuffer != NULL) {
-    FreePool(FullCapsuleBuffer);
+    FreePool (FullCapsuleBuffer);
   }
 
   return Status;
 }
 
-
 /**
   Clear capsule status variable.
 
@@ -391,19 +403,19 @@ ClearCapsuleStatusVariable (
   VOID
   )
 {
-  EFI_STATUS                          Status;
-  UINT32                              Index;
-  CHAR16                              CapsuleVarName[20];
-  CHAR16                              *TempVarName;
-  BOOLEAN                             Found;
+  EFI_STATUS  Status;
+  UINT32      Index;
+  CHAR16      CapsuleVarName[20];
+  CHAR16      *TempVarName;
+  BOOLEAN     Found;
 
-  StrCpyS (CapsuleVarName, sizeof(CapsuleVarName)/sizeof(CapsuleVarName[0]), L"Capsule");
+  StrCpyS (CapsuleVarName, sizeof (CapsuleVarName)/sizeof (CapsuleVarName[0]), L"Capsule");
   TempVarName = CapsuleVarName + StrLen (CapsuleVarName);
-  Index = 0;
+  Index       = 0;
 
   Found = FALSE;
   while (TRUE) {
-    UnicodeSPrint (TempVarName, 5 * sizeof(CHAR16), L"%04x", Index);
+    UnicodeSPrint (TempVarName, 5 * sizeof (CHAR16), L"%04x", Index);
 
     Status = gRT->SetVariable (
                     CapsuleVarName,
@@ -418,6 +430,7 @@ ClearCapsuleStatusVariable (
       //
       break;
     }
+
     Found = TRUE;
 
     Print (L"Clear %s %r\n", CapsuleVarName, Status);
@@ -447,10 +460,10 @@ ClearCapsuleStatusVariable (
 **/
 EFI_STATUS
 BuildGatherList (
-  IN VOID                          **CapsuleBuffer,
-  IN UINTN                         *FileSize,
-  IN UINTN                         CapsuleNum,
-  OUT EFI_CAPSULE_BLOCK_DESCRIPTOR **BlockDescriptors
+  IN VOID                           **CapsuleBuffer,
+  IN UINTN                          *FileSize,
+  IN UINTN                          CapsuleNum,
+  OUT EFI_CAPSULE_BLOCK_DESCRIPTOR  **BlockDescriptors
   )
 {
   EFI_STATUS                    Status;
@@ -482,15 +495,15 @@ BuildGatherList (
       Count = (INT32)(NumberOfDescriptors + 2) / 2;
     }
 
-    Size               = Count * sizeof (EFI_CAPSULE_BLOCK_DESCRIPTOR);
-    BlockDescriptors1  = AllocateRuntimeZeroPool (Size);
+    Size              = Count * sizeof (EFI_CAPSULE_BLOCK_DESCRIPTOR);
+    BlockDescriptors1 = AllocateRuntimeZeroPool (Size);
     if (BlockDescriptors1 == NULL) {
       Print (L"CapsuleApp: failed to allocate memory for descriptors\n");
       Status = EFI_OUT_OF_RESOURCES;
       goto ERREXIT;
     } else {
-      Print (L"CapsuleApp: creating capsule descriptors at 0x%X\n", (UINTN) BlockDescriptors1);
-      Print (L"CapsuleApp: capsule data starts          at 0x%X with size 0x%X\n", (UINTN) CapsuleBuffer[Index], FileSize[Index]);
+      Print (L"CapsuleApp: creating capsule descriptors at 0x%X\n", (UINTN)BlockDescriptors1);
+      Print (L"CapsuleApp: capsule data starts          at 0x%X with size 0x%X\n", (UINTN)CapsuleBuffer[Index], FileSize[Index]);
     }
 
     //
@@ -501,16 +514,16 @@ BuildGatherList (
     }
 
     if (BlockDescriptorPre != NULL) {
-      BlockDescriptorPre->Union.ContinuationPointer = (UINTN) BlockDescriptors1;
-      BlockDescriptorPre->Length = 0;
+      BlockDescriptorPre->Union.ContinuationPointer = (UINTN)BlockDescriptors1;
+      BlockDescriptorPre->Length                    = 0;
     }
 
     //
     // Fill them in
     //
-    TempBlockPtr  = BlockDescriptors1;
-    TempDataPtr   = CapsuleBuffer[Index];
-    SizeLeft      = FileSize[Index];
+    TempBlockPtr = BlockDescriptors1;
+    TempDataPtr  = CapsuleBuffer[Index];
+    SizeLeft     = FileSize[Index];
     for (Number = 0; (Number < Count - 1) && (SizeLeft != 0); Number++) {
       //
       // Divide remaining data in half
@@ -524,10 +537,11 @@ BuildGatherList (
       } else {
         Size = SizeLeft;
       }
-      TempBlockPtr->Union.DataBlock    = (UINTN)TempDataPtr;
-      TempBlockPtr->Length  = Size;
-      Print (L"CapsuleApp: capsule block/size              0x%X/0x%X\n", (UINTN) TempDataPtr, Size);
-      SizeLeft -= Size;
+
+      TempBlockPtr->Union.DataBlock = (UINTN)TempDataPtr;
+      TempBlockPtr->Length          = Size;
+      Print (L"CapsuleApp: capsule block/size              0x%X/0x%X\n", (UINTN)TempDataPtr, Size);
+      SizeLeft    -= Size;
       TempDataPtr += Size;
       TempBlockPtr++;
     }
@@ -555,10 +569,10 @@ BuildGatherList (
       //
       // Point the first list's last element to point to this second list.
       //
-      TempBlockPtr->Union.ContinuationPointer   = (UINTN) BlockDescriptors2;
+      TempBlockPtr->Union.ContinuationPointer = (UINTN)BlockDescriptors2;
 
-      TempBlockPtr->Length  = 0;
-      TempBlockPtr = BlockDescriptors2;
+      TempBlockPtr->Length = 0;
+      TempBlockPtr         = BlockDescriptors2;
       for (Number = 0; Number < Count - 1; Number++) {
         //
         // If second-to-last one, then dump rest to this element
@@ -576,10 +590,10 @@ BuildGatherList (
           }
         }
 
-        TempBlockPtr->Union.DataBlock    = (UINTN)TempDataPtr;
-        TempBlockPtr->Length  = Size;
-        Print (L"CapsuleApp: capsule block/size              0x%X/0x%X\n", (UINTN) TempDataPtr, Size);
-        SizeLeft -= Size;
+        TempBlockPtr->Union.DataBlock = (UINTN)TempDataPtr;
+        TempBlockPtr->Length          = Size;
+        Print (L"CapsuleApp: capsule block/size              0x%X/0x%X\n", (UINTN)TempDataPtr, Size);
+        SizeLeft    -= Size;
         TempDataPtr += Size;
         TempBlockPtr++;
         if (SizeLeft == 0) {
@@ -596,20 +610,20 @@ BuildGatherList (
   // Null-terminate.
   //
   if (TempBlockPtr != NULL) {
-    TempBlockPtr->Union.ContinuationPointer    = (UINTN)NULL;
-    TempBlockPtr->Length  = 0;
-    *BlockDescriptors = BlockDescriptorsHeader;
+    TempBlockPtr->Union.ContinuationPointer = (UINTN)NULL;
+    TempBlockPtr->Length                    = 0;
+    *BlockDescriptors                       = BlockDescriptorsHeader;
   }
 
   return EFI_SUCCESS;
 
 ERREXIT:
   if (BlockDescriptors1 != NULL) {
-    FreePool(BlockDescriptors1);
+    FreePool (BlockDescriptors1);
   }
 
   if (BlockDescriptors2 != NULL) {
-    FreePool(BlockDescriptors2);
+    FreePool (BlockDescriptors2);
   }
 
   return Status;
@@ -623,18 +637,18 @@ ERREXIT:
 **/
 VOID
 CleanGatherList (
-  IN EFI_CAPSULE_BLOCK_DESCRIPTOR   *BlockDescriptors,
-  IN UINTN                          CapsuleNum
+  IN EFI_CAPSULE_BLOCK_DESCRIPTOR  *BlockDescriptors,
+  IN UINTN                         CapsuleNum
   )
 {
-  EFI_CAPSULE_BLOCK_DESCRIPTOR   *TempBlockPtr;
-  EFI_CAPSULE_BLOCK_DESCRIPTOR   *TempBlockPtr1;
-  EFI_CAPSULE_BLOCK_DESCRIPTOR   *TempBlockPtr2;
-  UINTN                          Index;
+  EFI_CAPSULE_BLOCK_DESCRIPTOR  *TempBlockPtr;
+  EFI_CAPSULE_BLOCK_DESCRIPTOR  *TempBlockPtr1;
+  EFI_CAPSULE_BLOCK_DESCRIPTOR  *TempBlockPtr2;
+  UINTN                         Index;
 
   if (BlockDescriptors != NULL) {
     TempBlockPtr1 = BlockDescriptors;
-    while (1){
+    while (1) {
       TempBlockPtr = TempBlockPtr1;
       for (Index = 0; Index < CapsuleNum; Index++) {
         if (TempBlockPtr[Index].Length == 0) {
@@ -646,8 +660,8 @@ CleanGatherList (
         break;
       }
 
-      TempBlockPtr2 = (VOID *) ((UINTN) TempBlockPtr[Index].Union.ContinuationPointer);
-      FreePool(TempBlockPtr1);
+      TempBlockPtr2 = (VOID *)((UINTN)TempBlockPtr[Index].Union.ContinuationPointer);
+      FreePool (TempBlockPtr1);
       TempBlockPtr1 = TempBlockPtr2;
     }
   }
@@ -661,42 +675,42 @@ PrintUsage (
   VOID
   )
 {
-  Print(L"CapsuleApp:  usage\n");
-  Print(L"  CapsuleApp <Capsule...> [-NR] [-OD [FSx]]\n");
-  Print(L"  CapsuleApp -S\n");
-  Print(L"  CapsuleApp -C\n");
-  Print(L"  CapsuleApp -P\n");
-  Print(L"  CapsuleApp -E\n");
-  Print(L"  CapsuleApp -L\n");
-  Print(L"  CapsuleApp -L INFO\n");
-  Print(L"  CapsuleApp -F\n");
-  Print(L"  CapsuleApp -G <BMP> -O <Capsule>\n");
-  Print(L"  CapsuleApp -N <Capsule> -O <NestedCapsule>\n");
-  Print(L"  CapsuleApp -D <Capsule>\n");
-  Print(L"  CapsuleApp -P GET <ImageTypeId> <Index> -O <FileName>\n");
-  Print(L"Parameter:\n");
-  Print(L"  -NR: No reset will be triggered for the capsule\n");
-  Print(L"       with CAPSULE_FLAGS_PERSIST_ACROSS_RESET and without CAPSULE_FLAGS_INITIATE_RESET.\n");
-  Print(L"  -OD: Delivery of Capsules via file on Mass Storage device.\n");
-  Print(L"  -S:  Dump capsule report variable (EFI_CAPSULE_REPORT_GUID),\n");
-  Print(L"       which is defined in UEFI specification.\n");
-  Print(L"  -C:  Clear capsule report variable (EFI_CAPSULE_REPORT_GUID),\n");
-  Print(L"       which is defined in UEFI specification.\n");
-  Print(L"  -P:  Dump UEFI FMP protocol info, or get image with specified\n");
-  Print(L"       ImageTypeId and Index (decimal format) to a file if 'GET'\n");
-  Print(L"       option is used.\n");
-  Print(L"  -E:  Dump UEFI ESRT table info.\n");
-  Print(L"  -L:  Dump provisioned capsule image information.\n");
-  Print(L"  -F:  Dump all EFI System Partition.\n");
-  Print(L"  -G:  Convert a BMP file to be an UX capsule,\n");
-  Print(L"       according to Windows Firmware Update document\n");
-  Print(L"  -N:  Append a Capsule Header to an existing FMP capsule image\n");
-  Print(L"       with its ImageTypeId supported by the system,\n");
-  Print(L"       according to Windows Firmware Update document\n");
-  Print(L"  -O:  Output new Capsule file name\n");
-  Print(L"  -D:  Dump Capsule image header information, image payload\n");
-  Print(L"       information if it is an UX capsule and FMP header\n");
-  Print(L"       information if it is a FMP capsule.\n");
+  Print (L"CapsuleApp:  usage\n");
+  Print (L"  CapsuleApp <Capsule...> [-NR] [-OD [FSx]]\n");
+  Print (L"  CapsuleApp -S\n");
+  Print (L"  CapsuleApp -C\n");
+  Print (L"  CapsuleApp -P\n");
+  Print (L"  CapsuleApp -E\n");
+  Print (L"  CapsuleApp -L\n");
+  Print (L"  CapsuleApp -L INFO\n");
+  Print (L"  CapsuleApp -F\n");
+  Print (L"  CapsuleApp -G <BMP> -O <Capsule>\n");
+  Print (L"  CapsuleApp -N <Capsule> -O <NestedCapsule>\n");
+  Print (L"  CapsuleApp -D <Capsule>\n");
+  Print (L"  CapsuleApp -P GET <ImageTypeId> <Index> -O <FileName>\n");
+  Print (L"Parameter:\n");
+  Print (L"  -NR: No reset will be triggered for the capsule\n");
+  Print (L"       with CAPSULE_FLAGS_PERSIST_ACROSS_RESET and without CAPSULE_FLAGS_INITIATE_RESET.\n");
+  Print (L"  -OD: Delivery of Capsules via file on Mass Storage device.\n");
+  Print (L"  -S:  Dump capsule report variable (EFI_CAPSULE_REPORT_GUID),\n");
+  Print (L"       which is defined in UEFI specification.\n");
+  Print (L"  -C:  Clear capsule report variable (EFI_CAPSULE_REPORT_GUID),\n");
+  Print (L"       which is defined in UEFI specification.\n");
+  Print (L"  -P:  Dump UEFI FMP protocol info, or get image with specified\n");
+  Print (L"       ImageTypeId and Index (decimal format) to a file if 'GET'\n");
+  Print (L"       option is used.\n");
+  Print (L"  -E:  Dump UEFI ESRT table info.\n");
+  Print (L"  -L:  Dump provisioned capsule image information.\n");
+  Print (L"  -F:  Dump all EFI System Partition.\n");
+  Print (L"  -G:  Convert a BMP file to be an UX capsule,\n");
+  Print (L"       according to Windows Firmware Update document\n");
+  Print (L"  -N:  Append a Capsule Header to an existing FMP capsule image\n");
+  Print (L"       with its ImageTypeId supported by the system,\n");
+  Print (L"       according to Windows Firmware Update document\n");
+  Print (L"  -O:  Output new Capsule file name\n");
+  Print (L"  -D:  Dump Capsule image header information, image payload\n");
+  Print (L"       information if it is an UX capsule and FMP header\n");
+  Print (L"       information if it is a FMP capsule.\n");
 }
 
 /**
@@ -738,54 +752,63 @@ UefiMain (
   EFI_GUID                      ImageTypeId;
   UINTN                         ImageIndex;
 
-  BlockDescriptors  = NULL;
-  MapFsStr          = NULL;
-  CapsuleNum        = 0;
+  BlockDescriptors = NULL;
+  MapFsStr         = NULL;
+  CapsuleNum       = 0;
 
-  Status = GetArg();
-  if (EFI_ERROR(Status)) {
-    Print(L"Please use UEFI SHELL to run this application!\n", Status);
+  Status = GetArg ();
+  if (EFI_ERROR (Status)) {
+    Print (L"Please use UEFI SHELL to run this application!\n", Status);
     return Status;
   }
+
   if (Argc < 2) {
-    PrintUsage();
+    PrintUsage ();
     return EFI_UNSUPPORTED;
   }
-  if (StrCmp(Argv[1], L"-D") == 0) {
+
+  if (StrCmp (Argv[1], L"-D") == 0) {
     if (Argc != 3) {
-      Print(L"CapsuleApp: Incorrect parameter count.\n");
+      Print (L"CapsuleApp: Incorrect parameter count.\n");
       return EFI_UNSUPPORTED;
     }
-    Status = DumpCapsule(Argv[2]);
+
+    Status = DumpCapsule (Argv[2]);
     return Status;
   }
-  if (StrCmp(Argv[1], L"-G") == 0) {
-    Status = CreateBmpFmp();
+
+  if (StrCmp (Argv[1], L"-G") == 0) {
+    Status = CreateBmpFmp ();
     return Status;
   }
-  if (StrCmp(Argv[1], L"-N") == 0) {
-    Status = CreateNestedFmp();
+
+  if (StrCmp (Argv[1], L"-N") == 0) {
+    Status = CreateNestedFmp ();
     return Status;
   }
-  if (StrCmp(Argv[1], L"-S") == 0) {
-    Status = DumpCapsuleStatusVariable();
+
+  if (StrCmp (Argv[1], L"-S") == 0) {
+    Status = DumpCapsuleStatusVariable ();
     return EFI_SUCCESS;
   }
-  if (StrCmp(Argv[1], L"-C") == 0) {
-    Status = ClearCapsuleStatusVariable();
+
+  if (StrCmp (Argv[1], L"-C") == 0) {
+    Status = ClearCapsuleStatusVariable ();
     return Status;
   }
-  if (StrCmp(Argv[1], L"-P") == 0) {
+
+  if (StrCmp (Argv[1], L"-P") == 0) {
     if (Argc == 2) {
-      DumpFmpData();
+      DumpFmpData ();
     }
+
     if (Argc >= 3) {
-      if (StrCmp(Argv[2], L"GET") != 0) {
-        Print(L"CapsuleApp: Unrecognized option(%s).\n", Argv[2]);
+      if (StrCmp (Argv[2], L"GET") != 0) {
+        Print (L"CapsuleApp: Unrecognized option(%s).\n", Argv[2]);
         return EFI_UNSUPPORTED;
       } else {
         if (Argc != 7) {
-          Print(L"CapsuleApp: Incorrect parameter count.\n");
+          Print (L"CapsuleApp: Incorrect parameter count.\n");
           return EFI_UNSUPPORTED;
         }
 
@@ -797,54 +820,58 @@ UefiMain (
           Print (L"Invalid ImageTypeId - %s\n", Argv[3]);
           return EFI_INVALID_PARAMETER;
         }
-        ImageIndex = StrDecimalToUintn(Argv[4]);
-        if (StrCmp(Argv[5], L"-O") != 0) {
-          Print(L"CapsuleApp: NO output file name.\n");
+
+        ImageIndex = StrDecimalToUintn (Argv[4]);
+        if (StrCmp (Argv[5], L"-O") != 0) {
+          Print (L"CapsuleApp: NO output file name.\n");
           return EFI_UNSUPPORTED;
         }
-        DumpFmpImage(&ImageTypeId, ImageIndex, Argv[6]);
+
+        DumpFmpImage (&ImageTypeId, ImageIndex, Argv[6]);
       }
     }
+
     return EFI_SUCCESS;
   }
 
-  if (StrCmp(Argv[1], L"-E") == 0) {
-    DumpEsrtData();
+  if (StrCmp (Argv[1], L"-E") == 0) {
+    DumpEsrtData ();
     return EFI_SUCCESS;
   }
 
-  if (StrCmp(Argv[1], L"-L") == 0) {
-    if (Argc >= 3 && StrCmp(Argv[2], L"INFO") == 0) {
-      DumpProvisionedCapsule(TRUE);
+  if (StrCmp (Argv[1], L"-L") == 0) {
+    if ((Argc >= 3) && (StrCmp (Argv[2], L"INFO") == 0)) {
+      DumpProvisionedCapsule (TRUE);
     } else {
-      DumpProvisionedCapsule(FALSE);
+      DumpProvisionedCapsule (FALSE);
     }
+
     return EFI_SUCCESS;
   }
 
-  if (StrCmp(Argv[1], L"-F") == 0) {
-    DumpAllEfiSysPartition();
+  if (StrCmp (Argv[1], L"-F") == 0) {
+    DumpAllEfiSysPartition ();
     return EFI_SUCCESS;
   }
 
   if (Argv[1][0] == L'-') {
-    Print(L"CapsuleApp: Unrecognized option(%s).\n", Argv[1]);
+    Print (L"CapsuleApp: Unrecognized option(%s).\n", Argv[1]);
     return EFI_UNSUPPORTED;
   }
 
   CapsuleFirstIndex = 1;
-  NoReset = FALSE;
-  CapsuleOnDisk = FALSE;
-  ParaOdIndex = 0;
-  ParaNrIndex = 0;
+  NoReset           = FALSE;
+  CapsuleOnDisk     = FALSE;
+  ParaOdIndex       = 0;
+  ParaNrIndex       = 0;
 
   for (Index = 1; Index < Argc; Index++) {
-    if (StrCmp(Argv[Index], L"-OD") == 0) {
-      ParaOdIndex = Index;
+    if (StrCmp (Argv[Index], L"-OD") == 0) {
+      ParaOdIndex   = Index;
       CapsuleOnDisk = TRUE;
-    } else if (StrCmp(Argv[Index], L"-NR") == 0) {
+    } else if (StrCmp (Argv[Index], L"-NR") == 0) {
       ParaNrIndex = Index;
-      NoReset = TRUE;
+      NoReset     = TRUE;
     }
   }
 
@@ -886,37 +913,40 @@ UefiMain (
   CapsuleNum = CapsuleLastIndex - CapsuleFirstIndex + 1;
 
   if (CapsuleFirstIndex > CapsuleLastIndex) {
-    Print(L"CapsuleApp: NO capsule image.\n");
+    Print (L"CapsuleApp: NO capsule image.\n");
     return EFI_UNSUPPORTED;
   }
+
   if (CapsuleNum > MAX_CAPSULE_NUM) {
-    Print(L"CapsuleApp: Too many capsule images.\n");
+    Print (L"CapsuleApp: Too many capsule images.\n");
     return EFI_UNSUPPORTED;
   }
 
-  ZeroMem(&CapsuleBuffer, sizeof(CapsuleBuffer));
-  ZeroMem(&CapsuleBufferSize, sizeof(CapsuleBufferSize));
+  ZeroMem (&CapsuleBuffer, sizeof (CapsuleBuffer));
+  ZeroMem (&CapsuleBufferSize, sizeof (CapsuleBufferSize));
   BlockDescriptors = NULL;
 
   for (Index = 0; Index < CapsuleNum; Index++) {
     CapsuleName = Argv[CapsuleFirstIndex + Index];
-    Status = ReadFileToBuffer(CapsuleName, &CapsuleBufferSize[Index], &CapsuleBuffer[Index]);
-    if (EFI_ERROR(Status)) {
-      Print(L"CapsuleApp: capsule image (%s) is not found.\n", CapsuleName);
+    Status      = ReadFileToBuffer (CapsuleName, &CapsuleBufferSize[Index], &CapsuleBuffer[Index]);
+    if (EFI_ERROR (Status)) {
+      Print (L"CapsuleApp: capsule image (%s) is not found.\n", CapsuleName);
       goto Done;
     }
+
     if (!IsValidCapsuleHeader (CapsuleBuffer[Index], CapsuleBufferSize[Index])) {
-      Print(L"CapsuleApp: Capsule image (%s) is not a valid capsule.\n", CapsuleName);
+      Print (L"CapsuleApp: Capsule image (%s) is not a valid capsule.\n", CapsuleName);
       return EFI_INVALID_PARAMETER;
     }
+
     CapsuleNames[Index] = CapsuleName;
   }
 
   //
   // Every capsule use 2 descriptor 1 for data 1 for end
   //
-  Status = BuildGatherList(CapsuleBuffer, CapsuleBufferSize, CapsuleNum, &BlockDescriptors);
-  if (EFI_ERROR(Status)) {
+  Status = BuildGatherList (CapsuleBuffer, CapsuleBufferSize, CapsuleNum, &BlockDescriptors);
+  if (EFI_ERROR (Status)) {
     goto Done;
   }
 
@@ -925,18 +955,19 @@ UefiMain (
   //
   NeedReset = FALSE;
   for (Index = 0; Index < CapsuleNum; Index++) {
-    CapsuleHeaderArray[Index] = (EFI_CAPSULE_HEADER *) CapsuleBuffer[Index];
+    CapsuleHeaderArray[Index] = (EFI_CAPSULE_HEADER *)CapsuleBuffer[Index];
     if ((CapsuleHeaderArray[Index]->Flags & CAPSULE_FLAGS_PERSIST_ACROSS_RESET) != 0) {
       NeedReset = TRUE;
     }
   }
+
   CapsuleHeaderArray[CapsuleNum] = NULL;
 
   //
   // Inquire platform capability of UpdateCapsule.
   //
   Status = gRT->QueryCapsuleCapabilities (CapsuleHeaderArray, CapsuleNum, &MaxCapsuleSize, &ResetType);
-  if (EFI_ERROR(Status)) {
+  if (EFI_ERROR (Status)) {
     Print (L"CapsuleApp: failed to query capsule capability - %r\n", Status);
     goto Done;
   }
@@ -970,11 +1001,12 @@ UefiMain (
   // Check whether the input capsule image has the flag of persist across system reset.
   //
   if (NeedReset) {
-    Status = gRT->UpdateCapsule(CapsuleHeaderArray,CapsuleNum,(UINTN) BlockDescriptors);
+    Status = gRT->UpdateCapsule (CapsuleHeaderArray, CapsuleNum, (UINTN)BlockDescriptors);
     if (Status != EFI_SUCCESS) {
       Print (L"CapsuleApp: failed to update capsule - %r\n", Status);
       goto Done;
     }
+
     //
     // For capsule with CAPSULE_FLAGS_PERSIST_ACROSS_RESET + CAPSULE_FLAGS_INITIATE_RESET,
     // a system reset should have been triggered by gRT->UpdateCapsule() calling above.
@@ -994,7 +1026,7 @@ UefiMain (
     // For capsule who has no reset flag, only call UpdateCapsule Service without a
     // system reset. The service will process the capsule immediately.
     //
-    Status = gRT->UpdateCapsule (CapsuleHeaderArray,CapsuleNum,(UINTN) BlockDescriptors);
+    Status = gRT->UpdateCapsule (CapsuleHeaderArray, CapsuleNum, (UINTN)BlockDescriptors);
     if (Status != EFI_SUCCESS) {
       Print (L"CapsuleApp: failed to update capsule - %r\n", Status);
     }
@@ -1009,7 +1041,7 @@ Done:
     }
   }
 
-  CleanGatherList(BlockDescriptors, CapsuleNum);
+  CleanGatherList (BlockDescriptors, CapsuleNum);
 
   return Status;
 }

+ 22 - 28
MdeModulePkg/Application/CapsuleApp/CapsuleApp.h

@@ -6,7 +6,6 @@
 
 **/
 
-
 #ifndef _CAPSULE_APP_H_
 #define _CAPSULE_APP_H_
 
@@ -42,22 +41,22 @@
 #define CAPSULE_HEADER_SIZE  0x20
 
 #define NESTED_CAPSULE_HEADER_SIZE  SIZE_4KB
-#define SYSTEM_FIRMWARE_FLAG 0x50000
-#define DEVICE_FIRMWARE_FLAG 0x78010
+#define SYSTEM_FIRMWARE_FLAG        0x50000
+#define DEVICE_FIRMWARE_FLAG        0x78010
 
-#define MAJOR_VERSION   1
-#define MINOR_VERSION   0
+#define MAJOR_VERSION  1
+#define MINOR_VERSION  0
 
-#define MAX_CAPSULE_NUM 10
+#define MAX_CAPSULE_NUM  10
 
 //
 // (20 * (6+5+2))+1) unicode characters from EFI FAT spec (doubled for bytes)
 //
-#define MAX_FILE_NAME_SIZE   522
-#define MAX_FILE_NAME_LEN    (MAX_FILE_NAME_SIZE / sizeof(CHAR16))
+#define MAX_FILE_NAME_SIZE  522
+#define MAX_FILE_NAME_LEN   (MAX_FILE_NAME_SIZE / sizeof(CHAR16))
 
-extern UINTN  Argc;
-extern CHAR16 **Argv;
+extern UINTN   Argc;
+extern CHAR16  **Argv;
 
 /**
 
@@ -81,7 +80,6 @@ GetShellProtocol (
   VOID
   );
 
-
 /**
   Read a file.
 
@@ -95,9 +93,9 @@ GetShellProtocol (
 **/
 EFI_STATUS
 ReadFileToBuffer (
-  IN  CHAR16                               *FileName,
-  OUT UINTN                                *BufferSize,
-  OUT VOID                                 **Buffer
+  IN  CHAR16  *FileName,
+  OUT UINTN   *BufferSize,
+  OUT VOID    **Buffer
   );
 
 /**
@@ -113,12 +111,11 @@ ReadFileToBuffer (
 **/
 EFI_STATUS
 WriteFileFromBuffer (
-  IN  CHAR16                               *FileName,
-  IN  UINTN                                BufferSize,
-  IN  VOID                                 *Buffer
+  IN  CHAR16  *FileName,
+  IN  UINTN   BufferSize,
+  IN  VOID    *Buffer
   );
 
-
 /**
   Dump capsule information
 
@@ -129,7 +126,7 @@ WriteFileFromBuffer (
 **/
 EFI_STATUS
 DumpCapsule (
-  IN CHAR16                                        *CapsuleName
+  IN CHAR16  *CapsuleName
   );
 
 /**
@@ -182,7 +179,7 @@ DumpEsrtData (
 **/
 VOID
 DumpProvisionedCapsule (
-  IN BOOLEAN                      DumpCapsuleInfo
+  IN BOOLEAN  DumpCapsuleInfo
   );
 
 /**
@@ -193,7 +190,6 @@ DumpAllEfiSysPartition (
   VOID
   );
 
-
 /**
   Get SimpleFileSystem from boot option file path.
 
@@ -213,7 +209,6 @@ GetEfiSysPartitionFromBootOptionFilePath (
   OUT EFI_SIMPLE_FILE_SYSTEM_PROTOCOL  **Fs
   );
 
-
 /**
   Process Capsule On Disk.
 
@@ -229,12 +224,11 @@ GetEfiSysPartitionFromBootOptionFilePath (
 **/
 EFI_STATUS
 ProcessCapsuleOnDisk (
-  IN VOID                          **CapsuleBuffer,
-  IN UINTN                         *CapsuleBufferSize,
-  IN CHAR16                        **FilePath,
-  IN CHAR16                        *Map,
-  IN UINTN                         CapsuleNum
+  IN VOID    **CapsuleBuffer,
+  IN UINTN   *CapsuleBufferSize,
+  IN CHAR16  **FilePath,
+  IN CHAR16  *Map,
+  IN UINTN   CapsuleNum
   );
 
 #endif
-

File diff suppressed because it is too large
+ 292 - 275
MdeModulePkg/Application/CapsuleApp/CapsuleDump.c


+ 174 - 159
MdeModulePkg/Application/CapsuleApp/CapsuleOnDisk.c

@@ -8,7 +8,9 @@
 
 #include "CapsuleApp.h"
 
-EFI_GUID mCapsuleOnDiskBootOptionGuid = { 0x4CC29BB7, 0x2413, 0x40A2, { 0xB0, 0x6D, 0x25, 0x3E, 0x37, 0x10, 0xF5, 0x32 } };
+EFI_GUID  mCapsuleOnDiskBootOptionGuid = {
+  0x4CC29BB7, 0x2413, 0x40A2, { 0xB0, 0x6D, 0x25, 0x3E, 0x37, 0x10, 0xF5, 0x32 }
+};
 
 /**
   Get file name from file path.
@@ -20,13 +22,13 @@ EFI_GUID mCapsuleOnDiskBootOptionGuid = { 0x4CC29BB7, 0x2413, 0x40A2, { 0xB0, 0x
 **/
 CHAR16 *
 GetFileNameFromPath (
-  CHAR16                            *FilePath
+  CHAR16  *FilePath
   )
 {
-  EFI_STATUS                        Status;
-  EFI_SHELL_PROTOCOL                *ShellProtocol;
-  SHELL_FILE_HANDLE                 Handle;
-  EFI_FILE_INFO                     *FileInfo;
+  EFI_STATUS          Status;
+  EFI_SHELL_PROTOCOL  *ShellProtocol;
+  SHELL_FILE_HANDLE   Handle;
+  EFI_FILE_INFO       *FileInfo;
 
   ShellProtocol = GetShellProtocol ();
   if (ShellProtocol == NULL) {
@@ -68,13 +70,13 @@ GetFileNameFromPath (
 **/
 BOOLEAN
 IsEfiSysPartitionDevicePath (
-  EFI_DEVICE_PATH_PROTOCOL   *DevicePath
+  EFI_DEVICE_PATH_PROTOCOL  *DevicePath
   )
 {
-  EFI_STATUS                 Status;
-  EFI_DEVICE_PATH_PROTOCOL   *TempDevicePath;
-  HARDDRIVE_DEVICE_PATH      *Hd;
-  EFI_HANDLE                 Handle;
+  EFI_STATUS                Status;
+  EFI_DEVICE_PATH_PROTOCOL  *TempDevicePath;
+  HARDDRIVE_DEVICE_PATH     *Hd;
+  EFI_HANDLE                Handle;
 
   //
   // Check if the device path contains GPT node
@@ -83,12 +85,14 @@ IsEfiSysPartitionDevicePath (
 
   while (!IsDevicePathEnd (TempDevicePath)) {
     if ((DevicePathType (TempDevicePath) == MEDIA_DEVICE_PATH) &&
-      (DevicePathSubType (TempDevicePath) == MEDIA_HARDDRIVE_DP)) {
+        (DevicePathSubType (TempDevicePath) == MEDIA_HARDDRIVE_DP))
+    {
       Hd = (HARDDRIVE_DEVICE_PATH *)TempDevicePath;
       if (Hd->MBRType == MBR_TYPE_EFI_PARTITION_TABLE_HEADER) {
         break;
       }
     }
+
     TempDevicePath = NextDevicePathNode (TempDevicePath);
   }
 
@@ -112,19 +116,19 @@ DumpAllEfiSysPartition (
   VOID
   )
 {
-  EFI_HANDLE                 *SimpleFileSystemHandles;
-  UINTN                      NumberSimpleFileSystemHandles;
-  UINTN                      Index;
-  EFI_DEVICE_PATH_PROTOCOL   *DevicePath;
-  UINTN                      NumberEfiSystemPartitions;
-  EFI_SHELL_PROTOCOL         *ShellProtocol;
+  EFI_HANDLE                *SimpleFileSystemHandles;
+  UINTN                     NumberSimpleFileSystemHandles;
+  UINTN                     Index;
+  EFI_DEVICE_PATH_PROTOCOL  *DevicePath;
+  UINTN                     NumberEfiSystemPartitions;
+  EFI_SHELL_PROTOCOL        *ShellProtocol;
 
   NumberEfiSystemPartitions = 0;
 
   ShellProtocol = GetShellProtocol ();
   if (ShellProtocol == NULL) {
-    Print (L"Get Shell Protocol Fail\n");;
-    return ;
+    Print (L"Get Shell Protocol Fail\n");
+    return;
   }
 
   Print (L"EFI System Partition list:\n");
@@ -141,12 +145,12 @@ DumpAllEfiSysPartition (
     DevicePath = DevicePathFromHandle (SimpleFileSystemHandles[Index]);
     if (IsEfiSysPartitionDevicePath (DevicePath)) {
       NumberEfiSystemPartitions++;
-      Print(L"    %s\n        %s\n", ShellProtocol->GetMapFromDevicePath (&DevicePath), ConvertDevicePathToText (DevicePath, TRUE, TRUE));
+      Print (L"    %s\n        %s\n", ShellProtocol->GetMapFromDevicePath (&DevicePath), ConvertDevicePathToText (DevicePath, TRUE, TRUE));
     }
   }
 
   if (NumberEfiSystemPartitions == 0) {
-    Print(L"    No ESP found.\n");
+    Print (L"    No ESP found.\n");
   }
 }
 
@@ -162,21 +166,22 @@ IsCapsuleProvisioned (
   VOID
   )
 {
-  EFI_STATUS            Status;
-  UINT64                OsIndication;
-  UINTN                 DataSize;
+  EFI_STATUS  Status;
+  UINT64      OsIndication;
+  UINTN       DataSize;
 
   OsIndication = 0;
-  DataSize = sizeof(UINT64);
-  Status = gRT->GetVariable (
-                  L"OsIndications",
-                  &gEfiGlobalVariableGuid,
-                  NULL,
-                  &DataSize,
-                  &OsIndication
-                  );
+  DataSize     = sizeof (UINT64);
+  Status       = gRT->GetVariable (
+                        L"OsIndications",
+                        &gEfiGlobalVariableGuid,
+                        NULL,
+                        &DataSize,
+                        &OsIndication
+                        );
   if (!EFI_ERROR (Status) &&
-      (OsIndication & EFI_OS_INDICATIONS_FILE_CAPSULE_DELIVERY_SUPPORTED) != 0) {
+      ((OsIndication & EFI_OS_INDICATIONS_FILE_CAPSULE_DELIVERY_SUPPORTED) != 0))
+  {
     return TRUE;
   }
 
@@ -199,11 +204,11 @@ GetEfiSysPartition (
   OUT EFI_SIMPLE_FILE_SYSTEM_PROTOCOL  **Fs
   )
 {
-  EFI_HANDLE                 *SimpleFileSystemHandles;
-  UINTN                      NumberSimpleFileSystemHandles;
-  UINTN                      Index;
-  EFI_DEVICE_PATH_PROTOCOL   *DevicePath;
-  EFI_STATUS                 Status;
+  EFI_HANDLE                *SimpleFileSystemHandles;
+  UINTN                     NumberSimpleFileSystemHandles;
+  UINTN                     Index;
+  EFI_DEVICE_PATH_PROTOCOL  *DevicePath;
+  EFI_STATUS                Status;
 
   Status = gBS->LocateHandleBuffer (
                   ByProtocol,
@@ -245,15 +250,15 @@ GetEfiSysPartition (
 **/
 EFI_STATUS
 GetEfiSysPartitionFromDevPath (
-  IN  EFI_DEVICE_PATH_PROTOCOL        *DevicePath,
-  OUT EFI_DEVICE_PATH_PROTOCOL        **FsDevicePath,
-  OUT EFI_SIMPLE_FILE_SYSTEM_PROTOCOL **Fs
+  IN  EFI_DEVICE_PATH_PROTOCOL         *DevicePath,
+  OUT EFI_DEVICE_PATH_PROTOCOL         **FsDevicePath,
+  OUT EFI_SIMPLE_FILE_SYSTEM_PROTOCOL  **Fs
   )
 {
-  EFI_STATUS                 Status;
-  EFI_DEVICE_PATH_PROTOCOL   *TempDevicePath;
-  HARDDRIVE_DEVICE_PATH      *Hd;
-  EFI_HANDLE                 Handle;
+  EFI_STATUS                Status;
+  EFI_DEVICE_PATH_PROTOCOL  *TempDevicePath;
+  HARDDRIVE_DEVICE_PATH     *Hd;
+  EFI_HANDLE                Handle;
 
   //
   // Check if the device path contains GPT node
@@ -261,12 +266,14 @@ GetEfiSysPartitionFromDevPath (
   TempDevicePath = DevicePath;
   while (!IsDevicePathEnd (TempDevicePath)) {
     if ((DevicePathType (TempDevicePath) == MEDIA_DEVICE_PATH) &&
-       (DevicePathSubType (TempDevicePath) == MEDIA_HARDDRIVE_DP)) {
+        (DevicePathSubType (TempDevicePath) == MEDIA_HARDDRIVE_DP))
+    {
       Hd = (HARDDRIVE_DEVICE_PATH *)TempDevicePath;
       if (Hd->MBRType == MBR_TYPE_EFI_PARTITION_TABLE_HEADER) {
         break;
       }
     }
+
     TempDevicePath = NextDevicePathNode (TempDevicePath);
   }
 
@@ -310,13 +317,13 @@ GetEfiSysPartitionFromBootOptionFilePath (
   OUT EFI_SIMPLE_FILE_SYSTEM_PROTOCOL  **Fs
   )
 {
-  EFI_STATUS                        Status;
-  EFI_DEVICE_PATH_PROTOCOL          *CurFullPath;
-  EFI_DEVICE_PATH_PROTOCOL          *PreFullPath;
-  EFI_DEVICE_PATH_PROTOCOL          *FsFullPath;
+  EFI_STATUS                Status;
+  EFI_DEVICE_PATH_PROTOCOL  *CurFullPath;
+  EFI_DEVICE_PATH_PROTOCOL  *PreFullPath;
+  EFI_DEVICE_PATH_PROTOCOL  *FsFullPath;
 
   CurFullPath = NULL;
-  FsFullPath = NULL;
+  FsFullPath  = NULL;
   //
   // Try every full device Path generated from bootoption
   //
@@ -337,13 +344,14 @@ GetEfiSysPartitionFromBootOptionFilePath (
     }
 
     DEBUG_CODE_BEGIN ();
-      CHAR16 *DevicePathStr;
+    CHAR16  *DevicePathStr;
+
+    DevicePathStr = ConvertDevicePathToText (CurFullPath, TRUE, TRUE);
+    if (DevicePathStr != NULL) {
+      DEBUG ((DEBUG_INFO, "Full device path %s\n", DevicePathStr));
+      FreePool (DevicePathStr);
+    }
 
-      DevicePathStr = ConvertDevicePathToText (CurFullPath, TRUE, TRUE);
-      if (DevicePathStr != NULL){
-        DEBUG ((DEBUG_INFO, "Full device path %s\n", DevicePathStr));
-        FreePool (DevicePathStr);
-      }
     DEBUG_CODE_END ();
 
     Status = GetEfiSysPartitionFromDevPath (CurFullPath, &FsFullPath, Fs);
@@ -376,7 +384,7 @@ GetUpdateFileSystem (
   OUT UINT16                           *BootNext,
   OUT EFI_SIMPLE_FILE_SYSTEM_PROTOCOL  **Fs,
   OUT BOOLEAN                          *UpdateBootNext
-)
+  )
 {
   EFI_STATUS                      Status;
   CHAR16                          BootOptionName[20];
@@ -396,7 +404,7 @@ GetUpdateFileSystem (
 
   ShellProtocol = GetShellProtocol ();
   if (ShellProtocol == NULL) {
-    Print (L"Get Shell Protocol Fail\n");;
+    Print (L"Get Shell Protocol Fail\n");
     return EFI_NOT_FOUND;
   }
 
@@ -404,14 +412,14 @@ GetUpdateFileSystem (
   // 1. If Fs is not assigned and there are capsule provisioned before,
   // Get EFI system partition from BootNext.
   //
-  if (IsCapsuleProvisioned () && Map == NULL) {
+  if (IsCapsuleProvisioned () && (Map == NULL)) {
     Status = GetVariable2 (
                L"BootNext",
                &gEfiGlobalVariableGuid,
                (VOID **)&BootNextData,
                NULL
                );
-    if (EFI_ERROR (Status) || BootNextData == NULL) {
+    if (EFI_ERROR (Status) || (BootNextData == NULL)) {
       Print (L"Get Boot Next Data Fail. Status = %r\n", Status);
       return EFI_NOT_FOUND;
     } else {
@@ -419,11 +427,11 @@ GetUpdateFileSystem (
       Status = EfiBootManagerVariableToLoadOption (BootOptionName, &BootNextOption);
       if (!EFI_ERROR (Status)) {
         DevicePath = BootNextOption.FilePath;
-        Status = GetEfiSysPartitionFromBootOptionFilePath (DevicePath, &FullPath, Fs);
+        Status     = GetEfiSysPartitionFromBootOptionFilePath (DevicePath, &FullPath, Fs);
         if (!EFI_ERROR (Status)) {
           *UpdateBootNext = FALSE;
-          Print(L"Get EFI system partition from BootNext : %s\n", BootNextOption.Description);
-          Print(L"%s %s\n", ShellProtocol->GetMapFromDevicePath (&FullPath), ConvertDevicePathToText (FullPath, TRUE, TRUE));
+          Print (L"Get EFI system partition from BootNext : %s\n", BootNextOption.Description);
+          Print (L"%s %s\n", ShellProtocol->GetMapFromDevicePath (&FullPath), ConvertDevicePathToText (FullPath, TRUE, TRUE));
           return EFI_SUCCESS;
         }
       }
@@ -436,10 +444,10 @@ GetUpdateFileSystem (
   if (Map != NULL) {
     MappedDevicePath = ShellProtocol->GetDevicePathFromMap (Map);
     if (MappedDevicePath == NULL) {
-      Print(L"'%s' is not a valid mapping.\n", Map);
+      Print (L"'%s' is not a valid mapping.\n", Map);
       return EFI_INVALID_PARAMETER;
     } else if (!IsEfiSysPartitionDevicePath (DuplicateDevicePath (MappedDevicePath))) {
-      Print(L"'%s' is not a EFI System Partition.\n", Map);
+      Print (L"'%s' is not a EFI System Partition.\n", Map);
       return EFI_INVALID_PARAMETER;
     }
   }
@@ -448,9 +456,10 @@ GetUpdateFileSystem (
   // 2. Get EFI system partition form boot options.
   //
   BootOptionBuffer = EfiBootManagerGetLoadOptions (&BootOptionCount, LoadOptionTypeBoot);
-  if ( (BootOptionBuffer == NULL) ||
-       (BootOptionCount == 0 && Map == NULL)
-     ) {
+  if ((BootOptionBuffer == NULL) ||
+      ((BootOptionCount == 0) && (Map == NULL))
+      )
+  {
     return EFI_NOT_FOUND;
   }
 
@@ -458,32 +467,34 @@ GetUpdateFileSystem (
     //
     // Get the boot option from the link list
     //
-    DevicePath  = BootOptionBuffer[Index].FilePath;
+    DevicePath = BootOptionBuffer[Index].FilePath;
 
     //
     // Skip inactive or legacy boot options
     //
-    if ((BootOptionBuffer[Index].Attributes & LOAD_OPTION_ACTIVE) == 0 ||
-        DevicePathType (DevicePath) == BBS_DEVICE_PATH) {
+    if (((BootOptionBuffer[Index].Attributes & LOAD_OPTION_ACTIVE) == 0) ||
+        (DevicePathType (DevicePath) == BBS_DEVICE_PATH))
+    {
       continue;
     }
 
     DEBUG_CODE_BEGIN ();
-      CHAR16 *DevicePathStr;
-
-      DevicePathStr = ConvertDevicePathToText (DevicePath, TRUE, TRUE);
-      if (DevicePathStr != NULL){
-        DEBUG ((DEBUG_INFO, "Try BootOption %s\n", DevicePathStr));
-        FreePool (DevicePathStr);
-      } else {
-        DEBUG ((DEBUG_INFO, "DevicePathToStr failed\n"));
-      }
+    CHAR16  *DevicePathStr;
+
+    DevicePathStr = ConvertDevicePathToText (DevicePath, TRUE, TRUE);
+    if (DevicePathStr != NULL) {
+      DEBUG ((DEBUG_INFO, "Try BootOption %s\n", DevicePathStr));
+      FreePool (DevicePathStr);
+    } else {
+      DEBUG ((DEBUG_INFO, "DevicePathToStr failed\n"));
+    }
+
     DEBUG_CODE_END ();
 
     Status = GetEfiSysPartitionFromBootOptionFilePath (DevicePath, &FullPath, Fs);
     if (!EFI_ERROR (Status)) {
       if (Map == NULL) {
-        *BootNext = (UINT16) BootOptionBuffer[Index].OptionNumber;
+        *BootNext       = (UINT16)BootOptionBuffer[Index].OptionNumber;
         *UpdateBootNext = TRUE;
         Print (L"Found EFI system partition on Boot%04x: %s\n", *BootNext, BootOptionBuffer[Index].Description);
         Print (L"%s %s\n", ShellProtocol->GetMapFromDevicePath (&FullPath), ConvertDevicePathToText (FullPath, TRUE, TRUE));
@@ -491,7 +502,7 @@ GetUpdateFileSystem (
       }
 
       if (StrnCmp (Map, ShellProtocol->GetMapFromDevicePath (&FullPath), StrLen (Map)) == 0) {
-        *BootNext = (UINT16) BootOptionBuffer[Index].OptionNumber;
+        *BootNext       = (UINT16)BootOptionBuffer[Index].OptionNumber;
         *UpdateBootNext = TRUE;
         Print (L"Found Boot Option on %s : %s\n", Map, BootOptionBuffer[Index].Description);
         return EFI_SUCCESS;
@@ -507,11 +518,12 @@ GetUpdateFileSystem (
     // If map is assigned, try to get ESP from mapped Fs.
     //
     DevicePath = DuplicateDevicePath (MappedDevicePath);
-    Status = GetEfiSysPartitionFromDevPath (DevicePath, &FullPath, Fs);
+    Status     = GetEfiSysPartitionFromDevPath (DevicePath, &FullPath, Fs);
     if (EFI_ERROR (Status)) {
       Print (L"Error: Cannot get EFI system partition from '%s' - %r\n", Map, Status);
       return EFI_NOT_FOUND;
     }
+
     Print (L"Warning: Cannot find Boot Option on '%s'!\n", Map);
   } else {
     Status = GetEfiSysPartition (&DevicePath, Fs);
@@ -529,15 +541,16 @@ GetUpdateFileSystem (
              LOAD_OPTION_ACTIVE,
              L"UEFI Capsule On Disk",
              DevicePath,
-             (UINT8 *) &mCapsuleOnDiskBootOptionGuid,
-             sizeof(EFI_GUID)
+             (UINT8 *)&mCapsuleOnDiskBootOptionGuid,
+             sizeof (EFI_GUID)
              );
   if (!EFI_ERROR (Status)) {
-    Status = EfiBootManagerAddLoadOptionVariable (&NewOption, (UINTN) -1); {
+    Status = EfiBootManagerAddLoadOptionVariable (&NewOption, (UINTN)-1);
+    {
       if (!EFI_ERROR (Status)) {
         *UpdateBootNext = TRUE;
-        *BootNext = (UINT16) NewOption.OptionNumber;
-        Print (L"  Boot%04x: %s\n", *BootNext, ConvertDevicePathToText(DevicePath, TRUE, TRUE));
+        *BootNext       = (UINT16)NewOption.OptionNumber;
+        Print (L"  Boot%04x: %s\n", *BootNext, ConvertDevicePathToText (DevicePath, TRUE, TRUE));
         return EFI_SUCCESS;
       }
     }
@@ -564,25 +577,25 @@ GetUpdateFileSystem (
 **/
 EFI_STATUS
 WriteUpdateFile (
-  IN  VOID                                 **Buffer,
-  IN  UINTN                                *BufferSize,
-  IN  CHAR16                               **FileName,
-  IN  UINTN                                BufferNum,
-  IN  EFI_SIMPLE_FILE_SYSTEM_PROTOCOL      *Fs
-)
+  IN  VOID                             **Buffer,
+  IN  UINTN                            *BufferSize,
+  IN  CHAR16                           **FileName,
+  IN  UINTN                            BufferNum,
+  IN  EFI_SIMPLE_FILE_SYSTEM_PROTOCOL  *Fs
+  )
 {
-  EFI_STATUS                          Status;
-  EFI_FILE                            *Root;
-  EFI_FILE                            *FileHandle;
-  EFI_FILE_PROTOCOL                   *DirHandle;
-  UINT64                              FileInfo;
-  VOID                                *Filebuffer;
-  UINTN                               FileSize;
-  UINTN                               Index;
+  EFI_STATUS         Status;
+  EFI_FILE           *Root;
+  EFI_FILE           *FileHandle;
+  EFI_FILE_PROTOCOL  *DirHandle;
+  UINT64             FileInfo;
+  VOID               *Filebuffer;
+  UINTN              FileSize;
+  UINTN              Index;
 
-  DirHandle   = NULL;
-  FileHandle  = NULL;
-  Index       = 0;
+  DirHandle  = NULL;
+  FileHandle = NULL;
+  Index      = 0;
 
   //
   // Open Root from SFS
@@ -600,15 +613,16 @@ WriteUpdateFile (
   if (EFI_ERROR (Status)) {
     Status = Root->Open (Root, &DirHandle, L"\\EFI", EFI_FILE_MODE_READ | EFI_FILE_MODE_WRITE | EFI_FILE_MODE_CREATE, EFI_FILE_DIRECTORY);
     if (EFI_ERROR (Status)) {
-      Print(L"Unable to create %s directory\n", L"\\EFI");
+      Print (L"Unable to create %s directory\n", L"\\EFI");
       return EFI_NOT_FOUND;
     }
   }
-  Status = Root->Open (Root, &DirHandle, EFI_CAPSULE_FILE_DIRECTORY, EFI_FILE_MODE_READ | EFI_FILE_MODE_WRITE , 0);
+
+  Status = Root->Open (Root, &DirHandle, EFI_CAPSULE_FILE_DIRECTORY, EFI_FILE_MODE_READ | EFI_FILE_MODE_WRITE, 0);
   if (EFI_ERROR (Status)) {
     Status = Root->Open (Root, &DirHandle, EFI_CAPSULE_FILE_DIRECTORY, EFI_FILE_MODE_READ | EFI_FILE_MODE_WRITE | EFI_FILE_MODE_CREATE, EFI_FILE_DIRECTORY);
     if (EFI_ERROR (Status)) {
-      Print(L"Unable to create %s directory\n", EFI_CAPSULE_FILE_DIRECTORY);
+      Print (L"Unable to create %s directory\n", EFI_CAPSULE_FILE_DIRECTORY);
       return EFI_NOT_FOUND;
     }
   }
@@ -643,7 +657,7 @@ WriteUpdateFile (
       // Set the file size to 0.
       //
       FileInfo = 0;
-      Status = FileHandleSetSize (FileHandle, FileInfo);
+      Status   = FileHandleSetSize (FileHandle, FileInfo);
       if (EFI_ERROR (Status)) {
         Print (L"Error Deleting %s\n", FileName[Index]);
         FileHandleClose (FileHandle);
@@ -655,8 +669,8 @@ WriteUpdateFile (
     // Write Filebuffer to file
     //
     Filebuffer = Buffer[Index];
-    FileSize = BufferSize[Index];
-    Status = FileHandleWrite (FileHandle, &FileSize, Filebuffer);
+    FileSize   = BufferSize[Index];
+    Status     = FileHandleWrite (FileHandle, &FileSize, Filebuffer);
     if (EFI_ERROR (Status)) {
       Print (L"Unable to write Capsule Update to %s, Status = %r\n", FileName[Index], Status);
       return EFI_NOT_FOUND;
@@ -680,36 +694,37 @@ WriteUpdateFile (
 **/
 EFI_STATUS
 SetCapsuleStatusVariable (
-  BOOLEAN                       SetCap
+  BOOLEAN  SetCap
   )
 {
-  EFI_STATUS                    Status;
-  UINT64                        OsIndication;
-  UINTN                         DataSize;
+  EFI_STATUS  Status;
+  UINT64      OsIndication;
+  UINTN       DataSize;
 
   OsIndication = 0;
-  DataSize = sizeof(UINT64);
-  Status = gRT->GetVariable (
-                  L"OsIndications",
-                  &gEfiGlobalVariableGuid,
-                  NULL,
-                  &DataSize,
-                  &OsIndication
-                  );
+  DataSize     = sizeof (UINT64);
+  Status       = gRT->GetVariable (
+                        L"OsIndications",
+                        &gEfiGlobalVariableGuid,
+                        NULL,
+                        &DataSize,
+                        &OsIndication
+                        );
   if (EFI_ERROR (Status)) {
     OsIndication = 0;
   }
+
   if (SetCap) {
     OsIndication |= ((UINT64)EFI_OS_INDICATIONS_FILE_CAPSULE_DELIVERY_SUPPORTED);
-  }
-  else {
+  } else {
     OsIndication &= ~((UINT64)EFI_OS_INDICATIONS_FILE_CAPSULE_DELIVERY_SUPPORTED);
   }
+
   Status = gRT->SetVariable (
                   L"OsIndications",
                   &gEfiGlobalVariableGuid,
                   EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_NON_VOLATILE,
-                  sizeof(UINT64),
+                  sizeof (UINT64),
                   &OsIndication
                   );
 
@@ -728,18 +743,18 @@ IsCapsuleOnDiskSupported (
   VOID
   )
 {
-  EFI_STATUS                    Status;
-  UINT64                        OsIndicationsSupported;
-  UINTN                         DataSize;
-
-  DataSize = sizeof(UINT64);
-  Status = gRT->GetVariable (
-                  L"OsIndicationsSupported",
-                  &gEfiGlobalVariableGuid,
-                  NULL,
-                  &DataSize,
-                  &OsIndicationsSupported
-                  );
+  EFI_STATUS  Status;
+  UINT64      OsIndicationsSupported;
+  UINTN       DataSize;
+
+  DataSize = sizeof (UINT64);
+  Status   = gRT->GetVariable (
+                    L"OsIndicationsSupported",
+                    &gEfiGlobalVariableGuid,
+                    NULL,
+                    &DataSize,
+                    &OsIndicationsSupported
+                    );
   if (EFI_ERROR (Status)) {
     return FALSE;
   }
@@ -766,19 +781,19 @@ IsCapsuleOnDiskSupported (
 **/
 EFI_STATUS
 ProcessCapsuleOnDisk (
-  IN VOID                          **CapsuleBuffer,
-  IN UINTN                         *CapsuleBufferSize,
-  IN CHAR16                        **FilePath,
-  IN CHAR16                        *Map,
-  IN UINTN                         CapsuleNum
+  IN VOID    **CapsuleBuffer,
+  IN UINTN   *CapsuleBufferSize,
+  IN CHAR16  **FilePath,
+  IN CHAR16  *Map,
+  IN UINTN   CapsuleNum
   )
 {
-  EFI_STATUS                      Status;
-  UINT16                          BootNext;
-  EFI_SIMPLE_FILE_SYSTEM_PROTOCOL *Fs;
-  BOOLEAN                         UpdateBootNext;
-  CHAR16                          *FileName[MAX_CAPSULE_NUM];
-  UINTN                           Index;
+  EFI_STATUS                       Status;
+  UINT16                           BootNext;
+  EFI_SIMPLE_FILE_SYSTEM_PROTOCOL  *Fs;
+  BOOLEAN                          UpdateBootNext;
+  CHAR16                           *FileName[MAX_CAPSULE_NUM];
+  UINTN                            Index;
 
   //
   // Check if Capsule On Disk is supported
@@ -802,7 +817,7 @@ ProcessCapsuleOnDisk (
   //
   // Get file name from file path
   //
-  for (Index = 0; Index < CapsuleNum; Index ++) {
+  for (Index = 0; Index < CapsuleNum; Index++) {
     FileName[Index] = GetFileNameFromPath (FilePath[Index]);
   }
 
@@ -826,13 +841,13 @@ ProcessCapsuleOnDisk (
 
   if (UpdateBootNext) {
     Status = gRT->SetVariable (
-      L"BootNext",
-      &gEfiGlobalVariableGuid,
-      EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_NON_VOLATILE,
-      sizeof(UINT16),
-      &BootNext
-      );
-    if (EFI_ERROR (Status)){
+                    L"BootNext",
+                    &gEfiGlobalVariableGuid,
+                    EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_NON_VOLATILE,
+                    sizeof (UINT16),
+                    &BootNext
+                    );
+    if (EFI_ERROR (Status)) {
       Print (L"CapsuleApp: unable to set BootNext variable.\n");
       return Status;
     }

+ 116 - 107
MdeModulePkg/Application/DumpDynPcd/DumpDynPcd.c

@@ -14,7 +14,6 @@
 #include <Library/UefiBootServicesTableLib.h>
 #include <Library/UefiLib.h>
 
-
 #include <Protocol/UnicodeCollation.h>
 #include <Protocol/PiPcd.h>
 #include <Protocol/Pcd.h>
@@ -23,7 +22,6 @@
 #include <Protocol/ShellParameters.h>
 #include <Protocol/Shell.h>
 
-
 //
 // String token ID of help message text.
 // Shell supports to find help message in the resource section of an application image if
@@ -32,24 +30,23 @@
 // the resource section. Thus the application can use '-?' option to show help message in
 // Shell.
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_STRING_ID mStrDumpDynPcdHelpTokenId = STRING_TOKEN (STR_DUMP_DYN_PCD_HELP_INFORMATION);
-
-#define MAJOR_VERSION   1
-#define MINOR_VERSION   0
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_STRING_ID  mStrDumpDynPcdHelpTokenId = STRING_TOKEN (STR_DUMP_DYN_PCD_HELP_INFORMATION);
 
-static EFI_UNICODE_COLLATION_PROTOCOL  *mUnicodeCollation  = NULL;
-static EFI_PCD_PROTOCOL                *mPiPcd             = NULL;
-static PCD_PROTOCOL                    *mPcd               = NULL;
-static EFI_GET_PCD_INFO_PROTOCOL       *mPiPcdInfo         = NULL;
-static GET_PCD_INFO_PROTOCOL           *mPcdInfo           = NULL;
-static CHAR16                   *mTempPcdNameBuffer = NULL;
-static UINTN                     mTempPcdNameBufferSize = 0;
+#define MAJOR_VERSION  1
+#define MINOR_VERSION  0
 
-static CONST CHAR8 mHex[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};
+static EFI_UNICODE_COLLATION_PROTOCOL  *mUnicodeCollation     = NULL;
+static EFI_PCD_PROTOCOL                *mPiPcd                = NULL;
+static PCD_PROTOCOL                    *mPcd                  = NULL;
+static EFI_GET_PCD_INFO_PROTOCOL       *mPiPcdInfo            = NULL;
+static GET_PCD_INFO_PROTOCOL           *mPcdInfo              = NULL;
+static CHAR16                          *mTempPcdNameBuffer    = NULL;
+static UINTN                           mTempPcdNameBufferSize = 0;
 
-static UINTN  Argc;
-static CHAR16 **Argv;
+static CONST CHAR8  mHex[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
 
+static UINTN   Argc;
+static CHAR16  **Argv;
 
 /**
 
@@ -63,15 +60,15 @@ GetArg (
   VOID
   )
 {
-  EFI_STATUS                    Status;
-  EFI_SHELL_PARAMETERS_PROTOCOL *ShellParameters;
+  EFI_STATUS                     Status;
+  EFI_SHELL_PARAMETERS_PROTOCOL  *ShellParameters;
 
   Status = gBS->HandleProtocol (
                   gImageHandle,
                   &gEfiShellParametersProtocolGuid,
-                  (VOID**)&ShellParameters
+                  (VOID **)&ShellParameters
                   );
-  if (EFI_ERROR(Status)) {
+  if (EFI_ERROR (Status)) {
     return Status;
   }
 
@@ -121,21 +118,21 @@ ShowHelp (
 static
 VOID
 DumpHex (
-  IN UINTN        Indent,
-  IN UINTN        Offset,
-  IN UINTN        DataSize,
-  IN VOID         *UserData
+  IN UINTN  Indent,
+  IN UINTN  Offset,
+  IN UINTN  DataSize,
+  IN VOID   *UserData
   )
 {
-  UINT8 *Data;
+  UINT8  *Data;
 
-  CHAR8 Val[50];
+  CHAR8  Val[50];
 
-  CHAR8 Str[20];
+  CHAR8  Str[20];
 
-  UINT8 TempByte;
-  UINTN Size;
-  UINTN Index;
+  UINT8  TempByte;
+  UINTN  Size;
+  UINTN  Index;
 
   Data = UserData;
   while (DataSize != 0) {
@@ -145,24 +142,23 @@ DumpHex (
     }
 
     for (Index = 0; Index < Size; Index += 1) {
-      TempByte            = Data[Index];
-      Val[Index * 3 + 0]  = mHex[TempByte >> 4];
-      Val[Index * 3 + 1]  = mHex[TempByte & 0xF];
-      Val[Index * 3 + 2]  = (CHAR8) ((Index == 7) ? '-' : ' ');
-      Str[Index]          = (CHAR8) ((TempByte < ' ' || TempByte > 'z') ? '.' : TempByte);
+      TempByte           = Data[Index];
+      Val[Index * 3 + 0] = mHex[TempByte >> 4];
+      Val[Index * 3 + 1] = mHex[TempByte & 0xF];
+      Val[Index * 3 + 2] = (CHAR8)((Index == 7) ? '-' : ' ');
+      Str[Index]         = (CHAR8)((TempByte < ' ' || TempByte > 'z') ? '.' : TempByte);
     }
 
-    Val[Index * 3]  = 0;
-    Str[Index]      = 0;
+    Val[Index * 3] = 0;
+    Str[Index]     = 0;
     Print (L"%*a%08X: %-48a *%a*\r\n", Indent, "", Offset, Val, Str);
 
-    Data += Size;
-    Offset += Size;
+    Data     += Size;
+    Offset   += Size;
     DataSize -= Size;
   }
 }
 
-
 /**
   Safely append with automatic string resizing given length of Destination and
   desired length of copy from Source.
@@ -194,23 +190,23 @@ DumpHex (
   @return Destination           return the resultant string.
 **/
 static
-CHAR16*
+CHAR16 *
 InternalStrnCatGrow (
-  IN OUT CHAR16           **Destination,
-  IN OUT UINTN            *CurrentSize,
-  IN     CONST CHAR16     *Source
+  IN OUT CHAR16        **Destination,
+  IN OUT UINTN         *CurrentSize,
+  IN     CONST CHAR16  *Source
   )
 {
-  UINTN DestinationStartSize;
-  UINTN NewSize;
-  UINTN SourceLen;
+  UINTN  DestinationStartSize;
+  UINTN  NewSize;
+  UINTN  SourceLen;
 
-  SourceLen = StrLen(Source);
+  SourceLen = StrLen (Source);
 
   //
   // ASSERTs
   //
-  ASSERT(Destination != NULL);
+  ASSERT (Destination != NULL);
 
   //
   // If there's nothing to do then just return Destination
@@ -222,7 +218,7 @@ InternalStrnCatGrow (
   //
   // allow for un-initialized pointers, based on size being 0
   //
-  if (CurrentSize != NULL && *CurrentSize == 0) {
+  if ((CurrentSize != NULL) && (*CurrentSize == 0)) {
     *Destination = NULL;
   }
 
@@ -230,9 +226,9 @@ InternalStrnCatGrow (
   // allow for NULL pointers address as Destination
   //
   if (*Destination != NULL) {
-    ASSERT(CurrentSize != 0);
-    DestinationStartSize = StrSize(*Destination);
-    ASSERT(DestinationStartSize <= *CurrentSize);
+    ASSERT (CurrentSize != 0);
+    DestinationStartSize = StrSize (*Destination);
+    ASSERT (DestinationStartSize <= *CurrentSize);
   } else {
     DestinationStartSize = 0;
   }
@@ -242,16 +238,17 @@ InternalStrnCatGrow (
   //
   if (CurrentSize != NULL) {
     NewSize = *CurrentSize;
-    if (NewSize < DestinationStartSize + (SourceLen * sizeof(CHAR16))) {
-      while (NewSize < (DestinationStartSize + (SourceLen*sizeof(CHAR16)))) {
-        NewSize += 2 * SourceLen * sizeof(CHAR16);
+    if (NewSize < DestinationStartSize + (SourceLen * sizeof (CHAR16))) {
+      while (NewSize < (DestinationStartSize + (SourceLen*sizeof (CHAR16)))) {
+        NewSize += 2 * SourceLen * sizeof (CHAR16);
       }
-      *Destination = ReallocatePool(*CurrentSize, NewSize, *Destination);
+
+      *Destination = ReallocatePool (*CurrentSize, NewSize, *Destination);
       *CurrentSize = NewSize;
     }
   } else {
-    NewSize = (SourceLen + 1)*sizeof(CHAR16);
-    *Destination = AllocateZeroPool(NewSize);
+    NewSize      = (SourceLen + 1)*sizeof (CHAR16);
+    *Destination = AllocateZeroPool (NewSize);
   }
 
   //
@@ -261,7 +258,7 @@ InternalStrnCatGrow (
     return (NULL);
   }
 
-  StrnCatS(*Destination, NewSize/sizeof(CHAR16), Source, SourceLen);
+  StrnCatS (*Destination, NewSize/sizeof (CHAR16), Source, SourceLen);
   return *Destination;
 }
 
@@ -276,15 +273,15 @@ InternalStrnCatGrow (
 static
 CHAR16 *
 GetPcdTypeString (
-  IN CONST EFI_GUID     *TokenSpace,
-  IN EFI_PCD_TYPE       PcdType
+  IN CONST EFI_GUID  *TokenSpace,
+  IN EFI_PCD_TYPE    PcdType
   )
 {
-  UINTN  BufLen;
-  CHAR16 *RetString;
+  UINTN   BufLen;
+  CHAR16  *RetString;
 
-  BufLen      = 0;
-  RetString   = NULL;
+  BufLen    = 0;
+  RetString = NULL;
 
   switch (PcdType) {
     case EFI_PCD_TYPE_8:
@@ -329,18 +326,18 @@ GetPcdTypeString (
 static
 VOID
 DumpPcdInfo (
-  IN CONST EFI_GUID     *TokenSpace,
-  IN UINTN              TokenNumber,
-  IN EFI_PCD_INFO       *PcdInfo
+  IN CONST EFI_GUID  *TokenSpace,
+  IN UINTN           TokenNumber,
+  IN EFI_PCD_INFO    *PcdInfo
   )
 {
-  CHAR16                *RetString;
-  UINT8                 Uint8;
-  UINT16                Uint16;
-  UINT32                Uint32;
-  UINT64                Uint64;
-  BOOLEAN               Boolean;
-  VOID                  *PcdData;
+  CHAR16   *RetString;
+  UINT8    Uint8;
+  UINT16   Uint16;
+  UINT32   Uint32;
+  UINT64   Uint64;
+  BOOLEAN  Boolean;
+  VOID     *PcdData;
 
   RetString = NULL;
 
@@ -363,6 +360,7 @@ DumpPcdInfo (
       } else {
         Uint8 = mPiPcd->Get8 (TokenSpace, TokenNumber);
       }
+
       Print (L"  Token = 0x%08x - Type = %H%-17s%N - Size = 0x%x - Value = 0x%x\n", TokenNumber, RetString, PcdInfo->PcdSize, Uint8);
       break;
     case EFI_PCD_TYPE_16:
@@ -371,6 +369,7 @@ DumpPcdInfo (
       } else {
         Uint16 = mPiPcd->Get16 (TokenSpace, TokenNumber);
       }
+
       Print (L"  Token = 0x%08x - Type = %H%-17s%N - Size = 0x%x - Value = 0x%x\n", TokenNumber, RetString, PcdInfo->PcdSize, Uint16);
       break;
     case EFI_PCD_TYPE_32:
@@ -379,6 +378,7 @@ DumpPcdInfo (
       } else {
         Uint32 = mPiPcd->Get32 (TokenSpace, TokenNumber);
       }
+
       Print (L"  Token = 0x%08x - Type = %H%-17s%N - Size = 0x%x - Value = 0x%x\n", TokenNumber, RetString, PcdInfo->PcdSize, Uint32);
       break;
     case EFI_PCD_TYPE_64:
@@ -387,6 +387,7 @@ DumpPcdInfo (
       } else {
         Uint64 = mPiPcd->Get64 (TokenSpace, TokenNumber);
       }
+
       Print (L"  Token = 0x%08x - Type = %H%-17s%N - Size = 0x%x - Value = 0x%lx\n", TokenNumber, RetString, PcdInfo->PcdSize, Uint64);
       break;
     case EFI_PCD_TYPE_BOOL:
@@ -395,6 +396,7 @@ DumpPcdInfo (
       } else {
         Boolean = mPiPcd->GetBool (TokenSpace, TokenNumber);
       }
+
       Print (L"  Token = 0x%08x - Type = %H%-17s%N - Size = 0x%x - Value = %a\n", TokenNumber, RetString, PcdInfo->PcdSize, Boolean ? "TRUE" : "FALSE");
       break;
     case EFI_PCD_TYPE_PTR:
@@ -403,6 +405,7 @@ DumpPcdInfo (
       } else {
         PcdData = mPiPcd->GetPtr (TokenSpace, TokenNumber);
       }
+
       Print (L"  Token = 0x%08x - Type = %H%-17s%N - Size = 0x%x\n", TokenNumber, RetString, PcdInfo->PcdSize);
       DumpHex (2, 0, PcdInfo->PcdSize, PcdData);
       break;
@@ -413,6 +416,7 @@ DumpPcdInfo (
   if (RetString != NULL) {
     FreePool (RetString);
   }
+
   Print (L"\n");
 }
 
@@ -429,20 +433,20 @@ DumpPcdInfo (
 static
 EFI_STATUS
 ProcessPcd (
-  IN CHAR16     *InputPcdName
+  IN CHAR16  *InputPcdName
   )
 {
-  EFI_STATUS            Status;
-  EFI_GUID              *TokenSpace;
-  UINTN                 TokenNumber;
-  EFI_PCD_INFO          PcdInfo;
-  BOOLEAN               Found;
-  UINTN                 PcdNameSize;
+  EFI_STATUS    Status;
+  EFI_GUID      *TokenSpace;
+  UINTN         TokenNumber;
+  EFI_PCD_INFO  PcdInfo;
+  BOOLEAN       Found;
+  UINTN         PcdNameSize;
 
   PcdInfo.PcdName = NULL;
   PcdInfo.PcdSize = 0;
   PcdInfo.PcdType = 0xFF;
-  Found = FALSE;
+  Found           = FALSE;
 
   Print (L"Current system SKU ID: 0x%x\n\n", mPiPcdInfo->GetSku ());
 
@@ -451,7 +455,7 @@ ProcessPcd (
     TokenNumber = 0;
     do {
       Status = mPiPcd->GetNextToken (TokenSpace, &TokenNumber);
-      if (!EFI_ERROR (Status) && TokenNumber != 0) {
+      if (!EFI_ERROR (Status) && (TokenNumber != 0)) {
         if (TokenSpace == NULL) {
           //
           // PCD in default Token Space.
@@ -460,27 +464,32 @@ ProcessPcd (
         } else {
           mPiPcdInfo->GetInfo (TokenSpace, TokenNumber, &PcdInfo);
         }
+
         if (InputPcdName != NULL) {
           if (PcdInfo.PcdName == NULL) {
             continue;
           }
+
           PcdNameSize = AsciiStrSize (PcdInfo.PcdName) * sizeof (CHAR16);
           if (mTempPcdNameBuffer == NULL) {
             mTempPcdNameBufferSize = PcdNameSize;
-            mTempPcdNameBuffer = AllocatePool (mTempPcdNameBufferSize);
+            mTempPcdNameBuffer     = AllocatePool (mTempPcdNameBufferSize);
           } else if (mTempPcdNameBufferSize < PcdNameSize) {
-            mTempPcdNameBuffer = ReallocatePool (mTempPcdNameBufferSize, PcdNameSize, mTempPcdNameBuffer);
+            mTempPcdNameBuffer     = ReallocatePool (mTempPcdNameBufferSize, PcdNameSize, mTempPcdNameBuffer);
             mTempPcdNameBufferSize = PcdNameSize;
           }
+
           if (mTempPcdNameBuffer == NULL) {
             return EFI_OUT_OF_RESOURCES;
           }
+
           AsciiStrToUnicodeStrS (PcdInfo.PcdName, mTempPcdNameBuffer, mTempPcdNameBufferSize / sizeof (CHAR16));
           //
           // Compare the input PCD name with the PCD name in PCD database.
           //
           if ((StrStr (mTempPcdNameBuffer, InputPcdName) != NULL) ||
-              (mUnicodeCollation != NULL && mUnicodeCollation->MetaiMatch (mUnicodeCollation, mTempPcdNameBuffer, InputPcdName))) {
+              ((mUnicodeCollation != NULL) && mUnicodeCollation->MetaiMatch (mUnicodeCollation, mTempPcdNameBuffer, InputPcdName)))
+          {
             //
             // Found matched PCD.
             //
@@ -493,7 +502,7 @@ ProcessPcd (
       }
     } while (!EFI_ERROR (Status) && TokenNumber != 0);
 
-    Status = mPiPcd->GetNextTokenSpace ((CONST EFI_GUID **) &TokenSpace);
+    Status = mPiPcd->GetNextTokenSpace ((CONST EFI_GUID **)&TokenSpace);
   } while (!EFI_ERROR (Status) && TokenSpace != NULL);
 
   if ((InputPcdName != NULL) && !Found) {
@@ -503,6 +512,7 @@ ProcessPcd (
     Print (L"%EError. %NNo matching PCD found: %s.\n", InputPcdName);
     return EFI_NOT_FOUND;
   }
+
   return EFI_SUCCESS;
 }
 
@@ -526,35 +536,35 @@ DumpDynPcdMain (
   IN EFI_SYSTEM_TABLE  *SystemTable
   )
 {
-  EFI_STATUS    Status;
-  CHAR16        *InputPcdName;
+  EFI_STATUS  Status;
+  CHAR16      *InputPcdName;
 
-  InputPcdName  = NULL;
+  InputPcdName = NULL;
 
-  Status = gBS->LocateProtocol(&gEfiUnicodeCollation2ProtocolGuid, NULL, (VOID **) &mUnicodeCollation);
+  Status = gBS->LocateProtocol (&gEfiUnicodeCollation2ProtocolGuid, NULL, (VOID **)&mUnicodeCollation);
   if (EFI_ERROR (Status)) {
     mUnicodeCollation = NULL;
   }
 
-  Status = gBS->LocateProtocol (&gEfiPcdProtocolGuid, NULL, (VOID **) &mPiPcd);
+  Status = gBS->LocateProtocol (&gEfiPcdProtocolGuid, NULL, (VOID **)&mPiPcd);
   if (EFI_ERROR (Status)) {
     Print (L"DumpDynPcd: %EError. %NPI PCD protocol is not present.\n");
     return Status;
   }
 
-  Status = gBS->LocateProtocol (&gEfiGetPcdInfoProtocolGuid, NULL, (VOID **) &mPiPcdInfo);
+  Status = gBS->LocateProtocol (&gEfiGetPcdInfoProtocolGuid, NULL, (VOID **)&mPiPcdInfo);
   if (EFI_ERROR (Status)) {
     Print (L"DumpDynPcd: %EError. %NPI PCD info protocol is not present.\n");
     return Status;
   }
 
-  Status = gBS->LocateProtocol (&gPcdProtocolGuid, NULL, (VOID **) &mPcd);
+  Status = gBS->LocateProtocol (&gPcdProtocolGuid, NULL, (VOID **)&mPcd);
   if (EFI_ERROR (Status)) {
     Print (L"DumpDynPcd: %EError. %NPCD protocol is not present.\n");
     return Status;
   }
 
-  Status = gBS->LocateProtocol (&gGetPcdInfoProtocolGuid, NULL, (VOID **) &mPcdInfo);
+  Status = gBS->LocateProtocol (&gGetPcdInfoProtocolGuid, NULL, (VOID **)&mPcdInfo);
   if (EFI_ERROR (Status)) {
     Print (L"DumpDynPcd: %EError. %NPCD info protocol is not present.\n");
     return Status;
@@ -563,33 +573,33 @@ DumpDynPcdMain (
   //
   // get the command line arguments
   //
-  Status = GetArg();
-  if (EFI_ERROR(Status)){
+  Status = GetArg ();
+  if (EFI_ERROR (Status)) {
     Print (L"DumpDynPcd: %EError. %NThe input parameters are not recognized.\n");
     Status = EFI_INVALID_PARAMETER;
     return Status;
   }
 
-  if (Argc > 2){
+  if (Argc > 2) {
     Print (L"DumpDynPcd: %EError. %NToo many arguments specified.\n");
     Status = EFI_INVALID_PARAMETER;
     return Status;
   }
 
-  if (Argc == 1){
+  if (Argc == 1) {
     Status = ProcessPcd (InputPcdName);
     goto Done;
   }
 
-  if ((StrCmp(Argv[1], L"-?") == 0)||(StrCmp(Argv[1], L"-h") == 0)||(StrCmp(Argv[1], L"-H") == 0)){
+  if ((StrCmp (Argv[1], L"-?") == 0) || (StrCmp (Argv[1], L"-h") == 0) || (StrCmp (Argv[1], L"-H") == 0)) {
     ShowHelp ();
     goto Done;
   } else {
-    if ((StrCmp(Argv[1], L"-v") == 0)||(StrCmp(Argv[1], L"-V") == 0)){
+    if ((StrCmp (Argv[1], L"-v") == 0) || (StrCmp (Argv[1], L"-V") == 0)) {
       ShowVersion ();
       goto Done;
     } else {
-      if (StrStr(Argv[1], L"-") != NULL){
+      if (StrStr (Argv[1], L"-") != NULL) {
         Print (L"DumpDynPcd: %EError. %NThe argument '%B%s%N' is invalid.\n", Argv[1]);
         goto Done;
       }
@@ -597,9 +607,9 @@ DumpDynPcdMain (
   }
 
   InputPcdName = Argv[1];
-  Status = ProcessPcd (InputPcdName);
+  Status       = ProcessPcd (InputPcdName);
 
-  Done:
+Done:
 
   if (mTempPcdNameBuffer != NULL) {
     FreePool (mTempPcdNameBuffer);
@@ -607,4 +617,3 @@ DumpDynPcdMain (
 
   return Status;
 }
-

+ 4 - 4
MdeModulePkg/Application/HelloWorld/HelloWorld.c

@@ -20,7 +20,7 @@
 // the resource section. Thus the application can use '-?' option to show help message in
 // Shell.
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_STRING_ID mStringHelpTokenId = STRING_TOKEN (STR_HELLO_WORLD_HELP_INFORMATION);
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_STRING_ID  mStringHelpTokenId = STRING_TOKEN (STR_HELLO_WORLD_HELP_INFORMATION);
 
 /**
   The user Entry Point for Application. The user code starts with this function
@@ -40,7 +40,7 @@ UefiMain (
   IN EFI_SYSTEM_TABLE  *SystemTable
   )
 {
-  UINT32 Index;
+  UINT32  Index;
 
   Index = 0;
 
@@ -48,11 +48,11 @@ UefiMain (
   // Three PCD type (FeatureFlag, UINT32 and String) are used as the sample.
   //
   if (FeaturePcdGet (PcdHelloWorldPrintEnable)) {
-    for (Index = 0; Index < PcdGet32 (PcdHelloWorldPrintTimes); Index ++) {
+    for (Index = 0; Index < PcdGet32 (PcdHelloWorldPrintTimes); Index++) {
       //
       // Use UefiLib Print API to print string to UEFI console
       //
-      Print ((CHAR16*)PcdGetPtr (PcdHelloWorldPrintString));
+      Print ((CHAR16 *)PcdGetPtr (PcdHelloWorldPrintString));
     }
   }
 

File diff suppressed because it is too large
+ 248 - 214
MdeModulePkg/Application/MemoryProfileInfo/MemoryProfileInfo.c


+ 196 - 177
MdeModulePkg/Application/SmiHandlerProfileInfo/SmiHandlerProfileInfo.c

@@ -23,7 +23,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #include <Guid/SmiHandlerProfile.h>
 
 #define PROFILE_NAME_STRING_LENGTH  64
-CHAR8 mNameString[PROFILE_NAME_STRING_LENGTH + 1];
+CHAR8  mNameString[PROFILE_NAME_STRING_LENGTH + 1];
 
 VOID   *mSmiHandlerProfileDatabase;
 UINTN  mSmiHandlerProfileDatabaseSize;
@@ -41,6 +41,7 @@ InternalDumpData (
   )
 {
   UINTN  Index;
+
   for (Index = 0; Index < Size; Index++) {
     Print (L"%02x", (UINTN)Data[Index]);
     if ((Index + 1) != Size) {
@@ -53,79 +54,82 @@ InternalDumpData (
   Get SMI handler profile database.
 **/
 VOID
-GetSmiHandlerProfileDatabase(
+GetSmiHandlerProfileDatabase (
   VOID
   )
 {
-  EFI_STATUS                                          Status;
-  UINTN                                               CommSize;
-  UINT8                                               *CommBuffer;
-  EFI_SMM_COMMUNICATE_HEADER                          *CommHeader;
-  SMI_HANDLER_PROFILE_PARAMETER_GET_INFO              *CommGetInfo;
-  SMI_HANDLER_PROFILE_PARAMETER_GET_DATA_BY_OFFSET    *CommGetData;
-  EFI_SMM_COMMUNICATION_PROTOCOL                      *SmmCommunication;
-  UINTN                                               MinimalSizeNeeded;
-  EDKII_PI_SMM_COMMUNICATION_REGION_TABLE             *PiSmmCommunicationRegionTable;
-  UINT32                                              Index;
-  EFI_MEMORY_DESCRIPTOR                               *Entry;
-  VOID                                                *Buffer;
-  UINTN                                               Size;
-  UINTN                                               Offset;
-
-  Status = gBS->LocateProtocol(&gEfiSmmCommunicationProtocolGuid, NULL, (VOID **)&SmmCommunication);
-  if (EFI_ERROR(Status)) {
-    Print(L"SmiHandlerProfile: Locate SmmCommunication protocol - %r\n", Status);
-    return ;
+  EFI_STATUS                                        Status;
+  UINTN                                             CommSize;
+  UINT8                                             *CommBuffer;
+  EFI_SMM_COMMUNICATE_HEADER                        *CommHeader;
+  SMI_HANDLER_PROFILE_PARAMETER_GET_INFO            *CommGetInfo;
+  SMI_HANDLER_PROFILE_PARAMETER_GET_DATA_BY_OFFSET  *CommGetData;
+  EFI_SMM_COMMUNICATION_PROTOCOL                    *SmmCommunication;
+  UINTN                                             MinimalSizeNeeded;
+  EDKII_PI_SMM_COMMUNICATION_REGION_TABLE           *PiSmmCommunicationRegionTable;
+  UINT32                                            Index;
+  EFI_MEMORY_DESCRIPTOR                             *Entry;
+  VOID                                              *Buffer;
+  UINTN                                             Size;
+  UINTN                                             Offset;
+
+  Status = gBS->LocateProtocol (&gEfiSmmCommunicationProtocolGuid, NULL, (VOID **)&SmmCommunication);
+  if (EFI_ERROR (Status)) {
+    Print (L"SmiHandlerProfile: Locate SmmCommunication protocol - %r\n", Status);
+    return;
   }
 
   MinimalSizeNeeded = EFI_PAGE_SIZE;
 
-  Status = EfiGetSystemConfigurationTable(
+  Status = EfiGetSystemConfigurationTable (
              &gEdkiiPiSmmCommunicationRegionTableGuid,
              (VOID **)&PiSmmCommunicationRegionTable
              );
-  if (EFI_ERROR(Status)) {
-    Print(L"SmiHandlerProfile: Get PiSmmCommunicationRegionTable - %r\n", Status);
-    return ;
+  if (EFI_ERROR (Status)) {
+    Print (L"SmiHandlerProfile: Get PiSmmCommunicationRegionTable - %r\n", Status);
+    return;
   }
-  ASSERT(PiSmmCommunicationRegionTable != NULL);
+
+  ASSERT (PiSmmCommunicationRegionTable != NULL);
   Entry = (EFI_MEMORY_DESCRIPTOR *)(PiSmmCommunicationRegionTable + 1);
-  Size = 0;
+  Size  = 0;
   for (Index = 0; Index < PiSmmCommunicationRegionTable->NumberOfEntries; Index++) {
     if (Entry->Type == EfiConventionalMemory) {
-      Size = EFI_PAGES_TO_SIZE((UINTN)Entry->NumberOfPages);
+      Size = EFI_PAGES_TO_SIZE ((UINTN)Entry->NumberOfPages);
       if (Size >= MinimalSizeNeeded) {
         break;
       }
     }
+
     Entry = (EFI_MEMORY_DESCRIPTOR *)((UINT8 *)Entry + PiSmmCommunicationRegionTable->DescriptorSize);
   }
-  ASSERT(Index < PiSmmCommunicationRegionTable->NumberOfEntries);
+
+  ASSERT (Index < PiSmmCommunicationRegionTable->NumberOfEntries);
   CommBuffer = (UINT8 *)(UINTN)Entry->PhysicalStart;
 
   //
   // Get Size
   //
   CommHeader = (EFI_SMM_COMMUNICATE_HEADER *)&CommBuffer[0];
-  CopyMem(&CommHeader->HeaderGuid, &gSmiHandlerProfileGuid, sizeof(gSmiHandlerProfileGuid));
-  CommHeader->MessageLength = sizeof(SMI_HANDLER_PROFILE_PARAMETER_GET_INFO);
+  CopyMem (&CommHeader->HeaderGuid, &gSmiHandlerProfileGuid, sizeof (gSmiHandlerProfileGuid));
+  CommHeader->MessageLength = sizeof (SMI_HANDLER_PROFILE_PARAMETER_GET_INFO);
 
-  CommGetInfo = (SMI_HANDLER_PROFILE_PARAMETER_GET_INFO *)&CommBuffer[OFFSET_OF(EFI_SMM_COMMUNICATE_HEADER, Data)];
-  CommGetInfo->Header.Command = SMI_HANDLER_PROFILE_COMMAND_GET_INFO;
-  CommGetInfo->Header.DataLength = sizeof(*CommGetInfo);
+  CommGetInfo                      = (SMI_HANDLER_PROFILE_PARAMETER_GET_INFO *)&CommBuffer[OFFSET_OF (EFI_SMM_COMMUNICATE_HEADER, Data)];
+  CommGetInfo->Header.Command      = SMI_HANDLER_PROFILE_COMMAND_GET_INFO;
+  CommGetInfo->Header.DataLength   = sizeof (*CommGetInfo);
   CommGetInfo->Header.ReturnStatus = (UINT64)-1;
-  CommGetInfo->DataSize = 0;
+  CommGetInfo->DataSize            = 0;
 
-  CommSize = sizeof(EFI_GUID) + sizeof(UINTN) + CommHeader->MessageLength;
-  Status = SmmCommunication->Communicate(SmmCommunication, CommBuffer, &CommSize);
-  if (EFI_ERROR(Status)) {
-    Print(L"SmiHandlerProfile: SmmCommunication - %r\n", Status);
-    return ;
+  CommSize = sizeof (EFI_GUID) + sizeof (UINTN) + CommHeader->MessageLength;
+  Status   = SmmCommunication->Communicate (SmmCommunication, CommBuffer, &CommSize);
+  if (EFI_ERROR (Status)) {
+    Print (L"SmiHandlerProfile: SmmCommunication - %r\n", Status);
+    return;
   }
 
   if (CommGetInfo->Header.ReturnStatus != 0) {
-    Print(L"SmiHandlerProfile: GetInfo - 0x%0x\n", CommGetInfo->Header.ReturnStatus);
-    return ;
+    Print (L"SmiHandlerProfile: GetInfo - 0x%0x\n", CommGetInfo->Header.ReturnStatus);
+    return;
   }
 
   mSmiHandlerProfileDatabaseSize = (UINTN)CommGetInfo->DataSize;
@@ -133,25 +137,25 @@ GetSmiHandlerProfileDatabase(
   //
   // Get Data
   //
-  mSmiHandlerProfileDatabase = AllocateZeroPool(mSmiHandlerProfileDatabaseSize);
+  mSmiHandlerProfileDatabase = AllocateZeroPool (mSmiHandlerProfileDatabaseSize);
   if (mSmiHandlerProfileDatabase == NULL) {
     Status = EFI_OUT_OF_RESOURCES;
-    Print(L"SmiHandlerProfile: AllocateZeroPool (0x%x) for dump buffer - %r\n", mSmiHandlerProfileDatabaseSize, Status);
-    return ;
+    Print (L"SmiHandlerProfile: AllocateZeroPool (0x%x) for dump buffer - %r\n", mSmiHandlerProfileDatabaseSize, Status);
+    return;
   }
 
   CommHeader = (EFI_SMM_COMMUNICATE_HEADER *)&CommBuffer[0];
-  CopyMem(&CommHeader->HeaderGuid, &gSmiHandlerProfileGuid, sizeof(gSmiHandlerProfileGuid));
-  CommHeader->MessageLength = sizeof(SMI_HANDLER_PROFILE_PARAMETER_GET_DATA_BY_OFFSET);
+  CopyMem (&CommHeader->HeaderGuid, &gSmiHandlerProfileGuid, sizeof (gSmiHandlerProfileGuid));
+  CommHeader->MessageLength = sizeof (SMI_HANDLER_PROFILE_PARAMETER_GET_DATA_BY_OFFSET);
 
-  CommGetData = (SMI_HANDLER_PROFILE_PARAMETER_GET_DATA_BY_OFFSET *)&CommBuffer[OFFSET_OF(EFI_SMM_COMMUNICATE_HEADER, Data)];
-  CommGetData->Header.Command = SMI_HANDLER_PROFILE_COMMAND_GET_DATA_BY_OFFSET;
-  CommGetData->Header.DataLength = sizeof(*CommGetData);
+  CommGetData                      = (SMI_HANDLER_PROFILE_PARAMETER_GET_DATA_BY_OFFSET *)&CommBuffer[OFFSET_OF (EFI_SMM_COMMUNICATE_HEADER, Data)];
+  CommGetData->Header.Command      = SMI_HANDLER_PROFILE_COMMAND_GET_DATA_BY_OFFSET;
+  CommGetData->Header.DataLength   = sizeof (*CommGetData);
   CommGetData->Header.ReturnStatus = (UINT64)-1;
 
-  CommSize = sizeof(EFI_GUID) + sizeof(UINTN) + CommHeader->MessageLength;
-  Buffer = (UINT8 *)CommHeader + CommSize;
-  Size -= CommSize;
+  CommSize = sizeof (EFI_GUID) + sizeof (UINTN) + CommHeader->MessageLength;
+  Buffer   = (UINT8 *)CommHeader + CommSize;
+  Size    -= CommSize;
 
   CommGetData->DataBuffer = (PHYSICAL_ADDRESS)(UINTN)Buffer;
   CommGetData->DataOffset = 0;
@@ -162,21 +166,23 @@ GetSmiHandlerProfileDatabase(
     } else {
       CommGetData->DataSize = (UINT64)(mSmiHandlerProfileDatabaseSize - CommGetData->DataOffset);
     }
-    Status = SmmCommunication->Communicate(SmmCommunication, CommBuffer, &CommSize);
-    ASSERT_EFI_ERROR(Status);
+
+    Status = SmmCommunication->Communicate (SmmCommunication, CommBuffer, &CommSize);
+    ASSERT_EFI_ERROR (Status);
 
     if (CommGetData->Header.ReturnStatus != 0) {
-      FreePool(mSmiHandlerProfileDatabase);
+      FreePool (mSmiHandlerProfileDatabase);
       mSmiHandlerProfileDatabase = NULL;
-      Print(L"SmiHandlerProfile: GetData - 0x%x\n", CommGetData->Header.ReturnStatus);
-      return ;
+      Print (L"SmiHandlerProfile: GetData - 0x%x\n", CommGetData->Header.ReturnStatus);
+      return;
     }
-    CopyMem((UINT8 *)mSmiHandlerProfileDatabase + Offset, (VOID *)(UINTN)CommGetData->DataBuffer, (UINTN)CommGetData->DataSize);
+
+    CopyMem ((UINT8 *)mSmiHandlerProfileDatabase + Offset, (VOID *)(UINTN)CommGetData->DataBuffer, (UINTN)CommGetData->DataSize);
   }
 
   DEBUG ((DEBUG_INFO, "SmiHandlerProfileSize - 0x%x\n", mSmiHandlerProfileDatabaseSize));
 
-  return ;
+  return;
 }
 
 /**
@@ -193,14 +199,14 @@ GetSmiHandlerProfileDatabase(
 **/
 VOID
 GetShortPdbFileName (
-  IN  CHAR8     *PdbFileName,
-  OUT CHAR8     *AsciiBuffer
+  IN  CHAR8  *PdbFileName,
+  OUT CHAR8  *AsciiBuffer
   )
 {
-  UINTN IndexPdb;     // Current work location within a Pdb string.
-  UINTN IndexBuffer;  // Current work location within a Buffer string.
-  UINTN StartIndex;
-  UINTN EndIndex;
+  UINTN  IndexPdb;    // Current work location within a Pdb string.
+  UINTN  IndexBuffer; // Current work location within a Buffer string.
+  UINTN  StartIndex;
+  UINTN  EndIndex;
 
   ZeroMem (AsciiBuffer, PROFILE_NAME_STRING_LENGTH + 1);
 
@@ -208,7 +214,9 @@ GetShortPdbFileName (
     AsciiStrnCpyS (AsciiBuffer, PROFILE_NAME_STRING_LENGTH + 1, " ", 1);
   } else {
     StartIndex = 0;
-    for (EndIndex = 0; PdbFileName[EndIndex] != 0; EndIndex++);
+    for (EndIndex = 0; PdbFileName[EndIndex] != 0; EndIndex++) {
+    }
+
     for (IndexPdb = 0; PdbFileName[IndexPdb] != 0; IndexPdb++) {
       if ((PdbFileName[IndexPdb] == '\\') || (PdbFileName[IndexPdb] == '/')) {
         StartIndex = IndexPdb + 1;
@@ -248,9 +256,9 @@ GetDriverNameString (
   IN SMM_CORE_IMAGE_DATABASE_STRUCTURE  *ImageStruct
   )
 {
-  EFI_STATUS                  Status;
-  CHAR16                      *NameString;
-  UINTN                       StringSize;
+  EFI_STATUS  Status;
+  CHAR16      *NameString;
+  UINTN       StringSize;
 
   if (ImageStruct == NULL) {
     return "???";
@@ -260,7 +268,7 @@ GetDriverNameString (
   // Method 1: Get the name string from image PDB
   //
   if (ImageStruct->PdbStringOffset != 0) {
-    GetShortPdbFileName ((CHAR8 *) ((UINTN) ImageStruct + ImageStruct->PdbStringOffset), mNameString);
+    GetShortPdbFileName ((CHAR8 *)((UINTN)ImageStruct + ImageStruct->PdbStringOffset), mNameString);
     return mNameString;
   }
 
@@ -270,13 +278,13 @@ GetDriverNameString (
     //
     NameString = NULL;
     StringSize = 0;
-    Status = GetSectionFromAnyFv (
-              &ImageStruct->FileGuid,
-              EFI_SECTION_USER_INTERFACE,
-              0,
-              (VOID **) &NameString,
-              &StringSize
-              );
+    Status     = GetSectionFromAnyFv (
+                   &ImageStruct->FileGuid,
+                   EFI_SECTION_USER_INTERFACE,
+                   0,
+                   (VOID **)&NameString,
+                   &StringSize
+                   );
     if (!EFI_ERROR (Status)) {
       //
       // Method 2: Get the name string from FFS UI section
@@ -284,6 +292,7 @@ GetDriverNameString (
       if (StrLen (NameString) > PROFILE_NAME_STRING_LENGTH) {
         NameString[PROFILE_NAME_STRING_LENGTH] = 0;
       }
+
       UnicodeStrToAsciiStrS (NameString, mNameString, sizeof (mNameString));
       FreePool (NameString);
       return mNameString;
@@ -306,7 +315,7 @@ GetDriverNameString (
 **/
 SMM_CORE_IMAGE_DATABASE_STRUCTURE *
 GetImageFromRef (
-  IN UINTN ImageRef
+  IN UINTN  ImageRef
   )
 {
   SMM_CORE_IMAGE_DATABASE_STRUCTURE  *ImageStruct;
@@ -318,6 +327,7 @@ GetImageFromRef (
         return ImageStruct;
       }
     }
+
     ImageStruct = (VOID *)((UINTN)ImageStruct + ImageStruct->Header.Length);
   }
 
@@ -328,7 +338,7 @@ GetImageFromRef (
   Dump SMM loaded image information.
 **/
 VOID
-DumpSmmLoadedImage(
+DumpSmmLoadedImage (
   VOID
   )
 {
@@ -340,19 +350,21 @@ DumpSmmLoadedImage(
   while ((UINTN)ImageStruct < (UINTN)mSmiHandlerProfileDatabase + mSmiHandlerProfileDatabaseSize) {
     if (ImageStruct->Header.Signature == SMM_CORE_IMAGE_DATABASE_SIGNATURE) {
       NameString = GetDriverNameString (ImageStruct);
-      Print(L"  <Image Name=\"%a\"", NameString);
-      Print(L" Base=\"0x%lx\" Size=\"0x%lx\"", ImageStruct->ImageBase, ImageStruct->ImageSize);
+      Print (L"  <Image Name=\"%a\"", NameString);
+      Print (L" Base=\"0x%lx\" Size=\"0x%lx\"", ImageStruct->ImageBase, ImageStruct->ImageSize);
       if (ImageStruct->EntryPoint != 0) {
-        Print(L" EntryPoint=\"0x%lx\"", ImageStruct->EntryPoint);
+        Print (L" EntryPoint=\"0x%lx\"", ImageStruct->EntryPoint);
       }
-      Print(L" FvFile=\"%g\"", &ImageStruct->FileGuid);
-      Print(L" RefId=\"0x%x\"", ImageStruct->ImageRef);
-      Print(L">\n");
+
+      Print (L" FvFile=\"%g\"", &ImageStruct->FileGuid);
+      Print (L" RefId=\"0x%x\"", ImageStruct->ImageRef);
+      Print (L">\n");
       if (ImageStruct->PdbStringOffset != 0) {
         PdbString = (CHAR8 *)((UINTN)ImageStruct + ImageStruct->PdbStringOffset);
-        Print(L"    <Pdb>%a</Pdb>\n", PdbString);
+        Print (L"    <Pdb>%a</Pdb>\n", PdbString);
       }
-      Print(L"  </Image>\n");
+
+      Print (L"  </Image>\n");
     }
 
     ImageStruct = (VOID *)((UINTN)ImageStruct + ImageStruct->Header.Length);
@@ -361,7 +373,7 @@ DumpSmmLoadedImage(
   return;
 }
 
-CHAR8 *mSxTypeString[] = {
+CHAR8  *mSxTypeString[] = {
   "SxS0",
   "SxS1",
   "SxS2",
@@ -382,15 +394,15 @@ SxTypeToString (
   IN EFI_SLEEP_TYPE  Type
   )
 {
-  if (Type >= 0 && Type < ARRAY_SIZE(mSxTypeString)) {
+  if ((Type >= 0) && (Type < ARRAY_SIZE (mSxTypeString))) {
     return mSxTypeString[Type];
   } else {
-    AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Type);
+    AsciiSPrint (mNameString, sizeof (mNameString), "0x%x", Type);
     return mNameString;
   }
 }
 
-CHAR8 *mSxPhaseString[] = {
+CHAR8  *mSxPhaseString[] = {
   "SxEntry",
   "SxExit",
 };
@@ -404,18 +416,18 @@ CHAR8 *mSxPhaseString[] = {
 **/
 CHAR8 *
 SxPhaseToString (
-  IN EFI_SLEEP_PHASE Phase
+  IN EFI_SLEEP_PHASE  Phase
   )
 {
-  if (Phase >= 0 && Phase < ARRAY_SIZE(mSxPhaseString)) {
+  if ((Phase >= 0) && (Phase < ARRAY_SIZE (mSxPhaseString))) {
     return mSxPhaseString[Phase];
   } else {
-    AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Phase);
+    AsciiSPrint (mNameString, sizeof (mNameString), "0x%x", Phase);
     return mNameString;
   }
 }
 
-CHAR8 *mPowerButtonPhaseString[] = {
+CHAR8  *mPowerButtonPhaseString[] = {
   "PowerButtonEntry",
   "PowerButtonExit",
 };
@@ -432,15 +444,15 @@ PowerButtonPhaseToString (
   IN EFI_POWER_BUTTON_PHASE  Phase
   )
 {
-  if (Phase >= 0 && Phase < ARRAY_SIZE(mPowerButtonPhaseString)) {
+  if ((Phase >= 0) && (Phase < ARRAY_SIZE (mPowerButtonPhaseString))) {
     return mPowerButtonPhaseString[Phase];
   } else {
-    AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Phase);
+    AsciiSPrint (mNameString, sizeof (mNameString), "0x%x", Phase);
     return mNameString;
   }
 }
 
-CHAR8 *mStandbyButtonPhaseString[] = {
+CHAR8  *mStandbyButtonPhaseString[] = {
   "StandbyButtonEntry",
   "StandbyButtonExit",
 };
@@ -457,15 +469,15 @@ StandbyButtonPhaseToString (
   IN EFI_STANDBY_BUTTON_PHASE  Phase
   )
 {
-  if (Phase >= 0 && Phase < ARRAY_SIZE(mStandbyButtonPhaseString)) {
+  if ((Phase >= 0) && (Phase < ARRAY_SIZE (mStandbyButtonPhaseString))) {
     return mStandbyButtonPhaseString[Phase];
   } else {
-    AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Phase);
+    AsciiSPrint (mNameString, sizeof (mNameString), "0x%x", Phase);
     return mNameString;
   }
 }
 
-CHAR8 *mIoTrapTypeString[] = {
+CHAR8  *mIoTrapTypeString[] = {
   "WriteTrap",
   "ReadTrap",
   "ReadWriteTrap",
@@ -483,15 +495,15 @@ IoTrapTypeToString (
   IN EFI_SMM_IO_TRAP_DISPATCH_TYPE  Type
   )
 {
-  if (Type >= 0 && Type < ARRAY_SIZE(mIoTrapTypeString)) {
+  if ((Type >= 0) && (Type < ARRAY_SIZE (mIoTrapTypeString))) {
     return mIoTrapTypeString[Type];
   } else {
-    AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Type);
+    AsciiSPrint (mNameString, sizeof (mNameString), "0x%x", Type);
     return mNameString;
   }
 }
 
-CHAR8 *mUsbTypeString[] = {
+CHAR8  *mUsbTypeString[] = {
   "UsbLegacy",
   "UsbWake",
 };
@@ -505,13 +517,13 @@ CHAR8 *mUsbTypeString[] = {
 **/
 CHAR8 *
 UsbTypeToString (
-  IN EFI_USB_SMI_TYPE          Type
+  IN EFI_USB_SMI_TYPE  Type
   )
 {
-  if (Type >= 0 && Type < ARRAY_SIZE(mUsbTypeString)) {
+  if ((Type >= 0) && (Type < ARRAY_SIZE (mUsbTypeString))) {
     return mUsbTypeString[Type];
   } else {
-    AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Type);
+    AsciiSPrint (mNameString, sizeof (mNameString), "0x%x", Type);
     return mNameString;
   }
 }
@@ -525,42 +537,42 @@ UsbTypeToString (
 **/
 VOID
 DumpSmiChildContext (
-  IN EFI_GUID   *HandlerType,
-  IN VOID       *Context,
-  IN UINTN      ContextSize
+  IN EFI_GUID  *HandlerType,
+  IN VOID      *Context,
+  IN UINTN     ContextSize
   )
 {
-  CHAR16        *Str;
+  CHAR16  *Str;
 
   if (CompareGuid (HandlerType, &gEfiSmmSwDispatch2ProtocolGuid)) {
-    Print(L" SwSmi=\"0x%lx\"", ((SMI_HANDLER_PROFILE_SW_REGISTER_CONTEXT *)Context)->SwSmiInputValue);
+    Print (L" SwSmi=\"0x%lx\"", ((SMI_HANDLER_PROFILE_SW_REGISTER_CONTEXT *)Context)->SwSmiInputValue);
   } else if (CompareGuid (HandlerType, &gEfiSmmSxDispatch2ProtocolGuid)) {
-    Print(L" SxType=\"%a\"", SxTypeToString(((EFI_SMM_SX_REGISTER_CONTEXT *)Context)->Type));
-    Print(L" SxPhase=\"%a\"", SxPhaseToString(((EFI_SMM_SX_REGISTER_CONTEXT *)Context)->Phase));
+    Print (L" SxType=\"%a\"", SxTypeToString (((EFI_SMM_SX_REGISTER_CONTEXT *)Context)->Type));
+    Print (L" SxPhase=\"%a\"", SxPhaseToString (((EFI_SMM_SX_REGISTER_CONTEXT *)Context)->Phase));
   } else if (CompareGuid (HandlerType, &gEfiSmmPowerButtonDispatch2ProtocolGuid)) {
-    Print(L" PowerButtonPhase=\"%a\"", PowerButtonPhaseToString(((EFI_SMM_POWER_BUTTON_REGISTER_CONTEXT *)Context)->Phase));
+    Print (L" PowerButtonPhase=\"%a\"", PowerButtonPhaseToString (((EFI_SMM_POWER_BUTTON_REGISTER_CONTEXT *)Context)->Phase));
   } else if (CompareGuid (HandlerType, &gEfiSmmStandbyButtonDispatch2ProtocolGuid)) {
-    Print(L" StandbyButtonPhase=\"%a\"", StandbyButtonPhaseToString(((EFI_SMM_STANDBY_BUTTON_REGISTER_CONTEXT *)Context)->Phase));
+    Print (L" StandbyButtonPhase=\"%a\"", StandbyButtonPhaseToString (((EFI_SMM_STANDBY_BUTTON_REGISTER_CONTEXT *)Context)->Phase));
   } else if (CompareGuid (HandlerType, &gEfiSmmPeriodicTimerDispatch2ProtocolGuid)) {
-    Print(L" PeriodicTimerPeriod=\"%ld\"", ((EFI_SMM_PERIODIC_TIMER_REGISTER_CONTEXT *)Context)->Period);
-    Print(L" PeriodicTimerSmiTickInterval=\"%ld\"", ((EFI_SMM_PERIODIC_TIMER_REGISTER_CONTEXT *)Context)->SmiTickInterval);
+    Print (L" PeriodicTimerPeriod=\"%ld\"", ((EFI_SMM_PERIODIC_TIMER_REGISTER_CONTEXT *)Context)->Period);
+    Print (L" PeriodicTimerSmiTickInterval=\"%ld\"", ((EFI_SMM_PERIODIC_TIMER_REGISTER_CONTEXT *)Context)->SmiTickInterval);
   } else if (CompareGuid (HandlerType, &gEfiSmmGpiDispatch2ProtocolGuid)) {
-    Print(L" GpiNum=\"0x%lx\"", ((EFI_SMM_GPI_REGISTER_CONTEXT *)Context)->GpiNum);
+    Print (L" GpiNum=\"0x%lx\"", ((EFI_SMM_GPI_REGISTER_CONTEXT *)Context)->GpiNum);
   } else if (CompareGuid (HandlerType, &gEfiSmmIoTrapDispatch2ProtocolGuid)) {
-    Print(L" IoTrapAddress=\"0x%x\"", ((EFI_SMM_IO_TRAP_REGISTER_CONTEXT *)Context)->Address);
-    Print(L" IoTrapLength=\"0x%x\"", ((EFI_SMM_IO_TRAP_REGISTER_CONTEXT *)Context)->Length);
-    Print(L" IoTrapType=\"%a\"", IoTrapTypeToString(((EFI_SMM_IO_TRAP_REGISTER_CONTEXT *)Context)->Type));
+    Print (L" IoTrapAddress=\"0x%x\"", ((EFI_SMM_IO_TRAP_REGISTER_CONTEXT *)Context)->Address);
+    Print (L" IoTrapLength=\"0x%x\"", ((EFI_SMM_IO_TRAP_REGISTER_CONTEXT *)Context)->Length);
+    Print (L" IoTrapType=\"%a\"", IoTrapTypeToString (((EFI_SMM_IO_TRAP_REGISTER_CONTEXT *)Context)->Type));
   } else if (CompareGuid (HandlerType, &gEfiSmmUsbDispatch2ProtocolGuid)) {
-    Print(L" UsbType=\"0x%x\"", UsbTypeToString(((SMI_HANDLER_PROFILE_USB_REGISTER_CONTEXT *)Context)->Type));
-    Str = ConvertDevicePathToText((EFI_DEVICE_PATH_PROTOCOL *)(((SMI_HANDLER_PROFILE_USB_REGISTER_CONTEXT *)Context) + 1), TRUE, TRUE);
-    Print(L" UsbDevicePath=\"%s\"", Str);
+    Print (L" UsbType=\"0x%x\"", UsbTypeToString (((SMI_HANDLER_PROFILE_USB_REGISTER_CONTEXT *)Context)->Type));
+    Str = ConvertDevicePathToText ((EFI_DEVICE_PATH_PROTOCOL *)(((SMI_HANDLER_PROFILE_USB_REGISTER_CONTEXT *)Context) + 1), TRUE, TRUE);
+    Print (L" UsbDevicePath=\"%s\"", Str);
     if (Str != NULL) {
       FreePool (Str);
     }
   } else {
-    Print(L" Context=\"");
+    Print (L" Context=\"");
     InternalDumpData (Context, ContextSize);
-    Print(L"\"");
+    Print (L"\"");
   }
 }
 
@@ -570,8 +582,8 @@ DumpSmiChildContext (
   @param HandlerCategory  SMI handler category
 **/
 VOID
-DumpSmiHandler(
-  IN UINT32 HandlerCategory
+DumpSmiHandler (
+  IN UINT32  HandlerCategory
   )
 {
   SMM_CORE_SMI_DATABASE_STRUCTURE    *SmiStruct;
@@ -584,39 +596,46 @@ DumpSmiHandler(
   while ((UINTN)SmiStruct < (UINTN)mSmiHandlerProfileDatabase + mSmiHandlerProfileDatabaseSize) {
     if ((SmiStruct->Header.Signature == SMM_CORE_SMI_DATABASE_SIGNATURE) && (SmiStruct->HandlerCategory == HandlerCategory)) {
       SmiHandlerStruct = (VOID *)(SmiStruct + 1);
-      Print(L"  <SmiEntry");
+      Print (L"  <SmiEntry");
       if (!IsZeroGuid (&SmiStruct->HandlerType)) {
-        Print(L" HandlerType=\"%g\"", &SmiStruct->HandlerType);
+        Print (L" HandlerType=\"%g\"", &SmiStruct->HandlerType);
       }
-      Print(L">\n");
+
+      Print (L">\n");
       for (Index = 0; Index < SmiStruct->HandlerCount; Index++) {
-        Print(L"    <SmiHandler");
+        Print (L"    <SmiHandler");
         if (SmiHandlerStruct->ContextBufferSize != 0) {
           DumpSmiChildContext (&SmiStruct->HandlerType, (UINT8 *)SmiHandlerStruct + SmiHandlerStruct->ContextBufferOffset, SmiHandlerStruct->ContextBufferSize);
         }
-        Print(L">\n");
-        ImageStruct = GetImageFromRef((UINTN)SmiHandlerStruct->ImageRef);
-        NameString = GetDriverNameString (ImageStruct);
-        Print(L"      <Module RefId=\"0x%x\" Name=\"%a\">\n", SmiHandlerStruct->ImageRef, NameString);
+
+        Print (L">\n");
+        ImageStruct = GetImageFromRef ((UINTN)SmiHandlerStruct->ImageRef);
+        NameString  = GetDriverNameString (ImageStruct);
+        Print (L"      <Module RefId=\"0x%x\" Name=\"%a\">\n", SmiHandlerStruct->ImageRef, NameString);
         if ((ImageStruct != NULL) && (ImageStruct->PdbStringOffset != 0)) {
-          Print(L"      <Pdb>%a</Pdb>\n", (UINT8 *)ImageStruct + ImageStruct->PdbStringOffset);
+          Print (L"      <Pdb>%a</Pdb>\n", (UINT8 *)ImageStruct + ImageStruct->PdbStringOffset);
         }
-        Print(L"      </Module>\n");
-        Print(L"      <Handler Address=\"0x%lx\">\n", SmiHandlerStruct->Handler);
+
+        Print (L"      </Module>\n");
+        Print (L"      <Handler Address=\"0x%lx\">\n", SmiHandlerStruct->Handler);
         if (ImageStruct != NULL) {
-          Print(L"         <RVA>0x%x</RVA>\n", (UINTN) (SmiHandlerStruct->Handler - ImageStruct->ImageBase));
+          Print (L"         <RVA>0x%x</RVA>\n", (UINTN)(SmiHandlerStruct->Handler - ImageStruct->ImageBase));
         }
-        Print(L"      </Handler>\n", SmiHandlerStruct->Handler);
-        Print(L"      <Caller Address=\"0x%lx\">\n", SmiHandlerStruct->CallerAddr);
+
+        Print (L"      </Handler>\n", SmiHandlerStruct->Handler);
+        Print (L"      <Caller Address=\"0x%lx\">\n", SmiHandlerStruct->CallerAddr);
         if (ImageStruct != NULL) {
-          Print(L"         <RVA>0x%x</RVA>\n", (UINTN) (SmiHandlerStruct->CallerAddr - ImageStruct->ImageBase));
+          Print (L"         <RVA>0x%x</RVA>\n", (UINTN)(SmiHandlerStruct->CallerAddr - ImageStruct->ImageBase));
         }
-        Print(L"      </Caller>\n", SmiHandlerStruct->Handler);
+
+        Print (L"      </Caller>\n", SmiHandlerStruct->Handler);
         SmiHandlerStruct = (VOID *)((UINTN)SmiHandlerStruct + SmiHandlerStruct->Length);
-        Print(L"    </SmiHandler>\n");
+        Print (L"    </SmiHandler>\n");
       }
-      Print(L"  </SmiEntry>\n");
+
+      Print (L"  </SmiEntry>\n");
     }
+
     SmiStruct = (VOID *)((UINTN)SmiStruct + SmiStruct->Header.Length);
   }
 
@@ -635,11 +654,11 @@ DumpSmiHandler(
 EFI_STATUS
 EFIAPI
 SmiHandlerProfileInfoEntrypoint (
-  IN EFI_HANDLE           ImageHandle,
-  IN EFI_SYSTEM_TABLE     *SystemTable
+  IN EFI_HANDLE        ImageHandle,
+  IN EFI_SYSTEM_TABLE  *SystemTable
   )
 {
-  GetSmiHandlerProfileDatabase();
+  GetSmiHandlerProfileDatabase ();
 
   if (mSmiHandlerProfileDatabase == NULL) {
     return EFI_SUCCESS;
@@ -648,38 +667,38 @@ SmiHandlerProfileInfoEntrypoint (
   //
   // Dump all image
   //
-  Print(L"<?xml version=\"1.0\" encoding=\"utf-8\"?>\n");
-  Print(L"<SmiHandlerProfile>\n");
-  Print(L"<ImageDatabase>\n");
-  Print(L"  <!-- SMM image loaded -->\n");
-  DumpSmmLoadedImage();
-  Print(L"</ImageDatabase>\n\n");
+  Print (L"<?xml version=\"1.0\" encoding=\"utf-8\"?>\n");
+  Print (L"<SmiHandlerProfile>\n");
+  Print (L"<ImageDatabase>\n");
+  Print (L"  <!-- SMM image loaded -->\n");
+  DumpSmmLoadedImage ();
+  Print (L"</ImageDatabase>\n\n");
 
   //
   // Dump SMI Handler
   //
-  Print(L"<SmiHandlerDatabase>\n");
-  Print(L"  <!-- SMI Handler registered -->\n\n");
-  Print(L"  <SmiHandlerCategory Name=\"RootSmi\">\n");
-  Print(L"  <!-- The root SMI Handler registered by SmmCore -->\n");
-  DumpSmiHandler(SmmCoreSmiHandlerCategoryRootHandler);
-  Print(L"  </SmiHandlerCategory>\n\n");
-
-  Print(L"  <SmiHandlerCategory Name=\"GuidSmi\">\n");
-  Print(L"  <!-- The GUID SMI Handler registered by SmmCore -->\n");
-  DumpSmiHandler(SmmCoreSmiHandlerCategoryGuidHandler);
-  Print(L"  </SmiHandlerCategory>\n\n");
-
-  Print(L"  <SmiHandlerCategory Name=\"HardwareSmi\">\n");
-  Print(L"  <!-- The hardware SMI Handler registered by SmmChildDispatcher -->\n");
-  DumpSmiHandler(SmmCoreSmiHandlerCategoryHardwareHandler);
-  Print(L"  </SmiHandlerCategory>\n\n");
-
-  Print(L"</SmiHandlerDatabase>\n");
-  Print(L"</SmiHandlerProfile>\n");
+  Print (L"<SmiHandlerDatabase>\n");
+  Print (L"  <!-- SMI Handler registered -->\n\n");
+  Print (L"  <SmiHandlerCategory Name=\"RootSmi\">\n");
+  Print (L"  <!-- The root SMI Handler registered by SmmCore -->\n");
+  DumpSmiHandler (SmmCoreSmiHandlerCategoryRootHandler);
+  Print (L"  </SmiHandlerCategory>\n\n");
+
+  Print (L"  <SmiHandlerCategory Name=\"GuidSmi\">\n");
+  Print (L"  <!-- The GUID SMI Handler registered by SmmCore -->\n");
+  DumpSmiHandler (SmmCoreSmiHandlerCategoryGuidHandler);
+  Print (L"  </SmiHandlerCategory>\n\n");
+
+  Print (L"  <SmiHandlerCategory Name=\"HardwareSmi\">\n");
+  Print (L"  <!-- The hardware SMI Handler registered by SmmChildDispatcher -->\n");
+  DumpSmiHandler (SmmCoreSmiHandlerCategoryHardwareHandler);
+  Print (L"  </SmiHandlerCategory>\n\n");
+
+  Print (L"</SmiHandlerDatabase>\n");
+  Print (L"</SmiHandlerProfile>\n");
 
   if (mSmiHandlerProfileDatabase != NULL) {
-    FreePool(mSmiHandlerProfileDatabase);
+    FreePool (mSmiHandlerProfileDatabase);
   }
 
   return EFI_SUCCESS;

+ 166 - 162
MdeModulePkg/Application/UiApp/FrontPage.c

@@ -10,29 +10,29 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #include "FrontPage.h"
 #include "FrontPageCustomizedUi.h"
 
-#define MAX_STRING_LEN            200
+#define MAX_STRING_LEN  200
 
-EFI_GUID   mFrontPageGuid      = FRONT_PAGE_FORMSET_GUID;
+EFI_GUID  mFrontPageGuid = FRONT_PAGE_FORMSET_GUID;
 
-BOOLEAN   mResetRequired  = FALSE;
+BOOLEAN  mResetRequired = FALSE;
 
-EFI_FORM_BROWSER2_PROTOCOL      *gFormBrowser2;
-CHAR8     *mLanguageString;
-BOOLEAN   mModeInitialized = FALSE;
+EFI_FORM_BROWSER2_PROTOCOL  *gFormBrowser2;
+CHAR8                       *mLanguageString;
+BOOLEAN                     mModeInitialized = FALSE;
 //
 // Boot video resolution and text mode.
 //
-UINT32    mBootHorizontalResolution    = 0;
-UINT32    mBootVerticalResolution      = 0;
-UINT32    mBootTextModeColumn          = 0;
-UINT32    mBootTextModeRow             = 0;
+UINT32  mBootHorizontalResolution = 0;
+UINT32  mBootVerticalResolution   = 0;
+UINT32  mBootTextModeColumn       = 0;
+UINT32  mBootTextModeRow          = 0;
 //
 // BIOS setup video resolution and text mode.
 //
-UINT32    mSetupTextModeColumn         = 0;
-UINT32    mSetupTextModeRow            = 0;
-UINT32    mSetupHorizontalResolution   = 0;
-UINT32    mSetupVerticalResolution     = 0;
+UINT32  mSetupTextModeColumn       = 0;
+UINT32  mSetupTextModeRow          = 0;
+UINT32  mSetupHorizontalResolution = 0;
+UINT32  mSetupVerticalResolution   = 0;
 
 FRONT_PAGE_CALLBACK_DATA  gFrontPagePrivate = {
   FRONT_PAGE_CALLBACK_DATA_SIGNATURE,
@@ -52,21 +52,22 @@ HII_VENDOR_DEVICE_PATH  mFrontPageHiiVendorDevicePath = {
       HARDWARE_DEVICE_PATH,
       HW_VENDOR_DP,
       {
-        (UINT8) (sizeof (VENDOR_DEVICE_PATH)),
-        (UINT8) ((sizeof (VENDOR_DEVICE_PATH)) >> 8)
+        (UINT8)(sizeof (VENDOR_DEVICE_PATH)),
+        (UINT8)((sizeof (VENDOR_DEVICE_PATH)) >> 8)
       }
     },
     //
     // {8E6D99EE-7531-48f8-8745-7F6144468FF2}
     //
-    { 0x8e6d99ee, 0x7531, 0x48f8, { 0x87, 0x45, 0x7f, 0x61, 0x44, 0x46, 0x8f, 0xf2 } }
+    { 0x8e6d99ee, 0x7531, 0x48f8, { 0x87, 0x45, 0x7f, 0x61, 0x44, 0x46, 0x8f, 0xf2 }
+    }
   },
   {
     END_DEVICE_PATH_TYPE,
     END_ENTIRE_DEVICE_PATH_SUBTYPE,
     {
-      (UINT8) (END_DEVICE_PATH_LENGTH),
-      (UINT8) ((END_DEVICE_PATH_LENGTH) >> 8)
+      (UINT8)(END_DEVICE_PATH_LENGTH),
+      (UINT8)((END_DEVICE_PATH_LENGTH) >> 8)
     }
   }
 };
@@ -105,15 +106,16 @@ UpdateFrontPageBannerStrings (
 EFI_STATUS
 EFIAPI
 FakeExtractConfig (
-  IN  CONST EFI_HII_CONFIG_ACCESS_PROTOCOL   *This,
-  IN  CONST EFI_STRING                       Request,
-  OUT EFI_STRING                             *Progress,
-  OUT EFI_STRING                             *Results
+  IN  CONST EFI_HII_CONFIG_ACCESS_PROTOCOL  *This,
+  IN  CONST EFI_STRING                      Request,
+  OUT EFI_STRING                            *Progress,
+  OUT EFI_STRING                            *Results
   )
 {
-  if (Progress == NULL || Results == NULL) {
+  if ((Progress == NULL) || (Results == NULL)) {
     return EFI_INVALID_PARAMETER;
   }
+
   *Progress = Request;
   return EFI_NOT_FOUND;
 }
@@ -137,12 +139,12 @@ FakeExtractConfig (
 EFI_STATUS
 EFIAPI
 FakeRouteConfig (
-  IN  CONST EFI_HII_CONFIG_ACCESS_PROTOCOL   *This,
-  IN  CONST EFI_STRING                       Configuration,
-  OUT EFI_STRING                             *Progress
+  IN  CONST EFI_HII_CONFIG_ACCESS_PROTOCOL  *This,
+  IN  CONST EFI_STRING                      Configuration,
+  OUT EFI_STRING                            *Progress
   )
 {
-  if (Configuration == NULL || Progress == NULL) {
+  if ((Configuration == NULL) || (Progress == NULL)) {
     return EFI_INVALID_PARAMETER;
   }
 
@@ -172,12 +174,12 @@ FakeRouteConfig (
 EFI_STATUS
 EFIAPI
 FrontPageCallback (
-  IN  CONST EFI_HII_CONFIG_ACCESS_PROTOCOL   *This,
-  IN  EFI_BROWSER_ACTION                     Action,
-  IN  EFI_QUESTION_ID                        QuestionId,
-  IN  UINT8                                  Type,
-  IN  EFI_IFR_TYPE_VALUE                     *Value,
-  OUT EFI_BROWSER_ACTION_REQUEST             *ActionRequest
+  IN  CONST EFI_HII_CONFIG_ACCESS_PROTOCOL  *This,
+  IN  EFI_BROWSER_ACTION                    Action,
+  IN  EFI_QUESTION_ID                       QuestionId,
+  IN  UINT8                                 Type,
+  IN  EFI_IFR_TYPE_VALUE                    *Value,
+  OUT EFI_BROWSER_ACTION_REQUEST            *ActionRequest
   )
 {
   return UiFrontPageCallbackHandler (gFrontPagePrivate.HiiHandle, Action, QuestionId, Type, Value, ActionRequest);
@@ -193,10 +195,10 @@ UpdateFrontPageForm (
   VOID
   )
 {
-  VOID                        *StartOpCodeHandle;
-  VOID                        *EndOpCodeHandle;
-  EFI_IFR_GUID_LABEL          *StartGuidLabel;
-  EFI_IFR_GUID_LABEL          *EndGuidLabel;
+  VOID                *StartOpCodeHandle;
+  VOID                *EndOpCodeHandle;
+  EFI_IFR_GUID_LABEL  *StartGuidLabel;
+  EFI_IFR_GUID_LABEL  *EndGuidLabel;
 
   //
   // Allocate space for creation of UpdateData Buffer
@@ -209,18 +211,18 @@ UpdateFrontPageForm (
   //
   // Create Hii Extend Label OpCode as the start opcode
   //
-  StartGuidLabel = (EFI_IFR_GUID_LABEL *) HiiCreateGuidOpCode (StartOpCodeHandle, &gEfiIfrTianoGuid, NULL, sizeof (EFI_IFR_GUID_LABEL));
+  StartGuidLabel               = (EFI_IFR_GUID_LABEL *)HiiCreateGuidOpCode (StartOpCodeHandle, &gEfiIfrTianoGuid, NULL, sizeof (EFI_IFR_GUID_LABEL));
   StartGuidLabel->ExtendOpCode = EFI_IFR_EXTEND_OP_LABEL;
   StartGuidLabel->Number       = LABEL_FRANTPAGE_INFORMATION;
   //
   // Create Hii Extend Label OpCode as the end opcode
   //
-  EndGuidLabel = (EFI_IFR_GUID_LABEL *) HiiCreateGuidOpCode (EndOpCodeHandle, &gEfiIfrTianoGuid, NULL, sizeof (EFI_IFR_GUID_LABEL));
+  EndGuidLabel               = (EFI_IFR_GUID_LABEL *)HiiCreateGuidOpCode (EndOpCodeHandle, &gEfiIfrTianoGuid, NULL, sizeof (EFI_IFR_GUID_LABEL));
   EndGuidLabel->ExtendOpCode = EFI_IFR_EXTEND_OP_LABEL;
   EndGuidLabel->Number       = LABEL_END;
 
   //
-  //Updata Front Page form
+  // Updata Front Page form
   //
   UiCustomizeFrontPage (
     gFrontPagePrivate.HiiHandle,
@@ -252,11 +254,12 @@ InitializeFrontPage (
   VOID
   )
 {
-  EFI_STATUS                  Status;
+  EFI_STATUS  Status;
+
   //
   // Locate Hii relative protocols
   //
-  Status = gBS->LocateProtocol (&gEfiFormBrowser2ProtocolGuid, NULL, (VOID **) &gFormBrowser2);
+  Status = gBS->LocateProtocol (&gEfiFormBrowser2ProtocolGuid, NULL, (VOID **)&gFormBrowser2);
   if (EFI_ERROR (Status)) {
     return Status;
   }
@@ -265,14 +268,14 @@ InitializeFrontPage (
   // Install Device Path Protocol and Config Access protocol to driver handle
   //
   gFrontPagePrivate.DriverHandle = NULL;
-  Status = gBS->InstallMultipleProtocolInterfaces (
-                  &gFrontPagePrivate.DriverHandle,
-                  &gEfiDevicePathProtocolGuid,
-                  &mFrontPageHiiVendorDevicePath,
-                  &gEfiHiiConfigAccessProtocolGuid,
-                  &gFrontPagePrivate.ConfigAccess,
-                  NULL
-                  );
+  Status                         = gBS->InstallMultipleProtocolInterfaces (
+                                          &gFrontPagePrivate.DriverHandle,
+                                          &gEfiDevicePathProtocolGuid,
+                                          &mFrontPageHiiVendorDevicePath,
+                                          &gEfiHiiConfigAccessProtocolGuid,
+                                          &gFrontPagePrivate.ConfigAccess,
+                                          NULL
+                                          );
   ASSERT_EFI_ERROR (Status);
 
   //
@@ -288,14 +291,14 @@ InitializeFrontPage (
   ASSERT (gFrontPagePrivate.HiiHandle != NULL);
 
   //
-  //Updata Front Page banner strings
+  // Updata Front Page banner strings
   //
   UpdateFrontPageBannerStrings ();
 
   //
   // Update front page menus.
   //
-  UpdateFrontPageForm();
+  UpdateFrontPageForm ();
 
   return Status;
 }
@@ -324,15 +327,15 @@ CallFrontPage (
     );
 
   ActionRequest = EFI_BROWSER_ACTION_REQUEST_NONE;
-  Status = gFormBrowser2->SendForm (
-                            gFormBrowser2,
-                            &gFrontPagePrivate.HiiHandle,
-                            1,
-                            &mFrontPageGuid,
-                            0,
-                            NULL,
-                            &ActionRequest
-                            );
+  Status        = gFormBrowser2->SendForm (
+                                   gFormBrowser2,
+                                   &gFrontPagePrivate.HiiHandle,
+                                   1,
+                                   &mFrontPageGuid,
+                                   0,
+                                   NULL,
+                                   &ActionRequest
+                                   );
   //
   // Check whether user change any option setting which needs a reset to be effective
   //
@@ -348,11 +351,12 @@ CallFrontPage (
 
 **/
 VOID
-FreeFrontPage(
+FreeFrontPage (
   VOID
   )
 {
-  EFI_STATUS                  Status;
+  EFI_STATUS  Status;
+
   Status = gBS->UninstallMultipleProtocolInterfaces (
                   gFrontPagePrivate.DriverHandle,
                   &gEfiDevicePathProtocolGuid,
@@ -383,9 +387,9 @@ FreeFrontPage(
 **/
 VOID
 ConvertProcessorToString (
-  IN  UINT16                               ProcessorFrequency,
-  IN  UINT16                               Base10Exponent,
-  OUT CHAR16                               **String
+  IN  UINT16  ProcessorFrequency,
+  IN  UINT16  Base10Exponent,
+  OUT CHAR16  **String
   )
 {
   CHAR16  *StringBuffer;
@@ -395,13 +399,14 @@ ConvertProcessorToString (
 
   if (Base10Exponent >= 6) {
     FreqMhz = ProcessorFrequency;
-    for (Index = 0; Index < (UINT32) Base10Exponent - 6; Index++) {
+    for (Index = 0; Index < (UINT32)Base10Exponent - 6; Index++) {
       FreqMhz *= 10;
     }
   } else {
     FreqMhz = 0;
   }
-  DestMax = 0x20 / sizeof (CHAR16);
+
+  DestMax      = 0x20 / sizeof (CHAR16);
   StringBuffer = AllocateZeroPool (0x20);
   ASSERT (StringBuffer != NULL);
   UnicodeValueToStringS (StringBuffer, sizeof (CHAR16) * DestMax, LEFT_JUSTIFY, FreqMhz / 1000, 3);
@@ -415,11 +420,10 @@ ConvertProcessorToString (
     2
     );
   StrCatS (StringBuffer, DestMax, L" GHz");
-  *String = (CHAR16 *) StringBuffer;
-  return ;
+  *String = (CHAR16 *)StringBuffer;
+  return;
 }
 
-
 /**
   Convert Memory Size to a string.
 
@@ -429,8 +433,8 @@ ConvertProcessorToString (
 **/
 VOID
 ConvertMemorySizeToString (
-  IN  UINT32          MemorySize,
-  OUT CHAR16          **String
+  IN  UINT32  MemorySize,
+  OUT CHAR16  **String
   )
 {
   CHAR16  *StringBuffer;
@@ -440,9 +444,9 @@ ConvertMemorySizeToString (
   UnicodeValueToStringS (StringBuffer, 0x24, LEFT_JUSTIFY, MemorySize, 10);
   StrCatS (StringBuffer, 0x24 / sizeof (CHAR16), L" MB RAM");
 
-  *String = (CHAR16 *) StringBuffer;
+  *String = (CHAR16 *)StringBuffer;
 
-  return ;
+  return;
 }
 
 /**
@@ -459,12 +463,12 @@ ConvertMemorySizeToString (
 **/
 EFI_STATUS
 GetOptionalStringByIndex (
-  IN      CHAR8                   *OptionalStrStart,
-  IN      UINT8                   Index,
-  OUT     CHAR16                  **String
+  IN      CHAR8   *OptionalStrStart,
+  IN      UINT8   Index,
+  OUT     CHAR16  **String
   )
 {
-  UINTN          StrSize;
+  UINTN  StrSize;
 
   if (Index == 0) {
     *String = AllocateZeroPool (sizeof (CHAR16));
@@ -492,7 +496,6 @@ GetOptionalStringByIndex (
   return EFI_SUCCESS;
 }
 
-
 /**
 
   Update the banner information for the Front Page based on Smbios information.
@@ -503,22 +506,22 @@ UpdateFrontPageBannerStrings (
   VOID
   )
 {
-  UINT8                             StrIndex;
-  CHAR16                            *NewString;
-  CHAR16                            *FirmwareVersionString;
-  EFI_STATUS                        Status;
-  EFI_SMBIOS_HANDLE                 SmbiosHandle;
-  EFI_SMBIOS_PROTOCOL               *Smbios;
-  SMBIOS_TABLE_TYPE0                *Type0Record;
-  SMBIOS_TABLE_TYPE1                *Type1Record;
-  SMBIOS_TABLE_TYPE4                *Type4Record;
-  SMBIOS_TABLE_TYPE19               *Type19Record;
-  EFI_SMBIOS_TABLE_HEADER           *Record;
-  UINT64                            InstalledMemory;
-  BOOLEAN                           FoundCpu;
+  UINT8                    StrIndex;
+  CHAR16                   *NewString;
+  CHAR16                   *FirmwareVersionString;
+  EFI_STATUS               Status;
+  EFI_SMBIOS_HANDLE        SmbiosHandle;
+  EFI_SMBIOS_PROTOCOL      *Smbios;
+  SMBIOS_TABLE_TYPE0       *Type0Record;
+  SMBIOS_TABLE_TYPE1       *Type1Record;
+  SMBIOS_TABLE_TYPE4       *Type4Record;
+  SMBIOS_TABLE_TYPE19      *Type19Record;
+  EFI_SMBIOS_TABLE_HEADER  *Record;
+  UINT64                   InstalledMemory;
+  BOOLEAN                  FoundCpu;
 
   InstalledMemory = 0;
-  FoundCpu = 0;
+  FoundCpu        = 0;
 
   //
   // Update default banner string.
@@ -546,7 +549,7 @@ UpdateFrontPageBannerStrings (
   //
   // Update Front Page banner strings base on SmBios Table.
   //
-  Status = gBS->LocateProtocol (&gEfiSmbiosProtocolGuid, NULL, (VOID **) &Smbios);
+  Status = gBS->LocateProtocol (&gEfiSmbiosProtocolGuid, NULL, (VOID **)&Smbios);
   if (EFI_ERROR (Status)) {
     //
     // Smbios protocol not found, get the default value.
@@ -580,17 +583,17 @@ UpdateFrontPageBannerStrings (
   }
 
   SmbiosHandle = SMBIOS_HANDLE_PI_RESERVED;
-  Status = Smbios->GetNext (Smbios, &SmbiosHandle, NULL, &Record, NULL);
-  while (!EFI_ERROR(Status)) {
+  Status       = Smbios->GetNext (Smbios, &SmbiosHandle, NULL, &Record, NULL);
+  while (!EFI_ERROR (Status)) {
     if (Record->Type == SMBIOS_TYPE_BIOS_INFORMATION) {
-      Type0Record = (SMBIOS_TABLE_TYPE0 *) Record;
-      StrIndex = Type0Record->BiosVersion;
-      GetOptionalStringByIndex ((CHAR8*)((UINT8*)Type0Record + Type0Record->Hdr.Length), StrIndex, &NewString);
+      Type0Record = (SMBIOS_TABLE_TYPE0 *)Record;
+      StrIndex    = Type0Record->BiosVersion;
+      GetOptionalStringByIndex ((CHAR8 *)((UINT8 *)Type0Record + Type0Record->Hdr.Length), StrIndex, &NewString);
 
-      FirmwareVersionString = (CHAR16 *) PcdGetPtr (PcdFirmwareVersionString);
+      FirmwareVersionString = (CHAR16 *)PcdGetPtr (PcdFirmwareVersionString);
       if (*FirmwareVersionString != 0x0000 ) {
         FreePool (NewString);
-        NewString = (CHAR16 *) PcdGetPtr (PcdFirmwareVersionString);
+        NewString = (CHAR16 *)PcdGetPtr (PcdFirmwareVersionString);
         UiCustomizeFrontPageBanner (3, TRUE, &NewString);
         HiiSetString (gFrontPagePrivate.HiiHandle, STRING_TOKEN (STR_FRONT_PAGE_BIOS_VERSION), NewString, NULL);
       } else {
@@ -601,27 +604,27 @@ UpdateFrontPageBannerStrings (
     }
 
     if (Record->Type == SMBIOS_TYPE_SYSTEM_INFORMATION) {
-      Type1Record = (SMBIOS_TABLE_TYPE1 *) Record;
-      StrIndex = Type1Record->ProductName;
-      GetOptionalStringByIndex ((CHAR8*)((UINT8*)Type1Record + Type1Record->Hdr.Length), StrIndex, &NewString);
+      Type1Record = (SMBIOS_TABLE_TYPE1 *)Record;
+      StrIndex    = Type1Record->ProductName;
+      GetOptionalStringByIndex ((CHAR8 *)((UINT8 *)Type1Record + Type1Record->Hdr.Length), StrIndex, &NewString);
       UiCustomizeFrontPageBanner (1, TRUE, &NewString);
       HiiSetString (gFrontPagePrivate.HiiHandle, STRING_TOKEN (STR_FRONT_PAGE_COMPUTER_MODEL), NewString, NULL);
       FreePool (NewString);
     }
 
     if ((Record->Type == SMBIOS_TYPE_PROCESSOR_INFORMATION) && !FoundCpu) {
-      Type4Record = (SMBIOS_TABLE_TYPE4 *) Record;
+      Type4Record = (SMBIOS_TABLE_TYPE4 *)Record;
       //
       // The information in the record should be only valid when the CPU Socket is populated.
       //
       if ((Type4Record->Status & SMBIOS_TYPE4_CPU_SOCKET_POPULATED) == SMBIOS_TYPE4_CPU_SOCKET_POPULATED) {
         StrIndex = Type4Record->ProcessorVersion;
-        GetOptionalStringByIndex ((CHAR8*)((UINT8*)Type4Record + Type4Record->Hdr.Length), StrIndex, &NewString);
+        GetOptionalStringByIndex ((CHAR8 *)((UINT8 *)Type4Record + Type4Record->Hdr.Length), StrIndex, &NewString);
         UiCustomizeFrontPageBanner (2, TRUE, &NewString);
         HiiSetString (gFrontPagePrivate.HiiHandle, STRING_TOKEN (STR_FRONT_PAGE_CPU_MODEL), NewString, NULL);
         FreePool (NewString);
 
-        ConvertProcessorToString(Type4Record->CurrentSpeed, 6, &NewString);
+        ConvertProcessorToString (Type4Record->CurrentSpeed, 6, &NewString);
         UiCustomizeFrontPageBanner (2, FALSE, &NewString);
         HiiSetString (gFrontPagePrivate.HiiHandle, STRING_TOKEN (STR_FRONT_PAGE_CPU_SPEED), NewString, NULL);
         FreePool (NewString);
@@ -631,13 +634,19 @@ UpdateFrontPageBannerStrings (
     }
 
     if ( Record->Type == SMBIOS_TYPE_MEMORY_ARRAY_MAPPED_ADDRESS ) {
-      Type19Record = (SMBIOS_TABLE_TYPE19 *) Record;
+      Type19Record = (SMBIOS_TABLE_TYPE19 *)Record;
       if (Type19Record->StartingAddress != 0xFFFFFFFF ) {
-        InstalledMemory += RShiftU64(Type19Record->EndingAddress -
-                                     Type19Record->StartingAddress + 1, 10);
+        InstalledMemory += RShiftU64 (
+                             Type19Record->EndingAddress -
+                             Type19Record->StartingAddress + 1,
+                             10
+                             );
       } else {
-        InstalledMemory += RShiftU64(Type19Record->ExtendedEndingAddress -
-                                     Type19Record->ExtendedStartingAddress + 1, 20);
+        InstalledMemory += RShiftU64 (
+                             Type19Record->ExtendedEndingAddress -
+                             Type19Record->ExtendedStartingAddress + 1,
+                             20
+                             );
       }
     }
 
@@ -647,7 +656,7 @@ UpdateFrontPageBannerStrings (
   //
   // Now update the total installed RAM size
   //
-  ConvertMemorySizeToString ((UINT32)InstalledMemory, &NewString );
+  ConvertMemorySizeToString ((UINT32)InstalledMemory, &NewString);
   UiCustomizeFrontPageBanner (3, FALSE, &NewString);
   HiiSetString (gFrontPagePrivate.HiiHandle, STRING_TOKEN (STR_FRONT_PAGE_MEMORY_SIZE), NewString, NULL);
   FreePool (NewString);
@@ -695,7 +704,7 @@ UiSetConsoleMode (
   Status = gBS->HandleProtocol (
                   gST->ConsoleOutHandle,
                   &gEfiGraphicsOutputProtocolGuid,
-                  (VOID**)&GraphicsOutput
+                  (VOID **)&GraphicsOutput
                   );
   if (EFI_ERROR (Status)) {
     GraphicsOutput = NULL;
@@ -704,7 +713,7 @@ UiSetConsoleMode (
   Status = gBS->HandleProtocol (
                   gST->ConsoleOutHandle,
                   &gEfiSimpleTextOutProtocolGuid,
-                  (VOID**)&SimpleTextOut
+                  (VOID **)&SimpleTextOut
                   );
   if (EFI_ERROR (Status)) {
     SimpleTextOut = NULL;
@@ -733,7 +742,7 @@ UiSetConsoleMode (
   }
 
   if (GraphicsOutput != NULL) {
-    MaxGopMode  = GraphicsOutput->Mode->MaxMode;
+    MaxGopMode = GraphicsOutput->Mode->MaxMode;
   }
 
   if (SimpleTextOut != NULL) {
@@ -749,22 +758,24 @@ UiSetConsoleMode (
   //
   for (ModeNumber = 0; ModeNumber < MaxGopMode; ModeNumber++) {
     Status = GraphicsOutput->QueryMode (
-                       GraphicsOutput,
-                       ModeNumber,
-                       &SizeOfInfo,
-                       &Info
-                       );
+                               GraphicsOutput,
+                               ModeNumber,
+                               &SizeOfInfo,
+                               &Info
+                               );
     if (!EFI_ERROR (Status)) {
       if ((Info->HorizontalResolution == NewHorizontalResolution) &&
-          (Info->VerticalResolution == NewVerticalResolution)) {
+          (Info->VerticalResolution == NewVerticalResolution))
+      {
         if ((GraphicsOutput->Mode->Info->HorizontalResolution == NewHorizontalResolution) &&
-            (GraphicsOutput->Mode->Info->VerticalResolution == NewVerticalResolution)) {
+            (GraphicsOutput->Mode->Info->VerticalResolution == NewVerticalResolution))
+        {
           //
           // Current resolution is same with required resolution, check if text mode need be set
           //
           Status = SimpleTextOut->QueryMode (SimpleTextOut, SimpleTextOut->Mode->Mode, &CurrentColumn, &CurrentRow);
           ASSERT_EFI_ERROR (Status);
-          if (CurrentColumn == NewColumns && CurrentRow == NewRows) {
+          if ((CurrentColumn == NewColumns) && (CurrentRow == NewRows)) {
             //
             // If current text mode is same with required text mode. Do nothing
             //
@@ -776,7 +787,7 @@ UiSetConsoleMode (
             //
             for (Index = 0; Index < MaxTextMode; Index++) {
               Status = SimpleTextOut->QueryMode (SimpleTextOut, Index, &CurrentColumn, &CurrentRow);
-              if (!EFI_ERROR(Status)) {
+              if (!EFI_ERROR (Status)) {
                 if ((CurrentColumn == NewColumns) && (CurrentRow == NewRows)) {
                   //
                   // Required text mode is supported, set it.
@@ -795,6 +806,7 @@ UiSetConsoleMode (
                 }
               }
             }
+
             if (Index == MaxTextMode) {
               //
               // If required text mode is not supported, return error.
@@ -815,6 +827,7 @@ UiSetConsoleMode (
           }
         }
       }
+
       FreePool (Info);
     }
   }
@@ -845,19 +858,21 @@ UiSetConsoleMode (
   // Locate all the handles with GOP protocol and reconnect it.
   //
   Status = gBS->LocateHandleBuffer (
-                   ByProtocol,
-                   &gEfiSimpleTextOutProtocolGuid,
-                   NULL,
-                   &HandleCount,
-                   &HandleBuffer
-                   );
+                  ByProtocol,
+                  &gEfiSimpleTextOutProtocolGuid,
+                  NULL,
+                  &HandleCount,
+                  &HandleBuffer
+                  );
   if (!EFI_ERROR (Status)) {
     for (Index = 0; Index < HandleCount; Index++) {
       gBS->DisconnectController (HandleBuffer[Index], NULL, NULL);
     }
+
     for (Index = 0; Index < HandleCount; Index++) {
       gBS->ConnectController (HandleBuffer[Index], NULL, NULL, TRUE);
     }
+
     if (HandleBuffer != NULL) {
       FreePool (HandleBuffer);
     }
@@ -885,12 +900,12 @@ InitializeUserInterface (
   IN EFI_SYSTEM_TABLE  *SystemTable
   )
 {
-  EFI_HII_HANDLE                     HiiHandle;
-  EFI_STATUS                         Status;
-  EFI_GRAPHICS_OUTPUT_PROTOCOL       *GraphicsOutput;
-  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL    *SimpleTextOut;
-  UINTN                              BootTextColumn;
-  UINTN                              BootTextRow;
+  EFI_HII_HANDLE                   HiiHandle;
+  EFI_STATUS                       Status;
+  EFI_GRAPHICS_OUTPUT_PROTOCOL     *GraphicsOutput;
+  EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL  *SimpleTextOut;
+  UINTN                            BootTextColumn;
+  UINTN                            BootTextRow;
 
   if (!mModeInitialized) {
     //
@@ -900,7 +915,7 @@ InitializeUserInterface (
     Status = gBS->HandleProtocol (
                     gST->ConsoleOutHandle,
                     &gEfiGraphicsOutputProtocolGuid,
-                    (VOID**)&GraphicsOutput
+                    (VOID **)&GraphicsOutput
                     );
     if (EFI_ERROR (Status)) {
       GraphicsOutput = NULL;
@@ -909,7 +924,7 @@ InitializeUserInterface (
     Status = gBS->HandleProtocol (
                     gST->ConsoleOutHandle,
                     &gEfiSimpleTextOutProtocolGuid,
-                    (VOID**)&SimpleTextOut
+                    (VOID **)&SimpleTextOut
                     );
     if (EFI_ERROR (Status)) {
       SimpleTextOut = NULL;
@@ -942,7 +957,7 @@ InitializeUserInterface (
     mSetupTextModeColumn       = PcdGet32 (PcdSetupConOutColumn);
     mSetupTextModeRow          = PcdGet32 (PcdSetupConOutRow);
 
-    mModeInitialized           = TRUE;
+    mModeInitialized = TRUE;
   }
 
   gBS->SetWatchdogTimer (0x0000, 0x0000, 0x0000, NULL);
@@ -976,11 +991,11 @@ InitializeUserInterface (
 VOID
 EFIAPI
 UiEntry (
-  IN BOOLEAN                      ConnectAllHappened
+  IN BOOLEAN  ConnectAllHappened
   )
 {
-  EFI_STATUS                    Status;
-  EFI_BOOT_LOGO_PROTOCOL        *BootLogo;
+  EFI_STATUS              Status;
+  EFI_BOOT_LOGO_PROTOCOL  *BootLogo;
 
   //
   // Enter Setup page.
@@ -1006,7 +1021,7 @@ UiEntry (
   //
   // Boot Logo is corrupted, report it using Boot Logo protocol.
   //
-  Status = gBS->LocateProtocol (&gEfiBootLogoProtocolGuid, NULL, (VOID **) &BootLogo);
+  Status = gBS->LocateProtocol (&gEfiBootLogoProtocolGuid, NULL, (VOID **)&BootLogo);
   if (!EFI_ERROR (Status) && (BootLogo != NULL)) {
     BootLogo->SetBootLogo (BootLogo, NULL, 0, 0, 0, 0);
   }
@@ -1023,7 +1038,7 @@ UiEntry (
   }
 
   //
-  //Will leave browser, check any reset required change is applied? if yes, reset system
+  // Will leave browser, check any reset required change is applied? if yes, reset system
   //
   SetupResetReminder ();
 }
@@ -1034,10 +1049,6 @@ UiEntry (
 //  user change any option setting which needs a reset to be effective, and  the reset will be applied according to  the user selection.
 //
 
-
-
-
-
 /**
   Record the info that  a reset is required.
   A  module boolean variable is used to record whether a reset is required.
@@ -1052,10 +1063,6 @@ EnableResetRequired (
   mResetRequired = TRUE;
 }
 
-
-
-
-
 /**
   Check if  user changed any option setting which needs a system reset to be effective.
 
@@ -1069,7 +1076,6 @@ IsResetRequired (
   return mResetRequired;
 }
 
-
 /**
   Check whether a reset is needed, and finish the reset reminder feature.
   If a reset is needed, Popup a menu to notice user, and finish the feature
@@ -1082,15 +1088,14 @@ SetupResetReminder (
   VOID
   )
 {
-  EFI_INPUT_KEY                 Key;
-  CHAR16                        *StringBuffer1;
-  CHAR16                        *StringBuffer2;
+  EFI_INPUT_KEY  Key;
+  CHAR16         *StringBuffer1;
+  CHAR16         *StringBuffer2;
 
   //
-  //check any reset required change is applied? if yes, reset system
+  // check any reset required change is applied? if yes, reset system
   //
   if (IsResetRequired ()) {
-
     StringBuffer1 = AllocateZeroPool (MAX_STRING_LEN * sizeof (CHAR16));
     ASSERT (StringBuffer1 != NULL);
     StringBuffer2 = AllocateZeroPool (MAX_STRING_LEN * sizeof (CHAR16));
@@ -1110,4 +1115,3 @@ SetupResetReminder (
     gRT->ResetSystem (EfiResetCold, EFI_SUCCESS, 0, NULL);
   }
 }
-

+ 29 - 32
MdeModulePkg/Application/UiApp/FrontPage.h

@@ -18,24 +18,23 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 //
 extern UINT8  FrontPageVfrBin[];
 
-extern EFI_FORM_BROWSER2_PROTOCOL      *gFormBrowser2;
+extern EFI_FORM_BROWSER2_PROTOCOL  *gFormBrowser2;
 
-
-#define SMBIOS_TYPE4_CPU_SOCKET_POPULATED BIT6
+#define SMBIOS_TYPE4_CPU_SOCKET_POPULATED  BIT6
 
 //
 // This is the VFR compiler generated header file which defines the
 // string identifiers.
 //
-#define PRINTABLE_LANGUAGE_NAME_STRING_ID     0x0001
+#define PRINTABLE_LANGUAGE_NAME_STRING_ID  0x0001
 
 //
 // These are defined as the same with vfr file
 //
-#define FRONT_PAGE_FORM_ID             0x1000
+#define FRONT_PAGE_FORM_ID  0x1000
 
-#define LABEL_FRANTPAGE_INFORMATION    0x1000
-#define LABEL_END                      0xffff
+#define LABEL_FRANTPAGE_INFORMATION  0x1000
+#define LABEL_END                    0xffff
 
 #define FRONT_PAGE_FORMSET_GUID \
   { \
@@ -45,22 +44,21 @@ extern EFI_FORM_BROWSER2_PROTOCOL      *gFormBrowser2;
 #define FRONT_PAGE_CALLBACK_DATA_SIGNATURE  SIGNATURE_32 ('F', 'P', 'C', 'B')
 
 typedef struct {
-  UINTN                           Signature;
+  UINTN                             Signature;
 
   //
   // HII relative handles
   //
-  EFI_HII_HANDLE                  HiiHandle;
-  EFI_HANDLE                      DriverHandle;
-  EFI_STRING_ID                   *LanguageToken;
+  EFI_HII_HANDLE                    HiiHandle;
+  EFI_HANDLE                        DriverHandle;
+  EFI_STRING_ID                     *LanguageToken;
 
   //
   // Produced protocols
   //
-  EFI_HII_CONFIG_ACCESS_PROTOCOL  ConfigAccess;
+  EFI_HII_CONFIG_ACCESS_PROTOCOL    ConfigAccess;
 } FRONT_PAGE_CALLBACK_DATA;
 
-
 #define EFI_FP_CALLBACK_DATA_FROM_THIS(a) \
   CR (a, \
       FRONT_PAGE_CALLBACK_DATA, \
@@ -93,10 +91,10 @@ typedef struct {
 EFI_STATUS
 EFIAPI
 FakeExtractConfig (
-  IN  CONST EFI_HII_CONFIG_ACCESS_PROTOCOL   *This,
-  IN  CONST EFI_STRING                       Request,
-  OUT EFI_STRING                             *Progress,
-  OUT EFI_STRING                             *Results
+  IN  CONST EFI_HII_CONFIG_ACCESS_PROTOCOL  *This,
+  IN  CONST EFI_STRING                      Request,
+  OUT EFI_STRING                            *Progress,
+  OUT EFI_STRING                            *Results
   );
 
 /**
@@ -118,9 +116,9 @@ FakeExtractConfig (
 EFI_STATUS
 EFIAPI
 FakeRouteConfig (
-  IN  CONST EFI_HII_CONFIG_ACCESS_PROTOCOL   *This,
-  IN  CONST EFI_STRING                       Configuration,
-  OUT EFI_STRING                             *Progress
+  IN  CONST EFI_HII_CONFIG_ACCESS_PROTOCOL  *This,
+  IN  CONST EFI_STRING                      Configuration,
+  OUT EFI_STRING                            *Progress
   );
 
 /**
@@ -144,12 +142,12 @@ FakeRouteConfig (
 EFI_STATUS
 EFIAPI
 FrontPageCallback (
-  IN  CONST EFI_HII_CONFIG_ACCESS_PROTOCOL   *This,
-  IN  EFI_BROWSER_ACTION                     Action,
-  IN  EFI_QUESTION_ID                        QuestionId,
-  IN  UINT8                                  Type,
-  IN  EFI_IFR_TYPE_VALUE                     *Value,
-  OUT EFI_BROWSER_ACTION_REQUEST             *ActionRequest
+  IN  CONST EFI_HII_CONFIG_ACCESS_PROTOCOL  *This,
+  IN  EFI_BROWSER_ACTION                    Action,
+  IN  EFI_QUESTION_ID                       QuestionId,
+  IN  UINT8                                 Type,
+  IN  EFI_IFR_TYPE_VALUE                    *Value,
+  OUT EFI_BROWSER_ACTION_REQUEST            *ActionRequest
   );
 
 /**
@@ -177,9 +175,9 @@ InitializeFrontPage (
 **/
 EFI_STATUS
 GetProducerString (
-  IN      EFI_GUID                  *ProducerGuid,
-  IN      EFI_STRING_ID             Token,
-  OUT     CHAR16                    **String
+  IN      EFI_GUID       *ProducerGuid,
+  IN      EFI_STRING_ID  Token,
+  OUT     CHAR16         **String
   );
 
 /**
@@ -192,7 +190,7 @@ GetProducerString (
 VOID
 EFIAPI
 UiEntry (
-  IN BOOLEAN                      ConnectAllHappened
+  IN BOOLEAN  ConnectAllHappened
   );
 
 /**
@@ -206,8 +204,7 @@ UiEntry (
 **/
 CHAR16 *
 ExtractDevicePathFromHiiHandle (
-  IN      EFI_HII_HANDLE      Handle
+  IN      EFI_HII_HANDLE  Handle
   );
 
 #endif // _FRONT_PAGE_H_
-

+ 19 - 17
MdeModulePkg/Application/UiApp/FrontPageCustomizedUi.c

@@ -37,7 +37,7 @@ UiCustomizeFrontPage (
   //
   // Create empty line.
   //
-  UiCreateEmptyLine(HiiHandle, StartOpCodeHandle);
+  UiCreateEmptyLine (HiiHandle, StartOpCodeHandle);
 
   //
   // Find third party drivers which need to be shown in the front page.
@@ -47,17 +47,17 @@ UiCustomizeFrontPage (
   //
   // Create empty line.
   //
-  UiCreateEmptyLine(HiiHandle, StartOpCodeHandle);
+  UiCreateEmptyLine (HiiHandle, StartOpCodeHandle);
 
   //
   // Create "Continue" menu.
   //
-  UiCreateContinueMenu(HiiHandle, StartOpCodeHandle);
+  UiCreateContinueMenu (HiiHandle, StartOpCodeHandle);
 
   //
   // Create reset menu.
   //
-  UiCreateResetMenu(HiiHandle, StartOpCodeHandle);
+  UiCreateResetMenu (HiiHandle, StartOpCodeHandle);
 }
 
 /**
@@ -80,15 +80,15 @@ UiCustomizeFrontPage (
 **/
 EFI_STATUS
 UiFrontPageCallbackHandler (
-  IN  EFI_HII_HANDLE                         HiiHandle,
-  IN  EFI_BROWSER_ACTION                     Action,
-  IN  EFI_QUESTION_ID                        QuestionId,
-  IN  UINT8                                  Type,
-  IN  EFI_IFR_TYPE_VALUE                     *Value,
-  OUT EFI_BROWSER_ACTION_REQUEST             *ActionRequest
+  IN  EFI_HII_HANDLE              HiiHandle,
+  IN  EFI_BROWSER_ACTION          Action,
+  IN  EFI_QUESTION_ID             QuestionId,
+  IN  UINT8                       Type,
+  IN  EFI_IFR_TYPE_VALUE          *Value,
+  OUT EFI_BROWSER_ACTION_REQUEST  *ActionRequest
   )
 {
-  EFI_STATUS    Status;
+  EFI_STATUS  Status;
 
   if (UiSupportLibCallbackHandler (HiiHandle, Action, QuestionId, Type, Value, ActionRequest, &Status)) {
     return Status;
@@ -121,19 +121,21 @@ UiFrontPageCallbackHandler (
 **/
 VOID
 UiCustomizeFrontPageBanner (
-  IN     UINTN          LineIndex,
-  IN     BOOLEAN        LeftOrRight,
-  IN OUT EFI_STRING     *BannerStr
+  IN     UINTN       LineIndex,
+  IN     BOOLEAN     LeftOrRight,
+  IN OUT EFI_STRING  *BannerStr
   )
 {
   if ((LineIndex == 5) && LeftOrRight) {
     // Update STR_CUSTOMIZE_BANNER_LINE5_LEFT
-    if (PcdGetBool(PcdTestKeyUsed)) {
+    if (PcdGetBool (PcdTestKeyUsed)) {
       if (BannerStr != NULL) {
-        FreePool(*BannerStr);
+        FreePool (*BannerStr);
       }
-      *BannerStr = HiiGetString(gFrontPagePrivate.HiiHandle, STRING_TOKEN(STR_TEST_KEY_USED), NULL);
+
+      *BannerStr = HiiGetString (gFrontPagePrivate.HiiHandle, STRING_TOKEN (STR_TEST_KEY_USED), NULL);
     }
   }
+
   return;
 }

+ 9 - 9
MdeModulePkg/Application/UiApp/FrontPageCustomizedUi.h

@@ -33,9 +33,9 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 VOID
 UiCustomizeFrontPageBanner (
-  IN     UINTN          LineIndex,
-  IN     BOOLEAN        LeftOrRight,
-  IN OUT EFI_STRING     *BannerStr
+  IN     UINTN       LineIndex,
+  IN     BOOLEAN     LeftOrRight,
+  IN OUT EFI_STRING  *BannerStr
   );
 
 /**
@@ -71,12 +71,12 @@ UiCustomizeFrontPage (
 **/
 EFI_STATUS
 UiFrontPageCallbackHandler (
-  IN  EFI_HII_HANDLE                         HiiHandle,
-  IN  EFI_BROWSER_ACTION                     Action,
-  IN  EFI_QUESTION_ID                        QuestionId,
-  IN  UINT8                                  Type,
-  IN  EFI_IFR_TYPE_VALUE                     *Value,
-  OUT EFI_BROWSER_ACTION_REQUEST             *ActionRequest
+  IN  EFI_HII_HANDLE              HiiHandle,
+  IN  EFI_BROWSER_ACTION          Action,
+  IN  EFI_QUESTION_ID             QuestionId,
+  IN  UINT8                       Type,
+  IN  EFI_IFR_TYPE_VALUE          *Value,
+  OUT EFI_BROWSER_ACTION_REQUEST  *ActionRequest
   );
 
 #endif

+ 154 - 147
MdeModulePkg/Application/UiApp/FrontPageCustomizedUiSupport.c

@@ -30,29 +30,28 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 // This is the VFR compiler generated header file which defines the
 // string identifiers.
 //
-#define PRINTABLE_LANGUAGE_NAME_STRING_ID     0x0001
+#define PRINTABLE_LANGUAGE_NAME_STRING_ID  0x0001
 
-#define UI_HII_DRIVER_LIST_SIZE               0x8
+#define UI_HII_DRIVER_LIST_SIZE  0x8
 
-#define FRONT_PAGE_KEY_CONTINUE               0x1000
-#define FRONT_PAGE_KEY_RESET                  0x1001
-#define FRONT_PAGE_KEY_LANGUAGE               0x1002
-#define FRONT_PAGE_KEY_DRIVER                 0x2000
+#define FRONT_PAGE_KEY_CONTINUE  0x1000
+#define FRONT_PAGE_KEY_RESET     0x1001
+#define FRONT_PAGE_KEY_LANGUAGE  0x1002
+#define FRONT_PAGE_KEY_DRIVER    0x2000
 
 typedef struct {
-  EFI_STRING_ID   PromptId;
-  EFI_STRING_ID   HelpId;
-  EFI_STRING_ID   DevicePathId;
-  EFI_GUID        FormSetGuid;
-  BOOLEAN         EmptyLineAfter;
+  EFI_STRING_ID    PromptId;
+  EFI_STRING_ID    HelpId;
+  EFI_STRING_ID    DevicePathId;
+  EFI_GUID         FormSetGuid;
+  BOOLEAN          EmptyLineAfter;
 } UI_HII_DRIVER_INSTANCE;
 
-CHAR8                        *gLanguageString;
-EFI_STRING_ID                *gLanguageToken;
-UI_HII_DRIVER_INSTANCE       *gHiiDriverList;
-extern EFI_HII_HANDLE        gStringPackHandle;
-UINT8                        gCurrentLanguageIndex;
-
+CHAR8                   *gLanguageString;
+EFI_STRING_ID           *gLanguageToken;
+UI_HII_DRIVER_INSTANCE  *gHiiDriverList;
+extern EFI_HII_HANDLE   gStringPackHandle;
+UINT8                   gCurrentLanguageIndex;
 
 /**
   Get next language from language code list (with separator ';').
@@ -68,8 +67,8 @@ UINT8                        gCurrentLanguageIndex;
 **/
 VOID
 GetNextLanguage (
-  IN OUT CHAR8      **LangCode,
-  OUT CHAR8         *Lang
+  IN OUT CHAR8  **LangCode,
+  OUT CHAR8     *Lang
   )
 {
   UINTN  Index;
@@ -79,7 +78,7 @@ GetNextLanguage (
   ASSERT (*LangCode != NULL);
   ASSERT (Lang != NULL);
 
-  Index = 0;
+  Index     = 0;
   StringPtr = *LangCode;
   while (StringPtr[Index] != 0 && StringPtr[Index] != ';') {
     Index++;
@@ -91,6 +90,7 @@ GetNextLanguage (
   if (StringPtr[Index] == ';') {
     Index++;
   }
+
   *LangCode = StringPtr + Index;
 }
 
@@ -106,13 +106,13 @@ GetNextLanguage (
 **/
 EFI_STATUS
 LanguageChangeHandler (
-  IN  EFI_IFR_TYPE_VALUE                     *Value
+  IN  EFI_IFR_TYPE_VALUE  *Value
   )
 {
-  CHAR8                         *LangCode;
-  CHAR8                         *Lang;
-  UINTN                         Index;
-  EFI_STATUS                    Status;
+  CHAR8       *LangCode;
+  CHAR8       *Lang;
+  UINTN       Index;
+  EFI_STATUS  Status;
 
   //
   // Allocate working buffer for RFC 4646 language in supported LanguageString.
@@ -120,7 +120,7 @@ LanguageChangeHandler (
   Lang = AllocatePool (AsciiStrSize (gLanguageString));
   ASSERT (Lang != NULL);
 
-  Index = 0;
+  Index    = 0;
   LangCode = gLanguageString;
   while (*LangCode != 0) {
     GetNextLanguage (&LangCode, Lang);
@@ -148,6 +148,7 @@ LanguageChangeHandler (
   } else {
     ASSERT (FALSE);
   }
+
   FreePool (Lang);
 
   return EFI_SUCCESS;
@@ -172,28 +173,30 @@ LanguageChangeHandler (
 **/
 BOOLEAN
 UiSupportLibCallbackHandler (
-  IN  EFI_HII_HANDLE                         HiiHandle,
-  IN  EFI_BROWSER_ACTION                     Action,
-  IN  EFI_QUESTION_ID                        QuestionId,
-  IN  UINT8                                  Type,
-  IN  EFI_IFR_TYPE_VALUE                     *Value,
-  OUT EFI_BROWSER_ACTION_REQUEST             *ActionRequest,
-  OUT EFI_STATUS                             *Status
+  IN  EFI_HII_HANDLE              HiiHandle,
+  IN  EFI_BROWSER_ACTION          Action,
+  IN  EFI_QUESTION_ID             QuestionId,
+  IN  UINT8                       Type,
+  IN  EFI_IFR_TYPE_VALUE          *Value,
+  OUT EFI_BROWSER_ACTION_REQUEST  *ActionRequest,
+  OUT EFI_STATUS                  *Status
   )
 {
-  if (QuestionId != FRONT_PAGE_KEY_CONTINUE &&
-      QuestionId != FRONT_PAGE_KEY_RESET &&
-      QuestionId != FRONT_PAGE_KEY_LANGUAGE) {
+  if ((QuestionId != FRONT_PAGE_KEY_CONTINUE) &&
+      (QuestionId != FRONT_PAGE_KEY_RESET) &&
+      (QuestionId != FRONT_PAGE_KEY_LANGUAGE))
+  {
     return FALSE;
   }
 
   if (Action == EFI_BROWSER_ACTION_RETRIEVE) {
     if (QuestionId == FRONT_PAGE_KEY_LANGUAGE) {
       Value->u8 = gCurrentLanguageIndex;
-      *Status = EFI_SUCCESS;
+      *Status   = EFI_SUCCESS;
     } else {
       *Status = EFI_UNSUPPORTED;
     }
+
     return TRUE;
   }
 
@@ -213,26 +216,26 @@ UiSupportLibCallbackHandler (
 
     *Status = EFI_SUCCESS;
     switch (QuestionId) {
-    case FRONT_PAGE_KEY_CONTINUE:
-      //
-      // This is the continue - clear the screen and return an error to get out of FrontPage loop
-      //
-      *ActionRequest = EFI_BROWSER_ACTION_REQUEST_EXIT;
-      break;
-
-    case FRONT_PAGE_KEY_LANGUAGE:
-      *Status = LanguageChangeHandler(Value);
-      break;
-
-    case FRONT_PAGE_KEY_RESET:
-      //
-      // Reset
-      //
-      gRT->ResetSystem (EfiResetCold, EFI_SUCCESS, 0, NULL);
-      *Status = EFI_UNSUPPORTED;
-
-    default:
-      break;
+      case FRONT_PAGE_KEY_CONTINUE:
+        //
+        // This is the continue - clear the screen and return an error to get out of FrontPage loop
+        //
+        *ActionRequest = EFI_BROWSER_ACTION_REQUEST_EXIT;
+        break;
+
+      case FRONT_PAGE_KEY_LANGUAGE:
+        *Status = LanguageChangeHandler (Value);
+        break;
+
+      case FRONT_PAGE_KEY_RESET:
+        //
+        // Reset
+        //
+        gRT->ResetSystem (EfiResetCold, EFI_SUCCESS, 0, NULL);
+        *Status = EFI_UNSUPPORTED;
+
+      default:
+        break;
     }
   }
 
@@ -248,20 +251,20 @@ UiSupportLibCallbackHandler (
 **/
 VOID
 UiCreateLanguageMenu (
-  IN EFI_HII_HANDLE              HiiHandle,
-  IN VOID                        *StartOpCodeHandle
+  IN EFI_HII_HANDLE  HiiHandle,
+  IN VOID            *StartOpCodeHandle
   )
 {
-  CHAR8                       *LangCode;
-  CHAR8                       *Lang;
-  UINTN                       LangSize;
-  CHAR8                       *CurrentLang;
-  UINTN                       OptionCount;
-  CHAR16                      *StringBuffer;
-  VOID                        *OptionsOpCodeHandle;
-  UINTN                       StringSize;
-  EFI_STATUS                  Status;
-  EFI_HII_STRING_PROTOCOL     *HiiString;
+  CHAR8                    *LangCode;
+  CHAR8                    *Lang;
+  UINTN                    LangSize;
+  CHAR8                    *CurrentLang;
+  UINTN                    OptionCount;
+  CHAR16                   *StringBuffer;
+  VOID                     *OptionsOpCodeHandle;
+  UINTN                    StringSize;
+  EFI_STATUS               Status;
+  EFI_HII_STRING_PROTOCOL  *HiiString;
 
   Lang         = NULL;
   StringBuffer = NULL;
@@ -272,17 +275,17 @@ UiCreateLanguageMenu (
   OptionsOpCodeHandle = HiiAllocateOpCodeHandle ();
   ASSERT (OptionsOpCodeHandle != NULL);
 
-  GetEfiGlobalVariable2 (L"PlatformLang", (VOID**)&CurrentLang, NULL);
+  GetEfiGlobalVariable2 (L"PlatformLang", (VOID **)&CurrentLang, NULL);
 
   //
   // Get Support language list from variable.
   //
-  GetEfiGlobalVariable2 (L"PlatformLangCodes", (VOID**)&gLanguageString, NULL);
+  GetEfiGlobalVariable2 (L"PlatformLangCodes", (VOID **)&gLanguageString, NULL);
   if (gLanguageString == NULL) {
     gLanguageString = AllocateCopyPool (
-                               AsciiStrSize ((CHAR8 *) PcdGetPtr (PcdUefiVariableDefaultPlatformLangCodes)),
-                               (CHAR8 *) PcdGetPtr (PcdUefiVariableDefaultPlatformLangCodes)
-                               );
+                        AsciiStrSize ((CHAR8 *)PcdGetPtr (PcdUefiVariableDefaultPlatformLangCodes)),
+                        (CHAR8 *)PcdGetPtr (PcdUefiVariableDefaultPlatformLangCodes)
+                        );
     ASSERT (gLanguageString != NULL);
   }
 
@@ -291,13 +294,13 @@ UiCreateLanguageMenu (
     // Count the language list number.
     //
     LangCode = gLanguageString;
-    Lang = AllocatePool (AsciiStrSize (gLanguageString));
+    Lang     = AllocatePool (AsciiStrSize (gLanguageString));
     ASSERT (Lang != NULL);
 
     OptionCount = 0;
     while (*LangCode != 0) {
       GetNextLanguage (&LangCode, Lang);
-      OptionCount ++;
+      OptionCount++;
     }
 
     //
@@ -306,16 +309,16 @@ UiCreateLanguageMenu (
     gLanguageToken = AllocateZeroPool ((OptionCount + 1) * sizeof (EFI_STRING_ID));
     ASSERT (gLanguageToken != NULL);
 
-    Status = gBS->LocateProtocol (&gEfiHiiStringProtocolGuid, NULL, (VOID **) &HiiString);
+    Status = gBS->LocateProtocol (&gEfiHiiStringProtocolGuid, NULL, (VOID **)&HiiString);
     ASSERT_EFI_ERROR (Status);
 
-    LangCode     = gLanguageString;
-    OptionCount  = 0;
+    LangCode    = gLanguageString;
+    OptionCount = 0;
     while (*LangCode != 0) {
       GetNextLanguage (&LangCode, Lang);
 
       StringSize = 0;
-      Status = HiiString->GetString (HiiString, Lang, HiiHandle, PRINTABLE_LANGUAGE_NAME_STRING_ID, StringBuffer, &StringSize, NULL);
+      Status     = HiiString->GetString (HiiString, Lang, HiiHandle, PRINTABLE_LANGUAGE_NAME_STRING_ID, StringBuffer, &StringSize, NULL);
       if (Status == EFI_BUFFER_TOO_SMALL) {
         StringBuffer = AllocateZeroPool (StringSize);
         ASSERT (StringBuffer != NULL);
@@ -324,7 +327,7 @@ UiCreateLanguageMenu (
       }
 
       if (EFI_ERROR (Status)) {
-        LangSize = AsciiStrSize (Lang);
+        LangSize     = AsciiStrSize (Lang);
         StringBuffer = AllocatePool (LangSize * sizeof (CHAR16));
         ASSERT (StringBuffer != NULL);
         AsciiStrToUnicodeStrS (Lang, StringBuffer, LangSize);
@@ -339,31 +342,32 @@ UiCreateLanguageMenu (
   }
 
   ASSERT (gLanguageToken != NULL);
-  LangCode = gLanguageString;
+  LangCode    = gLanguageString;
   OptionCount = 0;
   if (Lang == NULL) {
     Lang = AllocatePool (AsciiStrSize (gLanguageString));
     ASSERT (Lang != NULL);
   }
+
   while (*LangCode != 0) {
     GetNextLanguage (&LangCode, Lang);
 
-    if (CurrentLang != NULL && AsciiStrCmp (Lang, CurrentLang) == 0) {
+    if ((CurrentLang != NULL) && (AsciiStrCmp (Lang, CurrentLang) == 0)) {
       HiiCreateOneOfOptionOpCode (
         OptionsOpCodeHandle,
         gLanguageToken[OptionCount],
         EFI_IFR_OPTION_DEFAULT,
         EFI_IFR_NUMERIC_SIZE_1,
-        (UINT8) OptionCount
+        (UINT8)OptionCount
         );
-      gCurrentLanguageIndex = (UINT8) OptionCount;
+      gCurrentLanguageIndex = (UINT8)OptionCount;
     } else {
       HiiCreateOneOfOptionOpCode (
         OptionsOpCodeHandle,
         gLanguageToken[OptionCount],
         0,
         EFI_IFR_NUMERIC_SIZE_1,
-        (UINT8) OptionCount
+        (UINT8)OptionCount
         );
     }
 
@@ -373,6 +377,7 @@ UiCreateLanguageMenu (
   if (CurrentLang != NULL) {
     FreePool (CurrentLang);
   }
+
   FreePool (Lang);
 
   HiiCreateOneOfOpCode (
@@ -398,8 +403,8 @@ UiCreateLanguageMenu (
 **/
 VOID
 UiCreateContinueMenu (
-  IN EFI_HII_HANDLE              HiiHandle,
-  IN VOID                        *StartOpCodeHandle
+  IN EFI_HII_HANDLE  HiiHandle,
+  IN VOID            *StartOpCodeHandle
   )
 {
   HiiCreateActionOpCode (
@@ -421,8 +426,8 @@ UiCreateContinueMenu (
 **/
 VOID
 UiCreateEmptyLine (
-  IN EFI_HII_HANDLE              HiiHandle,
-  IN VOID                        *StartOpCodeHandle
+  IN EFI_HII_HANDLE  HiiHandle,
+  IN VOID            *StartOpCodeHandle
   )
 {
   HiiCreateSubTitleOpCode (StartOpCodeHandle, STRING_TOKEN (STR_NULL_STRING), 0, 0, 0);
@@ -437,8 +442,8 @@ UiCreateEmptyLine (
 **/
 VOID
 UiCreateResetMenu (
-  IN EFI_HII_HANDLE              HiiHandle,
-  IN VOID                        *StartOpCodeHandle
+  IN EFI_HII_HANDLE  HiiHandle,
+  IN VOID            *StartOpCodeHandle
   )
 {
   HiiCreateActionOpCode (
@@ -462,11 +467,11 @@ UiCreateResetMenu (
 **/
 CHAR16 *
 ExtractDevicePathFromHiiHandle (
-  IN      EFI_HII_HANDLE      Handle
+  IN      EFI_HII_HANDLE  Handle
   )
 {
-  EFI_STATUS                       Status;
-  EFI_HANDLE                       DriverHandle;
+  EFI_STATUS  Status;
+  EFI_HANDLE  DriverHandle;
 
   ASSERT (Handle != NULL);
 
@@ -479,7 +484,7 @@ ExtractDevicePathFromHiiHandle (
     return NULL;
   }
 
-  return ConvertDevicePathToText(DevicePathFromHandle (DriverHandle), FALSE, FALSE);
+  return ConvertDevicePathToText (DevicePathFromHandle (DriverHandle), FALSE, FALSE);
 }
 
 /**
@@ -496,49 +501,49 @@ ExtractDevicePathFromHiiHandle (
 **/
 BOOLEAN
 RequiredDriver (
-  IN  EFI_HII_HANDLE              HiiHandle,
-  IN  EFI_GUID                    *Guid,
-  OUT EFI_STRING_ID               *PromptId,
-  OUT EFI_STRING_ID               *HelpId,
-  OUT VOID                        *FormsetGuid
+  IN  EFI_HII_HANDLE  HiiHandle,
+  IN  EFI_GUID        *Guid,
+  OUT EFI_STRING_ID   *PromptId,
+  OUT EFI_STRING_ID   *HelpId,
+  OUT VOID            *FormsetGuid
   )
 {
-  EFI_STATUS                  Status;
-  UINT8                       ClassGuidNum;
-  EFI_GUID                    *ClassGuid;
-  EFI_IFR_FORM_SET            *Buffer;
-  UINTN                       BufferSize;
-  UINT8                       *Ptr;
-  UINTN                       TempSize;
-  BOOLEAN                     RetVal;
-
-  Status = HiiGetFormSetFromHiiHandle(HiiHandle, &Buffer,&BufferSize);
+  EFI_STATUS        Status;
+  UINT8             ClassGuidNum;
+  EFI_GUID          *ClassGuid;
+  EFI_IFR_FORM_SET  *Buffer;
+  UINTN             BufferSize;
+  UINT8             *Ptr;
+  UINTN             TempSize;
+  BOOLEAN           RetVal;
+
+  Status = HiiGetFormSetFromHiiHandle (HiiHandle, &Buffer, &BufferSize);
   if (EFI_ERROR (Status)) {
     return FALSE;
   }
 
-  RetVal = FALSE;
+  RetVal   = FALSE;
   TempSize = 0;
-  Ptr = (UINT8 *) Buffer;
-  while(TempSize < BufferSize)  {
-    TempSize += ((EFI_IFR_OP_HEADER *) Ptr)->Length;
+  Ptr      = (UINT8 *)Buffer;
+  while (TempSize < BufferSize) {
+    TempSize += ((EFI_IFR_OP_HEADER *)Ptr)->Length;
 
-    if (((EFI_IFR_OP_HEADER *) Ptr)->Length <= OFFSET_OF (EFI_IFR_FORM_SET, Flags)){
-      Ptr += ((EFI_IFR_OP_HEADER *) Ptr)->Length;
+    if (((EFI_IFR_OP_HEADER *)Ptr)->Length <= OFFSET_OF (EFI_IFR_FORM_SET, Flags)) {
+      Ptr += ((EFI_IFR_OP_HEADER *)Ptr)->Length;
       continue;
     }
 
-    ClassGuidNum = (UINT8) (((EFI_IFR_FORM_SET *)Ptr)->Flags & 0x3);
-    ClassGuid = (EFI_GUID *) (VOID *)(Ptr + sizeof (EFI_IFR_FORM_SET));
+    ClassGuidNum = (UINT8)(((EFI_IFR_FORM_SET *)Ptr)->Flags & 0x3);
+    ClassGuid    = (EFI_GUID *)(VOID *)(Ptr + sizeof (EFI_IFR_FORM_SET));
     while (ClassGuidNum-- > 0) {
-      if (!CompareGuid (Guid, ClassGuid)){
-        ClassGuid ++;
+      if (!CompareGuid (Guid, ClassGuid)) {
+        ClassGuid++;
         continue;
       }
 
       *PromptId = ((EFI_IFR_FORM_SET *)Ptr)->FormSetTitle;
-      *HelpId = ((EFI_IFR_FORM_SET *)Ptr)->Help;
-      CopyMem (FormsetGuid, &((EFI_IFR_FORM_SET *) Ptr)->Guid, sizeof (EFI_GUID));
+      *HelpId   = ((EFI_IFR_FORM_SET *)Ptr)->Help;
+      CopyMem (FormsetGuid, &((EFI_IFR_FORM_SET *)Ptr)->Guid, sizeof (EFI_GUID));
       RetVal = TRUE;
     }
   }
@@ -562,23 +567,23 @@ RequiredDriver (
 **/
 EFI_STATUS
 UiListThirdPartyDrivers (
-  IN EFI_HII_HANDLE              HiiHandle,
-  IN EFI_GUID                    *ClassGuid,
-  IN DRIVER_SPECIAL_HANDLER      SpecialHandlerFn,
-  IN VOID                        *StartOpCodeHandle
+  IN EFI_HII_HANDLE          HiiHandle,
+  IN EFI_GUID                *ClassGuid,
+  IN DRIVER_SPECIAL_HANDLER  SpecialHandlerFn,
+  IN VOID                    *StartOpCodeHandle
   )
 {
-  UINTN                       Index;
-  EFI_STRING                  String;
-  EFI_STRING_ID               Token;
-  EFI_STRING_ID               TokenHelp;
-  EFI_HII_HANDLE              *HiiHandles;
-  CHAR16                      *DevicePathStr;
-  UINTN                       Count;
-  UINTN                       CurrentSize;
-  UI_HII_DRIVER_INSTANCE      *DriverListPtr;
-  EFI_STRING                  NewName;
-  BOOLEAN                     EmptyLineAfter;
+  UINTN                   Index;
+  EFI_STRING              String;
+  EFI_STRING_ID           Token;
+  EFI_STRING_ID           TokenHelp;
+  EFI_HII_HANDLE          *HiiHandles;
+  CHAR16                  *DevicePathStr;
+  UINTN                   Count;
+  UINTN                   CurrentSize;
+  UI_HII_DRIVER_INSTANCE  *DriverListPtr;
+  EFI_STRING              NewName;
+  BOOLEAN                 EmptyLineAfter;
 
   if (gHiiDriverList != NULL) {
     FreePool (gHiiDriverList);
@@ -590,7 +595,7 @@ UiListThirdPartyDrivers (
   gHiiDriverList = AllocateZeroPool (UI_HII_DRIVER_LIST_SIZE * sizeof (UI_HII_DRIVER_INSTANCE));
   ASSERT (gHiiDriverList != NULL);
   DriverListPtr = gHiiDriverList;
-  CurrentSize = UI_HII_DRIVER_LIST_SIZE;
+  CurrentSize   = UI_HII_DRIVER_LIST_SIZE;
 
   for (Index = 0, Count = 0; HiiHandles[Index] != NULL; Index++) {
     if (!RequiredDriver (HiiHandles[Index], ClassGuid, &Token, &TokenHelp, &gHiiDriverList[Count].FormSetGuid)) {
@@ -608,10 +613,11 @@ UiListThirdPartyDrivers (
       EmptyLineAfter = FALSE;
       if (SpecialHandlerFn (String, &NewName, &EmptyLineAfter)) {
         FreePool (String);
-        String = NewName;
+        String                              = NewName;
         DriverListPtr[Count].EmptyLineAfter = EmptyLineAfter;
       }
     }
+
     DriverListPtr[Count].PromptId = HiiSetString (HiiHandle, 0, String, NULL);
     FreePool (String);
 
@@ -620,11 +626,12 @@ UiListThirdPartyDrivers (
       String = HiiGetString (gStringPackHandle, STRING_TOKEN (STR_MISSING_STRING), NULL);
       ASSERT (String != NULL);
     }
+
     DriverListPtr[Count].HelpId = HiiSetString (HiiHandle, 0, String, NULL);
     FreePool (String);
 
-    DevicePathStr = ExtractDevicePathFromHiiHandle(HiiHandles[Index]);
-    if (DevicePathStr != NULL){
+    DevicePathStr = ExtractDevicePathFromHiiHandle (HiiHandles[Index]);
+    if (DevicePathStr != NULL) {
       DriverListPtr[Count].DevicePathId = HiiSetString (HiiHandle, 0, DevicePathStr, NULL);
       FreePool (DevicePathStr);
     } else {
@@ -636,12 +643,12 @@ UiListThirdPartyDrivers (
       DriverListPtr = ReallocatePool (
                         CurrentSize * sizeof (UI_HII_DRIVER_INSTANCE),
                         (Count + UI_HII_DRIVER_LIST_SIZE)
-                          * sizeof (UI_HII_DRIVER_INSTANCE),
+                        * sizeof (UI_HII_DRIVER_INSTANCE),
                         gHiiDriverList
                         );
       ASSERT (DriverListPtr != NULL);
       gHiiDriverList = DriverListPtr;
-      CurrentSize += UI_HII_DRIVER_LIST_SIZE;
+      CurrentSize   += UI_HII_DRIVER_LIST_SIZE;
     }
   }
 
@@ -655,17 +662,17 @@ UiListThirdPartyDrivers (
       gHiiDriverList[Index].PromptId,
       gHiiDriverList[Index].HelpId,
       0,
-      (EFI_QUESTION_ID) (Index + FRONT_PAGE_KEY_DRIVER),
+      (EFI_QUESTION_ID)(Index + FRONT_PAGE_KEY_DRIVER),
       0,
       &gHiiDriverList[Index].FormSetGuid,
       gHiiDriverList[Index].DevicePathId
-    );
+      );
 
     if (gHiiDriverList[Index].EmptyLineAfter) {
       UiCreateEmptyLine (HiiHandle, StartOpCodeHandle);
     }
 
-    Index ++;
+    Index++;
   }
 
   return EFI_SUCCESS;

+ 20 - 20
MdeModulePkg/Application/UiApp/FrontPageCustomizedUiSupport.h

@@ -18,8 +18,8 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 VOID
 UiCreateContinueMenu (
-  IN EFI_HII_HANDLE              HiiHandle,
-  IN VOID                        *StartOpCodeHandle
+  IN EFI_HII_HANDLE  HiiHandle,
+  IN VOID            *StartOpCodeHandle
   );
 
 /**
@@ -31,8 +31,8 @@ UiCreateContinueMenu (
 **/
 VOID
 UiCreateEmptyLine (
-  IN EFI_HII_HANDLE              HiiHandle,
-  IN VOID                        *StartOpCodeHandle
+  IN EFI_HII_HANDLE  HiiHandle,
+  IN VOID            *StartOpCodeHandle
   );
 
 /**
@@ -44,8 +44,8 @@ UiCreateEmptyLine (
 **/
 VOID
 UiCreateLanguageMenu (
-  IN EFI_HII_HANDLE              HiiHandle,
-  IN VOID                        *StartOpCodeHandle
+  IN EFI_HII_HANDLE  HiiHandle,
+  IN VOID            *StartOpCodeHandle
   );
 
 /**
@@ -57,8 +57,8 @@ UiCreateLanguageMenu (
 **/
 VOID
 UiCreateResetMenu (
-  IN EFI_HII_HANDLE              HiiHandle,
-  IN VOID                        *StartOpCodeHandle
+  IN EFI_HII_HANDLE  HiiHandle,
+  IN VOID            *StartOpCodeHandle
   );
 
 /**
@@ -77,7 +77,7 @@ BOOLEAN
   IN  CHAR16                   *DriverName,
   OUT CHAR16                   **NewName,
   OUT BOOLEAN                  *EmptyLineAfter
-);
+  );
 
 /**
   Search the drivers in the system which need to show in the front page
@@ -93,10 +93,10 @@ BOOLEAN
 **/
 EFI_STATUS
 UiListThirdPartyDrivers (
-  IN EFI_HII_HANDLE              HiiHandle,
-  IN EFI_GUID                    *ClassGuid,
-  IN DRIVER_SPECIAL_HANDLER      SpecialHandlerFn,
-  IN VOID                        *StartOpCodeHandle
+  IN EFI_HII_HANDLE          HiiHandle,
+  IN EFI_GUID                *ClassGuid,
+  IN DRIVER_SPECIAL_HANDLER  SpecialHandlerFn,
+  IN VOID                    *StartOpCodeHandle
   );
 
 /**
@@ -118,13 +118,13 @@ UiListThirdPartyDrivers (
 **/
 BOOLEAN
 UiSupportLibCallbackHandler (
-  IN  EFI_HII_HANDLE                         HiiHandle,
-  IN  EFI_BROWSER_ACTION                     Action,
-  IN  EFI_QUESTION_ID                        QuestionId,
-  IN  UINT8                                  Type,
-  IN  EFI_IFR_TYPE_VALUE                     *Value,
-  OUT EFI_BROWSER_ACTION_REQUEST             *ActionRequest,
-  OUT EFI_STATUS                             *Status
+  IN  EFI_HII_HANDLE              HiiHandle,
+  IN  EFI_BROWSER_ACTION          Action,
+  IN  EFI_QUESTION_ID             QuestionId,
+  IN  UINT8                       Type,
+  IN  EFI_IFR_TYPE_VALUE          *Value,
+  OUT EFI_BROWSER_ACTION_REQUEST  *ActionRequest,
+  OUT EFI_STATUS                  *Status
   );
 
 #endif

+ 18 - 18
MdeModulePkg/Application/UiApp/String.c

@@ -9,36 +9,36 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #include "Ui.h"
 #include "FrontPage.h"
 
-EFI_HII_HANDLE gStringPackHandle;
+EFI_HII_HANDLE  gStringPackHandle;
 
-EFI_GUID mUiStringPackGuid = {
+EFI_GUID  mUiStringPackGuid = {
   0x136a3048, 0x752a, 0x4bf6, { 0xa7, 0x57, 0x9, 0x36, 0x11, 0x95, 0x38, 0xed }
 };
 
 EFI_GUID  mFontPackageGuid = {
-  0x78941450, 0x90ab, 0x4fb1, {0xb7, 0x5f, 0x58, 0x92, 0x14, 0xe2, 0x4a, 0xc}
+  0x78941450, 0x90ab, 0x4fb1, { 0xb7, 0x5f, 0x58, 0x92, 0x14, 0xe2, 0x4a, 0xc }
 };
 
-#define NARROW_GLYPH_NUMBER 8
-#define WIDE_GLYPH_NUMBER   75
+#define NARROW_GLYPH_NUMBER  8
+#define WIDE_GLYPH_NUMBER    75
 
 typedef struct {
   ///
   /// This 4-bytes total array length is required by HiiAddPackages()
   ///
-  UINT32                 Length;
+  UINT32                    Length;
 
   //
   // This is the Font package definition
   //
-  EFI_HII_PACKAGE_HEADER Header;
-  UINT16                 NumberOfNarrowGlyphs;
-  UINT16                 NumberOfWideGlyphs;
-  EFI_NARROW_GLYPH       NarrowArray[NARROW_GLYPH_NUMBER];
-  EFI_WIDE_GLYPH         WideArray[WIDE_GLYPH_NUMBER];
+  EFI_HII_PACKAGE_HEADER    Header;
+  UINT16                    NumberOfNarrowGlyphs;
+  UINT16                    NumberOfWideGlyphs;
+  EFI_NARROW_GLYPH          NarrowArray[NARROW_GLYPH_NUMBER];
+  EFI_WIDE_GLYPH            WideArray[WIDE_GLYPH_NUMBER];
 } FONT_PACK_BIN;
 
-FONT_PACK_BIN mFontBin = {
+FONT_PACK_BIN  mFontBin = {
   sizeof (FONT_PACK_BIN),
   {
     sizeof (FONT_PACK_BIN) - sizeof (UINT32),
@@ -260,11 +260,11 @@ InitializeStringSupport (
   )
 {
   gStringPackHandle = HiiAddPackages (
-                         &mUiStringPackGuid,
-                         gImageHandle,
-                         UiAppStrings,
-                         NULL
-                         );
+                        &mUiStringPackGuid,
+                        gImageHandle,
+                        UiAppStrings,
+                        NULL
+                        );
   ASSERT (gStringPackHandle != NULL);
 }
 
@@ -292,7 +292,7 @@ UninitializeStringSupport (
 **/
 CHAR16 *
 GetStringById (
-  IN  EFI_STRING_ID   Id
+  IN  EFI_STRING_ID  Id
   )
 {
   return HiiGetString (gStringPackHandle, Id, NULL);

+ 2 - 2
MdeModulePkg/Application/UiApp/String.h

@@ -9,7 +9,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #ifndef _STRING_H_
 #define _STRING_H_
 
-extern EFI_HII_HANDLE gStringPackHandle;
+extern EFI_HII_HANDLE  gStringPackHandle;
 
 //
 // This is the VFR compiler generated header file which defines the
@@ -38,7 +38,7 @@ extern UINT8  BdsDxeStrings[];
 **/
 CHAR16 *
 GetStringById (
-  IN  EFI_STRING_ID   Id
+  IN  EFI_STRING_ID  Id
   );
 
 /**

+ 3 - 8
MdeModulePkg/Application/UiApp/Ui.h

@@ -6,7 +6,6 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
-
 #ifndef _BDS_MODULE_H_
 #define _BDS_MODULE_H_
 
@@ -37,18 +36,16 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 /// HII specific Vendor Device Path definition.
 ///
 typedef struct {
-  VENDOR_DEVICE_PATH             VendorDevicePath;
-  EFI_DEVICE_PATH_PROTOCOL       End;
+  VENDOR_DEVICE_PATH          VendorDevicePath;
+  EFI_DEVICE_PATH_PROTOCOL    End;
 } HII_VENDOR_DEVICE_PATH;
 
 #pragma pack()
 
-
 //
-//The interface functions related to the Setup Browser Reset Reminder feature
+// The interface functions related to the Setup Browser Reset Reminder feature
 //
 
-
 /**
   Record the info that a reset is required.
   A module boolean variable is used to record whether a reset is required.
@@ -60,8 +57,6 @@ EnableResetRequired (
   VOID
   );
 
-
-
 /**
   Check whether platform policy enables the reset reminder feature. The default is enabled.
 

+ 69 - 63
MdeModulePkg/Application/VariableInfo/VariableInfo.c

@@ -41,23 +41,25 @@ EFI_MM_COMMUNICATION2_PROTOCOL  *mMmCommunication2 = NULL;
 EFI_STATUS
 EFIAPI
 GetVariableStatisticsData (
-  IN OUT  EFI_MM_COMMUNICATE_HEADER   *SmmCommunicateHeader,
-  IN OUT  UINTN                       *SmmCommunicateSize
+  IN OUT  EFI_MM_COMMUNICATE_HEADER  *SmmCommunicateHeader,
+  IN OUT  UINTN                      *SmmCommunicateSize
   )
 {
-  EFI_STATUS                          Status;
-  SMM_VARIABLE_COMMUNICATE_HEADER     *SmmVariableFunctionHeader;
+  EFI_STATUS                       Status;
+  SMM_VARIABLE_COMMUNICATE_HEADER  *SmmVariableFunctionHeader;
 
   CopyGuid (&SmmCommunicateHeader->HeaderGuid, &gEfiSmmVariableProtocolGuid);
   SmmCommunicateHeader->MessageLength = *SmmCommunicateSize - OFFSET_OF (EFI_MM_COMMUNICATE_HEADER, Data);
 
-  SmmVariableFunctionHeader = (SMM_VARIABLE_COMMUNICATE_HEADER *) &SmmCommunicateHeader->Data[0];
+  SmmVariableFunctionHeader           = (SMM_VARIABLE_COMMUNICATE_HEADER *)&SmmCommunicateHeader->Data[0];
   SmmVariableFunctionHeader->Function = SMM_VARIABLE_FUNCTION_GET_STATISTICS;
 
-  Status = mMmCommunication2->Communicate (mMmCommunication2,
-                                           SmmCommunicateHeader,
-                                           SmmCommunicateHeader,
-                                           SmmCommunicateSize);
+  Status = mMmCommunication2->Communicate (
+                                mMmCommunication2,
+                                SmmCommunicateHeader,
+                                SmmCommunicateHeader,
+                                SmmCommunicateSize
+                                );
   ASSERT_EFI_ERROR (Status);
 
   Status = SmmVariableFunctionHeader->ReturnStatus;
@@ -77,62 +79,65 @@ PrintInfoFromSmm (
   VOID
   )
 {
-  EFI_STATUS                                     Status;
-  VARIABLE_INFO_ENTRY                            *VariableInfo;
-  EFI_MM_COMMUNICATE_HEADER                      *CommBuffer;
-  UINTN                                          RealCommSize;
-  UINTN                                          CommSize;
-  SMM_VARIABLE_COMMUNICATE_HEADER                *FunctionHeader;
-  EFI_SMM_VARIABLE_PROTOCOL                      *Smmvariable;
-  EDKII_PI_SMM_COMMUNICATION_REGION_TABLE        *PiSmmCommunicationRegionTable;
-  UINT32                                         Index;
-  EFI_MEMORY_DESCRIPTOR                          *Entry;
-  UINTN                                          Size;
-  UINTN                                          MaxSize;
-
-  Status = gBS->LocateProtocol (&gEfiSmmVariableProtocolGuid, NULL, (VOID **) &Smmvariable);
+  EFI_STATUS                               Status;
+  VARIABLE_INFO_ENTRY                      *VariableInfo;
+  EFI_MM_COMMUNICATE_HEADER                *CommBuffer;
+  UINTN                                    RealCommSize;
+  UINTN                                    CommSize;
+  SMM_VARIABLE_COMMUNICATE_HEADER          *FunctionHeader;
+  EFI_SMM_VARIABLE_PROTOCOL                *Smmvariable;
+  EDKII_PI_SMM_COMMUNICATION_REGION_TABLE  *PiSmmCommunicationRegionTable;
+  UINT32                                   Index;
+  EFI_MEMORY_DESCRIPTOR                    *Entry;
+  UINTN                                    Size;
+  UINTN                                    MaxSize;
+
+  Status = gBS->LocateProtocol (&gEfiSmmVariableProtocolGuid, NULL, (VOID **)&Smmvariable);
   if (EFI_ERROR (Status)) {
     return Status;
   }
 
-  Status = gBS->LocateProtocol (&gEfiMmCommunication2ProtocolGuid, NULL, (VOID **) &mMmCommunication2);
+  Status = gBS->LocateProtocol (&gEfiMmCommunication2ProtocolGuid, NULL, (VOID **)&mMmCommunication2);
   if (EFI_ERROR (Status)) {
     return Status;
   }
 
-  CommBuffer = NULL;
+  CommBuffer   = NULL;
   RealCommSize = 0;
-  Status = EfiGetSystemConfigurationTable (
-             &gEdkiiPiSmmCommunicationRegionTableGuid,
-             (VOID **) &PiSmmCommunicationRegionTable
-             );
+  Status       = EfiGetSystemConfigurationTable (
+                   &gEdkiiPiSmmCommunicationRegionTableGuid,
+                   (VOID **)&PiSmmCommunicationRegionTable
+                   );
   if (EFI_ERROR (Status)) {
     return Status;
   }
+
   ASSERT (PiSmmCommunicationRegionTable != NULL);
-  Entry = (EFI_MEMORY_DESCRIPTOR *) (PiSmmCommunicationRegionTable + 1);
-  Size = 0;
+  Entry   = (EFI_MEMORY_DESCRIPTOR *)(PiSmmCommunicationRegionTable + 1);
+  Size    = 0;
   MaxSize = 0;
   for (Index = 0; Index < PiSmmCommunicationRegionTable->NumberOfEntries; Index++) {
     if (Entry->Type == EfiConventionalMemory) {
-      Size = EFI_PAGES_TO_SIZE ((UINTN) Entry->NumberOfPages);
+      Size = EFI_PAGES_TO_SIZE ((UINTN)Entry->NumberOfPages);
       if (Size > (SMM_COMMUNICATE_HEADER_SIZE + SMM_VARIABLE_COMMUNICATE_HEADER_SIZE + sizeof (VARIABLE_INFO_ENTRY))) {
         if (Size > MaxSize) {
-          MaxSize = Size;
+          MaxSize      = Size;
           RealCommSize = MaxSize;
-          CommBuffer = (EFI_MM_COMMUNICATE_HEADER *) (UINTN) Entry->PhysicalStart;
+          CommBuffer   = (EFI_MM_COMMUNICATE_HEADER *)(UINTN)Entry->PhysicalStart;
         }
       }
     }
-    Entry = (EFI_MEMORY_DESCRIPTOR *) ((UINT8 *) Entry + PiSmmCommunicationRegionTable->DescriptorSize);
+
+    Entry = (EFI_MEMORY_DESCRIPTOR *)((UINT8 *)Entry + PiSmmCommunicationRegionTable->DescriptorSize);
   }
+
   ASSERT (CommBuffer != NULL);
   ZeroMem (CommBuffer, RealCommSize);
 
   Print (L"SMM Driver Non-Volatile Variables:\n");
   do {
     CommSize = RealCommSize;
-    Status = GetVariableStatisticsData (CommBuffer, &CommSize);
+    Status   = GetVariableStatisticsData (CommBuffer, &CommSize);
     if (Status == EFI_BUFFER_TOO_SMALL) {
       Print (L"The generic SMM communication buffer provided by SmmCommunicationRegionTable is too small\n");
       return Status;
@@ -142,19 +147,19 @@ PrintInfoFromSmm (
       break;
     }
 
-    FunctionHeader = (SMM_VARIABLE_COMMUNICATE_HEADER *) CommBuffer->Data;
-    VariableInfo   = (VARIABLE_INFO_ENTRY *) FunctionHeader->Data;
+    FunctionHeader = (SMM_VARIABLE_COMMUNICATE_HEADER *)CommBuffer->Data;
+    VariableInfo   = (VARIABLE_INFO_ENTRY *)FunctionHeader->Data;
 
     if (!VariableInfo->Volatile) {
       Print (
-          L"%g R%03d(%03d) W%03d D%03d:%s\n",
-          &VariableInfo->VendorGuid,
-          VariableInfo->ReadCount,
-          VariableInfo->CacheCount,
-          VariableInfo->WriteCount,
-          VariableInfo->DeleteCount,
-          (CHAR16 *)(VariableInfo + 1)
-          );
+        L"%g R%03d(%03d) W%03d D%03d:%s\n",
+        &VariableInfo->VendorGuid,
+        VariableInfo->ReadCount,
+        VariableInfo->CacheCount,
+        VariableInfo->WriteCount,
+        VariableInfo->DeleteCount,
+        (CHAR16 *)(VariableInfo + 1)
+        );
     }
   } while (TRUE);
 
@@ -162,7 +167,7 @@ PrintInfoFromSmm (
   ZeroMem (CommBuffer, RealCommSize);
   do {
     CommSize = RealCommSize;
-    Status = GetVariableStatisticsData (CommBuffer, &CommSize);
+    Status   = GetVariableStatisticsData (CommBuffer, &CommSize);
     if (Status == EFI_BUFFER_TOO_SMALL) {
       Print (L"The generic SMM communication buffer provided by SmmCommunicationRegionTable is too small\n");
       return Status;
@@ -172,19 +177,19 @@ PrintInfoFromSmm (
       break;
     }
 
-    FunctionHeader = (SMM_VARIABLE_COMMUNICATE_HEADER *) CommBuffer->Data;
-    VariableInfo   = (VARIABLE_INFO_ENTRY *) FunctionHeader->Data;
+    FunctionHeader = (SMM_VARIABLE_COMMUNICATE_HEADER *)CommBuffer->Data;
+    VariableInfo   = (VARIABLE_INFO_ENTRY *)FunctionHeader->Data;
 
     if (VariableInfo->Volatile) {
       Print (
-          L"%g R%03d(%03d) W%03d D%03d:%s\n",
-          &VariableInfo->VendorGuid,
-          VariableInfo->ReadCount,
-          VariableInfo->CacheCount,
-          VariableInfo->WriteCount,
-          VariableInfo->DeleteCount,
-          (CHAR16 *)(VariableInfo + 1)
-          );
+        L"%g R%03d(%03d) W%03d D%03d:%s\n",
+        &VariableInfo->VendorGuid,
+        VariableInfo->ReadCount,
+        VariableInfo->CacheCount,
+        VariableInfo->WriteCount,
+        VariableInfo->DeleteCount,
+        (CHAR16 *)(VariableInfo + 1)
+        );
     }
   } while (TRUE);
 
@@ -210,14 +215,14 @@ UefiMain (
   IN EFI_SYSTEM_TABLE  *SystemTable
   )
 {
-  EFI_STATUS            RuntimeDxeStatus;
-  EFI_STATUS            SmmStatus;
-  VARIABLE_INFO_ENTRY   *VariableInfo;
-  VARIABLE_INFO_ENTRY   *Entry;
+  EFI_STATUS           RuntimeDxeStatus;
+  EFI_STATUS           SmmStatus;
+  VARIABLE_INFO_ENTRY  *VariableInfo;
+  VARIABLE_INFO_ENTRY  *Entry;
 
-  RuntimeDxeStatus = EfiGetSystemConfigurationTable (&gEfiVariableGuid, (VOID **) &Entry);
+  RuntimeDxeStatus = EfiGetSystemConfigurationTable (&gEfiVariableGuid, (VOID **)&Entry);
   if (EFI_ERROR (RuntimeDxeStatus) || (Entry == NULL)) {
-    RuntimeDxeStatus = EfiGetSystemConfigurationTable (&gEfiAuthenticatedVariableGuid, (VOID **) &Entry);
+    RuntimeDxeStatus = EfiGetSystemConfigurationTable (&gEfiAuthenticatedVariableGuid, (VOID **)&Entry);
   }
 
   if (!EFI_ERROR (RuntimeDxeStatus) && (Entry != NULL)) {
@@ -253,6 +258,7 @@ UefiMain (
           VariableInfo->Name
           );
       }
+
       VariableInfo = VariableInfo->Next;
     } while (VariableInfo != NULL);
   }

File diff suppressed because it is too large
+ 258 - 253
MdeModulePkg/Bus/Ata/AhciPei/AhciMode.c


+ 52 - 45
MdeModulePkg/Bus/Ata/AhciPei/AhciPei.c

@@ -40,7 +40,6 @@ EFI_PEI_NOTIFY_DESCRIPTOR  mAhciEndOfPeiNotifyListTemplate = {
   AhciPeimEndOfPei
 };
 
-
 /**
   Free the DMA resources allocated by an ATA AHCI controller.
 
@@ -50,10 +49,10 @@ EFI_PEI_NOTIFY_DESCRIPTOR  mAhciEndOfPeiNotifyListTemplate = {
 **/
 VOID
 AhciFreeDmaResource (
-  IN PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private
+  IN PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private
   )
 {
-  EFI_AHCI_REGISTERS    *AhciRegisters;
+  EFI_AHCI_REGISTERS  *AhciRegisters;
 
   ASSERT (Private != NULL);
 
@@ -61,18 +60,18 @@ AhciFreeDmaResource (
 
   if (AhciRegisters->AhciRFisMap != NULL) {
     IoMmuFreeBuffer (
-       EFI_SIZE_TO_PAGES (AhciRegisters->MaxRFisSize),
-       AhciRegisters->AhciRFis,
-       AhciRegisters->AhciRFisMap
-       );
+      EFI_SIZE_TO_PAGES (AhciRegisters->MaxRFisSize),
+      AhciRegisters->AhciRFis,
+      AhciRegisters->AhciRFisMap
+      );
   }
 
   if (AhciRegisters->AhciCmdListMap != NULL) {
     IoMmuFreeBuffer (
-       EFI_SIZE_TO_PAGES (AhciRegisters->MaxCmdListSize),
-       AhciRegisters->AhciCmdList,
-       AhciRegisters->AhciCmdListMap
-       );
+      EFI_SIZE_TO_PAGES (AhciRegisters->MaxCmdListSize),
+      AhciRegisters->AhciCmdList,
+      AhciRegisters->AhciCmdListMap
+      );
   }
 
   if (AhciRegisters->AhciCmdTableMap != NULL) {
@@ -82,7 +81,6 @@ AhciFreeDmaResource (
       AhciRegisters->AhciCmdTableMap
       );
   }
-
 }
 
 /**
@@ -104,7 +102,7 @@ AhciPeimEndOfPei (
   IN VOID                       *Ppi
   )
 {
-  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private;
+  PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private;
 
   Private = GET_AHCI_PEIM_HC_PRIVATE_DATA_FROM_THIS_NOTIFY (NotifyDescriptor);
   AhciFreeDmaResource (Private);
@@ -124,20 +122,20 @@ AhciPeimEndOfPei (
 EFI_STATUS
 EFIAPI
 AtaAhciPeimEntry (
-  IN EFI_PEI_FILE_HANDLE       FileHandle,
-  IN CONST EFI_PEI_SERVICES    **PeiServices
+  IN EFI_PEI_FILE_HANDLE     FileHandle,
+  IN CONST EFI_PEI_SERVICES  **PeiServices
   )
 {
-  EFI_STATUS                            Status;
-  EFI_BOOT_MODE                         BootMode;
-  EDKII_ATA_AHCI_HOST_CONTROLLER_PPI    *AhciHcPpi;
-  UINT8                                 Controller;
-  UINTN                                 MmioBase;
-  UINTN                                 DevicePathLength;
-  EFI_DEVICE_PATH_PROTOCOL              *DevicePath;
-  UINT32                                PortBitMap;
-  PEI_AHCI_CONTROLLER_PRIVATE_DATA      *Private;
-  UINT8                                 NumberOfPorts;
+  EFI_STATUS                          Status;
+  EFI_BOOT_MODE                       BootMode;
+  EDKII_ATA_AHCI_HOST_CONTROLLER_PPI  *AhciHcPpi;
+  UINT8                               Controller;
+  UINTN                               MmioBase;
+  UINTN                               DevicePathLength;
+  EFI_DEVICE_PATH_PROTOCOL            *DevicePath;
+  UINT32                              PortBitMap;
+  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private;
+  UINT8                               NumberOfPorts;
 
   DEBUG ((DEBUG_INFO, "%a: Enters.\n", __FUNCTION__));
 
@@ -157,7 +155,7 @@ AtaAhciPeimEntry (
              &gEdkiiPeiAtaAhciHostControllerPpiGuid,
              0,
              NULL,
-             (VOID **) &AhciHcPpi
+             (VOID **)&AhciHcPpi
              );
   if (EFI_ERROR (Status)) {
     DEBUG ((DEBUG_ERROR, "%a: Failed to locate AtaAhciHostControllerPpi.\n", __FUNCTION__));
@@ -187,8 +185,10 @@ AtaAhciPeimEntry (
                           );
     if (EFI_ERROR (Status)) {
       DEBUG ((
-        DEBUG_ERROR, "%a: Fail to allocate get the device path for Controller %d.\n",
-        __FUNCTION__, Controller
+        DEBUG_ERROR,
+        "%a: Fail to allocate get the device path for Controller %d.\n",
+        __FUNCTION__,
+        Controller
         ));
       return Status;
     }
@@ -199,8 +199,10 @@ AtaAhciPeimEntry (
     Status = AhciIsHcDevicePathValid (DevicePath, DevicePathLength);
     if (EFI_ERROR (Status)) {
       DEBUG ((
-        DEBUG_ERROR, "%a: The device path is invalid for Controller %d.\n",
-        __FUNCTION__, Controller
+        DEBUG_ERROR,
+        "%a: The device path is invalid for Controller %d.\n",
+        __FUNCTION__,
+        Controller
         ));
       Controller++;
       continue;
@@ -231,8 +233,10 @@ AtaAhciPeimEntry (
     Private = AllocateZeroPool (sizeof (PEI_AHCI_CONTROLLER_PRIVATE_DATA));
     if (Private == NULL) {
       DEBUG ((
-        DEBUG_ERROR, "%a: Fail to allocate private data for Controller %d.\n",
-        __FUNCTION__, Controller
+        DEBUG_ERROR,
+        "%a: Fail to allocate private data for Controller %d.\n",
+        __FUNCTION__,
+        Controller
         ));
       return EFI_OUT_OF_RESOURCES;
     }
@@ -260,8 +264,8 @@ AtaAhciPeimEntry (
       continue;
     }
 
-    Private->AtaPassThruMode.Attributes   = EFI_ATA_PASS_THRU_ATTRIBUTES_PHYSICAL |
-                                            EFI_ATA_PASS_THRU_ATTRIBUTES_LOGICAL;
+    Private->AtaPassThruMode.Attributes = EFI_ATA_PASS_THRU_ATTRIBUTES_PHYSICAL |
+                                          EFI_ATA_PASS_THRU_ATTRIBUTES_LOGICAL;
     Private->AtaPassThruMode.IoAlign      = sizeof (UINTN);
     Private->AtaPassThruPpi.Revision      = EDKII_PEI_ATA_PASS_THRU_PPI_REVISION;
     Private->AtaPassThruPpi.Mode          = &Private->AtaPassThruMode;
@@ -274,18 +278,18 @@ AtaAhciPeimEntry (
       &mAhciAtaPassThruPpiListTemplate,
       sizeof (EFI_PEI_PPI_DESCRIPTOR)
       );
-    Private->AtaPassThruPpiList.Ppi       = &Private->AtaPassThruPpi;
+    Private->AtaPassThruPpiList.Ppi = &Private->AtaPassThruPpi;
     PeiServicesInstallPpi (&Private->AtaPassThruPpiList);
 
-    Private->BlkIoPpi.GetNumberOfBlockDevices  = AhciBlockIoGetDeviceNo;
-    Private->BlkIoPpi.GetBlockDeviceMediaInfo  = AhciBlockIoGetMediaInfo;
-    Private->BlkIoPpi.ReadBlocks               = AhciBlockIoReadBlocks;
+    Private->BlkIoPpi.GetNumberOfBlockDevices = AhciBlockIoGetDeviceNo;
+    Private->BlkIoPpi.GetBlockDeviceMediaInfo = AhciBlockIoGetMediaInfo;
+    Private->BlkIoPpi.ReadBlocks              = AhciBlockIoReadBlocks;
     CopyMem (
       &Private->BlkIoPpiList,
       &mAhciBlkIoPpiListTemplate,
       sizeof (EFI_PEI_PPI_DESCRIPTOR)
       );
-    Private->BlkIoPpiList.Ppi                  = &Private->BlkIoPpi;
+    Private->BlkIoPpiList.Ppi = &Private->BlkIoPpi;
     PeiServicesInstallPpi (&Private->BlkIoPpiList);
 
     Private->BlkIo2Ppi.Revision                = EFI_PEI_RECOVERY_BLOCK_IO2_PPI_REVISION;
@@ -297,14 +301,15 @@ AtaAhciPeimEntry (
       &mAhciBlkIo2PpiListTemplate,
       sizeof (EFI_PEI_PPI_DESCRIPTOR)
       );
-    Private->BlkIo2PpiList.Ppi                 = &Private->BlkIo2Ppi;
+    Private->BlkIo2PpiList.Ppi = &Private->BlkIo2Ppi;
     PeiServicesInstallPpi (&Private->BlkIo2PpiList);
 
     if (Private->TrustComputingDevices != 0) {
       DEBUG ((
         DEBUG_INFO,
         "%a: Security Security Command PPI will be produced for Controller %d.\n",
-        __FUNCTION__, Controller
+        __FUNCTION__,
+        Controller
         ));
       Private->StorageSecurityPpi.Revision           = EDKII_STORAGE_SECURITY_PPI_REVISION;
       Private->StorageSecurityPpi.GetNumberofDevices = AhciStorageSecurityGetDeviceNo;
@@ -316,7 +321,7 @@ AtaAhciPeimEntry (
         &mAhciStorageSecurityPpiListTemplate,
         sizeof (EFI_PEI_PPI_DESCRIPTOR)
         );
-      Private->StorageSecurityPpiList.Ppi            = &Private->StorageSecurityPpi;
+      Private->StorageSecurityPpiList.Ppi = &Private->StorageSecurityPpi;
       PeiServicesInstallPpi (&Private->StorageSecurityPpiList);
     }
 
@@ -325,11 +330,13 @@ AtaAhciPeimEntry (
       &mAhciEndOfPeiNotifyListTemplate,
       sizeof (EFI_PEI_NOTIFY_DESCRIPTOR)
       );
-    PeiServicesNotifyPpi  (&Private->EndOfPeiNotifyList);
+    PeiServicesNotifyPpi (&Private->EndOfPeiNotifyList);
 
     DEBUG ((
-      DEBUG_INFO, "%a: Controller %d has been successfully initialized.\n",
-      __FUNCTION__, Controller
+      DEBUG_INFO,
+      "%a: Controller %d has been successfully initialized.\n",
+      __FUNCTION__,
+      Controller
       ));
     Controller++;
   }

+ 168 - 168
MdeModulePkg/Bus/Ata/AhciPei/AhciPei.h

@@ -33,7 +33,7 @@
 //
 // Structure forward declarations
 //
-typedef struct _PEI_AHCI_CONTROLLER_PRIVATE_DATA  PEI_AHCI_CONTROLLER_PRIVATE_DATA;
+typedef struct _PEI_AHCI_CONTROLLER_PRIVATE_DATA PEI_AHCI_CONTROLLER_PRIVATE_DATA;
 
 #include "AhciPeiPassThru.h"
 #include "AhciPeiBlockIo.h"
@@ -46,107 +46,107 @@ typedef struct _PEI_AHCI_CONTROLLER_PRIVATE_DATA  PEI_AHCI_CONTROLLER_PRIVATE_DA
 // Refer SATA1.0a spec section 5.2, the Phy detection time should be less than 10ms.
 // The value is in millisecond units. Add a bit of margin for robustness.
 //
-#define AHCI_BUS_PHY_DETECT_TIMEOUT            15
+#define AHCI_BUS_PHY_DETECT_TIMEOUT  15
 //
 // Refer SATA1.0a spec, the bus reset time should be less than 1s.
 // The value is in 100ns units.
 //
-#define AHCI_PEI_RESET_TIMEOUT                 10000000
+#define AHCI_PEI_RESET_TIMEOUT  10000000
 //
 // Time out Value for ATA pass through protocol, in 100ns units.
 //
-#define ATA_TIMEOUT                            30000000
+#define ATA_TIMEOUT  30000000
 //
 // Maximal number of Physical Region Descriptor Table entries supported.
 //
-#define AHCI_MAX_PRDT_NUMBER                   8
+#define AHCI_MAX_PRDT_NUMBER  8
 
-#define AHCI_CAPABILITY_OFFSET                 0x0000
-#define   AHCI_CAP_SAM                         BIT18
-#define   AHCI_CAP_SSS                         BIT27
+#define AHCI_CAPABILITY_OFFSET  0x0000
+#define   AHCI_CAP_SAM          BIT18
+#define   AHCI_CAP_SSS          BIT27
 
-#define AHCI_GHC_OFFSET                        0x0004
-#define   AHCI_GHC_RESET                       BIT0
-#define   AHCI_GHC_ENABLE                      BIT31
+#define AHCI_GHC_OFFSET    0x0004
+#define   AHCI_GHC_RESET   BIT0
+#define   AHCI_GHC_ENABLE  BIT31
 
-#define AHCI_IS_OFFSET                         0x0008
-#define AHCI_PI_OFFSET                         0x000C
+#define AHCI_IS_OFFSET  0x0008
+#define AHCI_PI_OFFSET  0x000C
 
-#define AHCI_MAX_PORTS                         32
+#define AHCI_MAX_PORTS  32
 
 typedef struct {
-  UINT32  Lower32;
-  UINT32  Upper32;
+  UINT32    Lower32;
+  UINT32    Upper32;
 } DATA_32;
 
 typedef union {
-  DATA_32   Uint32;
-  UINT64    Uint64;
+  DATA_32    Uint32;
+  UINT64     Uint64;
 } DATA_64;
 
-#define AHCI_ATAPI_SIG_MASK                    0xFFFF0000
-#define AHCI_ATA_DEVICE_SIG                    0x00000000
+#define AHCI_ATAPI_SIG_MASK  0xFFFF0000
+#define AHCI_ATA_DEVICE_SIG  0x00000000
 
 //
 // Each PRDT entry can point to a memory block up to 4M byte
 //
-#define AHCI_MAX_DATA_PER_PRDT                 0x400000
+#define AHCI_MAX_DATA_PER_PRDT  0x400000
 
-#define AHCI_FIS_REGISTER_H2D                  0x27      //Register FIS - Host to Device
-#define   AHCI_FIS_REGISTER_H2D_LENGTH         20
-#define AHCI_FIS_REGISTER_D2H                  0x34      //Register FIS - Device to Host
-#define AHCI_FIS_PIO_SETUP                     0x5F      //PIO Setup FIS - Device to Host
+#define AHCI_FIS_REGISTER_H2D           0x27             // Register FIS - Host to Device
+#define   AHCI_FIS_REGISTER_H2D_LENGTH  20
+#define AHCI_FIS_REGISTER_D2H           0x34             // Register FIS - Device to Host
+#define AHCI_FIS_PIO_SETUP              0x5F             // PIO Setup FIS - Device to Host
 
-#define AHCI_D2H_FIS_OFFSET                    0x40
-#define AHCI_PIO_FIS_OFFSET                    0x20
-#define AHCI_FIS_TYPE_MASK                     0xFF
+#define AHCI_D2H_FIS_OFFSET  0x40
+#define AHCI_PIO_FIS_OFFSET  0x20
+#define AHCI_FIS_TYPE_MASK   0xFF
 
 //
 // Port register
 //
-#define AHCI_PORT_START                        0x0100
-#define AHCI_PORT_REG_WIDTH                    0x0080
-#define AHCI_PORT_CLB                          0x0000
-#define AHCI_PORT_CLBU                         0x0004
-#define AHCI_PORT_FB                           0x0008
-#define AHCI_PORT_FBU                          0x000C
-#define AHCI_PORT_IS                           0x0010
-#define AHCI_PORT_IE                           0x0014
-#define AHCI_PORT_CMD                          0x0018
-#define   AHCI_PORT_CMD_ST                     BIT0
-#define   AHCI_PORT_CMD_SUD                    BIT1
-#define   AHCI_PORT_CMD_POD                    BIT2
-#define   AHCI_PORT_CMD_CLO                    BIT3
-#define   AHCI_PORT_CMD_FRE                    BIT4
-#define   AHCI_PORT_CMD_FR                     BIT14
-#define   AHCI_PORT_CMD_CR                     BIT15
-#define   AHCI_PORT_CMD_CPD                    BIT20
-#define   AHCI_PORT_CMD_ATAPI                  BIT24
-#define   AHCI_PORT_CMD_DLAE                   BIT25
-#define   AHCI_PORT_CMD_ALPE                   BIT26
-#define   AHCI_PORT_CMD_ACTIVE                 (1 << 28)
-#define   AHCI_PORT_CMD_ICC_MASK               (BIT28 | BIT29 | BIT30 | BIT31)
-
-#define AHCI_PORT_TFD                          0x0020
-#define   AHCI_PORT_TFD_ERR                    BIT0
-#define   AHCI_PORT_TFD_DRQ                    BIT3
-#define   AHCI_PORT_TFD_BSY                    BIT7
-#define   AHCI_PORT_TFD_MASK                   (BIT7 | BIT3 | BIT0)
-
-#define AHCI_PORT_SIG                          0x0024
-#define AHCI_PORT_SSTS                         0x0028
-#define   AHCI_PORT_SSTS_DET_MASK              0x000F
-#define   AHCI_PORT_SSTS_DET                   0x0001
-#define   AHCI_PORT_SSTS_DET_PCE               0x0003
-
-#define AHCI_PORT_SCTL                         0x002C
-#define   AHCI_PORT_SCTL_IPM_INIT              0x0300
-
-#define AHCI_PORT_SERR                         0x0030
-#define AHCI_PORT_CI                           0x0038
-
-#define IS_ALIGNED(addr, size)                 (((UINTN) (addr) & (size - 1)) == 0)
-#define TIMER_PERIOD_SECONDS(Seconds)          MultU64x32((UINT64)(Seconds), 10000000)
+#define AHCI_PORT_START           0x0100
+#define AHCI_PORT_REG_WIDTH       0x0080
+#define AHCI_PORT_CLB             0x0000
+#define AHCI_PORT_CLBU            0x0004
+#define AHCI_PORT_FB              0x0008
+#define AHCI_PORT_FBU             0x000C
+#define AHCI_PORT_IS              0x0010
+#define AHCI_PORT_IE              0x0014
+#define AHCI_PORT_CMD             0x0018
+#define   AHCI_PORT_CMD_ST        BIT0
+#define   AHCI_PORT_CMD_SUD       BIT1
+#define   AHCI_PORT_CMD_POD       BIT2
+#define   AHCI_PORT_CMD_CLO       BIT3
+#define   AHCI_PORT_CMD_FRE       BIT4
+#define   AHCI_PORT_CMD_FR        BIT14
+#define   AHCI_PORT_CMD_CR        BIT15
+#define   AHCI_PORT_CMD_CPD       BIT20
+#define   AHCI_PORT_CMD_ATAPI     BIT24
+#define   AHCI_PORT_CMD_DLAE      BIT25
+#define   AHCI_PORT_CMD_ALPE      BIT26
+#define   AHCI_PORT_CMD_ACTIVE    (1 << 28)
+#define   AHCI_PORT_CMD_ICC_MASK  (BIT28 | BIT29 | BIT30 | BIT31)
+
+#define AHCI_PORT_TFD         0x0020
+#define   AHCI_PORT_TFD_ERR   BIT0
+#define   AHCI_PORT_TFD_DRQ   BIT3
+#define   AHCI_PORT_TFD_BSY   BIT7
+#define   AHCI_PORT_TFD_MASK  (BIT7 | BIT3 | BIT0)
+
+#define AHCI_PORT_SIG              0x0024
+#define AHCI_PORT_SSTS             0x0028
+#define   AHCI_PORT_SSTS_DET_MASK  0x000F
+#define   AHCI_PORT_SSTS_DET       0x0001
+#define   AHCI_PORT_SSTS_DET_PCE   0x0003
+
+#define AHCI_PORT_SCTL             0x002C
+#define   AHCI_PORT_SCTL_IPM_INIT  0x0300
+
+#define AHCI_PORT_SERR  0x0030
+#define AHCI_PORT_CI    0x0038
+
+#define IS_ALIGNED(addr, size)         (((UINTN) (addr) & (size - 1)) == 0)
+#define TIMER_PERIOD_SECONDS(Seconds)  MultU64x32((UINT64)(Seconds), 10000000)
 
 #pragma pack(1)
 
@@ -170,19 +170,19 @@ typedef struct {
 // The entry Data structure is listed at the following.
 //
 typedef struct {
-  UINT32    AhciCmdCfl:5;      //Command FIS Length
-  UINT32    AhciCmdA:1;        //ATAPI
-  UINT32    AhciCmdW:1;        //Write
-  UINT32    AhciCmdP:1;        //Prefetchable
-  UINT32    AhciCmdR:1;        //Reset
-  UINT32    AhciCmdB:1;        //BIST
-  UINT32    AhciCmdC:1;        //Clear Busy upon R_OK
-  UINT32    AhciCmdRsvd:1;
-  UINT32    AhciCmdPmp:4;      //Port Multiplier Port
-  UINT32    AhciCmdPrdtl:16;   //Physical Region Descriptor Table Length
-  UINT32    AhciCmdPrdbc;      //Physical Region Descriptor Byte Count
-  UINT32    AhciCmdCtba;       //Command Table Descriptor Base Address
-  UINT32    AhciCmdCtbau;      //Command Table Descriptor Base Address Upper 32-BITs
+  UINT32    AhciCmdCfl   : 5;  // Command FIS Length
+  UINT32    AhciCmdA     : 1;  // ATAPI
+  UINT32    AhciCmdW     : 1;  // Write
+  UINT32    AhciCmdP     : 1;  // Prefetchable
+  UINT32    AhciCmdR     : 1;  // Reset
+  UINT32    AhciCmdB     : 1;  // BIST
+  UINT32    AhciCmdC     : 1;  // Clear Busy upon R_OK
+  UINT32    AhciCmdRsvd  : 1;
+  UINT32    AhciCmdPmp   : 4;  // Port Multiplier Port
+  UINT32    AhciCmdPrdtl : 16; // Physical Region Descriptor Table Length
+  UINT32    AhciCmdPrdbc;      // Physical Region Descriptor Byte Count
+  UINT32    AhciCmdCtba;       // Command Table Descriptor Base Address
+  UINT32    AhciCmdCtbau;      // Command Table Descriptor Base Address Upper 32-BITs
   UINT32    AhciCmdRsvd1[4];
 } EFI_AHCI_COMMAND_LIST;
 
@@ -192,28 +192,28 @@ typedef struct {
 // specified in the Serial ATA Revision 2.6 specification.
 //
 typedef struct {
-  UINT8     AhciCFisType;
-  UINT8     AhciCFisPmNum:4;
-  UINT8     AhciCFisRsvd:1;
-  UINT8     AhciCFisRsvd1:1;
-  UINT8     AhciCFisRsvd2:1;
-  UINT8     AhciCFisCmdInd:1;
-  UINT8     AhciCFisCmd;
-  UINT8     AhciCFisFeature;
-  UINT8     AhciCFisSecNum;
-  UINT8     AhciCFisClyLow;
-  UINT8     AhciCFisClyHigh;
-  UINT8     AhciCFisDevHead;
-  UINT8     AhciCFisSecNumExp;
-  UINT8     AhciCFisClyLowExp;
-  UINT8     AhciCFisClyHighExp;
-  UINT8     AhciCFisFeatureExp;
-  UINT8     AhciCFisSecCount;
-  UINT8     AhciCFisSecCountExp;
-  UINT8     AhciCFisRsvd3;
-  UINT8     AhciCFisControl;
-  UINT8     AhciCFisRsvd4[4];
-  UINT8     AhciCFisRsvd5[44];
+  UINT8    AhciCFisType;
+  UINT8    AhciCFisPmNum  : 4;
+  UINT8    AhciCFisRsvd   : 1;
+  UINT8    AhciCFisRsvd1  : 1;
+  UINT8    AhciCFisRsvd2  : 1;
+  UINT8    AhciCFisCmdInd : 1;
+  UINT8    AhciCFisCmd;
+  UINT8    AhciCFisFeature;
+  UINT8    AhciCFisSecNum;
+  UINT8    AhciCFisClyLow;
+  UINT8    AhciCFisClyHigh;
+  UINT8    AhciCFisDevHead;
+  UINT8    AhciCFisSecNumExp;
+  UINT8    AhciCFisClyLowExp;
+  UINT8    AhciCFisClyHighExp;
+  UINT8    AhciCFisFeatureExp;
+  UINT8    AhciCFisSecCount;
+  UINT8    AhciCFisSecCountExp;
+  UINT8    AhciCFisRsvd3;
+  UINT8    AhciCFisControl;
+  UINT8    AhciCFisRsvd4[4];
+  UINT8    AhciCFisRsvd5[44];
 } EFI_AHCI_COMMAND_FIS;
 
 //
@@ -230,12 +230,12 @@ typedef struct {
 // list entry for this command slot.
 //
 typedef struct {
-  UINT32    AhciPrdtDba;       //Data Base Address
-  UINT32    AhciPrdtDbau;      //Data Base Address Upper 32-BITs
+  UINT32    AhciPrdtDba;       // Data Base Address
+  UINT32    AhciPrdtDbau;      // Data Base Address Upper 32-BITs
   UINT32    AhciPrdtRsvd;
-  UINT32    AhciPrdtDbc:22;    //Data Byte Count
-  UINT32    AhciPrdtRsvd1:9;
-  UINT32    AhciPrdtIoc:1;     //Interrupt on Completion
+  UINT32    AhciPrdtDbc   : 22; // Data Byte Count
+  UINT32    AhciPrdtRsvd1 : 9;
+  UINT32    AhciPrdtIoc   : 1; // Interrupt on Completion
 } EFI_AHCI_COMMAND_PRDT;
 
 //
@@ -268,7 +268,7 @@ typedef struct {
 //
 // Unique signature for AHCI ATA device information structure.
 //
-#define AHCI_PEI_ATA_DEVICE_DATA_SIGNATURE    SIGNATURE_32 ('A', 'P', 'A', 'D')
+#define AHCI_PEI_ATA_DEVICE_DATA_SIGNATURE  SIGNATURE_32 ('A', 'P', 'A', 'D')
 
 //
 // AHCI mode device information structure.
@@ -301,7 +301,7 @@ typedef struct {
 //
 // Unique signature for private data structure.
 //
-#define AHCI_PEI_CONTROLLER_PRIVATE_DATA_SIGNATURE    SIGNATURE_32 ('A','P','C','P')
+#define AHCI_PEI_CONTROLLER_PRIVATE_DATA_SIGNATURE  SIGNATURE_32 ('A','P','C','P')
 
 //
 // ATA AHCI controller private data structure.
@@ -348,7 +348,7 @@ struct _PEI_AHCI_CONTROLLER_PRIVATE_DATA {
 //
 // Global variables
 //
-extern UINT32    mMaxTransferBlockNumber[2];
+extern UINT32  mMaxTransferBlockNumber[2];
 
 //
 // Internal functions
@@ -394,9 +394,9 @@ IoMmuAllocateBuffer (
 **/
 EFI_STATUS
 IoMmuFreeBuffer (
-  IN UINTN                  Pages,
-  IN VOID                   *HostAddress,
-  IN VOID                   *Mapping
+  IN UINTN  Pages,
+  IN VOID   *HostAddress,
+  IN VOID   *Mapping
   );
 
 /**
@@ -420,11 +420,11 @@ IoMmuFreeBuffer (
 **/
 EFI_STATUS
 IoMmuMap (
-  IN  EDKII_IOMMU_OPERATION Operation,
-  IN VOID                   *HostAddress,
-  IN  OUT UINTN             *NumberOfBytes,
-  OUT EFI_PHYSICAL_ADDRESS  *DeviceAddress,
-  OUT VOID                  **Mapping
+  IN  EDKII_IOMMU_OPERATION  Operation,
+  IN VOID                    *HostAddress,
+  IN  OUT UINTN              *NumberOfBytes,
+  OUT EFI_PHYSICAL_ADDRESS   *DeviceAddress,
+  OUT VOID                   **Mapping
   );
 
 /**
@@ -438,7 +438,7 @@ IoMmuMap (
 **/
 EFI_STATUS
 IoMmuUnmap (
-  IN VOID                  *Mapping
+  IN VOID  *Mapping
   );
 
 /**
@@ -470,7 +470,7 @@ AhciPeimEndOfPei (
 **/
 UINT8
 AhciGetNumberOfPortsFromMap (
-  IN UINT32    PortBitMap
+  IN UINT32  PortBitMap
   );
 
 /**
@@ -497,16 +497,16 @@ AhciGetNumberOfPortsFromMap (
 **/
 EFI_STATUS
 AhciPioTransfer (
-  IN     PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private,
-  IN     UINT8                               Port,
-  IN     UINT8                               PortMultiplier,
-  IN     UINT8                               FisIndex,
-  IN     BOOLEAN                             Read,
-  IN     EFI_ATA_COMMAND_BLOCK               *AtaCommandBlock,
-  IN OUT EFI_ATA_STATUS_BLOCK                *AtaStatusBlock,
-  IN OUT VOID                                *MemoryAddr,
-  IN     UINT32                              DataCount,
-  IN     UINT64                              Timeout
+  IN     PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private,
+  IN     UINT8                             Port,
+  IN     UINT8                             PortMultiplier,
+  IN     UINT8                             FisIndex,
+  IN     BOOLEAN                           Read,
+  IN     EFI_ATA_COMMAND_BLOCK             *AtaCommandBlock,
+  IN OUT EFI_ATA_STATUS_BLOCK              *AtaStatusBlock,
+  IN OUT VOID                              *MemoryAddr,
+  IN     UINT32                            DataCount,
+  IN     UINT64                            Timeout
   );
 
 /**
@@ -529,13 +529,13 @@ AhciPioTransfer (
 **/
 EFI_STATUS
 AhciNonDataTransfer (
-  IN     PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private,
-  IN     UINT8                               Port,
-  IN     UINT8                               PortMultiplier,
-  IN     UINT8                               FisIndex,
-  IN     EFI_ATA_COMMAND_BLOCK               *AtaCommandBlock,
-  IN OUT EFI_ATA_STATUS_BLOCK                *AtaStatusBlock,
-  IN     UINT64                              Timeout
+  IN     PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private,
+  IN     UINT8                             Port,
+  IN     UINT8                             PortMultiplier,
+  IN     UINT8                             FisIndex,
+  IN     EFI_ATA_COMMAND_BLOCK             *AtaCommandBlock,
+  IN OUT EFI_ATA_STATUS_BLOCK              *AtaStatusBlock,
+  IN     UINT64                            Timeout
   );
 
 /**
@@ -554,7 +554,7 @@ AhciNonDataTransfer (
 **/
 EFI_STATUS
 AhciModeInitialization (
-  IN OUT PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private
+  IN OUT PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private
   );
 
 /**
@@ -576,11 +576,11 @@ AhciModeInitialization (
 **/
 EFI_STATUS
 TransferAtaDevice (
-  IN     PEI_AHCI_ATA_DEVICE_DATA    *DeviceData,
-  IN OUT VOID                        *Buffer,
-  IN     EFI_LBA                     StartLba,
-  IN     UINT32                      TransferLength,
-  IN     BOOLEAN                     IsWrite
+  IN     PEI_AHCI_ATA_DEVICE_DATA  *DeviceData,
+  IN OUT VOID                      *Buffer,
+  IN     EFI_LBA                   StartLba,
+  IN     UINT32                    TransferLength,
+  IN     BOOLEAN                   IsWrite
   );
 
 /**
@@ -621,14 +621,14 @@ TransferAtaDevice (
 **/
 EFI_STATUS
 TrustTransferAtaDevice (
-  IN     PEI_AHCI_ATA_DEVICE_DATA    *DeviceData,
-  IN OUT VOID                        *Buffer,
-  IN     UINT8                       SecurityProtocolId,
-  IN     UINT16                      SecurityProtocolSpecificData,
-  IN     UINTN                       TransferLength,
-  IN     BOOLEAN                     IsTrustSend,
-  IN     UINT64                      Timeout,
-  OUT    UINTN                       *TransferLengthOut
+  IN     PEI_AHCI_ATA_DEVICE_DATA  *DeviceData,
+  IN OUT VOID                      *Buffer,
+  IN     UINT8                     SecurityProtocolId,
+  IN     UINT16                    SecurityProtocolSpecificData,
+  IN     UINTN                     TransferLength,
+  IN     BOOLEAN                   IsTrustSend,
+  IN     UINT64                    Timeout,
+  OUT    UINTN                     *TransferLengthOut
   );
 
 /**
@@ -662,9 +662,9 @@ NextDevicePathNode (
 **/
 EFI_STATUS
 GetDevicePathInstanceSize (
-  IN  EFI_DEVICE_PATH_PROTOCOL    *DevicePath,
-  OUT UINTN                       *InstanceSize,
-  OUT BOOLEAN                     *EntireDevicePathEnd
+  IN  EFI_DEVICE_PATH_PROTOCOL  *DevicePath,
+  OUT UINTN                     *InstanceSize,
+  OUT BOOLEAN                   *EntireDevicePathEnd
   );
 
 /**
@@ -680,8 +680,8 @@ GetDevicePathInstanceSize (
 **/
 EFI_STATUS
 AhciIsHcDevicePathValid (
-  IN EFI_DEVICE_PATH_PROTOCOL    *DevicePath,
-  IN UINTN                       DevicePathLength
+  IN EFI_DEVICE_PATH_PROTOCOL  *DevicePath,
+  IN UINTN                     DevicePathLength
   );
 
 /**
@@ -702,11 +702,11 @@ AhciIsHcDevicePathValid (
 **/
 EFI_STATUS
 AhciBuildDevicePath (
-  IN  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private,
-  IN  UINT16                              Port,
-  IN  UINT16                              PortMultiplierPort,
-  OUT UINTN                               *DevicePathLength,
-  OUT EFI_DEVICE_PATH_PROTOCOL            **DevicePath
+  IN  PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private,
+  IN  UINT16                            Port,
+  IN  UINT16                            PortMultiplierPort,
+  OUT UINTN                             *DevicePathLength,
+  OUT EFI_DEVICE_PATH_PROTOCOL          **DevicePath
   );
 
 /**
@@ -723,9 +723,9 @@ AhciBuildDevicePath (
 **/
 UINT8
 AhciS3GetEumeratePorts (
-  IN  EFI_DEVICE_PATH_PROTOCOL    *HcDevicePath,
-  IN  UINTN                       HcDevicePathLength,
-  OUT UINT32                      *PortBitMap
+  IN  EFI_DEVICE_PATH_PROTOCOL  *HcDevicePath,
+  IN  UINTN                     HcDevicePathLength,
+  OUT UINT32                    *PortBitMap
   );
 
 #endif

+ 49 - 45
MdeModulePkg/Bus/Ata/AhciPei/AhciPeiBlockIo.c

@@ -23,12 +23,12 @@
 **/
 PEI_AHCI_ATA_DEVICE_DATA *
 SearchDeviceByIndex (
-  IN PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private,
-  IN UINTN                               DeviceIndex
+  IN PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private,
+  IN UINTN                             DeviceIndex
   )
 {
-  PEI_AHCI_ATA_DEVICE_DATA    *DeviceData;
-  LIST_ENTRY                  *Node;
+  PEI_AHCI_ATA_DEVICE_DATA  *DeviceData;
+  LIST_ENTRY                *Node;
 
   if ((DeviceIndex == 0) || (DeviceIndex > Private->ActiveDevices)) {
     return NULL;
@@ -66,26 +66,26 @@ SearchDeviceByIndex (
 **/
 EFI_STATUS
 AccessAtaDevice (
-  IN     PEI_AHCI_ATA_DEVICE_DATA    *DeviceData,
-  IN OUT UINT8                       *Buffer,
-  IN     EFI_LBA                     StartLba,
-  IN     UINTN                       NumberOfBlocks
+  IN     PEI_AHCI_ATA_DEVICE_DATA  *DeviceData,
+  IN OUT UINT8                     *Buffer,
+  IN     EFI_LBA                   StartLba,
+  IN     UINTN                     NumberOfBlocks
   )
 {
-  EFI_STATUS    Status;
-  UINTN         MaxTransferBlockNumber;
-  UINTN         TransferBlockNumber;
-  UINTN         BlockSize;
+  EFI_STATUS  Status;
+  UINTN       MaxTransferBlockNumber;
+  UINTN       TransferBlockNumber;
+  UINTN       BlockSize;
 
   //
   // Ensure Lba48Bit is a valid boolean value
   //
-  ASSERT ((UINTN) DeviceData->Lba48Bit < 2);
-  if ((UINTN) DeviceData->Lba48Bit >= 2) {
+  ASSERT ((UINTN)DeviceData->Lba48Bit < 2);
+  if ((UINTN)DeviceData->Lba48Bit >= 2) {
     return EFI_INVALID_PARAMETER;
   }
 
-  Status = EFI_SUCCESS;
+  Status                 = EFI_SUCCESS;
   MaxTransferBlockNumber = mMaxTransferBlockNumber[DeviceData->Lba48Bit];
   BlockSize              = DeviceData->Media.BlockSize;
 
@@ -93,20 +93,24 @@ AccessAtaDevice (
     if (NumberOfBlocks > MaxTransferBlockNumber) {
       TransferBlockNumber = MaxTransferBlockNumber;
       NumberOfBlocks     -= MaxTransferBlockNumber;
-    } else  {
+    } else {
       TransferBlockNumber = NumberOfBlocks;
       NumberOfBlocks      = 0;
     }
+
     DEBUG ((
-      DEBUG_BLKIO, "%a: Blocking AccessAtaDevice, TransferBlockNumber = %x; StartLba = %x\n",
-      __FUNCTION__, TransferBlockNumber, StartLba
+      DEBUG_BLKIO,
+      "%a: Blocking AccessAtaDevice, TransferBlockNumber = %x; StartLba = %x\n",
+      __FUNCTION__,
+      TransferBlockNumber,
+      StartLba
       ));
 
     Status = TransferAtaDevice (
                DeviceData,
                Buffer,
                StartLba,
-               (UINT32) TransferBlockNumber,
+               (UINT32)TransferBlockNumber,
                FALSE  // Read
                );
     if (EFI_ERROR (Status)) {
@@ -134,15 +138,15 @@ AccessAtaDevice (
 **/
 EFI_STATUS
 AhciRead (
-  IN  PEI_AHCI_ATA_DEVICE_DATA    *DeviceData,
-  OUT VOID                        *Buffer,
-  IN  EFI_LBA                     StartLba,
-  IN  UINTN                       BufferSize
+  IN  PEI_AHCI_ATA_DEVICE_DATA  *DeviceData,
+  OUT VOID                      *Buffer,
+  IN  EFI_LBA                   StartLba,
+  IN  UINTN                     BufferSize
   )
 {
-  EFI_STATUS    Status;
-  UINTN         BlockSize;
-  UINTN         NumberOfBlocks;
+  EFI_STATUS  Status;
+  UINTN       BlockSize;
+  UINTN       NumberOfBlocks;
 
   //
   // Check parameters.
@@ -163,7 +167,8 @@ AhciRead (
   if (StartLba > DeviceData->Media.LastBlock) {
     return EFI_INVALID_PARAMETER;
   }
-  NumberOfBlocks  = BufferSize / BlockSize;
+
+  NumberOfBlocks = BufferSize / BlockSize;
   if (NumberOfBlocks - 1 > DeviceData->Media.LastBlock - StartLba) {
     return EFI_INVALID_PARAMETER;
   }
@@ -176,7 +181,6 @@ AhciRead (
   return Status;
 }
 
-
 /**
   Gets the count of block I/O devices that one specific block driver detects.
 
@@ -201,13 +205,13 @@ AhciBlockIoGetDeviceNo (
   OUT UINTN                          *NumberBlockDevices
   )
 {
-  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private;
+  PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private;
 
-  if (This == NULL || NumberBlockDevices == NULL) {
+  if ((This == NULL) || (NumberBlockDevices == NULL)) {
     return EFI_INVALID_PARAMETER;
   }
 
-  Private = GET_AHCI_PEIM_HC_PRIVATE_DATA_FROM_THIS_BLKIO (This);
+  Private             = GET_AHCI_PEIM_HC_PRIVATE_DATA_FROM_THIS_BLKIO (This);
   *NumberBlockDevices = Private->ActiveDevices;
 
   return EFI_SUCCESS;
@@ -263,10 +267,10 @@ AhciBlockIoGetMediaInfo (
   OUT EFI_PEI_BLOCK_IO_MEDIA         *MediaInfo
   )
 {
-  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private;
-  PEI_AHCI_ATA_DEVICE_DATA            *DeviceData;
+  PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private;
+  PEI_AHCI_ATA_DEVICE_DATA          *DeviceData;
 
-  if (This == NULL || MediaInfo == NULL) {
+  if ((This == NULL) || (MediaInfo == NULL)) {
     return EFI_INVALID_PARAMETER;
   }
 
@@ -276,9 +280,9 @@ AhciBlockIoGetMediaInfo (
     return EFI_NOT_FOUND;
   }
 
-  MediaInfo->DeviceType   = (EFI_PEI_BLOCK_DEVICE_TYPE) EDKII_PEI_BLOCK_DEVICE_TYPE_ATA_HARD_DISK;
+  MediaInfo->DeviceType   = (EFI_PEI_BLOCK_DEVICE_TYPE)EDKII_PEI_BLOCK_DEVICE_TYPE_ATA_HARD_DISK;
   MediaInfo->MediaPresent = TRUE;
-  MediaInfo->LastBlock    = (UINTN) DeviceData->Media.LastBlock;
+  MediaInfo->LastBlock    = (UINTN)DeviceData->Media.LastBlock;
   MediaInfo->BlockSize    = DeviceData->Media.BlockSize;
 
   return EFI_SUCCESS;
@@ -329,8 +333,8 @@ AhciBlockIoReadBlocks (
   OUT VOID                           *Buffer
   )
 {
-  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private;
-  PEI_AHCI_ATA_DEVICE_DATA            *DeviceData;
+  PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private;
+  PEI_AHCI_ATA_DEVICE_DATA          *DeviceData;
 
   if (This == NULL) {
     return EFI_INVALID_PARAMETER;
@@ -369,13 +373,13 @@ AhciBlockIoGetDeviceNo2 (
   OUT UINTN                           *NumberBlockDevices
   )
 {
-  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private;
+  PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private;
 
-  if (This == NULL || NumberBlockDevices == NULL) {
+  if ((This == NULL) || (NumberBlockDevices == NULL)) {
     return EFI_INVALID_PARAMETER;
   }
 
-  Private = GET_AHCI_PEIM_HC_PRIVATE_DATA_FROM_THIS_BLKIO2 (This);
+  Private             = GET_AHCI_PEIM_HC_PRIVATE_DATA_FROM_THIS_BLKIO2 (This);
   *NumberBlockDevices = Private->ActiveDevices;
 
   return EFI_SUCCESS;
@@ -431,10 +435,10 @@ AhciBlockIoGetMediaInfo2 (
   OUT EFI_PEI_BLOCK_IO2_MEDIA         *MediaInfo
   )
 {
-  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private;
-  PEI_AHCI_ATA_DEVICE_DATA            *DeviceData;
+  PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private;
+  PEI_AHCI_ATA_DEVICE_DATA          *DeviceData;
 
-  if (This == NULL || MediaInfo == NULL) {
+  if ((This == NULL) || (MediaInfo == NULL)) {
     return EFI_INVALID_PARAMETER;
   }
 
@@ -498,7 +502,7 @@ AhciBlockIoReadBlocks2 (
   OUT VOID                            *Buffer
   )
 {
-  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private;
+  PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private;
 
   if (This == NULL) {
     return EFI_INVALID_PARAMETER;

+ 1 - 1
MdeModulePkg/Bus/Ata/AhciPei/AhciPeiBlockIo.h

@@ -14,7 +14,7 @@
 //
 // ATA hard disk device for EFI_PEI_BLOCK_DEVICE_TYPE
 //
-#define EDKII_PEI_BLOCK_DEVICE_TYPE_ATA_HARD_DISK     8
+#define EDKII_PEI_BLOCK_DEVICE_TYPE_ATA_HARD_DISK  8
 
 /**
   Gets the count of block I/O devices that one specific block driver detects.

+ 58 - 53
MdeModulePkg/Bus/Ata/AhciPei/AhciPeiPassThru.c

@@ -25,20 +25,21 @@
 **/
 PEI_AHCI_ATA_DEVICE_DATA *
 SearchDeviceByPort (
-  IN PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private,
-  IN UINT16                              Port,
-  IN UINT16                              PortMultiplierPort
+  IN PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private,
+  IN UINT16                            Port,
+  IN UINT16                            PortMultiplierPort
   )
 {
-  PEI_AHCI_ATA_DEVICE_DATA    *DeviceData;
-  LIST_ENTRY                  *Node;
+  PEI_AHCI_ATA_DEVICE_DATA  *DeviceData;
+  LIST_ENTRY                *Node;
 
   Node = GetFirstNode (&Private->DeviceList);
   while (!IsNull (&Private->DeviceList, Node)) {
     DeviceData = AHCI_PEI_ATA_DEVICE_INFO_FROM_THIS (Node);
 
     if ((DeviceData->Port == Port) &&
-        (DeviceData->PortMultiplier == PortMultiplierPort)) {
+        (DeviceData->PortMultiplier == PortMultiplierPort))
+    {
       return DeviceData;
     }
 
@@ -82,21 +83,21 @@ SearchDeviceByPort (
 **/
 EFI_STATUS
 AhciPassThruExecute (
-  IN     PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private,
-  IN     UINT16                              Port,
-  IN     UINT16                              PortMultiplierPort,
-  IN     UINT8                               FisIndex,
-  IN OUT EFI_ATA_PASS_THRU_COMMAND_PACKET    *Packet
+  IN     PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private,
+  IN     UINT16                            Port,
+  IN     UINT16                            PortMultiplierPort,
+  IN     UINT8                             FisIndex,
+  IN OUT EFI_ATA_PASS_THRU_COMMAND_PACKET  *Packet
   )
 {
-  EFI_STATUS    Status;
+  EFI_STATUS  Status;
 
   switch (Packet->Protocol) {
     case EFI_ATA_PASS_THRU_PROTOCOL_ATA_NON_DATA:
       Status = AhciNonDataTransfer (
                  Private,
-                 (UINT8) Port,
-                 (UINT8) PortMultiplierPort,
+                 (UINT8)Port,
+                 (UINT8)PortMultiplierPort,
                  FisIndex,
                  Packet->Acb,
                  Packet->Asb,
@@ -106,8 +107,8 @@ AhciPassThruExecute (
     case EFI_ATA_PASS_THRU_PROTOCOL_PIO_DATA_IN:
       Status = AhciPioTransfer (
                  Private,
-                 (UINT8) Port,
-                 (UINT8) PortMultiplierPort,
+                 (UINT8)Port,
+                 (UINT8)PortMultiplierPort,
                  FisIndex,
                  TRUE,
                  Packet->Acb,
@@ -120,8 +121,8 @@ AhciPassThruExecute (
     case EFI_ATA_PASS_THRU_PROTOCOL_PIO_DATA_OUT:
       Status = AhciPioTransfer (
                  Private,
-                 (UINT8) Port,
-                 (UINT8) PortMultiplierPort,
+                 (UINT8)Port,
+                 (UINT8)PortMultiplierPort,
                  FisIndex,
                  FALSE,
                  Packet->Acb,
@@ -176,19 +177,19 @@ AhciPassThruExecute (
 EFI_STATUS
 EFIAPI
 AhciAtaPassThruPassThru (
-  IN     EDKII_PEI_ATA_PASS_THRU_PPI         *This,
-  IN     UINT16                              Port,
-  IN     UINT16                              PortMultiplierPort,
-  IN OUT EFI_ATA_PASS_THRU_COMMAND_PACKET    *Packet
+  IN     EDKII_PEI_ATA_PASS_THRU_PPI       *This,
+  IN     UINT16                            Port,
+  IN     UINT16                            PortMultiplierPort,
+  IN OUT EFI_ATA_PASS_THRU_COMMAND_PACKET  *Packet
   )
 {
-  UINT32                              IoAlign;
-  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private;
-  PEI_AHCI_ATA_DEVICE_DATA            *DeviceData;
-  UINT32                              MaxSectorCount;
-  UINT32                              BlockSize;
+  UINT32                            IoAlign;
+  PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private;
+  PEI_AHCI_ATA_DEVICE_DATA          *DeviceData;
+  UINT32                            MaxSectorCount;
+  UINT32                            BlockSize;
 
-  if (This == NULL || Packet == NULL) {
+  if ((This == NULL) || (Packet == NULL)) {
     return EFI_INVALID_PARAMETER;
   }
 
@@ -205,7 +206,7 @@ AhciAtaPassThruPassThru (
     return EFI_INVALID_PARAMETER;
   }
 
-  Private = GET_AHCI_PEIM_HC_PRIVATE_DATA_FROM_THIS_PASS_THRU (This);
+  Private    = GET_AHCI_PEIM_HC_PRIVATE_DATA_FROM_THIS_PASS_THRU (This);
   DeviceData = SearchDeviceByPort (Private, Port, PortMultiplierPort);
   if (DeviceData == NULL) {
     return EFI_NOT_FOUND;
@@ -218,7 +219,8 @@ AhciAtaPassThruPassThru (
   // Convert the transfer length from sector count to byte.
   //
   if (((Packet->Length & EFI_ATA_PASS_THRU_LENGTH_BYTES) == 0) &&
-       (Packet->InTransferLength != 0)) {
+      (Packet->InTransferLength != 0))
+  {
     Packet->InTransferLength = Packet->InTransferLength * BlockSize;
   }
 
@@ -226,7 +228,8 @@ AhciAtaPassThruPassThru (
   // Convert the transfer length from sector count to byte.
   //
   if (((Packet->Length & EFI_ATA_PASS_THRU_LENGTH_BYTES) == 0) &&
-       (Packet->OutTransferLength != 0)) {
+      (Packet->OutTransferLength != 0))
+  {
     Packet->OutTransferLength = Packet->OutTransferLength * BlockSize;
   }
 
@@ -236,7 +239,8 @@ AhciAtaPassThruPassThru (
   // command, then no data is transferred and EFI_BAD_BUFFER_SIZE is returned.
   //
   if (((Packet->InTransferLength != 0) && (Packet->InTransferLength > MaxSectorCount * BlockSize)) ||
-      ((Packet->OutTransferLength != 0) && (Packet->OutTransferLength > MaxSectorCount * BlockSize))) {
+      ((Packet->OutTransferLength != 0) && (Packet->OutTransferLength > MaxSectorCount * BlockSize)))
+  {
     return EFI_BAD_BUFFER_SIZE;
   }
 
@@ -284,15 +288,15 @@ AhciAtaPassThruPassThru (
 EFI_STATUS
 EFIAPI
 AhciAtaPassThruGetNextPort (
-  IN     EDKII_PEI_ATA_PASS_THRU_PPI    *This,
-  IN OUT UINT16                         *Port
+  IN     EDKII_PEI_ATA_PASS_THRU_PPI  *This,
+  IN OUT UINT16                       *Port
   )
 {
-  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private;
-  PEI_AHCI_ATA_DEVICE_DATA            *DeviceData;
-  LIST_ENTRY                          *Node;
+  PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private;
+  PEI_AHCI_ATA_DEVICE_DATA          *DeviceData;
+  LIST_ENTRY                        *Node;
 
-  if (This == NULL || Port == NULL) {
+  if ((This == NULL) || (Port == NULL)) {
     return EFI_INVALID_PARAMETER;
   }
 
@@ -318,7 +322,7 @@ AhciAtaPassThruGetNextPort (
     while (!IsNull (&Private->DeviceList, Node)) {
       DeviceData = AHCI_PEI_ATA_DEVICE_INFO_FROM_THIS (Node);
 
-      if (DeviceData->Port > *Port){
+      if (DeviceData->Port > *Port) {
         *Port = DeviceData->Port;
         goto Exit;
       }
@@ -393,16 +397,16 @@ Exit:
 EFI_STATUS
 EFIAPI
 AhciAtaPassThruGetNextDevice (
-  IN     EDKII_PEI_ATA_PASS_THRU_PPI    *This,
-  IN     UINT16                         Port,
-  IN OUT UINT16                         *PortMultiplierPort
+  IN     EDKII_PEI_ATA_PASS_THRU_PPI  *This,
+  IN     UINT16                       Port,
+  IN OUT UINT16                       *PortMultiplierPort
   )
 {
-  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private;
-  PEI_AHCI_ATA_DEVICE_DATA            *DeviceData;
-  LIST_ENTRY                          *Node;
+  PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private;
+  PEI_AHCI_ATA_DEVICE_DATA          *DeviceData;
+  LIST_ENTRY                        *Node;
 
-  if (This == NULL || PortMultiplierPort == NULL) {
+  if ((This == NULL) || (PortMultiplierPort == NULL)) {
     return EFI_INVALID_PARAMETER;
   }
 
@@ -425,7 +429,8 @@ AhciAtaPassThruGetNextDevice (
       DeviceData = AHCI_PEI_ATA_DEVICE_INFO_FROM_THIS (Node);
 
       if ((DeviceData->Port == Port) &&
-          (DeviceData->PortMultiplier > *PortMultiplierPort)){
+          (DeviceData->PortMultiplier > *PortMultiplierPort))
+      {
         *PortMultiplierPort = DeviceData->PortMultiplier;
         goto Exit;
       }
@@ -444,7 +449,7 @@ AhciAtaPassThruGetNextDevice (
     while (!IsNull (&Private->DeviceList, Node)) {
       DeviceData = AHCI_PEI_ATA_DEVICE_INFO_FROM_THIS (Node);
 
-      if (DeviceData->Port == Port){
+      if (DeviceData->Port == Port) {
         *PortMultiplierPort = DeviceData->PortMultiplier;
         goto Exit;
       }
@@ -490,14 +495,14 @@ Exit:
 EFI_STATUS
 EFIAPI
 AhciAtaPassThruGetDevicePath (
-  IN  EDKII_PEI_ATA_PASS_THRU_PPI    *This,
-  OUT UINTN                          *DevicePathLength,
-  OUT EFI_DEVICE_PATH_PROTOCOL       **DevicePath
+  IN  EDKII_PEI_ATA_PASS_THRU_PPI  *This,
+  OUT UINTN                        *DevicePathLength,
+  OUT EFI_DEVICE_PATH_PROTOCOL     **DevicePath
   )
 {
-  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private;
+  PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private;
 
-  if (This == NULL || DevicePathLength == NULL || DevicePath == NULL) {
+  if ((This == NULL) || (DevicePathLength == NULL) || (DevicePath == NULL)) {
     return EFI_INVALID_PARAMETER;
   }
 

+ 12 - 12
MdeModulePkg/Bus/Ata/AhciPei/AhciPeiPassThru.h

@@ -49,10 +49,10 @@
 EFI_STATUS
 EFIAPI
 AhciAtaPassThruPassThru (
-  IN     EDKII_PEI_ATA_PASS_THRU_PPI         *This,
-  IN     UINT16                              Port,
-  IN     UINT16                              PortMultiplierPort,
-  IN OUT EFI_ATA_PASS_THRU_COMMAND_PACKET    *Packet
+  IN     EDKII_PEI_ATA_PASS_THRU_PPI       *This,
+  IN     UINT16                            Port,
+  IN     UINT16                            PortMultiplierPort,
+  IN OUT EFI_ATA_PASS_THRU_COMMAND_PACKET  *Packet
   );
 
 /**
@@ -90,8 +90,8 @@ AhciAtaPassThruPassThru (
 EFI_STATUS
 EFIAPI
 AhciAtaPassThruGetNextPort (
-  IN     EDKII_PEI_ATA_PASS_THRU_PPI    *This,
-  IN OUT UINT16                         *Port
+  IN     EDKII_PEI_ATA_PASS_THRU_PPI  *This,
+  IN OUT UINT16                       *Port
   );
 
 /**
@@ -144,9 +144,9 @@ AhciAtaPassThruGetNextPort (
 EFI_STATUS
 EFIAPI
 AhciAtaPassThruGetNextDevice (
-  IN     EDKII_PEI_ATA_PASS_THRU_PPI    *This,
-  IN     UINT16                         Port,
-  IN OUT UINT16                         *PortMultiplierPort
+  IN     EDKII_PEI_ATA_PASS_THRU_PPI  *This,
+  IN     UINT16                       Port,
+  IN OUT UINT16                       *PortMultiplierPort
   );
 
 /**
@@ -169,9 +169,9 @@ AhciAtaPassThruGetNextDevice (
 EFI_STATUS
 EFIAPI
 AhciAtaPassThruGetDevicePath (
-  IN  EDKII_PEI_ATA_PASS_THRU_PPI    *This,
-  OUT UINTN                          *DevicePathLength,
-  OUT EFI_DEVICE_PATH_PROTOCOL       **DevicePath
+  IN  EDKII_PEI_ATA_PASS_THRU_PPI  *This,
+  OUT UINTN                        *DevicePathLength,
+  OUT EFI_DEVICE_PATH_PROTOCOL     **DevicePath
   );
 
 #endif

+ 22 - 17
MdeModulePkg/Bus/Ata/AhciPei/AhciPeiS3.c

@@ -28,19 +28,19 @@
 **/
 UINT8
 AhciS3GetEumeratePorts (
-  IN  EFI_DEVICE_PATH_PROTOCOL    *HcDevicePath,
-  IN  UINTN                       HcDevicePathLength,
-  OUT UINT32                      *PortBitMap
+  IN  EFI_DEVICE_PATH_PROTOCOL  *HcDevicePath,
+  IN  UINTN                     HcDevicePathLength,
+  OUT UINT32                    *PortBitMap
   )
 {
-  EFI_STATUS                  Status;
-  UINT8                       DummyData;
-  UINTN                       S3InitDevicesLength;
-  EFI_DEVICE_PATH_PROTOCOL    *S3InitDevices;
-  EFI_DEVICE_PATH_PROTOCOL    *DevicePathInst;
-  UINTN                       DevicePathInstLength;
-  BOOLEAN                     EntireEnd;
-  SATA_DEVICE_PATH            *SataDeviceNode;
+  EFI_STATUS                Status;
+  UINT8                     DummyData;
+  UINTN                     S3InitDevicesLength;
+  EFI_DEVICE_PATH_PROTOCOL  *S3InitDevices;
+  EFI_DEVICE_PATH_PROTOCOL  *DevicePathInst;
+  UINTN                     DevicePathInstLength;
+  BOOLEAN                   EntireEnd;
+  SATA_DEVICE_PATH          *SataDeviceNode;
 
   *PortBitMap = 0;
 
@@ -51,7 +51,7 @@ AhciS3GetEumeratePorts (
   S3InitDevices       = NULL;
   S3InitDevicesLength = sizeof (DummyData);
   EntireEnd           = FALSE;
-  Status = RestoreLockBox (&gS3StorageDeviceInitListGuid, &DummyData, &S3InitDevicesLength);
+  Status              = RestoreLockBox (&gS3StorageDeviceInitListGuid, &DummyData, &S3InitDevicesLength);
   if (Status != EFI_BUFFER_TOO_SMALL) {
     return 0;
   } else {
@@ -87,7 +87,7 @@ AhciS3GetEumeratePorts (
     }
 
     DevicePathInst = S3InitDevices;
-    S3InitDevices  = (EFI_DEVICE_PATH_PROTOCOL *)((UINTN) S3InitDevices + DevicePathInstLength);
+    S3InitDevices  = (EFI_DEVICE_PATH_PROTOCOL *)((UINTN)S3InitDevices + DevicePathInstLength);
 
     if (HcDevicePathLength >= DevicePathInstLength) {
       continue;
@@ -101,25 +101,30 @@ AhciS3GetEumeratePorts (
           DevicePathInst,
           HcDevicePath,
           HcDevicePathLength - sizeof (EFI_DEVICE_PATH_PROTOCOL)
-          ) == 0) {
+          ) == 0)
+    {
       //
       // Get the port number.
       //
       while (DevicePathInst->Type != END_DEVICE_PATH_TYPE) {
         if ((DevicePathInst->Type == MESSAGING_DEVICE_PATH) &&
-            (DevicePathInst->SubType == MSG_SATA_DP)) {
-          SataDeviceNode = (SATA_DEVICE_PATH *) DevicePathInst;
+            (DevicePathInst->SubType == MSG_SATA_DP))
+        {
+          SataDeviceNode = (SATA_DEVICE_PATH *)DevicePathInst;
           //
           // For now, the driver only support upto AHCI_MAX_PORTS ports and
           // devices directly connected to a HBA.
           //
           if ((SataDeviceNode->HBAPortNumber >= AHCI_MAX_PORTS) ||
-              (SataDeviceNode->PortMultiplierPortNumber != 0xFFFF)) {
+              (SataDeviceNode->PortMultiplierPortNumber != 0xFFFF))
+          {
             break;
           }
+
           *PortBitMap |= (UINT32)BIT0 << SataDeviceNode->HBAPortNumber;
           break;
         }
+
         DevicePathInst = NextDevicePathNode (DevicePathInst);
       }
     }

+ 29 - 29
MdeModulePkg/Bus/Ata/AhciPei/AhciPeiStorageSecurity.c

@@ -24,12 +24,12 @@
 **/
 PEI_AHCI_ATA_DEVICE_DATA *
 SearchTrustComputingDeviceByIndex (
-  IN PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private,
-  IN UINTN                               TrustComputingDeviceIndex
+  IN PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private,
+  IN UINTN                             TrustComputingDeviceIndex
   )
 {
-  PEI_AHCI_ATA_DEVICE_DATA    *DeviceData;
-  LIST_ENTRY                  *Node;
+  PEI_AHCI_ATA_DEVICE_DATA  *DeviceData;
+  LIST_ENTRY                *Node;
 
   Node = GetFirstNode (&Private->DeviceList);
   while (!IsNull (&Private->DeviceList, Node)) {
@@ -58,17 +58,17 @@ SearchTrustComputingDeviceByIndex (
 EFI_STATUS
 EFIAPI
 AhciStorageSecurityGetDeviceNo (
-  IN  EDKII_PEI_STORAGE_SECURITY_CMD_PPI    *This,
-  OUT UINTN                                 *NumberofDevices
+  IN  EDKII_PEI_STORAGE_SECURITY_CMD_PPI  *This,
+  OUT UINTN                               *NumberofDevices
   )
 {
-  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private;
+  PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private;
 
-  if (This == NULL || NumberofDevices == NULL) {
+  if ((This == NULL) || (NumberofDevices == NULL)) {
     return EFI_INVALID_PARAMETER;
   }
 
-  Private = GET_AHCI_PEIM_HC_PRIVATE_DATA_FROM_THIS_STROAGE_SECURITY (This);
+  Private          = GET_AHCI_PEIM_HC_PRIVATE_DATA_FROM_THIS_STROAGE_SECURITY (This);
   *NumberofDevices = Private->TrustComputingDevices;
 
   return EFI_SUCCESS;
@@ -102,17 +102,17 @@ AhciStorageSecurityGetDeviceNo (
 EFI_STATUS
 EFIAPI
 AhciStorageSecurityGetDevicePath (
-  IN  EDKII_PEI_STORAGE_SECURITY_CMD_PPI    *This,
-  IN  UINTN                                 DeviceIndex,
-  OUT UINTN                                 *DevicePathLength,
-  OUT EFI_DEVICE_PATH_PROTOCOL              **DevicePath
+  IN  EDKII_PEI_STORAGE_SECURITY_CMD_PPI  *This,
+  IN  UINTN                               DeviceIndex,
+  OUT UINTN                               *DevicePathLength,
+  OUT EFI_DEVICE_PATH_PROTOCOL            **DevicePath
   )
 {
-  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private;
-  PEI_AHCI_ATA_DEVICE_DATA            *DeviceData;
-  EFI_STATUS                          Status;
+  PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private;
+  PEI_AHCI_ATA_DEVICE_DATA          *DeviceData;
+  EFI_STATUS                        Status;
 
-  if (This == NULL || DevicePathLength == NULL || DevicePath == NULL) {
+  if ((This == NULL) || (DevicePathLength == NULL) || (DevicePath == NULL)) {
     return EFI_INVALID_PARAMETER;
   }
 
@@ -229,18 +229,18 @@ AhciStorageSecurityGetDevicePath (
 EFI_STATUS
 EFIAPI
 AhciStorageSecurityReceiveData (
-  IN  EDKII_PEI_STORAGE_SECURITY_CMD_PPI    *This,
-  IN  UINTN                                 DeviceIndex,
-  IN  UINT64                                Timeout,
-  IN  UINT8                                 SecurityProtocolId,
-  IN  UINT16                                SecurityProtocolSpecificData,
-  IN  UINTN                                 PayloadBufferSize,
-  OUT VOID                                  *PayloadBuffer,
-  OUT UINTN                                 *PayloadTransferSize
+  IN  EDKII_PEI_STORAGE_SECURITY_CMD_PPI  *This,
+  IN  UINTN                               DeviceIndex,
+  IN  UINT64                              Timeout,
+  IN  UINT8                               SecurityProtocolId,
+  IN  UINT16                              SecurityProtocolSpecificData,
+  IN  UINTN                               PayloadBufferSize,
+  OUT VOID                                *PayloadBuffer,
+  OUT UINTN                               *PayloadTransferSize
   )
 {
-  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private;
-  PEI_AHCI_ATA_DEVICE_DATA            *DeviceData;
+  PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private;
+  PEI_AHCI_ATA_DEVICE_DATA          *DeviceData;
 
   if ((PayloadBuffer == NULL) || (PayloadTransferSize == NULL) || (PayloadBufferSize == 0)) {
     return EFI_INVALID_PARAMETER;
@@ -349,8 +349,8 @@ AhciStorageSecuritySendData (
   IN VOID                                *PayloadBuffer
   )
 {
-  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private;
-  PEI_AHCI_ATA_DEVICE_DATA            *DeviceData;
+  PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private;
+  PEI_AHCI_ATA_DEVICE_DATA          *DeviceData;
 
   if ((PayloadBuffer == NULL) && (PayloadBufferSize != 0)) {
     return EFI_INVALID_PARAMETER;

+ 14 - 14
MdeModulePkg/Bus/Ata/AhciPei/AhciPeiStorageSecurity.h

@@ -24,8 +24,8 @@
 EFI_STATUS
 EFIAPI
 AhciStorageSecurityGetDeviceNo (
-  IN  EDKII_PEI_STORAGE_SECURITY_CMD_PPI    *This,
-  OUT UINTN                                 *NumberofDevices
+  IN  EDKII_PEI_STORAGE_SECURITY_CMD_PPI  *This,
+  OUT UINTN                               *NumberofDevices
   );
 
 /**
@@ -56,10 +56,10 @@ AhciStorageSecurityGetDeviceNo (
 EFI_STATUS
 EFIAPI
 AhciStorageSecurityGetDevicePath (
-  IN  EDKII_PEI_STORAGE_SECURITY_CMD_PPI    *This,
-  IN  UINTN                                 DeviceIndex,
-  OUT UINTN                                 *DevicePathLength,
-  OUT EFI_DEVICE_PATH_PROTOCOL              **DevicePath
+  IN  EDKII_PEI_STORAGE_SECURITY_CMD_PPI  *This,
+  IN  UINTN                               DeviceIndex,
+  OUT UINTN                               *DevicePathLength,
+  OUT EFI_DEVICE_PATH_PROTOCOL            **DevicePath
   );
 
 /**
@@ -151,14 +151,14 @@ AhciStorageSecurityGetDevicePath (
 EFI_STATUS
 EFIAPI
 AhciStorageSecurityReceiveData (
-  IN  EDKII_PEI_STORAGE_SECURITY_CMD_PPI    *This,
-  IN  UINTN                                 DeviceIndex,
-  IN  UINT64                                Timeout,
-  IN  UINT8                                 SecurityProtocolId,
-  IN  UINT16                                SecurityProtocolSpecificData,
-  IN  UINTN                                 PayloadBufferSize,
-  OUT VOID                                  *PayloadBuffer,
-  OUT UINTN                                 *PayloadTransferSize
+  IN  EDKII_PEI_STORAGE_SECURITY_CMD_PPI  *This,
+  IN  UINTN                               DeviceIndex,
+  IN  UINT64                              Timeout,
+  IN  UINT8                               SecurityProtocolId,
+  IN  UINT16                              SecurityProtocolSpecificData,
+  IN  UINTN                               PayloadBufferSize,
+  OUT VOID                                *PayloadBuffer,
+  OUT UINTN                               *PayloadTransferSize
   );
 
 /**

+ 34 - 32
MdeModulePkg/Bus/Ata/AhciPei/DevicePath.c

@@ -17,8 +17,8 @@ SATA_DEVICE_PATH  mAhciSataDevicePathNodeTemplate = {
     MESSAGING_DEVICE_PATH,
     MSG_SATA_DP,
     {
-      (UINT8) (sizeof (SATA_DEVICE_PATH)),
-      (UINT8) ((sizeof (SATA_DEVICE_PATH)) >> 8)
+      (UINT8)(sizeof (SATA_DEVICE_PATH)),
+      (UINT8)((sizeof (SATA_DEVICE_PATH)) >> 8)
     }
   },
   0x0,     // HBAPortNumber
@@ -33,8 +33,8 @@ EFI_DEVICE_PATH_PROTOCOL  mAhciEndDevicePathNodeTemplate = {
   END_DEVICE_PATH_TYPE,
   END_ENTIRE_DEVICE_PATH_SUBTYPE,
   {
-    (UINT8) (sizeof (EFI_DEVICE_PATH_PROTOCOL)),
-    (UINT8) ((sizeof (EFI_DEVICE_PATH_PROTOCOL)) >> 8)
+    (UINT8)(sizeof (EFI_DEVICE_PATH_PROTOCOL)),
+    (UINT8)((sizeof (EFI_DEVICE_PATH_PROTOCOL)) >> 8)
   }
 };
 
@@ -79,7 +79,7 @@ NextDevicePathNode (
   )
 {
   ASSERT (Node != NULL);
-  return (EFI_DEVICE_PATH_PROTOCOL *)((UINT8 *)(Node) + DevicePathNodeLength(Node));
+  return (EFI_DEVICE_PATH_PROTOCOL *)((UINT8 *)(Node) + DevicePathNodeLength (Node));
 }
 
 /**
@@ -97,14 +97,14 @@ NextDevicePathNode (
 **/
 EFI_STATUS
 GetDevicePathInstanceSize (
-  IN  EFI_DEVICE_PATH_PROTOCOL    *DevicePath,
-  OUT UINTN                       *InstanceSize,
-  OUT BOOLEAN                     *EntireDevicePathEnd
+  IN  EFI_DEVICE_PATH_PROTOCOL  *DevicePath,
+  OUT UINTN                     *InstanceSize,
+  OUT BOOLEAN                   *EntireDevicePathEnd
   )
 {
-  EFI_DEVICE_PATH_PROTOCOL    *Walker;
+  EFI_DEVICE_PATH_PROTOCOL  *Walker;
 
-  if (DevicePath == NULL || InstanceSize == NULL || EntireDevicePathEnd == NULL) {
+  if ((DevicePath == NULL) || (InstanceSize == NULL) || (EntireDevicePathEnd == NULL)) {
     return EFI_INVALID_PARAMETER;
   }
 
@@ -130,7 +130,7 @@ GetDevicePathInstanceSize (
   //
   // Compute the size of the device path instance
   //
-  *InstanceSize = ((UINTN) Walker - (UINTN) (DevicePath)) + sizeof (EFI_DEVICE_PATH_PROTOCOL);
+  *InstanceSize = ((UINTN)Walker - (UINTN)(DevicePath)) + sizeof (EFI_DEVICE_PATH_PROTOCOL);
 
   return EFI_SUCCESS;
 }
@@ -148,12 +148,12 @@ GetDevicePathInstanceSize (
 **/
 EFI_STATUS
 AhciIsHcDevicePathValid (
-  IN EFI_DEVICE_PATH_PROTOCOL    *DevicePath,
-  IN UINTN                       DevicePathLength
+  IN EFI_DEVICE_PATH_PROTOCOL  *DevicePath,
+  IN UINTN                     DevicePathLength
   )
 {
-  EFI_DEVICE_PATH_PROTOCOL    *Start;
-  UINTN                       Size;
+  EFI_DEVICE_PATH_PROTOCOL  *Start;
+  UINTN                     Size;
 
   if (DevicePath == NULL) {
     return EFI_INVALID_PARAMETER;
@@ -168,22 +168,24 @@ AhciIsHcDevicePathValid (
 
   Start = DevicePath;
   while (!(DevicePath->Type == END_DEVICE_PATH_TYPE &&
-           DevicePath->SubType == END_ENTIRE_DEVICE_PATH_SUBTYPE)) {
+           DevicePath->SubType == END_ENTIRE_DEVICE_PATH_SUBTYPE))
+  {
     DevicePath = NextDevicePathNode (DevicePath);
 
     //
     // Prevent overflow and invalid zero in the 'Length' field of a device path
     // node.
     //
-    if ((UINTN) DevicePath <= (UINTN) Start) {
+    if ((UINTN)DevicePath <= (UINTN)Start) {
       return EFI_INVALID_PARAMETER;
     }
 
     //
     // Prevent touching memory beyond given DevicePathLength.
     //
-    if ((UINTN) DevicePath - (UINTN) Start >
-        DevicePathLength - sizeof (EFI_DEVICE_PATH_PROTOCOL)) {
+    if ((UINTN)DevicePath - (UINTN)Start >
+        DevicePathLength - sizeof (EFI_DEVICE_PATH_PROTOCOL))
+    {
       return EFI_INVALID_PARAMETER;
     }
   }
@@ -191,7 +193,7 @@ AhciIsHcDevicePathValid (
   //
   // Check if the device path and its size match each other.
   //
-  Size = ((UINTN) DevicePath - (UINTN) Start) + sizeof (EFI_DEVICE_PATH_PROTOCOL);
+  Size = ((UINTN)DevicePath - (UINTN)Start) + sizeof (EFI_DEVICE_PATH_PROTOCOL);
   if (Size != DevicePathLength) {
     return EFI_INVALID_PARAMETER;
   }
@@ -217,17 +219,17 @@ AhciIsHcDevicePathValid (
 **/
 EFI_STATUS
 AhciBuildDevicePath (
-  IN  PEI_AHCI_CONTROLLER_PRIVATE_DATA    *Private,
-  IN  UINT16                              Port,
-  IN  UINT16                              PortMultiplierPort,
-  OUT UINTN                               *DevicePathLength,
-  OUT EFI_DEVICE_PATH_PROTOCOL            **DevicePath
+  IN  PEI_AHCI_CONTROLLER_PRIVATE_DATA  *Private,
+  IN  UINT16                            Port,
+  IN  UINT16                            PortMultiplierPort,
+  OUT UINTN                             *DevicePathLength,
+  OUT EFI_DEVICE_PATH_PROTOCOL          **DevicePath
   )
 {
-  EFI_DEVICE_PATH_PROTOCOL    *DevicePathWalker;
-  SATA_DEVICE_PATH            *SataDeviceNode;
+  EFI_DEVICE_PATH_PROTOCOL  *DevicePathWalker;
+  SATA_DEVICE_PATH          *SataDeviceNode;
 
-  if (DevicePathLength == NULL || DevicePath == NULL) {
+  if ((DevicePathLength == NULL) || (DevicePath == NULL)) {
     return EFI_INVALID_PARAMETER;
   }
 
@@ -251,8 +253,8 @@ AhciBuildDevicePath (
   //
   // Construct the SATA device node
   //
-  DevicePathWalker = (EFI_DEVICE_PATH_PROTOCOL *) ((UINT8 *)DevicePathWalker +
-                     (Private->DevicePathLength - sizeof (EFI_DEVICE_PATH_PROTOCOL)));
+  DevicePathWalker = (EFI_DEVICE_PATH_PROTOCOL *)((UINT8 *)DevicePathWalker +
+                                                  (Private->DevicePathLength - sizeof (EFI_DEVICE_PATH_PROTOCOL)));
   CopyMem (
     DevicePathWalker,
     &mAhciSataDevicePathNodeTemplate,
@@ -265,8 +267,8 @@ AhciBuildDevicePath (
   //
   // Construct the end device node
   //
-  DevicePathWalker = (EFI_DEVICE_PATH_PROTOCOL *) ((UINT8 *)DevicePathWalker +
-                     sizeof (SATA_DEVICE_PATH));
+  DevicePathWalker = (EFI_DEVICE_PATH_PROTOCOL *)((UINT8 *)DevicePathWalker +
+                                                  sizeof (SATA_DEVICE_PATH));
   CopyMem (
     DevicePathWalker,
     &mAhciEndDevicePathNodeTemplate,

+ 63 - 55
MdeModulePkg/Bus/Ata/AhciPei/DmaMem.c

@@ -20,15 +20,15 @@ GetIoMmu (
   VOID
   )
 {
-  EFI_STATUS         Status;
-  EDKII_IOMMU_PPI    *IoMmu;
+  EFI_STATUS       Status;
+  EDKII_IOMMU_PPI  *IoMmu;
 
   IoMmu  = NULL;
   Status = PeiServicesLocatePpi (
              &gEdkiiIoMmuPpiGuid,
              0,
              NULL,
-             (VOID **) &IoMmu
+             (VOID **)&IoMmu
              );
   if (!EFI_ERROR (Status) && (IoMmu != NULL)) {
     return IoMmu;
@@ -58,48 +58,50 @@ GetIoMmu (
 **/
 EFI_STATUS
 IoMmuMap (
-  IN  EDKII_IOMMU_OPERATION Operation,
-  IN VOID                   *HostAddress,
-  IN  OUT UINTN             *NumberOfBytes,
-  OUT EFI_PHYSICAL_ADDRESS  *DeviceAddress,
-  OUT VOID                  **Mapping
+  IN  EDKII_IOMMU_OPERATION  Operation,
+  IN VOID                    *HostAddress,
+  IN  OUT UINTN              *NumberOfBytes,
+  OUT EFI_PHYSICAL_ADDRESS   *DeviceAddress,
+  OUT VOID                   **Mapping
   )
 {
-  EFI_STATUS         Status;
-  UINT64             Attribute;
-  EDKII_IOMMU_PPI    *IoMmu;
+  EFI_STATUS       Status;
+  UINT64           Attribute;
+  EDKII_IOMMU_PPI  *IoMmu;
 
   IoMmu = GetIoMmu ();
 
   if (IoMmu != NULL) {
     Status = IoMmu->Map (
-                     IoMmu,
-                     Operation,
-                     HostAddress,
-                     NumberOfBytes,
-                     DeviceAddress,
-                     Mapping
-                     );
+                      IoMmu,
+                      Operation,
+                      HostAddress,
+                      NumberOfBytes,
+                      DeviceAddress,
+                      Mapping
+                      );
     if (EFI_ERROR (Status)) {
       return EFI_OUT_OF_RESOURCES;
     }
+
     switch (Operation) {
-    case EdkiiIoMmuOperationBusMasterRead:
-    case EdkiiIoMmuOperationBusMasterRead64:
-      Attribute = EDKII_IOMMU_ACCESS_READ;
-      break;
-    case EdkiiIoMmuOperationBusMasterWrite:
-    case EdkiiIoMmuOperationBusMasterWrite64:
-      Attribute = EDKII_IOMMU_ACCESS_WRITE;
-      break;
-    case EdkiiIoMmuOperationBusMasterCommonBuffer:
-    case EdkiiIoMmuOperationBusMasterCommonBuffer64:
-      Attribute = EDKII_IOMMU_ACCESS_READ | EDKII_IOMMU_ACCESS_WRITE;
-      break;
-    default:
-      ASSERT(FALSE);
-      return EFI_INVALID_PARAMETER;
+      case EdkiiIoMmuOperationBusMasterRead:
+      case EdkiiIoMmuOperationBusMasterRead64:
+        Attribute = EDKII_IOMMU_ACCESS_READ;
+        break;
+      case EdkiiIoMmuOperationBusMasterWrite:
+      case EdkiiIoMmuOperationBusMasterWrite64:
+        Attribute = EDKII_IOMMU_ACCESS_WRITE;
+        break;
+      case EdkiiIoMmuOperationBusMasterCommonBuffer:
+      case EdkiiIoMmuOperationBusMasterCommonBuffer64:
+        Attribute = EDKII_IOMMU_ACCESS_READ | EDKII_IOMMU_ACCESS_WRITE;
+        break;
+      default:
+        ASSERT (FALSE);
+        return EFI_INVALID_PARAMETER;
     }
+
     Status = IoMmu->SetAttribute (
                       IoMmu,
                       *Mapping,
@@ -110,9 +112,10 @@ IoMmuMap (
     }
   } else {
     *DeviceAddress = (EFI_PHYSICAL_ADDRESS)(UINTN)HostAddress;
-    *Mapping = NULL;
-    Status = EFI_SUCCESS;
+    *Mapping       = NULL;
+    Status         = EFI_SUCCESS;
   }
+
   return Status;
 }
 
@@ -127,11 +130,11 @@ IoMmuMap (
 **/
 EFI_STATUS
 IoMmuUnmap (
-  IN VOID                  *Mapping
+  IN VOID  *Mapping
   )
 {
-  EFI_STATUS         Status;
-  EDKII_IOMMU_PPI    *IoMmu;
+  EFI_STATUS       Status;
+  EDKII_IOMMU_PPI  *IoMmu;
 
   IoMmu = GetIoMmu ();
 
@@ -141,6 +144,7 @@ IoMmuUnmap (
   } else {
     Status = EFI_SUCCESS;
   }
+
   return Status;
 }
 
@@ -175,7 +179,7 @@ IoMmuAllocateBuffer (
   EFI_PHYSICAL_ADDRESS  HostPhyAddress;
   EDKII_IOMMU_PPI       *IoMmu;
 
-  *HostAddress = NULL;
+  *HostAddress   = NULL;
   *DeviceAddress = 0;
 
   IoMmu = GetIoMmu ();
@@ -192,18 +196,19 @@ IoMmuAllocateBuffer (
       return EFI_OUT_OF_RESOURCES;
     }
 
-    NumberOfBytes = EFI_PAGES_TO_SIZE(Pages);
-    Status = IoMmu->Map (
-                      IoMmu,
-                      EdkiiIoMmuOperationBusMasterCommonBuffer,
-                      *HostAddress,
-                      &NumberOfBytes,
-                      DeviceAddress,
-                      Mapping
-                      );
+    NumberOfBytes = EFI_PAGES_TO_SIZE (Pages);
+    Status        = IoMmu->Map (
+                             IoMmu,
+                             EdkiiIoMmuOperationBusMasterCommonBuffer,
+                             *HostAddress,
+                             &NumberOfBytes,
+                             DeviceAddress,
+                             Mapping
+                             );
     if (EFI_ERROR (Status)) {
       return EFI_OUT_OF_RESOURCES;
     }
+
     Status = IoMmu->SetAttribute (
                       IoMmu,
                       *Mapping,
@@ -221,10 +226,12 @@ IoMmuAllocateBuffer (
     if (EFI_ERROR (Status)) {
       return EFI_OUT_OF_RESOURCES;
     }
-    *HostAddress = (VOID *)(UINTN)HostPhyAddress;
+
+    *HostAddress   = (VOID *)(UINTN)HostPhyAddress;
     *DeviceAddress = HostPhyAddress;
-    *Mapping = NULL;
+    *Mapping       = NULL;
   }
+
   return Status;
 }
 
@@ -242,13 +249,13 @@ IoMmuAllocateBuffer (
 **/
 EFI_STATUS
 IoMmuFreeBuffer (
-  IN UINTN                  Pages,
-  IN VOID                   *HostAddress,
-  IN VOID                   *Mapping
+  IN UINTN  Pages,
+  IN VOID   *HostAddress,
+  IN VOID   *Mapping
   )
 {
-  EFI_STATUS         Status;
-  EDKII_IOMMU_PPI    *IoMmu;
+  EFI_STATUS       Status;
+  EDKII_IOMMU_PPI  *IoMmu;
 
   IoMmu = GetIoMmu ();
 
@@ -259,5 +266,6 @@ IoMmuFreeBuffer (
   } else {
     Status = EFI_SUCCESS;
   }
+
   return Status;
 }

File diff suppressed because it is too large
+ 250 - 250
MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AhciMode.c


+ 207 - 207
MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AhciMode.h

@@ -5,192 +5,193 @@
   SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
+
 #ifndef __ATA_HC_AHCI_MODE_H__
 #define __ATA_HC_AHCI_MODE_H__
 
-#define EFI_AHCI_BAR_INDEX                     0x05
+#define EFI_AHCI_BAR_INDEX  0x05
 
-#define EFI_AHCI_CAPABILITY_OFFSET             0x0000
-#define   EFI_AHCI_CAP_SAM                     BIT18
-#define   EFI_AHCI_CAP_SSS                     BIT27
-#define   EFI_AHCI_CAP_S64A                    BIT31
-#define EFI_AHCI_GHC_OFFSET                    0x0004
-#define   EFI_AHCI_GHC_RESET                   BIT0
-#define   EFI_AHCI_GHC_IE                      BIT1
-#define   EFI_AHCI_GHC_ENABLE                  BIT31
-#define EFI_AHCI_IS_OFFSET                     0x0008
-#define EFI_AHCI_PI_OFFSET                     0x000C
+#define EFI_AHCI_CAPABILITY_OFFSET  0x0000
+#define   EFI_AHCI_CAP_SAM          BIT18
+#define   EFI_AHCI_CAP_SSS          BIT27
+#define   EFI_AHCI_CAP_S64A         BIT31
+#define EFI_AHCI_GHC_OFFSET         0x0004
+#define   EFI_AHCI_GHC_RESET        BIT0
+#define   EFI_AHCI_GHC_IE           BIT1
+#define   EFI_AHCI_GHC_ENABLE       BIT31
+#define EFI_AHCI_IS_OFFSET          0x0008
+#define EFI_AHCI_PI_OFFSET          0x000C
 
-#define EFI_AHCI_MAX_PORTS                     32
+#define EFI_AHCI_MAX_PORTS  32
 
-#define AHCI_CAPABILITY2_OFFSET                0x0024
-#define   AHCI_CAP2_SDS                        BIT3
-#define   AHCI_CAP2_SADM                       BIT4
+#define AHCI_CAPABILITY2_OFFSET  0x0024
+#define   AHCI_CAP2_SDS          BIT3
+#define   AHCI_CAP2_SADM         BIT4
 
 typedef struct {
-  UINT32  Lower32;
-  UINT32  Upper32;
+  UINT32    Lower32;
+  UINT32    Upper32;
 } DATA_32;
 
 typedef union {
-  DATA_32   Uint32;
-  UINT64    Uint64;
+  DATA_32    Uint32;
+  UINT64     Uint64;
 } DATA_64;
 
 //
 // Refer SATA1.0a spec section 5.2, the Phy detection time should be less than 10ms.
 // Add a bit of margin for robustness.
 //
-#define  EFI_AHCI_BUS_PHY_DETECT_TIMEOUT       15
+#define  EFI_AHCI_BUS_PHY_DETECT_TIMEOUT  15
 //
 // Refer SATA1.0a spec, the FIS enable time should be less than 500ms.
 //
-#define  EFI_AHCI_PORT_CMD_FR_CLEAR_TIMEOUT    EFI_TIMER_PERIOD_MILLISECONDS(500)
+#define  EFI_AHCI_PORT_CMD_FR_CLEAR_TIMEOUT  EFI_TIMER_PERIOD_MILLISECONDS(500)
 //
 // Refer SATA1.0a spec, the bus reset time should be less than 1s.
 //
-#define  EFI_AHCI_BUS_RESET_TIMEOUT            EFI_TIMER_PERIOD_SECONDS(1)
+#define  EFI_AHCI_BUS_RESET_TIMEOUT  EFI_TIMER_PERIOD_SECONDS(1)
 
-#define  EFI_AHCI_ATAPI_DEVICE_SIG             0xEB140000
-#define  EFI_AHCI_ATA_DEVICE_SIG               0x00000000
-#define  EFI_AHCI_PORT_MULTIPLIER_SIG          0x96690000
-#define  EFI_AHCI_ATAPI_SIG_MASK               0xFFFF0000
+#define  EFI_AHCI_ATAPI_DEVICE_SIG     0xEB140000
+#define  EFI_AHCI_ATA_DEVICE_SIG       0x00000000
+#define  EFI_AHCI_PORT_MULTIPLIER_SIG  0x96690000
+#define  EFI_AHCI_ATAPI_SIG_MASK       0xFFFF0000
 
 //
 // Each PRDT entry can point to a memory block up to 4M byte
 //
-#define EFI_AHCI_MAX_DATA_PER_PRDT             0x400000
-
-#define EFI_AHCI_FIS_REGISTER_H2D              0x27      //Register FIS - Host to Device
-#define   EFI_AHCI_FIS_REGISTER_H2D_LENGTH     20
-#define EFI_AHCI_FIS_REGISTER_D2H              0x34      //Register FIS - Device to Host
-#define   EFI_AHCI_FIS_REGISTER_D2H_LENGTH     20
-#define EFI_AHCI_FIS_DMA_ACTIVATE              0x39      //DMA Activate FIS - Device to Host
-#define   EFI_AHCI_FIS_DMA_ACTIVATE_LENGTH     4
-#define EFI_AHCI_FIS_DMA_SETUP                 0x41      //DMA Setup FIS - Bi-directional
-#define   EFI_AHCI_FIS_DMA_SETUP_LENGTH        28
-#define EFI_AHCI_FIS_DATA                      0x46      //Data FIS - Bi-directional
-#define EFI_AHCI_FIS_BIST                      0x58      //BIST Activate FIS - Bi-directional
-#define   EFI_AHCI_FIS_BIST_LENGTH             12
-#define EFI_AHCI_FIS_PIO_SETUP                 0x5F      //PIO Setup FIS - Device to Host
-#define   EFI_AHCI_FIS_PIO_SETUP_LENGTH        20
-#define EFI_AHCI_FIS_SET_DEVICE                0xA1      //Set Device Bits FIS - Device to Host
-#define   EFI_AHCI_FIS_SET_DEVICE_LENGTH       8
-
-#define EFI_AHCI_D2H_FIS_OFFSET                0x40
-#define EFI_AHCI_DMA_FIS_OFFSET                0x00
-#define EFI_AHCI_PIO_FIS_OFFSET                0x20
-#define EFI_AHCI_SDB_FIS_OFFSET                0x58
-#define EFI_AHCI_FIS_TYPE_MASK                 0xFF
-#define EFI_AHCI_U_FIS_OFFSET                  0x60
+#define EFI_AHCI_MAX_DATA_PER_PRDT  0x400000
+
+#define EFI_AHCI_FIS_REGISTER_H2D           0x27         // Register FIS - Host to Device
+#define   EFI_AHCI_FIS_REGISTER_H2D_LENGTH  20
+#define EFI_AHCI_FIS_REGISTER_D2H           0x34         // Register FIS - Device to Host
+#define   EFI_AHCI_FIS_REGISTER_D2H_LENGTH  20
+#define EFI_AHCI_FIS_DMA_ACTIVATE           0x39         // DMA Activate FIS - Device to Host
+#define   EFI_AHCI_FIS_DMA_ACTIVATE_LENGTH  4
+#define EFI_AHCI_FIS_DMA_SETUP              0x41         // DMA Setup FIS - Bi-directional
+#define   EFI_AHCI_FIS_DMA_SETUP_LENGTH     28
+#define EFI_AHCI_FIS_DATA                   0x46         // Data FIS - Bi-directional
+#define EFI_AHCI_FIS_BIST                   0x58         // BIST Activate FIS - Bi-directional
+#define   EFI_AHCI_FIS_BIST_LENGTH          12
+#define EFI_AHCI_FIS_PIO_SETUP              0x5F         // PIO Setup FIS - Device to Host
+#define   EFI_AHCI_FIS_PIO_SETUP_LENGTH     20
+#define EFI_AHCI_FIS_SET_DEVICE             0xA1         // Set Device Bits FIS - Device to Host
+#define   EFI_AHCI_FIS_SET_DEVICE_LENGTH    8
+
+#define EFI_AHCI_D2H_FIS_OFFSET  0x40
+#define EFI_AHCI_DMA_FIS_OFFSET  0x00
+#define EFI_AHCI_PIO_FIS_OFFSET  0x20
+#define EFI_AHCI_SDB_FIS_OFFSET  0x58
+#define EFI_AHCI_FIS_TYPE_MASK   0xFF
+#define EFI_AHCI_U_FIS_OFFSET    0x60
 
 //
 // Port register
 //
-#define EFI_AHCI_PORT_START                    0x0100
-#define EFI_AHCI_PORT_REG_WIDTH                0x0080
-#define EFI_AHCI_PORT_CLB                      0x0000
-#define EFI_AHCI_PORT_CLBU                     0x0004
-#define EFI_AHCI_PORT_FB                       0x0008
-#define EFI_AHCI_PORT_FBU                      0x000C
-#define EFI_AHCI_PORT_IS                       0x0010
-#define   EFI_AHCI_PORT_IS_DHRS                BIT0
-#define   EFI_AHCI_PORT_IS_PSS                 BIT1
-#define   EFI_AHCI_PORT_IS_DSS                 BIT2
-#define   EFI_AHCI_PORT_IS_SDBS                BIT3
-#define   EFI_AHCI_PORT_IS_UFS                 BIT4
-#define   EFI_AHCI_PORT_IS_DPS                 BIT5
-#define   EFI_AHCI_PORT_IS_PCS                 BIT6
-#define   EFI_AHCI_PORT_IS_DIS                 BIT7
-#define   EFI_AHCI_PORT_IS_PRCS                BIT22
-#define   EFI_AHCI_PORT_IS_IPMS                BIT23
-#define   EFI_AHCI_PORT_IS_OFS                 BIT24
-#define   EFI_AHCI_PORT_IS_INFS                BIT26
-#define   EFI_AHCI_PORT_IS_IFS                 BIT27
-#define   EFI_AHCI_PORT_IS_HBDS                BIT28
-#define   EFI_AHCI_PORT_IS_HBFS                BIT29
-#define   EFI_AHCI_PORT_IS_TFES                BIT30
-#define   EFI_AHCI_PORT_IS_CPDS                BIT31
-#define   EFI_AHCI_PORT_IS_CLEAR               0xFFFFFFFF
-#define   EFI_AHCI_PORT_IS_FIS_CLEAR           0x0000000F
-#define   EFI_AHCI_PORT_IS_ERROR_MASK          (EFI_AHCI_PORT_IS_INFS | EFI_AHCI_PORT_IS_IFS | EFI_AHCI_PORT_IS_HBDS | EFI_AHCI_PORT_IS_HBFS | EFI_AHCI_PORT_IS_TFES)
-#define   EFI_AHCI_PORT_IS_FATAL_ERROR_MASK    (EFI_AHCI_PORT_IS_IFS | EFI_AHCI_PORT_IS_HBDS | EFI_AHCI_PORT_IS_HBFS | EFI_AHCI_PORT_IS_TFES)
-
-#define EFI_AHCI_PORT_IE                       0x0014
-#define EFI_AHCI_PORT_CMD                      0x0018
-#define   EFI_AHCI_PORT_CMD_ST_MASK            0xFFFFFFFE
-#define   EFI_AHCI_PORT_CMD_ST                 BIT0
-#define   EFI_AHCI_PORT_CMD_SUD                BIT1
-#define   EFI_AHCI_PORT_CMD_POD                BIT2
-#define   EFI_AHCI_PORT_CMD_CLO                BIT3
-#define   EFI_AHCI_PORT_CMD_FRE                BIT4
-#define   EFI_AHCI_PORT_CMD_CCS_MASK           (BIT8 | BIT9 | BIT10 | BIT11 | BIT12)
-#define   EFI_AHCI_PORT_CMD_CCS_SHIFT          8
-#define   EFI_AHCI_PORT_CMD_FR                 BIT14
-#define   EFI_AHCI_PORT_CMD_CR                 BIT15
-#define   EFI_AHCI_PORT_CMD_MASK               ~(EFI_AHCI_PORT_CMD_ST | EFI_AHCI_PORT_CMD_FRE | EFI_AHCI_PORT_CMD_COL)
-#define   EFI_AHCI_PORT_CMD_PMA                BIT17
-#define   EFI_AHCI_PORT_CMD_HPCP               BIT18
-#define   EFI_AHCI_PORT_CMD_MPSP               BIT19
-#define   EFI_AHCI_PORT_CMD_CPD                BIT20
-#define   EFI_AHCI_PORT_CMD_ESP                BIT21
-#define   EFI_AHCI_PORT_CMD_ATAPI              BIT24
-#define   EFI_AHCI_PORT_CMD_DLAE               BIT25
-#define   EFI_AHCI_PORT_CMD_ALPE               BIT26
-#define   EFI_AHCI_PORT_CMD_ASP                BIT27
-#define   EFI_AHCI_PORT_CMD_ICC_MASK           (BIT28 | BIT29 | BIT30 | BIT31)
-#define   EFI_AHCI_PORT_CMD_ACTIVE             (1 << 28 )
-#define EFI_AHCI_PORT_TFD                      0x0020
-#define   EFI_AHCI_PORT_TFD_MASK               (BIT7 | BIT3 | BIT0)
-#define   EFI_AHCI_PORT_TFD_BSY                BIT7
-#define   EFI_AHCI_PORT_TFD_DRQ                BIT3
-#define   EFI_AHCI_PORT_TFD_ERR                BIT0
-#define   EFI_AHCI_PORT_TFD_ERR_MASK           0x00FF00
-#define EFI_AHCI_PORT_SIG                      0x0024
-#define EFI_AHCI_PORT_SSTS                     0x0028
-#define   EFI_AHCI_PORT_SSTS_DET_MASK          0x000F
-#define   EFI_AHCI_PORT_SSTS_DET               0x0001
-#define   EFI_AHCI_PORT_SSTS_DET_PCE           0x0003
-#define   EFI_AHCI_PORT_SSTS_SPD_MASK          0x00F0
-#define EFI_AHCI_PORT_SCTL                     0x002C
-#define   EFI_AHCI_PORT_SCTL_DET_MASK          0x000F
-#define   EFI_AHCI_PORT_SCTL_MASK              (~EFI_AHCI_PORT_SCTL_DET_MASK)
-#define   EFI_AHCI_PORT_SCTL_DET_INIT          0x0001
-#define   EFI_AHCI_PORT_SCTL_DET_PHYCOMM       0x0003
-#define   EFI_AHCI_PORT_SCTL_SPD_MASK          0x00F0
-#define   EFI_AHCI_PORT_SCTL_IPM_MASK          0x0F00
-#define   EFI_AHCI_PORT_SCTL_IPM_INIT          0x0300
-#define   EFI_AHCI_PORT_SCTL_IPM_PSD           0x0100
-#define   EFI_AHCI_PORT_SCTL_IPM_SSD           0x0200
-#define EFI_AHCI_PORT_SERR                     0x0030
-#define   EFI_AHCI_PORT_SERR_RDIE              BIT0
-#define   EFI_AHCI_PORT_SERR_RCE               BIT1
-#define   EFI_AHCI_PORT_SERR_TDIE              BIT8
-#define   EFI_AHCI_PORT_SERR_PCDIE             BIT9
-#define   EFI_AHCI_PORT_SERR_PE                BIT10
-#define   EFI_AHCI_PORT_SERR_IE                BIT11
-#define   EFI_AHCI_PORT_SERR_PRC               BIT16
-#define   EFI_AHCI_PORT_SERR_PIE               BIT17
-#define   EFI_AHCI_PORT_SERR_CW                BIT18
-#define   EFI_AHCI_PORT_SERR_BDE               BIT19
-#define   EFI_AHCI_PORT_SERR_DE                BIT20
-#define   EFI_AHCI_PORT_SERR_CRCE              BIT21
-#define   EFI_AHCI_PORT_SERR_HE                BIT22
-#define   EFI_AHCI_PORT_SERR_LSE               BIT23
-#define   EFI_AHCI_PORT_SERR_TSTE              BIT24
-#define   EFI_AHCI_PORT_SERR_UFT               BIT25
-#define   EFI_AHCI_PORT_SERR_EX                BIT26
-#define   EFI_AHCI_PORT_ERR_CLEAR              0xFFFFFFFF
-#define EFI_AHCI_PORT_SACT                     0x0034
-#define EFI_AHCI_PORT_CI                       0x0038
-#define EFI_AHCI_PORT_SNTF                     0x003C
-#define AHCI_PORT_DEVSLP                       0x0044
-#define   AHCI_PORT_DEVSLP_ADSE                BIT0
-#define   AHCI_PORT_DEVSLP_DSP                 BIT1
-#define   AHCI_PORT_DEVSLP_DETO_MASK           0x000003FC
-#define   AHCI_PORT_DEVSLP_MDAT_MASK           0x00007C00
-#define   AHCI_PORT_DEVSLP_DITO_MASK           0x01FF8000
-#define   AHCI_PORT_DEVSLP_DM_MASK             0x1E000000
+#define EFI_AHCI_PORT_START                  0x0100
+#define EFI_AHCI_PORT_REG_WIDTH              0x0080
+#define EFI_AHCI_PORT_CLB                    0x0000
+#define EFI_AHCI_PORT_CLBU                   0x0004
+#define EFI_AHCI_PORT_FB                     0x0008
+#define EFI_AHCI_PORT_FBU                    0x000C
+#define EFI_AHCI_PORT_IS                     0x0010
+#define   EFI_AHCI_PORT_IS_DHRS              BIT0
+#define   EFI_AHCI_PORT_IS_PSS               BIT1
+#define   EFI_AHCI_PORT_IS_DSS               BIT2
+#define   EFI_AHCI_PORT_IS_SDBS              BIT3
+#define   EFI_AHCI_PORT_IS_UFS               BIT4
+#define   EFI_AHCI_PORT_IS_DPS               BIT5
+#define   EFI_AHCI_PORT_IS_PCS               BIT6
+#define   EFI_AHCI_PORT_IS_DIS               BIT7
+#define   EFI_AHCI_PORT_IS_PRCS              BIT22
+#define   EFI_AHCI_PORT_IS_IPMS              BIT23
+#define   EFI_AHCI_PORT_IS_OFS               BIT24
+#define   EFI_AHCI_PORT_IS_INFS              BIT26
+#define   EFI_AHCI_PORT_IS_IFS               BIT27
+#define   EFI_AHCI_PORT_IS_HBDS              BIT28
+#define   EFI_AHCI_PORT_IS_HBFS              BIT29
+#define   EFI_AHCI_PORT_IS_TFES              BIT30
+#define   EFI_AHCI_PORT_IS_CPDS              BIT31
+#define   EFI_AHCI_PORT_IS_CLEAR             0xFFFFFFFF
+#define   EFI_AHCI_PORT_IS_FIS_CLEAR         0x0000000F
+#define   EFI_AHCI_PORT_IS_ERROR_MASK        (EFI_AHCI_PORT_IS_INFS | EFI_AHCI_PORT_IS_IFS | EFI_AHCI_PORT_IS_HBDS | EFI_AHCI_PORT_IS_HBFS | EFI_AHCI_PORT_IS_TFES)
+#define   EFI_AHCI_PORT_IS_FATAL_ERROR_MASK  (EFI_AHCI_PORT_IS_IFS | EFI_AHCI_PORT_IS_HBDS | EFI_AHCI_PORT_IS_HBFS | EFI_AHCI_PORT_IS_TFES)
+
+#define EFI_AHCI_PORT_IE                  0x0014
+#define EFI_AHCI_PORT_CMD                 0x0018
+#define   EFI_AHCI_PORT_CMD_ST_MASK       0xFFFFFFFE
+#define   EFI_AHCI_PORT_CMD_ST            BIT0
+#define   EFI_AHCI_PORT_CMD_SUD           BIT1
+#define   EFI_AHCI_PORT_CMD_POD           BIT2
+#define   EFI_AHCI_PORT_CMD_CLO           BIT3
+#define   EFI_AHCI_PORT_CMD_FRE           BIT4
+#define   EFI_AHCI_PORT_CMD_CCS_MASK      (BIT8 | BIT9 | BIT10 | BIT11 | BIT12)
+#define   EFI_AHCI_PORT_CMD_CCS_SHIFT     8
+#define   EFI_AHCI_PORT_CMD_FR            BIT14
+#define   EFI_AHCI_PORT_CMD_CR            BIT15
+#define   EFI_AHCI_PORT_CMD_MASK          ~(EFI_AHCI_PORT_CMD_ST | EFI_AHCI_PORT_CMD_FRE | EFI_AHCI_PORT_CMD_COL)
+#define   EFI_AHCI_PORT_CMD_PMA           BIT17
+#define   EFI_AHCI_PORT_CMD_HPCP          BIT18
+#define   EFI_AHCI_PORT_CMD_MPSP          BIT19
+#define   EFI_AHCI_PORT_CMD_CPD           BIT20
+#define   EFI_AHCI_PORT_CMD_ESP           BIT21
+#define   EFI_AHCI_PORT_CMD_ATAPI         BIT24
+#define   EFI_AHCI_PORT_CMD_DLAE          BIT25
+#define   EFI_AHCI_PORT_CMD_ALPE          BIT26
+#define   EFI_AHCI_PORT_CMD_ASP           BIT27
+#define   EFI_AHCI_PORT_CMD_ICC_MASK      (BIT28 | BIT29 | BIT30 | BIT31)
+#define   EFI_AHCI_PORT_CMD_ACTIVE        (1 << 28 )
+#define EFI_AHCI_PORT_TFD                 0x0020
+#define   EFI_AHCI_PORT_TFD_MASK          (BIT7 | BIT3 | BIT0)
+#define   EFI_AHCI_PORT_TFD_BSY           BIT7
+#define   EFI_AHCI_PORT_TFD_DRQ           BIT3
+#define   EFI_AHCI_PORT_TFD_ERR           BIT0
+#define   EFI_AHCI_PORT_TFD_ERR_MASK      0x00FF00
+#define EFI_AHCI_PORT_SIG                 0x0024
+#define EFI_AHCI_PORT_SSTS                0x0028
+#define   EFI_AHCI_PORT_SSTS_DET_MASK     0x000F
+#define   EFI_AHCI_PORT_SSTS_DET          0x0001
+#define   EFI_AHCI_PORT_SSTS_DET_PCE      0x0003
+#define   EFI_AHCI_PORT_SSTS_SPD_MASK     0x00F0
+#define EFI_AHCI_PORT_SCTL                0x002C
+#define   EFI_AHCI_PORT_SCTL_DET_MASK     0x000F
+#define   EFI_AHCI_PORT_SCTL_MASK         (~EFI_AHCI_PORT_SCTL_DET_MASK)
+#define   EFI_AHCI_PORT_SCTL_DET_INIT     0x0001
+#define   EFI_AHCI_PORT_SCTL_DET_PHYCOMM  0x0003
+#define   EFI_AHCI_PORT_SCTL_SPD_MASK     0x00F0
+#define   EFI_AHCI_PORT_SCTL_IPM_MASK     0x0F00
+#define   EFI_AHCI_PORT_SCTL_IPM_INIT     0x0300
+#define   EFI_AHCI_PORT_SCTL_IPM_PSD      0x0100
+#define   EFI_AHCI_PORT_SCTL_IPM_SSD      0x0200
+#define EFI_AHCI_PORT_SERR                0x0030
+#define   EFI_AHCI_PORT_SERR_RDIE         BIT0
+#define   EFI_AHCI_PORT_SERR_RCE          BIT1
+#define   EFI_AHCI_PORT_SERR_TDIE         BIT8
+#define   EFI_AHCI_PORT_SERR_PCDIE        BIT9
+#define   EFI_AHCI_PORT_SERR_PE           BIT10
+#define   EFI_AHCI_PORT_SERR_IE           BIT11
+#define   EFI_AHCI_PORT_SERR_PRC          BIT16
+#define   EFI_AHCI_PORT_SERR_PIE          BIT17
+#define   EFI_AHCI_PORT_SERR_CW           BIT18
+#define   EFI_AHCI_PORT_SERR_BDE          BIT19
+#define   EFI_AHCI_PORT_SERR_DE           BIT20
+#define   EFI_AHCI_PORT_SERR_CRCE         BIT21
+#define   EFI_AHCI_PORT_SERR_HE           BIT22
+#define   EFI_AHCI_PORT_SERR_LSE          BIT23
+#define   EFI_AHCI_PORT_SERR_TSTE         BIT24
+#define   EFI_AHCI_PORT_SERR_UFT          BIT25
+#define   EFI_AHCI_PORT_SERR_EX           BIT26
+#define   EFI_AHCI_PORT_ERR_CLEAR         0xFFFFFFFF
+#define EFI_AHCI_PORT_SACT                0x0034
+#define EFI_AHCI_PORT_CI                  0x0038
+#define EFI_AHCI_PORT_SNTF                0x003C
+#define AHCI_PORT_DEVSLP                  0x0044
+#define   AHCI_PORT_DEVSLP_ADSE           BIT0
+#define   AHCI_PORT_DEVSLP_DSP            BIT1
+#define   AHCI_PORT_DEVSLP_DETO_MASK      0x000003FC
+#define   AHCI_PORT_DEVSLP_MDAT_MASK      0x00007C00
+#define   AHCI_PORT_DEVSLP_DITO_MASK      0x01FF8000
+#define   AHCI_PORT_DEVSLP_DM_MASK        0x1E000000
 
 #define AHCI_COMMAND_RETRIES  5
 
@@ -200,20 +201,20 @@ typedef union {
 // The entry data structure is listed at the following.
 //
 typedef struct {
-  UINT32   AhciCmdCfl:5;      //Command FIS Length
-  UINT32   AhciCmdA:1;        //ATAPI
-  UINT32   AhciCmdW:1;        //Write
-  UINT32   AhciCmdP:1;        //Prefetchable
-  UINT32   AhciCmdR:1;        //Reset
-  UINT32   AhciCmdB:1;        //BIST
-  UINT32   AhciCmdC:1;        //Clear Busy upon R_OK
-  UINT32   AhciCmdRsvd:1;
-  UINT32   AhciCmdPmp:4;      //Port Multiplier Port
-  UINT32   AhciCmdPrdtl:16;   //Physical Region Descriptor Table Length
-  UINT32   AhciCmdPrdbc;      //Physical Region Descriptor Byte Count
-  UINT32   AhciCmdCtba;       //Command Table Descriptor Base Address
-  UINT32   AhciCmdCtbau;      //Command Table Descriptor Base Address Upper 32-BITs
-  UINT32   AhciCmdRsvd1[4];
+  UINT32    AhciCmdCfl   : 5; // Command FIS Length
+  UINT32    AhciCmdA     : 1; // ATAPI
+  UINT32    AhciCmdW     : 1; // Write
+  UINT32    AhciCmdP     : 1; // Prefetchable
+  UINT32    AhciCmdR     : 1; // Reset
+  UINT32    AhciCmdB     : 1; // BIST
+  UINT32    AhciCmdC     : 1; // Clear Busy upon R_OK
+  UINT32    AhciCmdRsvd  : 1;
+  UINT32    AhciCmdPmp   : 4;  // Port Multiplier Port
+  UINT32    AhciCmdPrdtl : 16; // Physical Region Descriptor Table Length
+  UINT32    AhciCmdPrdbc;      // Physical Region Descriptor Byte Count
+  UINT32    AhciCmdCtba;       // Command Table Descriptor Base Address
+  UINT32    AhciCmdCtbau;      // Command Table Descriptor Base Address Upper 32-BITs
+  UINT32    AhciCmdRsvd1[4];
 } EFI_AHCI_COMMAND_LIST;
 
 //
@@ -223,11 +224,11 @@ typedef struct {
 //
 typedef struct {
   UINT8    AhciCFisType;
-  UINT8    AhciCFisPmNum:4;
-  UINT8    AhciCFisRsvd:1;
-  UINT8    AhciCFisRsvd1:1;
-  UINT8    AhciCFisRsvd2:1;
-  UINT8    AhciCFisCmdInd:1;
+  UINT8    AhciCFisPmNum  : 4;
+  UINT8    AhciCFisRsvd   : 1;
+  UINT8    AhciCFisRsvd1  : 1;
+  UINT8    AhciCFisRsvd2  : 1;
+  UINT8    AhciCFisCmdInd : 1;
   UINT8    AhciCFisCmd;
   UINT8    AhciCFisFeature;
   UINT8    AhciCFisSecNum;
@@ -266,12 +267,12 @@ typedef struct {
 // list entry for this command slot.
 //
 typedef struct {
-  UINT32   AhciPrdtDba;       //Data Base Address
-  UINT32   AhciPrdtDbau;      //Data Base Address Upper 32-BITs
-  UINT32   AhciPrdtRsvd;
-  UINT32   AhciPrdtDbc:22;    //Data Byte Count
-  UINT32   AhciPrdtRsvd1:9;
-  UINT32   AhciPrdtIoc:1;     //Interrupt on Completion
+  UINT32    AhciPrdtDba;      // Data Base Address
+  UINT32    AhciPrdtDbau;     // Data Base Address Upper 32-BITs
+  UINT32    AhciPrdtRsvd;
+  UINT32    AhciPrdtDbc   : 22; // Data Byte Count
+  UINT32    AhciPrdtRsvd1 : 9;
+  UINT32    AhciPrdtIoc   : 1; // Interrupt on Completion
 } EFI_AHCI_COMMAND_PRDT;
 
 //
@@ -288,24 +289,24 @@ typedef struct {
 // Received FIS structure
 //
 typedef struct {
-  UINT8    AhciDmaSetupFis[0x1C];         // Dma Setup Fis: offset 0x00
-  UINT8    AhciDmaSetupFisRsvd[0x04];
-  UINT8    AhciPioSetupFis[0x14];         // Pio Setup Fis: offset 0x20
-  UINT8    AhciPioSetupFisRsvd[0x0C];
-  UINT8    AhciD2HRegisterFis[0x14];      // D2H Register Fis: offset 0x40
-  UINT8    AhciD2HRegisterFisRsvd[0x04];
-  UINT64   AhciSetDeviceBitsFis;          // Set Device Bits Fix: offset 0x58
-  UINT8    AhciUnknownFis[0x40];          // Unknown Fis: offset 0x60
-  UINT8    AhciUnknownFisRsvd[0x60];
+  UINT8     AhciDmaSetupFis[0x1C];        // Dma Setup Fis: offset 0x00
+  UINT8     AhciDmaSetupFisRsvd[0x04];
+  UINT8     AhciPioSetupFis[0x14];        // Pio Setup Fis: offset 0x20
+  UINT8     AhciPioSetupFisRsvd[0x0C];
+  UINT8     AhciD2HRegisterFis[0x14];     // D2H Register Fis: offset 0x40
+  UINT8     AhciD2HRegisterFisRsvd[0x04];
+  UINT64    AhciSetDeviceBitsFis;         // Set Device Bits Fix: offset 0x58
+  UINT8     AhciUnknownFis[0x40];         // Unknown Fis: offset 0x60
+  UINT8     AhciUnknownFisRsvd[0x60];
 } EFI_AHCI_RECEIVED_FIS;
 
 typedef struct {
-  UINT8  Madt : 5;
-  UINT8  Reserved_5 : 3;
-  UINT8  Deto;
-  UINT16 Reserved_16;
-  UINT32 Reserved_32 : 31;
-  UINT32 Supported : 1;
+  UINT8     Madt        : 5;
+  UINT8     Reserved_5  : 3;
+  UINT8     Deto;
+  UINT16    Reserved_16;
+  UINT32    Reserved_32 : 31;
+  UINT32    Supported   : 1;
 } DEVSLP_TIMING_VARIABLES;
 
 #pragma pack()
@@ -343,11 +344,11 @@ typedef struct {
 EFI_STATUS
 EFIAPI
 AhciPacketCommandExecute (
-  IN  EFI_PCI_IO_PROTOCOL                           *PciIo,
-  IN  EFI_AHCI_REGISTERS                            *AhciRegisters,
-  IN  UINT8                                         Port,
-  IN  UINT8                                         PortMultiplier,
-  IN  EFI_EXT_SCSI_PASS_THRU_SCSI_REQUEST_PACKET    *Packet
+  IN  EFI_PCI_IO_PROTOCOL                         *PciIo,
+  IN  EFI_AHCI_REGISTERS                          *AhciRegisters,
+  IN  UINT8                                       Port,
+  IN  UINT8                                       PortMultiplier,
+  IN  EFI_EXT_SCSI_PASS_THRU_SCSI_REQUEST_PACKET  *Packet
   );
 
 /**
@@ -366,10 +367,10 @@ AhciPacketCommandExecute (
 EFI_STATUS
 EFIAPI
 AhciStartCommand (
-  IN  EFI_PCI_IO_PROTOCOL       *PciIo,
-  IN  UINT8                     Port,
-  IN  UINT8                     CommandSlot,
-  IN  UINT64                    Timeout
+  IN  EFI_PCI_IO_PROTOCOL  *PciIo,
+  IN  UINT8                Port,
+  IN  UINT8                CommandSlot,
+  IN  UINT64               Timeout
   );
 
 /**
@@ -387,10 +388,9 @@ AhciStartCommand (
 EFI_STATUS
 EFIAPI
 AhciStopCommand (
-  IN  EFI_PCI_IO_PROTOCOL       *PciIo,
-  IN  UINT8                     Port,
-  IN  UINT64                    Timeout
+  IN  EFI_PCI_IO_PROTOCOL  *PciIo,
+  IN  UINT8                Port,
+  IN  UINT64               Timeout
   );
 
 #endif
-

File diff suppressed because it is too large
+ 232 - 205
MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.c


+ 173 - 173
MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.h

@@ -5,6 +5,7 @@
   SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
+
 #ifndef __ATA_ATAPI_PASS_THRU_H__
 #define __ATA_ATAPI_PASS_THRU_H__
 
@@ -36,14 +37,14 @@
 #include "IdeMode.h"
 #include "AhciMode.h"
 
-extern EFI_DRIVER_BINDING_PROTOCOL  gAtaAtapiPassThruDriverBinding;
-extern EFI_COMPONENT_NAME_PROTOCOL  gAtaAtapiPassThruComponentName;
-extern EFI_COMPONENT_NAME2_PROTOCOL gAtaAtapiPassThruComponentName2;
+extern EFI_DRIVER_BINDING_PROTOCOL   gAtaAtapiPassThruDriverBinding;
+extern EFI_COMPONENT_NAME_PROTOCOL   gAtaAtapiPassThruComponentName;
+extern EFI_COMPONENT_NAME2_PROTOCOL  gAtaAtapiPassThruComponentName2;
 
-extern EDKII_ATA_ATAPI_POLICY_PROTOCOL *mAtaAtapiPolicy;
+extern EDKII_ATA_ATAPI_POLICY_PROTOCOL  *mAtaAtapiPolicy;
 
-#define ATA_ATAPI_PASS_THRU_SIGNATURE  SIGNATURE_32 ('a', 'a', 'p', 't')
-#define ATA_ATAPI_DEVICE_SIGNATURE     SIGNATURE_32 ('a', 'd', 'e', 'v')
+#define ATA_ATAPI_PASS_THRU_SIGNATURE   SIGNATURE_32 ('a', 'a', 'p', 't')
+#define ATA_ATAPI_DEVICE_SIGNATURE      SIGNATURE_32 ('a', 'd', 'e', 'v')
 #define ATA_NONBLOCKING_TASK_SIGNATURE  SIGNATURE_32 ('a', 't', 's', 'k')
 
 typedef struct _ATA_NONBLOCK_TASK ATA_NONBLOCK_TASK;
@@ -66,88 +67,88 @@ typedef enum {
 // Ahci mode device info
 //
 typedef struct {
-  UINT32                            Signature;
-  LIST_ENTRY                        Link;
+  UINT32                 Signature;
+  LIST_ENTRY             Link;
 
-  UINT16                            Port;
-  UINT16                            PortMultiplier;
-  EFI_ATA_DEVICE_TYPE               Type;
+  UINT16                 Port;
+  UINT16                 PortMultiplier;
+  EFI_ATA_DEVICE_TYPE    Type;
 
-  EFI_IDENTIFY_DATA                 *IdentifyData;
+  EFI_IDENTIFY_DATA      *IdentifyData;
 } EFI_ATA_DEVICE_INFO;
 
 typedef struct {
-  UINT32                            Signature;
+  UINT32                              Signature;
 
-  EFI_HANDLE                        ControllerHandle;
-  EFI_PCI_IO_PROTOCOL               *PciIo;
-  EFI_IDE_CONTROLLER_INIT_PROTOCOL  *IdeControllerInit;
+  EFI_HANDLE                          ControllerHandle;
+  EFI_PCI_IO_PROTOCOL                 *PciIo;
+  EFI_IDE_CONTROLLER_INIT_PROTOCOL    *IdeControllerInit;
 
-  EFI_ATA_PASS_THRU_MODE            AtaPassThruMode;
-  EFI_ATA_PASS_THRU_PROTOCOL        AtaPassThru;
-  EFI_EXT_SCSI_PASS_THRU_MODE       ExtScsiPassThruMode;
-  EFI_EXT_SCSI_PASS_THRU_PROTOCOL   ExtScsiPassThru;
+  EFI_ATA_PASS_THRU_MODE              AtaPassThruMode;
+  EFI_ATA_PASS_THRU_PROTOCOL          AtaPassThru;
+  EFI_EXT_SCSI_PASS_THRU_MODE         ExtScsiPassThruMode;
+  EFI_EXT_SCSI_PASS_THRU_PROTOCOL     ExtScsiPassThru;
 
-  EFI_ATA_HC_WORK_MODE              Mode;
+  EFI_ATA_HC_WORK_MODE                Mode;
 
-  EFI_IDE_REGISTERS                 IdeRegisters[EfiIdeMaxChannel];
-  EFI_AHCI_REGISTERS                AhciRegisters;
+  EFI_IDE_REGISTERS                   IdeRegisters[EfiIdeMaxChannel];
+  EFI_AHCI_REGISTERS                  AhciRegisters;
 
   //
   // The attached device list
   //
-  LIST_ENTRY                        DeviceList;
-  UINT64                            EnabledPciAttributes;
-  UINT64                            OriginalPciAttributes;
+  LIST_ENTRY                          DeviceList;
+  UINT64                              EnabledPciAttributes;
+  UINT64                              OriginalPciAttributes;
 
   //
   // For AtaPassThru protocol, using the following bytes to record the previous call in
   // GetNextPort()/GetNextDevice().
   //
-  UINT16                            PreviousPort;
-  UINT16                            PreviousPortMultiplier;
+  UINT16                              PreviousPort;
+  UINT16                              PreviousPortMultiplier;
   //
   // For ExtScsiPassThru protocol, using the following bytes to record the previous call in
   // GetNextTarget()/GetNextTargetLun().
   //
-  UINT16                            PreviousTargetId;
-  UINT64                            PreviousLun;
+  UINT16                              PreviousTargetId;
+  UINT64                              PreviousLun;
 
   //
   // For Non-blocking.
   //
-  EFI_EVENT                         TimerEvent;
-  LIST_ENTRY                        NonBlockingTaskList;
+  EFI_EVENT                           TimerEvent;
+  LIST_ENTRY                          NonBlockingTaskList;
 } ATA_ATAPI_PASS_THRU_INSTANCE;
 
 //
 // Task for Non-blocking mode.
 //
 struct _ATA_NONBLOCK_TASK {
-  UINT32                            Signature;
-  LIST_ENTRY                        Link;
-
-  UINT16                            Port;
-  UINT16                            PortMultiplier;
-  EFI_ATA_PASS_THRU_COMMAND_PACKET  *Packet;
-  BOOLEAN                           IsStart;
-  EFI_EVENT                         Event;
-  UINT64                            RetryTimes;
-  BOOLEAN                           InfiniteWait;
-  VOID                              *Map;            // Pointer to map.
-  VOID                              *TableMap;       // Pointer to PRD table map.
-  EFI_ATA_DMA_PRD                   *MapBaseAddress; //  Pointer to range Base address for Map.
-  UINTN                             PageCount;       //  The page numbers used by PCIO freebuffer.
+  UINT32                              Signature;
+  LIST_ENTRY                          Link;
+
+  UINT16                              Port;
+  UINT16                              PortMultiplier;
+  EFI_ATA_PASS_THRU_COMMAND_PACKET    *Packet;
+  BOOLEAN                             IsStart;
+  EFI_EVENT                           Event;
+  UINT64                              RetryTimes;
+  BOOLEAN                             InfiniteWait;
+  VOID                                *Map;            // Pointer to map.
+  VOID                                *TableMap;       // Pointer to PRD table map.
+  EFI_ATA_DMA_PRD                     *MapBaseAddress; //  Pointer to range Base address for Map.
+  UINTN                               PageCount;       //  The page numbers used by PCIO freebuffer.
 };
 
 //
 // Timeout value which uses 100ns as a unit.
 // It means 3 second span.
 //
-#define ATA_ATAPI_TIMEOUT           EFI_TIMER_PERIOD_SECONDS(3)
-#define ATA_SPINUP_TIMEOUT          EFI_TIMER_PERIOD_SECONDS(10)
+#define ATA_ATAPI_TIMEOUT   EFI_TIMER_PERIOD_SECONDS(3)
+#define ATA_SPINUP_TIMEOUT  EFI_TIMER_PERIOD_SECONDS(10)
 
-#define IS_ALIGNED(addr, size)      (((UINTN) (addr) & (size - 1)) == 0)
+#define IS_ALIGNED(addr, size)  (((UINTN) (addr) & (size - 1)) == 0)
 
 #define ATA_PASS_THRU_PRIVATE_DATA_FROM_THIS(a) \
   CR (a, \
@@ -295,11 +296,11 @@ AtaAtapiPassThruComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 AtaAtapiPassThruComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  EFI_HANDLE                   ControllerHandle,
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **ControllerName
   );
 
 /**
@@ -347,9 +348,9 @@ AtaAtapiPassThruComponentNameGetControllerName (
 EFI_STATUS
 EFIAPI
 AtaAtapiPassThruSupported (
-  IN EFI_DRIVER_BINDING_PROTOCOL       *This,
-  IN EFI_HANDLE                        Controller,
-  IN EFI_DEVICE_PATH_PROTOCOL          *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   );
 
 /**
@@ -390,9 +391,9 @@ AtaAtapiPassThruSupported (
 EFI_STATUS
 EFIAPI
 AtaAtapiPassThruStart (
-  IN EFI_DRIVER_BINDING_PROTOCOL        *This,
-  IN EFI_HANDLE                         Controller,
-  IN EFI_DEVICE_PATH_PROTOCOL           *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   );
 
 /**
@@ -424,10 +425,10 @@ AtaAtapiPassThruStart (
 EFI_STATUS
 EFIAPI
 AtaAtapiPassThruStop (
-  IN  EFI_DRIVER_BINDING_PROTOCOL       *This,
-  IN  EFI_HANDLE                        Controller,
-  IN  UINTN                             NumberOfChildren,
-  IN  EFI_HANDLE                        *ChildHandleBuffer
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN  EFI_HANDLE                   Controller,
+  IN  UINTN                        NumberOfChildren,
+  IN  EFI_HANDLE                   *ChildHandleBuffer
   );
 
 /**
@@ -446,9 +447,9 @@ LIST_ENTRY *
 EFIAPI
 SearchDeviceInfoList (
   IN  ATA_ATAPI_PASS_THRU_INSTANCE  *Instance,
-  IN  UINT16                         Port,
-  IN  UINT16                         PortMultiplier,
-  IN  EFI_ATA_DEVICE_TYPE            DeviceType
+  IN  UINT16                        Port,
+  IN  UINT16                        PortMultiplier,
+  IN  EFI_ATA_DEVICE_TYPE           DeviceType
   );
 
 /**
@@ -470,10 +471,10 @@ EFI_STATUS
 EFIAPI
 CreateNewDeviceInfo (
   IN  ATA_ATAPI_PASS_THRU_INSTANCE  *Instance,
-  IN  UINT16                         Port,
-  IN  UINT16                         PortMultiplier,
-  IN  EFI_ATA_DEVICE_TYPE            DeviceType,
-  IN  EFI_IDENTIFY_DATA              *IdentifyData
+  IN  UINT16                        Port,
+  IN  UINT16                        PortMultiplier,
+  IN  EFI_ATA_DEVICE_TYPE           DeviceType,
+  IN  EFI_IDENTIFY_DATA             *IdentifyData
   );
 
 /**
@@ -499,7 +500,7 @@ DestroyDeviceInfoList (
 VOID
 EFIAPI
 DestroyAsynTaskList (
-  IN ATA_ATAPI_PASS_THRU_INSTANCE *Instance,
+  IN ATA_ATAPI_PASS_THRU_INSTANCE  *Instance,
   IN BOOLEAN                       IsSigEvent
   );
 
@@ -517,7 +518,7 @@ DestroyAsynTaskList (
 EFI_STATUS
 EFIAPI
 EnumerateAttachedDevice (
-  IN  ATA_ATAPI_PASS_THRU_INSTANCE      *Instance
+  IN  ATA_ATAPI_PASS_THRU_INSTANCE  *Instance
   );
 
 /**
@@ -532,7 +533,7 @@ VOID
 EFIAPI
 AsyncNonBlockingTransferRoutine (
   EFI_EVENT  Event,
-  VOID*      Context
+  VOID       *Context
   );
 
 /**
@@ -567,11 +568,11 @@ AsyncNonBlockingTransferRoutine (
 EFI_STATUS
 EFIAPI
 AtaPassThruPassThru (
-  IN     EFI_ATA_PASS_THRU_PROTOCOL       *This,
-  IN     UINT16                           Port,
-  IN     UINT16                           PortMultiplierPort,
-  IN OUT EFI_ATA_PASS_THRU_COMMAND_PACKET *Packet,
-  IN     EFI_EVENT                        Event OPTIONAL
+  IN     EFI_ATA_PASS_THRU_PROTOCOL        *This,
+  IN     UINT16                            Port,
+  IN     UINT16                            PortMultiplierPort,
+  IN OUT EFI_ATA_PASS_THRU_COMMAND_PACKET  *Packet,
+  IN     EFI_EVENT                         Event OPTIONAL
   );
 
 /**
@@ -608,8 +609,8 @@ AtaPassThruPassThru (
 EFI_STATUS
 EFIAPI
 AtaPassThruGetNextPort (
-  IN EFI_ATA_PASS_THRU_PROTOCOL *This,
-  IN OUT UINT16                 *Port
+  IN EFI_ATA_PASS_THRU_PROTOCOL  *This,
+  IN OUT UINT16                  *Port
   );
 
 /**
@@ -657,9 +658,9 @@ AtaPassThruGetNextPort (
 EFI_STATUS
 EFIAPI
 AtaPassThruGetNextDevice (
-  IN EFI_ATA_PASS_THRU_PROTOCOL *This,
-  IN UINT16                     Port,
-  IN OUT UINT16                 *PortMultiplierPort
+  IN EFI_ATA_PASS_THRU_PROTOCOL  *This,
+  IN UINT16                      Port,
+  IN OUT UINT16                  *PortMultiplierPort
   );
 
 /**
@@ -697,10 +698,10 @@ AtaPassThruGetNextDevice (
 EFI_STATUS
 EFIAPI
 AtaPassThruBuildDevicePath (
-  IN     EFI_ATA_PASS_THRU_PROTOCOL *This,
-  IN     UINT16                     Port,
-  IN     UINT16                     PortMultiplierPort,
-  IN OUT EFI_DEVICE_PATH_PROTOCOL   **DevicePath
+  IN     EFI_ATA_PASS_THRU_PROTOCOL  *This,
+  IN     UINT16                      Port,
+  IN     UINT16                      PortMultiplierPort,
+  IN OUT EFI_DEVICE_PATH_PROTOCOL    **DevicePath
   );
 
 /**
@@ -743,10 +744,10 @@ AtaPassThruBuildDevicePath (
 EFI_STATUS
 EFIAPI
 AtaPassThruGetDevice (
-  IN  EFI_ATA_PASS_THRU_PROTOCOL *This,
-  IN  EFI_DEVICE_PATH_PROTOCOL   *DevicePath,
-  OUT UINT16                     *Port,
-  OUT UINT16                     *PortMultiplierPort
+  IN  EFI_ATA_PASS_THRU_PROTOCOL  *This,
+  IN  EFI_DEVICE_PATH_PROTOCOL    *DevicePath,
+  OUT UINT16                      *Port,
+  OUT UINT16                      *PortMultiplierPort
   );
 
 /**
@@ -776,8 +777,8 @@ AtaPassThruGetDevice (
 EFI_STATUS
 EFIAPI
 AtaPassThruResetPort (
-  IN EFI_ATA_PASS_THRU_PROTOCOL *This,
-  IN UINT16                     Port
+  IN EFI_ATA_PASS_THRU_PROTOCOL  *This,
+  IN UINT16                      Port
   );
 
 /**
@@ -814,9 +815,9 @@ AtaPassThruResetPort (
 EFI_STATUS
 EFIAPI
 AtaPassThruResetDevice (
-  IN EFI_ATA_PASS_THRU_PROTOCOL *This,
-  IN UINT16                     Port,
-  IN UINT16                     PortMultiplierPort
+  IN EFI_ATA_PASS_THRU_PROTOCOL  *This,
+  IN UINT16                      Port,
+  IN UINT16                      PortMultiplierPort
   );
 
 /**
@@ -863,11 +864,11 @@ AtaPassThruResetDevice (
 EFI_STATUS
 EFIAPI
 ExtScsiPassThruPassThru (
-  IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL                    *This,
-  IN UINT8                                              *Target,
-  IN UINT64                                             Lun,
-  IN OUT EFI_EXT_SCSI_PASS_THRU_SCSI_REQUEST_PACKET     *Packet,
-  IN EFI_EVENT                                          Event OPTIONAL
+  IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL                 *This,
+  IN UINT8                                           *Target,
+  IN UINT64                                          Lun,
+  IN OUT EFI_EXT_SCSI_PASS_THRU_SCSI_REQUEST_PACKET  *Packet,
+  IN EFI_EVENT                                       Event OPTIONAL
   );
 
 /**
@@ -899,9 +900,9 @@ ExtScsiPassThruPassThru (
 EFI_STATUS
 EFIAPI
 ExtScsiPassThruGetNextTargetLun (
-  IN  EFI_EXT_SCSI_PASS_THRU_PROTOCOL    *This,
-  IN OUT UINT8                           **Target,
-  IN OUT UINT64                          *Lun
+  IN  EFI_EXT_SCSI_PASS_THRU_PROTOCOL  *This,
+  IN OUT UINT8                         **Target,
+  IN OUT UINT64                        *Lun
   );
 
 /**
@@ -934,10 +935,10 @@ ExtScsiPassThruGetNextTargetLun (
 EFI_STATUS
 EFIAPI
 ExtScsiPassThruBuildDevicePath (
-  IN     EFI_EXT_SCSI_PASS_THRU_PROTOCOL    *This,
-  IN     UINT8                              *Target,
-  IN     UINT64                             Lun,
-  IN OUT EFI_DEVICE_PATH_PROTOCOL           **DevicePath
+  IN     EFI_EXT_SCSI_PASS_THRU_PROTOCOL  *This,
+  IN     UINT8                            *Target,
+  IN     UINT64                           Lun,
+  IN OUT EFI_DEVICE_PATH_PROTOCOL         **DevicePath
   );
 
 /**
@@ -962,10 +963,10 @@ ExtScsiPassThruBuildDevicePath (
 EFI_STATUS
 EFIAPI
 ExtScsiPassThruGetTargetLun (
-  IN  EFI_EXT_SCSI_PASS_THRU_PROTOCOL    *This,
-  IN  EFI_DEVICE_PATH_PROTOCOL           *DevicePath,
-  OUT UINT8                              **Target,
-  OUT UINT64                             *Lun
+  IN  EFI_EXT_SCSI_PASS_THRU_PROTOCOL  *This,
+  IN  EFI_DEVICE_PATH_PROTOCOL         *DevicePath,
+  OUT UINT8                            **Target,
+  OUT UINT64                           *Lun
   );
 
 /**
@@ -982,7 +983,7 @@ ExtScsiPassThruGetTargetLun (
 EFI_STATUS
 EFIAPI
 ExtScsiPassThruResetChannel (
-  IN  EFI_EXT_SCSI_PASS_THRU_PROTOCOL   *This
+  IN  EFI_EXT_SCSI_PASS_THRU_PROTOCOL  *This
   );
 
 /**
@@ -1007,9 +1008,9 @@ ExtScsiPassThruResetChannel (
 EFI_STATUS
 EFIAPI
 ExtScsiPassThruResetTargetLun (
-  IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL    *This,
-  IN UINT8                              *Target,
-  IN UINT64                             Lun
+  IN EFI_EXT_SCSI_PASS_THRU_PROTOCOL  *This,
+  IN UINT8                            *Target,
+  IN UINT64                           Lun
   );
 
 /**
@@ -1037,8 +1038,8 @@ ExtScsiPassThruResetTargetLun (
 EFI_STATUS
 EFIAPI
 ExtScsiPassThruGetNextTarget (
-  IN  EFI_EXT_SCSI_PASS_THRU_PROTOCOL    *This,
-  IN OUT UINT8                           **Target
+  IN  EFI_EXT_SCSI_PASS_THRU_PROTOCOL  *This,
+  IN OUT UINT8                         **Target
   );
 
 /**
@@ -1052,7 +1053,7 @@ ExtScsiPassThruGetNextTarget (
 EFI_STATUS
 EFIAPI
 IdeModeInitialization (
-  IN  ATA_ATAPI_PASS_THRU_INSTANCE    *Instance
+  IN  ATA_ATAPI_PASS_THRU_INSTANCE  *Instance
   );
 
 /**
@@ -1066,7 +1067,7 @@ IdeModeInitialization (
 EFI_STATUS
 EFIAPI
 AhciModeInitialization (
-  IN  ATA_ATAPI_PASS_THRU_INSTANCE    *Instance
+  IN  ATA_ATAPI_PASS_THRU_INSTANCE  *Instance
   );
 
 /**
@@ -1094,16 +1095,16 @@ AhciModeInitialization (
 EFI_STATUS
 EFIAPI
 AhciNonDataTransfer (
-  IN     EFI_PCI_IO_PROTOCOL           *PciIo,
-  IN     EFI_AHCI_REGISTERS            *AhciRegisters,
-  IN     UINT8                         Port,
-  IN     UINT8                         PortMultiplier,
-  IN     EFI_AHCI_ATAPI_COMMAND        *AtapiCommand OPTIONAL,
-  IN     UINT8                         AtapiCommandLength,
-  IN     EFI_ATA_COMMAND_BLOCK         *AtaCommandBlock,
-  IN OUT EFI_ATA_STATUS_BLOCK          *AtaStatusBlock,
-  IN     UINT64                        Timeout,
-  IN     ATA_NONBLOCK_TASK             *Task
+  IN     EFI_PCI_IO_PROTOCOL     *PciIo,
+  IN     EFI_AHCI_REGISTERS      *AhciRegisters,
+  IN     UINT8                   Port,
+  IN     UINT8                   PortMultiplier,
+  IN     EFI_AHCI_ATAPI_COMMAND  *AtapiCommand OPTIONAL,
+  IN     UINT8                   AtapiCommandLength,
+  IN     EFI_ATA_COMMAND_BLOCK   *AtaCommandBlock,
+  IN OUT EFI_ATA_STATUS_BLOCK    *AtaStatusBlock,
+  IN     UINT64                  Timeout,
+  IN     ATA_NONBLOCK_TASK       *Task
   );
 
 /**
@@ -1134,19 +1135,19 @@ AhciNonDataTransfer (
 EFI_STATUS
 EFIAPI
 AhciDmaTransfer (
-  IN     ATA_ATAPI_PASS_THRU_INSTANCE *Instance,
-  IN     EFI_AHCI_REGISTERS           *AhciRegisters,
-  IN     UINT8                        Port,
-  IN     UINT8                        PortMultiplier,
-  IN     EFI_AHCI_ATAPI_COMMAND       *AtapiCommand OPTIONAL,
-  IN     UINT8                        AtapiCommandLength,
-  IN     BOOLEAN                      Read,
-  IN     EFI_ATA_COMMAND_BLOCK        *AtaCommandBlock,
-  IN OUT EFI_ATA_STATUS_BLOCK         *AtaStatusBlock,
-  IN OUT VOID                         *MemoryAddr,
-  IN     UINT32                       DataCount,
-  IN     UINT64                       Timeout,
-  IN     ATA_NONBLOCK_TASK            *Task
+  IN     ATA_ATAPI_PASS_THRU_INSTANCE  *Instance,
+  IN     EFI_AHCI_REGISTERS            *AhciRegisters,
+  IN     UINT8                         Port,
+  IN     UINT8                         PortMultiplier,
+  IN     EFI_AHCI_ATAPI_COMMAND        *AtapiCommand OPTIONAL,
+  IN     UINT8                         AtapiCommandLength,
+  IN     BOOLEAN                       Read,
+  IN     EFI_ATA_COMMAND_BLOCK         *AtaCommandBlock,
+  IN OUT EFI_ATA_STATUS_BLOCK          *AtaStatusBlock,
+  IN OUT VOID                          *MemoryAddr,
+  IN     UINT32                        DataCount,
+  IN     UINT64                        Timeout,
+  IN     ATA_NONBLOCK_TASK             *Task
   );
 
 /**
@@ -1177,19 +1178,19 @@ AhciDmaTransfer (
 EFI_STATUS
 EFIAPI
 AhciPioTransfer (
-  IN     EFI_PCI_IO_PROTOCOL        *PciIo,
-  IN     EFI_AHCI_REGISTERS         *AhciRegisters,
-  IN     UINT8                      Port,
-  IN     UINT8                      PortMultiplier,
-  IN     EFI_AHCI_ATAPI_COMMAND     *AtapiCommand OPTIONAL,
-  IN     UINT8                      AtapiCommandLength,
-  IN     BOOLEAN                    Read,
-  IN     EFI_ATA_COMMAND_BLOCK      *AtaCommandBlock,
-  IN OUT EFI_ATA_STATUS_BLOCK       *AtaStatusBlock,
-  IN OUT VOID                       *MemoryAddr,
-  IN     UINT32                     DataCount,
-  IN     UINT64                     Timeout,
-  IN     ATA_NONBLOCK_TASK          *Task
+  IN     EFI_PCI_IO_PROTOCOL     *PciIo,
+  IN     EFI_AHCI_REGISTERS      *AhciRegisters,
+  IN     UINT8                   Port,
+  IN     UINT8                   PortMultiplier,
+  IN     EFI_AHCI_ATAPI_COMMAND  *AtapiCommand OPTIONAL,
+  IN     UINT8                   AtapiCommandLength,
+  IN     BOOLEAN                 Read,
+  IN     EFI_ATA_COMMAND_BLOCK   *AtaCommandBlock,
+  IN OUT EFI_ATA_STATUS_BLOCK    *AtaStatusBlock,
+  IN OUT VOID                    *MemoryAddr,
+  IN     UINT32                  DataCount,
+  IN     UINT64                  Timeout,
+  IN     ATA_NONBLOCK_TASK       *Task
   );
 
 /**
@@ -1213,12 +1214,12 @@ AhciPioTransfer (
 EFI_STATUS
 EFIAPI
 AtaNonDataCommandIn (
-  IN     EFI_PCI_IO_PROTOCOL       *PciIo,
-  IN     EFI_IDE_REGISTERS         *IdeRegisters,
-  IN     EFI_ATA_COMMAND_BLOCK     *AtaCommandBlock,
-  IN OUT EFI_ATA_STATUS_BLOCK      *AtaStatusBlock,
-  IN     UINT64                    Timeout,
-  IN     ATA_NONBLOCK_TASK         *Task
+  IN     EFI_PCI_IO_PROTOCOL    *PciIo,
+  IN     EFI_IDE_REGISTERS      *IdeRegisters,
+  IN     EFI_ATA_COMMAND_BLOCK  *AtaCommandBlock,
+  IN OUT EFI_ATA_STATUS_BLOCK   *AtaStatusBlock,
+  IN     UINT64                 Timeout,
+  IN     ATA_NONBLOCK_TASK      *Task
   );
 
 /**
@@ -1284,16 +1285,15 @@ AtaUdmaInOut (
 EFI_STATUS
 EFIAPI
 AtaPioDataInOut (
-  IN     EFI_PCI_IO_PROTOCOL       *PciIo,
-  IN     EFI_IDE_REGISTERS         *IdeRegisters,
-  IN OUT VOID                      *Buffer,
-  IN     UINT64                    ByteCount,
-  IN     BOOLEAN                   Read,
-  IN     EFI_ATA_COMMAND_BLOCK     *AtaCommandBlock,
-  IN OUT EFI_ATA_STATUS_BLOCK      *AtaStatusBlock,
-  IN     UINT64                    Timeout,
-  IN     ATA_NONBLOCK_TASK         *Task
+  IN     EFI_PCI_IO_PROTOCOL    *PciIo,
+  IN     EFI_IDE_REGISTERS      *IdeRegisters,
+  IN OUT VOID                   *Buffer,
+  IN     UINT64                 ByteCount,
+  IN     BOOLEAN                Read,
+  IN     EFI_ATA_COMMAND_BLOCK  *AtaCommandBlock,
+  IN OUT EFI_ATA_STATUS_BLOCK   *AtaStatusBlock,
+  IN     UINT64                 Timeout,
+  IN     ATA_NONBLOCK_TASK      *Task
   );
 
 #endif
-

+ 15 - 16
MdeModulePkg/Bus/Ata/AtaAtapiPassThru/ComponentName.c

@@ -11,22 +11,22 @@
 //
 // Driver name table
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mAtaAtapiPassThruDriverNameTable[] = {
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE  mAtaAtapiPassThruDriverNameTable[] = {
   { "eng;en", L"AtaAtapiPassThru Driver" },
-  { NULL , NULL }
+  { NULL,     NULL                       }
 };
 
 //
 // Controller name table
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mAtaAtapiPassThruIdeControllerNameTable[] = {
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE  mAtaAtapiPassThruIdeControllerNameTable[] = {
   { "eng;en", L"IDE Controller" },
-  { NULL , NULL }
+  { NULL,     NULL              }
 };
 
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mAtaAtapiPassThruAhciControllerNameTable[] = {
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE  mAtaAtapiPassThruAhciControllerNameTable[] = {
   { "eng;en", L"AHCI Controller" },
-  { NULL , NULL }
+  { NULL,     NULL               }
 };
 
 //
@@ -41,9 +41,9 @@ GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME_PROTOCOL  gAtaAtapiPassThruComp
 //
 // EFI Component Name 2 Protocol
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL gAtaAtapiPassThruComponentName2 = {
-  (EFI_COMPONENT_NAME2_GET_DRIVER_NAME) AtaAtapiPassThruComponentNameGetDriverName,
-  (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME) AtaAtapiPassThruComponentNameGetControllerName,
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL  gAtaAtapiPassThruComponentName2 = {
+  (EFI_COMPONENT_NAME2_GET_DRIVER_NAME)AtaAtapiPassThruComponentNameGetDriverName,
+  (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME)AtaAtapiPassThruComponentNameGetControllerName,
   "en"
 };
 
@@ -103,7 +103,6 @@ AtaAtapiPassThruComponentNameGetDriverName (
            );
 }
 
-
 /**
   Retrieves a Unicode string that is the user readable name of the controller
   that is being managed by a driver.
@@ -175,11 +174,11 @@ AtaAtapiPassThruComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 AtaAtapiPassThruComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  EFI_HANDLE                   ControllerHandle,
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **ControllerName
   )
 {
   EFI_STATUS                    Status;
@@ -187,7 +186,7 @@ AtaAtapiPassThruComponentNameGetControllerName (
   VOID                          *Interface;
   ATA_ATAPI_PASS_THRU_INSTANCE  *Instance;
 
-  if (Language == NULL || ControllerName == NULL) {
+  if ((Language == NULL) || (ControllerName == NULL)) {
     return EFI_INVALID_PARAMETER;
   }
 

File diff suppressed because it is too large
+ 221 - 220
MdeModulePkg/Bus/Ata/AtaAtapiPassThru/IdeMode.c


+ 34 - 34
MdeModulePkg/Bus/Ata/AtaAtapiPassThru/IdeMode.h

@@ -5,6 +5,7 @@
   SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
+
 #ifndef __ATA_HC_IDE_MODE_H__
 #define __ATA_HC_IDE_MODE_H__
 
@@ -59,50 +60,50 @@ typedef enum {
 #define BMIS_INTERRUPT  BIT2
 #define BMIS_ERROR      BIT1
 
-#define BMIC_OFFSET    0x00
-#define BMIS_OFFSET    0x02
-#define BMID_OFFSET    0x04
+#define BMIC_OFFSET  0x00
+#define BMIS_OFFSET  0x02
+#define BMID_OFFSET  0x04
 
 //
 // IDE transfer mode
 //
-#define EFI_ATA_MODE_DEFAULT_PIO 0x00
-#define EFI_ATA_MODE_FLOW_PIO    0x01
-#define EFI_ATA_MODE_MDMA        0x04
-#define EFI_ATA_MODE_UDMA        0x08
+#define EFI_ATA_MODE_DEFAULT_PIO  0x00
+#define EFI_ATA_MODE_FLOW_PIO     0x01
+#define EFI_ATA_MODE_MDMA         0x04
+#define EFI_ATA_MODE_UDMA         0x08
 
 typedef struct {
-  UINT32  RegionBaseAddr;
-  UINT16  ByteCount;
-  UINT16  EndOfTable;
+  UINT32    RegionBaseAddr;
+  UINT16    ByteCount;
+  UINT16    EndOfTable;
 } EFI_ATA_DMA_PRD;
 
 typedef struct {
-  UINT8 ModeNumber   : 3;
-  UINT8 ModeCategory : 5;
+  UINT8    ModeNumber   : 3;
+  UINT8    ModeCategory : 5;
 } EFI_ATA_TRANSFER_MODE;
 
 typedef struct {
-  UINT8 Sector;
-  UINT8 Heads;
-  UINT8 MultipleSector;
+  UINT8    Sector;
+  UINT8    Heads;
+  UINT8    MultipleSector;
 } EFI_ATA_DRIVE_PARMS;
 
 //
 // IDE registers set
 //
 typedef struct {
-  UINT16                          Data;
-  UINT16                          ErrOrFeature;
-  UINT16                          SectorCount;
-  UINT16                          SectorNumber;
-  UINT16                          CylinderLsb;
-  UINT16                          CylinderMsb;
-  UINT16                          Head;
-  UINT16                          CmdOrStatus;
-  UINT16                          AltOrDev;
-
-  UINT16                          BusMasterBaseAddr;
+  UINT16    Data;
+  UINT16    ErrOrFeature;
+  UINT16    SectorCount;
+  UINT16    SectorNumber;
+  UINT16    CylinderLsb;
+  UINT16    CylinderMsb;
+  UINT16    Head;
+  UINT16    CmdOrStatus;
+  UINT16    AltOrDev;
+
+  UINT16    BusMasterBaseAddr;
 } EFI_IDE_REGISTERS;
 
 //
@@ -164,8 +165,8 @@ typedef struct {
 EFI_STATUS
 EFIAPI
 GetIdeRegisterIoAddr (
-  IN     EFI_PCI_IO_PROTOCOL         *PciIo,
-  IN OUT EFI_IDE_REGISTERS           *IdeRegisters
+  IN     EFI_PCI_IO_PROTOCOL  *PciIo,
+  IN OUT EFI_IDE_REGISTERS    *IdeRegisters
   );
 
 /**
@@ -187,12 +188,11 @@ GetIdeRegisterIoAddr (
 EFI_STATUS
 EFIAPI
 AtaPacketCommandExecute (
-  IN  EFI_PCI_IO_PROTOCOL                           *PciIo,
-  IN  EFI_IDE_REGISTERS                             *IdeRegisters,
-  IN  UINT8                                         Channel,
-  IN  UINT8                                         Device,
-  IN  EFI_EXT_SCSI_PASS_THRU_SCSI_REQUEST_PACKET    *Packet
+  IN  EFI_PCI_IO_PROTOCOL                         *PciIo,
+  IN  EFI_IDE_REGISTERS                           *IdeRegisters,
+  IN  UINT8                                       Channel,
+  IN  UINT8                                       Device,
+  IN  EFI_EXT_SCSI_PASS_THRU_SCSI_REQUEST_PACKET  *Packet
   );
 
 #endif
-

File diff suppressed because it is too large
+ 243 - 247
MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBus.c


+ 135 - 144
MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBus.h

@@ -38,27 +38,27 @@
 //
 // Time out value for ATA pass through protocol
 //
-#define ATA_TIMEOUT                       EFI_TIMER_PERIOD_SECONDS (3)
+#define ATA_TIMEOUT  EFI_TIMER_PERIOD_SECONDS (3)
 
 //
 // Maximum number of times to retry ATA command
 //
-#define MAX_RETRY_TIMES                   3
+#define MAX_RETRY_TIMES  3
 
 //
 // The maximum total sectors count in 28 bit addressing mode
 //
-#define MAX_28BIT_ADDRESSING_CAPACITY     0xfffffff
+#define MAX_28BIT_ADDRESSING_CAPACITY  0xfffffff
 
 //
 // The maximum ATA transaction sector count in 28 bit addressing mode.
 //
-#define MAX_28BIT_TRANSFER_BLOCK_NUM      0x100
+#define MAX_28BIT_TRANSFER_BLOCK_NUM  0x100
 
 //
 // The maximum ATA transaction sector count in 48 bit addressing mode.
 //
-//#define MAX_48BIT_TRANSFER_BLOCK_NUM      0x10000
+// #define MAX_48BIT_TRANSFER_BLOCK_NUM      0x10000
 
 //
 // BugBug: if the TransferLength is equal with 0x10000 (the 48bit max length),
@@ -66,109 +66,109 @@
 // seems not ready. Change the Maximum Sector Numbers to 0xFFFF to work round
 // this issue.
 //
-#define MAX_48BIT_TRANSFER_BLOCK_NUM      0xFFFF
+#define MAX_48BIT_TRANSFER_BLOCK_NUM  0xFFFF
 
 //
 // The maximum model name in ATA identify data
 //
-#define MAX_MODEL_NAME_LEN                40
+#define MAX_MODEL_NAME_LEN  40
 
-#define ATA_TASK_SIGNATURE                SIGNATURE_32 ('A', 'T', 'S', 'K')
-#define ATA_DEVICE_SIGNATURE              SIGNATURE_32 ('A', 'B', 'I', 'D')
-#define ATA_SUB_TASK_SIGNATURE            SIGNATURE_32 ('A', 'S', 'T', 'S')
-#define IS_ALIGNED(addr, size)            (((UINTN) (addr) & (size - 1)) == 0)
+#define ATA_TASK_SIGNATURE      SIGNATURE_32 ('A', 'T', 'S', 'K')
+#define ATA_DEVICE_SIGNATURE    SIGNATURE_32 ('A', 'B', 'I', 'D')
+#define ATA_SUB_TASK_SIGNATURE  SIGNATURE_32 ('A', 'S', 'T', 'S')
+#define IS_ALIGNED(addr, size)  (((UINTN) (addr) & (size - 1)) == 0)
 
 //
 // ATA bus data structure for ATA controller
 //
 typedef struct {
-  EFI_ATA_PASS_THRU_PROTOCOL  *AtaPassThru;
-  EFI_HANDLE                  Controller;
-  EFI_DEVICE_PATH_PROTOCOL    *ParentDevicePath;
-  EFI_HANDLE                  DriverBindingHandle;
+  EFI_ATA_PASS_THRU_PROTOCOL    *AtaPassThru;
+  EFI_HANDLE                    Controller;
+  EFI_DEVICE_PATH_PROTOCOL      *ParentDevicePath;
+  EFI_HANDLE                    DriverBindingHandle;
 } ATA_BUS_DRIVER_DATA;
 
 //
 // ATA device data structure for each child device
 //
 typedef struct {
-  UINT32                                Signature;
+  UINT32                                   Signature;
 
-  EFI_HANDLE                            Handle;
-  EFI_BLOCK_IO_PROTOCOL                 BlockIo;
-  EFI_BLOCK_IO2_PROTOCOL                BlockIo2;
-  EFI_BLOCK_IO_MEDIA                    BlockMedia;
-  EFI_DISK_INFO_PROTOCOL                DiskInfo;
-  EFI_DEVICE_PATH_PROTOCOL              *DevicePath;
-  EFI_STORAGE_SECURITY_COMMAND_PROTOCOL StorageSecurity;
+  EFI_HANDLE                               Handle;
+  EFI_BLOCK_IO_PROTOCOL                    BlockIo;
+  EFI_BLOCK_IO2_PROTOCOL                   BlockIo2;
+  EFI_BLOCK_IO_MEDIA                       BlockMedia;
+  EFI_DISK_INFO_PROTOCOL                   DiskInfo;
+  EFI_DEVICE_PATH_PROTOCOL                 *DevicePath;
+  EFI_STORAGE_SECURITY_COMMAND_PROTOCOL    StorageSecurity;
 
-  ATA_BUS_DRIVER_DATA                   *AtaBusDriverData;
-  UINT16                                Port;
-  UINT16                                PortMultiplierPort;
+  ATA_BUS_DRIVER_DATA                      *AtaBusDriverData;
+  UINT16                                   Port;
+  UINT16                                   PortMultiplierPort;
 
   //
   // Buffer for the execution of ATA pass through protocol
   //
-  EFI_ATA_PASS_THRU_COMMAND_PACKET      Packet;
-  EFI_ATA_COMMAND_BLOCK                 Acb;
-  EFI_ATA_STATUS_BLOCK                  *Asb;
+  EFI_ATA_PASS_THRU_COMMAND_PACKET         Packet;
+  EFI_ATA_COMMAND_BLOCK                    Acb;
+  EFI_ATA_STATUS_BLOCK                     *Asb;
 
-  BOOLEAN                               UdmaValid;
-  BOOLEAN                               Lba48Bit;
+  BOOLEAN                                  UdmaValid;
+  BOOLEAN                                  Lba48Bit;
 
   //
   // Cached data for ATA identify data
   //
-  ATA_IDENTIFY_DATA                     *IdentifyData;
+  ATA_IDENTIFY_DATA                        *IdentifyData;
 
-  EFI_UNICODE_STRING_TABLE              *ControllerNameTable;
-  CHAR16                                ModelName[MAX_MODEL_NAME_LEN + 1];
+  EFI_UNICODE_STRING_TABLE                 *ControllerNameTable;
+  CHAR16                                   ModelName[MAX_MODEL_NAME_LEN + 1];
 
-  LIST_ENTRY                            AtaTaskList;
-  LIST_ENTRY                            AtaSubTaskList;
-  BOOLEAN                               Abort;
+  LIST_ENTRY                               AtaTaskList;
+  LIST_ENTRY                               AtaSubTaskList;
+  BOOLEAN                                  Abort;
 } ATA_DEVICE;
 
 //
 // Sub-Task for the non blocking I/O
 //
 typedef struct {
-  UINT32                            Signature;
-  ATA_DEVICE                        *AtaDevice;
-  EFI_BLOCK_IO2_TOKEN               *Token;
-  UINTN                             *UnsignalledEventCount;
-  EFI_ATA_PASS_THRU_COMMAND_PACKET  Packet;
-  BOOLEAN                           *IsError;// Indicate whether meeting error during source allocation for new task.
-  LIST_ENTRY                        TaskEntry;
+  UINT32                              Signature;
+  ATA_DEVICE                          *AtaDevice;
+  EFI_BLOCK_IO2_TOKEN                 *Token;
+  UINTN                               *UnsignalledEventCount;
+  EFI_ATA_PASS_THRU_COMMAND_PACKET    Packet;
+  BOOLEAN                             *IsError;// Indicate whether meeting error during source allocation for new task.
+  LIST_ENTRY                          TaskEntry;
 } ATA_BUS_ASYN_SUB_TASK;
 
 //
 // Task for the non blocking I/O
 //
 typedef struct {
-  UINT32                            Signature;
-  EFI_BLOCK_IO2_TOKEN               *Token;
-  ATA_DEVICE                        *AtaDevice;
-  UINT8                             *Buffer;
-  EFI_LBA                           StartLba;
-  UINTN                             NumberOfBlocks;
-  BOOLEAN                           IsWrite;
-  LIST_ENTRY                        TaskEntry;
+  UINT32                 Signature;
+  EFI_BLOCK_IO2_TOKEN    *Token;
+  ATA_DEVICE             *AtaDevice;
+  UINT8                  *Buffer;
+  EFI_LBA                StartLba;
+  UINTN                  NumberOfBlocks;
+  BOOLEAN                IsWrite;
+  LIST_ENTRY             TaskEntry;
 } ATA_BUS_ASYN_TASK;
 
-#define ATA_DEVICE_FROM_BLOCK_IO(a)         CR (a, ATA_DEVICE, BlockIo, ATA_DEVICE_SIGNATURE)
-#define ATA_DEVICE_FROM_BLOCK_IO2(a)        CR (a, ATA_DEVICE, BlockIo2, ATA_DEVICE_SIGNATURE)
-#define ATA_DEVICE_FROM_DISK_INFO(a)        CR (a, ATA_DEVICE, DiskInfo, ATA_DEVICE_SIGNATURE)
-#define ATA_DEVICE_FROM_STORAGE_SECURITY(a) CR (a, ATA_DEVICE, StorageSecurity, ATA_DEVICE_SIGNATURE)
-#define ATA_ASYN_SUB_TASK_FROM_ENTRY(a)     CR (a, ATA_BUS_ASYN_SUB_TASK, TaskEntry, ATA_SUB_TASK_SIGNATURE)
-#define ATA_ASYN_TASK_FROM_ENTRY(a)         CR (a, ATA_BUS_ASYN_TASK, TaskEntry, ATA_TASK_SIGNATURE)
+#define ATA_DEVICE_FROM_BLOCK_IO(a)          CR (a, ATA_DEVICE, BlockIo, ATA_DEVICE_SIGNATURE)
+#define ATA_DEVICE_FROM_BLOCK_IO2(a)         CR (a, ATA_DEVICE, BlockIo2, ATA_DEVICE_SIGNATURE)
+#define ATA_DEVICE_FROM_DISK_INFO(a)         CR (a, ATA_DEVICE, DiskInfo, ATA_DEVICE_SIGNATURE)
+#define ATA_DEVICE_FROM_STORAGE_SECURITY(a)  CR (a, ATA_DEVICE, StorageSecurity, ATA_DEVICE_SIGNATURE)
+#define ATA_ASYN_SUB_TASK_FROM_ENTRY(a)      CR (a, ATA_BUS_ASYN_SUB_TASK, TaskEntry, ATA_SUB_TASK_SIGNATURE)
+#define ATA_ASYN_TASK_FROM_ENTRY(a)          CR (a, ATA_BUS_ASYN_TASK, TaskEntry, ATA_TASK_SIGNATURE)
 
 //
 // Global Variables
 //
-extern EFI_DRIVER_BINDING_PROTOCOL        gAtaBusDriverBinding;
-extern EFI_COMPONENT_NAME_PROTOCOL        gAtaBusComponentName;
-extern EFI_COMPONENT_NAME2_PROTOCOL       gAtaBusComponentName2;
+extern EFI_DRIVER_BINDING_PROTOCOL   gAtaBusDriverBinding;
+extern EFI_COMPONENT_NAME_PROTOCOL   gAtaBusComponentName;
+extern EFI_COMPONENT_NAME2_PROTOCOL  gAtaBusComponentName2;
 
 /**
   Allocates an aligned buffer for ATA device.
@@ -185,8 +185,8 @@ extern EFI_COMPONENT_NAME2_PROTOCOL       gAtaBusComponentName2;
 **/
 VOID *
 AllocateAlignedBuffer (
-  IN ATA_DEVICE               *AtaDevice,
-  IN UINTN                    BufferSize
+  IN ATA_DEVICE  *AtaDevice,
+  IN UINTN       BufferSize
   );
 
 /**
@@ -201,8 +201,8 @@ AllocateAlignedBuffer (
 **/
 VOID
 FreeAlignedBuffer (
-  IN VOID                     *Buffer,
-  IN UINTN                    BufferSize
+  IN VOID   *Buffer,
+  IN UINTN  BufferSize
   );
 
 /**
@@ -230,10 +230,9 @@ FreeAtaSubTask (
 **/
 EFI_STATUS
 ResetAtaDevice (
-  IN ATA_DEVICE                           *AtaDevice
+  IN ATA_DEVICE  *AtaDevice
   );
 
-
 /**
   Discovers whether it is a valid ATA device.
 
@@ -250,7 +249,7 @@ ResetAtaDevice (
 **/
 EFI_STATUS
 DiscoverAtaDevice (
-  IN OUT ATA_DEVICE                 *AtaDevice
+  IN OUT ATA_DEVICE  *AtaDevice
   );
 
 /**
@@ -272,13 +271,13 @@ DiscoverAtaDevice (
 
 **/
 EFI_STATUS
-AccessAtaDevice(
-  IN OUT ATA_DEVICE                 *AtaDevice,
-  IN OUT UINT8                      *Buffer,
-  IN EFI_LBA                        StartLba,
-  IN UINTN                          NumberOfBlocks,
-  IN BOOLEAN                        IsWrite,
-  IN OUT EFI_BLOCK_IO2_TOKEN        *Token
+AccessAtaDevice (
+  IN OUT ATA_DEVICE           *AtaDevice,
+  IN OUT UINT8                *Buffer,
+  IN EFI_LBA                  StartLba,
+  IN UINTN                    NumberOfBlocks,
+  IN BOOLEAN                  IsWrite,
+  IN OUT EFI_BLOCK_IO2_TOKEN  *Token
   );
 
 /**
@@ -313,19 +312,20 @@ AccessAtaDevice(
 EFI_STATUS
 EFIAPI
 TrustTransferAtaDevice (
-  IN OUT ATA_DEVICE                 *AtaDevice,
-  IN OUT VOID                       *Buffer,
-  IN UINT8                          SecurityProtocolId,
-  IN UINT16                         SecurityProtocolSpecificData,
-  IN UINTN                          TransferLength,
-  IN BOOLEAN                        IsTrustSend,
-  IN UINT64                         Timeout,
-  OUT UINTN                         *TransferLengthOut
+  IN OUT ATA_DEVICE  *AtaDevice,
+  IN OUT VOID        *Buffer,
+  IN UINT8           SecurityProtocolId,
+  IN UINT16          SecurityProtocolSpecificData,
+  IN UINTN           TransferLength,
+  IN BOOLEAN         IsTrustSend,
+  IN UINT64          Timeout,
+  OUT UINTN          *TransferLengthOut
   );
 
 //
 // Protocol interface prototypes
 //
+
 /**
   Tests to see if this driver supports a given controller. If a child device is provided,
   it further tests to see if this driver supports creating a handle for the specified child device.
@@ -448,13 +448,12 @@ AtaBusDriverBindingStart (
 EFI_STATUS
 EFIAPI
 AtaBusDriverBindingStop (
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,
-  IN  EFI_HANDLE                      Controller,
-  IN  UINTN                           NumberOfChildren,
-  IN  EFI_HANDLE                      *ChildHandleBuffer
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN  EFI_HANDLE                   Controller,
+  IN  UINTN                        NumberOfChildren,
+  IN  EFI_HANDLE                   *ChildHandleBuffer
   );
 
-
 /**
   Retrieves a Unicode string that is the user readable name of the driver.
 
@@ -502,7 +501,6 @@ AtaBusComponentNameGetDriverName (
   OUT CHAR16                       **DriverName
   );
 
-
 /**
   Retrieves a Unicode string that is the user readable name of the controller
   that is being managed by a driver.
@@ -574,14 +572,13 @@ AtaBusComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 AtaBusComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  EFI_HANDLE                   ControllerHandle,
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **ControllerName
   );
 
-
 /**
   Reset the Block Device.
 
@@ -596,11 +593,10 @@ AtaBusComponentNameGetControllerName (
 EFI_STATUS
 EFIAPI
 AtaBlockIoReset (
-  IN  EFI_BLOCK_IO_PROTOCOL   *This,
-  IN  BOOLEAN                 ExtendedVerification
+  IN  EFI_BLOCK_IO_PROTOCOL  *This,
+  IN  BOOLEAN                ExtendedVerification
   );
 
-
 /**
   Read BufferSize bytes from Lba into Buffer.
 
@@ -623,14 +619,13 @@ AtaBlockIoReset (
 EFI_STATUS
 EFIAPI
 AtaBlockIoReadBlocks (
-  IN  EFI_BLOCK_IO_PROTOCOL   *This,
-  IN  UINT32                  MediaId,
-  IN  EFI_LBA                 Lba,
-  IN  UINTN                   BufferSize,
-  OUT VOID                    *Buffer
+  IN  EFI_BLOCK_IO_PROTOCOL  *This,
+  IN  UINT32                 MediaId,
+  IN  EFI_LBA                Lba,
+  IN  UINTN                  BufferSize,
+  OUT VOID                   *Buffer
   );
 
-
 /**
   Write BufferSize bytes from Lba into Buffer.
 
@@ -654,14 +649,13 @@ AtaBlockIoReadBlocks (
 EFI_STATUS
 EFIAPI
 AtaBlockIoWriteBlocks (
-  IN  EFI_BLOCK_IO_PROTOCOL   *This,
-  IN  UINT32                  MediaId,
-  IN  EFI_LBA                 Lba,
-  IN  UINTN                   BufferSize,
-  IN  VOID                    *Buffer
+  IN  EFI_BLOCK_IO_PROTOCOL  *This,
+  IN  UINT32                 MediaId,
+  IN  EFI_LBA                Lba,
+  IN  UINTN                  BufferSize,
+  IN  VOID                   *Buffer
   );
 
-
 /**
   Flush the Block Device.
 
@@ -675,7 +669,7 @@ AtaBlockIoWriteBlocks (
 EFI_STATUS
 EFIAPI
 AtaBlockIoFlushBlocks (
-  IN  EFI_BLOCK_IO_PROTOCOL   *This
+  IN  EFI_BLOCK_IO_PROTOCOL  *This
   );
 
 /**
@@ -797,7 +791,7 @@ AtaBlockIoFlushBlocksEx (
 VOID
 EFIAPI
 AtaTerminateNonBlockingTask (
-  IN ATA_DEVICE               *AtaDevice
+  IN ATA_DEVICE  *AtaDevice
   );
 
 /**
@@ -819,12 +813,11 @@ AtaTerminateNonBlockingTask (
 EFI_STATUS
 EFIAPI
 AtaDiskInfoInquiry (
-  IN     EFI_DISK_INFO_PROTOCOL   *This,
-  IN OUT VOID                     *InquiryData,
-  IN OUT UINT32                   *InquiryDataSize
+  IN     EFI_DISK_INFO_PROTOCOL  *This,
+  IN OUT VOID                    *InquiryData,
+  IN OUT UINT32                  *InquiryDataSize
   );
 
-
 /**
   Provides identify information for the controller type.
 
@@ -846,12 +839,11 @@ AtaDiskInfoInquiry (
 EFI_STATUS
 EFIAPI
 AtaDiskInfoIdentify (
-  IN     EFI_DISK_INFO_PROTOCOL   *This,
-  IN OUT VOID                     *IdentifyData,
-  IN OUT UINT32                   *IdentifyDataSize
+  IN     EFI_DISK_INFO_PROTOCOL  *This,
+  IN OUT VOID                    *IdentifyData,
+  IN OUT UINT32                  *IdentifyDataSize
   );
 
-
 /**
   Provides sense data information for the controller type.
 
@@ -872,13 +864,12 @@ AtaDiskInfoIdentify (
 EFI_STATUS
 EFIAPI
 AtaDiskInfoSenseData (
-  IN     EFI_DISK_INFO_PROTOCOL   *This,
-  IN OUT VOID                     *SenseData,
-  IN OUT UINT32                   *SenseDataSize,
-  OUT    UINT8                    *SenseDataNumber
+  IN     EFI_DISK_INFO_PROTOCOL  *This,
+  IN OUT VOID                    *SenseData,
+  IN OUT UINT32                  *SenseDataSize,
+  OUT    UINT8                   *SenseDataNumber
   );
 
-
 /**
   This function is used by the IDE bus driver to get controller information.
 
@@ -893,9 +884,9 @@ AtaDiskInfoSenseData (
 EFI_STATUS
 EFIAPI
 AtaDiskInfoWhichIde (
-  IN  EFI_DISK_INFO_PROTOCOL   *This,
-  OUT UINT32                   *IdeChannel,
-  OUT UINT32                   *IdeDevice
+  IN  EFI_DISK_INFO_PROTOCOL  *This,
+  OUT UINT32                  *IdeChannel,
+  OUT UINT32                  *IdeDevice
   );
 
 /**
@@ -973,14 +964,14 @@ AtaDiskInfoWhichIde (
 EFI_STATUS
 EFIAPI
 AtaStorageSecurityReceiveData (
-  IN EFI_STORAGE_SECURITY_COMMAND_PROTOCOL    *This,
-  IN UINT32                                   MediaId,
-  IN UINT64                                   Timeout,
-  IN UINT8                                    SecurityProtocolId,
-  IN UINT16                                   SecurityProtocolSpecificData,
-  IN UINTN                                    PayloadBufferSize,
-  OUT VOID                                    *PayloadBuffer,
-  OUT UINTN                                   *PayloadTransferSize
+  IN EFI_STORAGE_SECURITY_COMMAND_PROTOCOL  *This,
+  IN UINT32                                 MediaId,
+  IN UINT64                                 Timeout,
+  IN UINT8                                  SecurityProtocolId,
+  IN UINT16                                 SecurityProtocolSpecificData,
+  IN UINTN                                  PayloadBufferSize,
+  OUT VOID                                  *PayloadBuffer,
+  OUT UINTN                                 *PayloadTransferSize
   );
 
 /**
@@ -1047,13 +1038,13 @@ AtaStorageSecurityReceiveData (
 EFI_STATUS
 EFIAPI
 AtaStorageSecuritySendData (
-  IN EFI_STORAGE_SECURITY_COMMAND_PROTOCOL    *This,
-  IN UINT32                                   MediaId,
-  IN UINT64                                   Timeout,
-  IN UINT8                                    SecurityProtocolId,
-  IN UINT16                                   SecurityProtocolSpecificData,
-  IN UINTN                                    PayloadBufferSize,
-  IN VOID                                     *PayloadBuffer
+  IN EFI_STORAGE_SECURITY_COMMAND_PROTOCOL  *This,
+  IN UINT32                                 MediaId,
+  IN UINT64                                 Timeout,
+  IN UINT8                                  SecurityProtocolId,
+  IN UINT16                                 SecurityProtocolSpecificData,
+  IN UINTN                                  PayloadBufferSize,
+  IN VOID                                   *PayloadBuffer
   );
 
 /**
@@ -1069,7 +1060,7 @@ AtaStorageSecuritySendData (
 **/
 VOID
 InitiateTPerReset (
-  IN   ATA_DEVICE       *AtaDevice
+  IN   ATA_DEVICE  *AtaDevice
   );
 
 #endif

+ 166 - 159
MdeModulePkg/Bus/Ata/AtaBusDxe/AtaPassThruExecute.c

@@ -19,16 +19,16 @@
 
 #include "AtaBus.h"
 
-#define ATA_CMD_TRUST_NON_DATA    0x5B
-#define ATA_CMD_TRUST_RECEIVE     0x5C
-#define ATA_CMD_TRUST_RECEIVE_DMA 0x5D
-#define ATA_CMD_TRUST_SEND        0x5E
-#define ATA_CMD_TRUST_SEND_DMA    0x5F
+#define ATA_CMD_TRUST_NON_DATA     0x5B
+#define ATA_CMD_TRUST_RECEIVE      0x5C
+#define ATA_CMD_TRUST_RECEIVE_DMA  0x5D
+#define ATA_CMD_TRUST_SEND         0x5E
+#define ATA_CMD_TRUST_SEND_DMA     0x5F
 
 //
 // Look up table (UdmaValid, IsWrite) for EFI_ATA_PASS_THRU_CMD_PROTOCOL
 //
-EFI_ATA_PASS_THRU_CMD_PROTOCOL mAtaPassThruCmdProtocols[][2] = {
+EFI_ATA_PASS_THRU_CMD_PROTOCOL  mAtaPassThruCmdProtocols[][2] = {
   {
     EFI_ATA_PASS_THRU_PROTOCOL_PIO_DATA_IN,
     EFI_ATA_PASS_THRU_PROTOCOL_PIO_DATA_OUT
@@ -42,7 +42,7 @@ EFI_ATA_PASS_THRU_CMD_PROTOCOL mAtaPassThruCmdProtocols[][2] = {
 //
 // Look up table (UdmaValid, Lba48Bit, IsIsWrite) for ATA_CMD
 //
-UINT8 mAtaCommands[][2][2] = {
+UINT8  mAtaCommands[][2][2] = {
   {
     {
       ATA_CMD_READ_SECTORS,            // 28-bit LBA; PIO read
@@ -68,7 +68,7 @@ UINT8 mAtaCommands[][2][2] = {
 //
 // Look up table (UdmaValid, IsTrustSend) for ATA_CMD
 //
-UINT8 mAtaTrustCommands[2][2] = {
+UINT8  mAtaTrustCommands[2][2] = {
   {
     ATA_CMD_TRUST_RECEIVE,            // PIO read
     ATA_CMD_TRUST_SEND                // PIO write
@@ -79,16 +79,14 @@ UINT8 mAtaTrustCommands[2][2] = {
   }
 };
 
-
 //
 // Look up table (Lba48Bit) for maximum transfer block number
 //
-UINTN mMaxTransferBlockNumber[] = {
+UINTN  mMaxTransferBlockNumber[] = {
   MAX_28BIT_TRANSFER_BLOCK_NUM,
   MAX_48BIT_TRANSFER_BLOCK_NUM
 };
 
-
 /**
   Wrapper for EFI_ATA_PASS_THRU_PROTOCOL.PassThru().
 
@@ -112,21 +110,21 @@ UINTN mMaxTransferBlockNumber[] = {
 **/
 EFI_STATUS
 AtaDevicePassThru (
-  IN OUT ATA_DEVICE                       *AtaDevice,
-  IN OUT EFI_ATA_PASS_THRU_COMMAND_PACKET *TaskPacket  OPTIONAL,
-  IN OUT EFI_EVENT                        Event OPTIONAL
+  IN OUT ATA_DEVICE                        *AtaDevice,
+  IN OUT EFI_ATA_PASS_THRU_COMMAND_PACKET  *TaskPacket  OPTIONAL,
+  IN OUT EFI_EVENT                         Event OPTIONAL
   )
 {
-  EFI_STATUS                              Status;
-  EFI_ATA_PASS_THRU_PROTOCOL              *AtaPassThru;
-  EFI_ATA_PASS_THRU_COMMAND_PACKET        *Packet;
+  EFI_STATUS                        Status;
+  EFI_ATA_PASS_THRU_PROTOCOL        *AtaPassThru;
+  EFI_ATA_PASS_THRU_COMMAND_PACKET  *Packet;
 
   //
   // Assemble packet. If it is non blocking mode, the Ata driver should keep each
   // subtask and clean them when the event is signaled.
   //
   if (TaskPacket != NULL) {
-    Packet = TaskPacket;
+    Packet      = TaskPacket;
     Packet->Asb = AllocateAlignedBuffer (AtaDevice, sizeof (EFI_ATA_STATUS_BLOCK));
     if (Packet->Asb == NULL) {
       return EFI_OUT_OF_RESOURCES;
@@ -135,7 +133,7 @@ AtaDevicePassThru (
     CopyMem (Packet->Asb, AtaDevice->Asb, sizeof (EFI_ATA_STATUS_BLOCK));
     Packet->Acb = AllocateCopyPool (sizeof (EFI_ATA_COMMAND_BLOCK), &AtaDevice->Acb);
   } else {
-    Packet = &AtaDevice->Packet;
+    Packet      = &AtaDevice->Packet;
     Packet->Asb = AtaDevice->Asb;
     Packet->Acb = &AtaDevice->Acb;
   }
@@ -159,7 +157,6 @@ AtaDevicePassThru (
   return Status;
 }
 
-
 /**
   Wrapper for EFI_ATA_PASS_THRU_PROTOCOL.ResetDevice().
 
@@ -173,10 +170,10 @@ AtaDevicePassThru (
 **/
 EFI_STATUS
 ResetAtaDevice (
-  IN ATA_DEVICE                           *AtaDevice
+  IN ATA_DEVICE  *AtaDevice
   )
 {
-  EFI_ATA_PASS_THRU_PROTOCOL              *AtaPassThru;
+  EFI_ATA_PASS_THRU_PROTOCOL  *AtaPassThru;
 
   AtaPassThru = AtaDevice->AtaBusDriverData->AtaPassThru;
 
@@ -196,7 +193,6 @@ ResetAtaDevice (
                         );
 }
 
-
 /**
   Prints ATA model name to ATA device structure.
 
@@ -216,20 +212,20 @@ PrintAtaModelName (
   CHAR8   *Source;
   CHAR16  *Destination;
 
-  Source = AtaDevice->IdentifyData->ModelName;
+  Source      = AtaDevice->IdentifyData->ModelName;
   Destination = AtaDevice->ModelName;
 
   //
   // Swap the byte order in the original module name.
   //
   for (Index = 0; Index < MAX_MODEL_NAME_LEN; Index += 2) {
-    Destination[Index]      = Source[Index + 1];
-    Destination[Index + 1]  = Source[Index];
+    Destination[Index]     = Source[Index + 1];
+    Destination[Index + 1] = Source[Index];
   }
+
   AtaDevice->ModelName[MAX_MODEL_NAME_LEN] = L'\0';
 }
 
-
 /**
   Gets ATA device Capacity according to ATA 6.
 
@@ -244,13 +240,13 @@ PrintAtaModelName (
 **/
 EFI_LBA
 GetAtapi6Capacity (
-  IN ATA_DEVICE                 *AtaDevice
+  IN ATA_DEVICE  *AtaDevice
   )
 {
-  EFI_LBA                       Capacity;
-  EFI_LBA                       TmpLba;
-  UINTN                         Index;
-  ATA_IDENTIFY_DATA             *IdentifyData;
+  EFI_LBA            Capacity;
+  EFI_LBA            TmpLba;
+  UINTN              Index;
+  ATA_IDENTIFY_DATA  *IdentifyData;
 
   IdentifyData = AtaDevice->IdentifyData;
   if ((IdentifyData->command_set_supported_83 & BIT10) == 0) {
@@ -268,14 +264,13 @@ GetAtapi6Capacity (
     //
     // Lower byte goes first: word[100] is the lowest word, word[103] is highest
     //
-    TmpLba = IdentifyData->maximum_lba_for_48bit_addressing[Index];
+    TmpLba    = IdentifyData->maximum_lba_for_48bit_addressing[Index];
     Capacity |= LShiftU64 (TmpLba, 16 * Index);
   }
 
   return Capacity;
 }
 
-
 /**
   Identifies ATA device via the Identify data.
 
@@ -291,14 +286,14 @@ GetAtapi6Capacity (
 **/
 EFI_STATUS
 IdentifyAtaDevice (
-  IN OUT ATA_DEVICE                 *AtaDevice
+  IN OUT ATA_DEVICE  *AtaDevice
   )
 {
-  ATA_IDENTIFY_DATA                 *IdentifyData;
-  EFI_BLOCK_IO_MEDIA                *BlockMedia;
-  EFI_LBA                           Capacity;
-  UINT16                            PhyLogicSectorSupport;
-  UINT16                            UdmaMode;
+  ATA_IDENTIFY_DATA   *IdentifyData;
+  EFI_BLOCK_IO_MEDIA  *BlockMedia;
+  EFI_LBA             Capacity;
+  UINT16              PhyLogicSectorSupport;
+  UINT16              UdmaMode;
 
   IdentifyData = AtaDevice->IdentifyData;
 
@@ -334,16 +329,16 @@ IdentifyAtaDevice (
     //
     // This is a hard disk <= 120GB capacity, treat it as normal hard disk
     //
-    Capacity = ((UINT32)IdentifyData->user_addressable_sectors_hi << 16) | IdentifyData->user_addressable_sectors_lo;
+    Capacity            = ((UINT32)IdentifyData->user_addressable_sectors_hi << 16) | IdentifyData->user_addressable_sectors_lo;
     AtaDevice->Lba48Bit = FALSE;
   }
 
   //
   // Block Media Information:
   //
-  BlockMedia = &AtaDevice->BlockMedia;
+  BlockMedia            = &AtaDevice->BlockMedia;
   BlockMedia->LastBlock = Capacity - 1;
-  BlockMedia->IoAlign = AtaDevice->AtaBusDriverData->AtaPassThru->Mode->IoAlign;
+  BlockMedia->IoAlign   = AtaDevice->AtaBusDriverData->AtaPassThru->Mode->IoAlign;
   //
   // Check whether Long Physical Sector Feature is supported
   //
@@ -353,23 +348,26 @@ IdentifyAtaDevice (
     // Check whether one physical block contains multiple physical blocks
     //
     if ((PhyLogicSectorSupport & BIT13) != 0) {
-      BlockMedia->LogicalBlocksPerPhysicalBlock = (UINT32) (1 << (PhyLogicSectorSupport & 0x000f));
+      BlockMedia->LogicalBlocksPerPhysicalBlock = (UINT32)(1 << (PhyLogicSectorSupport & 0x000f));
       //
       // Check lowest alignment of logical blocks within physical block
       //
       if ((IdentifyData->alignment_logic_in_phy_blocks & (BIT14 | BIT15)) == BIT14) {
-        BlockMedia->LowestAlignedLba = (EFI_LBA) ((BlockMedia->LogicalBlocksPerPhysicalBlock - ((UINT32)IdentifyData->alignment_logic_in_phy_blocks & 0x3fff)) %
-          BlockMedia->LogicalBlocksPerPhysicalBlock);
+        BlockMedia->LowestAlignedLba = (EFI_LBA)((BlockMedia->LogicalBlocksPerPhysicalBlock - ((UINT32)IdentifyData->alignment_logic_in_phy_blocks & 0x3fff)) %
+                                                 BlockMedia->LogicalBlocksPerPhysicalBlock);
       }
     }
+
     //
     // Check logical block size
     //
     if ((PhyLogicSectorSupport & BIT12) != 0) {
-      BlockMedia->BlockSize = (UINT32) (((IdentifyData->logic_sector_size_hi << 16) | IdentifyData->logic_sector_size_lo) * sizeof (UINT16));
+      BlockMedia->BlockSize = (UINT32)(((IdentifyData->logic_sector_size_hi << 16) | IdentifyData->logic_sector_size_lo) * sizeof (UINT16));
     }
+
     AtaDevice->BlockIo.Revision = EFI_BLOCK_IO_PROTOCOL_REVISION2;
   }
+
   //
   // Get ATA model name from identify data structure.
   //
@@ -378,7 +376,6 @@ IdentifyAtaDevice (
   return EFI_SUCCESS;
 }
 
-
 /**
   Discovers whether it is a valid ATA device.
 
@@ -395,7 +392,7 @@ IdentifyAtaDevice (
 **/
 EFI_STATUS
 DiscoverAtaDevice (
-  IN OUT ATA_DEVICE                 *AtaDevice
+  IN OUT ATA_DEVICE  *AtaDevice
   )
 {
   EFI_STATUS                        Status;
@@ -406,19 +403,19 @@ DiscoverAtaDevice (
   //
   // Prepare for ATA command block.
   //
-  Acb = ZeroMem (&AtaDevice->Acb, sizeof (EFI_ATA_COMMAND_BLOCK));
-  Acb->AtaCommand = ATA_CMD_IDENTIFY_DRIVE;
-  Acb->AtaDeviceHead = (UINT8) (BIT7 | BIT6 | BIT5 | (AtaDevice->PortMultiplierPort == 0xFFFF ? 0 : (AtaDevice->PortMultiplierPort << 4)));
+  Acb                = ZeroMem (&AtaDevice->Acb, sizeof (EFI_ATA_COMMAND_BLOCK));
+  Acb->AtaCommand    = ATA_CMD_IDENTIFY_DRIVE;
+  Acb->AtaDeviceHead = (UINT8)(BIT7 | BIT6 | BIT5 | (AtaDevice->PortMultiplierPort == 0xFFFF ? 0 : (AtaDevice->PortMultiplierPort << 4)));
 
   //
   // Prepare for ATA pass through packet.
   //
-  Packet = ZeroMem (&AtaDevice->Packet, sizeof (EFI_ATA_PASS_THRU_COMMAND_PACKET));
-  Packet->InDataBuffer = AtaDevice->IdentifyData;
+  Packet                   = ZeroMem (&AtaDevice->Packet, sizeof (EFI_ATA_PASS_THRU_COMMAND_PACKET));
+  Packet->InDataBuffer     = AtaDevice->IdentifyData;
   Packet->InTransferLength = sizeof (ATA_IDENTIFY_DATA);
-  Packet->Protocol = EFI_ATA_PASS_THRU_PROTOCOL_PIO_DATA_IN;
-  Packet->Length   = EFI_ATA_PASS_THRU_LENGTH_BYTES | EFI_ATA_PASS_THRU_LENGTH_SECTOR_COUNT;
-  Packet->Timeout  = ATA_TIMEOUT;
+  Packet->Protocol         = EFI_ATA_PASS_THRU_PROTOCOL_PIO_DATA_IN;
+  Packet->Length           = EFI_ATA_PASS_THRU_LENGTH_BYTES | EFI_ATA_PASS_THRU_LENGTH_SECTOR_COUNT;
+  Packet->Timeout          = ATA_TIMEOUT;
 
   Retry = MAX_RETRY_TIMES;
   do {
@@ -463,13 +460,13 @@ DiscoverAtaDevice (
 **/
 EFI_STATUS
 TransferAtaDevice (
-  IN OUT ATA_DEVICE                       *AtaDevice,
-  IN OUT EFI_ATA_PASS_THRU_COMMAND_PACKET *TaskPacket  OPTIONAL,
-  IN OUT VOID                             *Buffer,
-  IN EFI_LBA                              StartLba,
-  IN UINT32                               TransferLength,
-  IN BOOLEAN                              IsWrite,
-  IN EFI_EVENT                            Event OPTIONAL
+  IN OUT ATA_DEVICE                        *AtaDevice,
+  IN OUT EFI_ATA_PASS_THRU_COMMAND_PACKET  *TaskPacket  OPTIONAL,
+  IN OUT VOID                              *Buffer,
+  IN EFI_LBA                               StartLba,
+  IN UINT32                                TransferLength,
+  IN BOOLEAN                               IsWrite,
+  IN EFI_EVENT                             Event OPTIONAL
   )
 {
   EFI_ATA_COMMAND_BLOCK             *Acb;
@@ -478,26 +475,26 @@ TransferAtaDevice (
   //
   // Ensure AtaDevice->UdmaValid, AtaDevice->Lba48Bit and IsWrite are valid boolean values
   //
-  ASSERT ((UINTN) AtaDevice->UdmaValid < 2);
-  ASSERT ((UINTN) AtaDevice->Lba48Bit < 2);
-  ASSERT ((UINTN) IsWrite < 2);
+  ASSERT ((UINTN)AtaDevice->UdmaValid < 2);
+  ASSERT ((UINTN)AtaDevice->Lba48Bit < 2);
+  ASSERT ((UINTN)IsWrite < 2);
   //
   // Prepare for ATA command block.
   //
-  Acb = ZeroMem (&AtaDevice->Acb, sizeof (EFI_ATA_COMMAND_BLOCK));
-  Acb->AtaCommand = mAtaCommands[AtaDevice->UdmaValid][AtaDevice->Lba48Bit][IsWrite];
-  Acb->AtaSectorNumber = (UINT8) StartLba;
-  Acb->AtaCylinderLow = (UINT8) RShiftU64 (StartLba, 8);
-  Acb->AtaCylinderHigh = (UINT8) RShiftU64 (StartLba, 16);
-  Acb->AtaDeviceHead = (UINT8) (BIT7 | BIT6 | BIT5 | (AtaDevice->PortMultiplierPort == 0xFFFF ? 0 : (AtaDevice->PortMultiplierPort << 4)));
-  Acb->AtaSectorCount = (UINT8) TransferLength;
+  Acb                  = ZeroMem (&AtaDevice->Acb, sizeof (EFI_ATA_COMMAND_BLOCK));
+  Acb->AtaCommand      = mAtaCommands[AtaDevice->UdmaValid][AtaDevice->Lba48Bit][IsWrite];
+  Acb->AtaSectorNumber = (UINT8)StartLba;
+  Acb->AtaCylinderLow  = (UINT8)RShiftU64 (StartLba, 8);
+  Acb->AtaCylinderHigh = (UINT8)RShiftU64 (StartLba, 16);
+  Acb->AtaDeviceHead   = (UINT8)(BIT7 | BIT6 | BIT5 | (AtaDevice->PortMultiplierPort == 0xFFFF ? 0 : (AtaDevice->PortMultiplierPort << 4)));
+  Acb->AtaSectorCount  = (UINT8)TransferLength;
   if (AtaDevice->Lba48Bit) {
-    Acb->AtaSectorNumberExp = (UINT8) RShiftU64 (StartLba, 24);
-    Acb->AtaCylinderLowExp = (UINT8) RShiftU64 (StartLba, 32);
-    Acb->AtaCylinderHighExp = (UINT8) RShiftU64 (StartLba, 40);
-    Acb->AtaSectorCountExp = (UINT8) (TransferLength >> 8);
+    Acb->AtaSectorNumberExp = (UINT8)RShiftU64 (StartLba, 24);
+    Acb->AtaCylinderLowExp  = (UINT8)RShiftU64 (StartLba, 32);
+    Acb->AtaCylinderHighExp = (UINT8)RShiftU64 (StartLba, 40);
+    Acb->AtaSectorCountExp  = (UINT8)(TransferLength >> 8);
   } else {
-    Acb->AtaDeviceHead = (UINT8) (Acb->AtaDeviceHead | RShiftU64 (StartLba, 24));
+    Acb->AtaDeviceHead = (UINT8)(Acb->AtaDeviceHead | RShiftU64 (StartLba, 24));
   }
 
   //
@@ -510,15 +507,15 @@ TransferAtaDevice (
   }
 
   if (IsWrite) {
-    Packet->OutDataBuffer = Buffer;
+    Packet->OutDataBuffer     = Buffer;
     Packet->OutTransferLength = TransferLength;
   } else {
-    Packet->InDataBuffer = Buffer;
+    Packet->InDataBuffer     = Buffer;
     Packet->InTransferLength = TransferLength;
   }
 
   Packet->Protocol = mAtaPassThruCmdProtocols[AtaDevice->UdmaValid][IsWrite];
-  Packet->Length = EFI_ATA_PASS_THRU_LENGTH_SECTOR_COUNT;
+  Packet->Length   = EFI_ATA_PASS_THRU_LENGTH_SECTOR_COUNT;
   //
   // |------------------------|-----------------|------------------------|-----------------|
   // | ATA PIO Transfer Mode  |  Transfer Rate  | ATA DMA Transfer Mode  |  Transfer Rate  |
@@ -544,12 +541,12 @@ TransferAtaDevice (
     //
     // Calculate the maximum timeout value for DMA read/write operation.
     //
-    Packet->Timeout  = EFI_TIMER_PERIOD_SECONDS (DivU64x32 (MultU64x32 (TransferLength, AtaDevice->BlockMedia.BlockSize), 2100000) + 31);
+    Packet->Timeout = EFI_TIMER_PERIOD_SECONDS (DivU64x32 (MultU64x32 (TransferLength, AtaDevice->BlockMedia.BlockSize), 2100000) + 31);
   } else {
     //
     // Calculate the maximum timeout value for PIO read/write operation
     //
-    Packet->Timeout  = EFI_TIMER_PERIOD_SECONDS (DivU64x32 (MultU64x32 (TransferLength, AtaDevice->BlockMedia.BlockSize), 3300000) + 31);
+    Packet->Timeout = EFI_TIMER_PERIOD_SECONDS (DivU64x32 (MultU64x32 (TransferLength, AtaDevice->BlockMedia.BlockSize), 3300000) + 31);
   }
 
   return AtaDevicePassThru (AtaDevice, TaskPacket, Event);
@@ -570,6 +567,7 @@ FreeAtaSubTask (
   if (Task->Packet.Asb != NULL) {
     FreeAlignedBuffer (Task->Packet.Asb, sizeof (EFI_ATA_STATUS_BLOCK));
   }
+
   if (Task->Packet.Acb != NULL) {
     FreePool (Task->Packet.Acb);
   }
@@ -590,14 +588,14 @@ FreeAtaSubTask (
 VOID
 EFIAPI
 AtaTerminateNonBlockingTask (
-  IN ATA_DEVICE               *AtaDevice
+  IN ATA_DEVICE  *AtaDevice
   )
 {
-  BOOLEAN               SubTaskEmpty;
-  EFI_TPL               OldTpl;
-  ATA_BUS_ASYN_TASK     *AtaTask;
-  LIST_ENTRY            *Entry;
-  LIST_ENTRY            *List;
+  BOOLEAN            SubTaskEmpty;
+  EFI_TPL            OldTpl;
+  ATA_BUS_ASYN_TASK  *AtaTask;
+  LIST_ENTRY         *Entry;
+  LIST_ENTRY         *List;
 
   OldTpl = gBS->RaiseTPL (TPL_NOTIFY);
   //
@@ -607,13 +605,14 @@ AtaTerminateNonBlockingTask (
 
   List = &AtaDevice->AtaTaskList;
   for (Entry = GetFirstNode (List); !IsNull (List, Entry);) {
-    AtaTask  = ATA_ASYN_TASK_FROM_ENTRY (Entry);
+    AtaTask                           = ATA_ASYN_TASK_FROM_ENTRY (Entry);
     AtaTask->Token->TransactionStatus = EFI_ABORTED;
     gBS->SignalEvent (AtaTask->Token->Event);
 
     Entry = RemoveEntryList (Entry);
     FreePool (AtaTask);
   }
+
   gBS->RestoreTPL (OldTpl);
 
   do {
@@ -628,7 +627,7 @@ AtaTerminateNonBlockingTask (
   //
   // Aborting operation has been done. From now on, don't need to abort normal operation.
   //
-  OldTpl = gBS->RaiseTPL (TPL_NOTIFY);
+  OldTpl           = gBS->RaiseTPL (TPL_NOTIFY);
   AtaDevice->Abort = FALSE;
   gBS->RestoreTPL (OldTpl);
 }
@@ -644,17 +643,17 @@ AtaTerminateNonBlockingTask (
 VOID
 EFIAPI
 AtaNonBlockingCallBack (
-  IN EFI_EVENT                Event,
-  IN VOID                     *Context
+  IN EFI_EVENT  Event,
+  IN VOID       *Context
   )
 {
-  ATA_BUS_ASYN_SUB_TASK *Task;
-  ATA_BUS_ASYN_TASK     *AtaTask;
-  ATA_DEVICE            *AtaDevice;
-  LIST_ENTRY            *Entry;
-  EFI_STATUS            Status;
+  ATA_BUS_ASYN_SUB_TASK  *Task;
+  ATA_BUS_ASYN_TASK      *AtaTask;
+  ATA_DEVICE             *AtaDevice;
+  LIST_ENTRY             *Entry;
+  EFI_STATUS             Status;
 
-  Task = (ATA_BUS_ASYN_SUB_TASK *) Context;
+  Task = (ATA_BUS_ASYN_SUB_TASK *)Context;
   gBS->CloseEvent (Event);
 
   AtaDevice = Task->AtaDevice;
@@ -682,7 +681,7 @@ AtaNonBlockingCallBack (
   //
   // Reduce the SubEventCount, till it comes to zero.
   //
-  (*Task->UnsignalledEventCount) --;
+  (*Task->UnsignalledEventCount)--;
   DEBUG ((DEBUG_BLKIO, "UnsignalledEventCount = %d\n", *Task->UnsignalledEventCount));
 
   //
@@ -702,7 +701,6 @@ AtaNonBlockingCallBack (
     FreePool (Task->UnsignalledEventCount);
     FreePool (Task->IsError);
 
-
     //
     // Finish all subtasks and move to the next task in AtaTaskList.
     //
@@ -723,6 +721,7 @@ AtaNonBlockingCallBack (
         AtaTask->Token->TransactionStatus = Status;
         gBS->SignalEvent (AtaTask->Token->Event);
       }
+
       RemoveEntryList (Entry);
       FreePool (AtaTask);
     }
@@ -763,27 +762,27 @@ AtaNonBlockingCallBack (
 
 **/
 EFI_STATUS
-AccessAtaDevice(
-  IN OUT ATA_DEVICE                 *AtaDevice,
-  IN OUT UINT8                      *Buffer,
-  IN EFI_LBA                        StartLba,
-  IN UINTN                          NumberOfBlocks,
-  IN BOOLEAN                        IsWrite,
-  IN OUT EFI_BLOCK_IO2_TOKEN        *Token
+AccessAtaDevice (
+  IN OUT ATA_DEVICE           *AtaDevice,
+  IN OUT UINT8                *Buffer,
+  IN EFI_LBA                  StartLba,
+  IN UINTN                    NumberOfBlocks,
+  IN BOOLEAN                  IsWrite,
+  IN OUT EFI_BLOCK_IO2_TOKEN  *Token
   )
 {
-  EFI_STATUS                        Status;
-  UINTN                             MaxTransferBlockNumber;
-  UINTN                             TransferBlockNumber;
-  UINTN                             BlockSize;
-  ATA_BUS_ASYN_SUB_TASK             *SubTask;
-  UINTN                             *EventCount;
-  UINTN                             TempCount;
-  ATA_BUS_ASYN_TASK                 *AtaTask;
-  EFI_EVENT                         SubEvent;
-  UINTN                             Index;
-  BOOLEAN                           *IsError;
-  EFI_TPL                           OldTpl;
+  EFI_STATUS             Status;
+  UINTN                  MaxTransferBlockNumber;
+  UINTN                  TransferBlockNumber;
+  UINTN                  BlockSize;
+  ATA_BUS_ASYN_SUB_TASK  *SubTask;
+  UINTN                  *EventCount;
+  UINTN                  TempCount;
+  ATA_BUS_ASYN_TASK      *AtaTask;
+  EFI_EVENT              SubEvent;
+  UINTN                  Index;
+  BOOLEAN                *IsError;
+  EFI_TPL                OldTpl;
 
   TempCount  = 0;
   Status     = EFI_SUCCESS;
@@ -797,7 +796,7 @@ AccessAtaDevice(
   //
   // Ensure AtaDevice->Lba48Bit is a valid boolean value
   //
-  ASSERT ((UINTN) AtaDevice->Lba48Bit < 2);
+  ASSERT ((UINTN)AtaDevice->Lba48Bit < 2);
   MaxTransferBlockNumber = mMaxTransferBlockNumber[AtaDevice->Lba48Bit];
   BlockSize              = AtaDevice->BlockMedia.BlockSize;
 
@@ -813,6 +812,7 @@ AccessAtaDevice(
         gBS->RestoreTPL (OldTpl);
         return EFI_OUT_OF_RESOURCES;
       }
+
       AtaTask->AtaDevice      = AtaDevice;
       AtaTask->Buffer         = Buffer;
       AtaTask->IsWrite        = IsWrite;
@@ -825,10 +825,11 @@ AccessAtaDevice(
       gBS->RestoreTPL (OldTpl);
       return EFI_SUCCESS;
     }
+
     gBS->RestoreTPL (OldTpl);
 
     Token->TransactionStatus = EFI_SUCCESS;
-    EventCount = AllocateZeroPool (sizeof (UINTN));
+    EventCount               = AllocateZeroPool (sizeof (UINTN));
     if (EventCount == NULL) {
       return EFI_OUT_OF_RESOURCES;
     }
@@ -838,8 +839,9 @@ AccessAtaDevice(
       FreePool (EventCount);
       return EFI_OUT_OF_RESOURCES;
     }
+
     DEBUG ((DEBUG_BLKIO, "Allocation IsError Addr=%x\n", IsError));
-    *IsError = FALSE;
+    *IsError    = FALSE;
     TempCount   = (NumberOfBlocks + MaxTransferBlockNumber - 1) / MaxTransferBlockNumber;
     *EventCount = TempCount;
     DEBUG ((DEBUG_BLKIO, "AccessAtaDevice, NumberOfBlocks=%x\n", NumberOfBlocks));
@@ -858,7 +860,7 @@ AccessAtaDevice(
     if (NumberOfBlocks > MaxTransferBlockNumber) {
       TransferBlockNumber = MaxTransferBlockNumber;
       NumberOfBlocks     -= MaxTransferBlockNumber;
-    } else  {
+    } else {
       TransferBlockNumber = NumberOfBlocks;
       NumberOfBlocks      = 0;
     }
@@ -876,7 +878,7 @@ AccessAtaDevice(
         goto EXIT;
       }
 
-      OldTpl = gBS->RaiseTPL (TPL_NOTIFY);
+      OldTpl                         = gBS->RaiseTPL (TPL_NOTIFY);
       SubTask->UnsignalledEventCount = EventCount;
       SubTask->Signature             = ATA_SUB_TASK_SIGNATURE;
       SubTask->AtaDevice             = AtaDevice;
@@ -901,13 +903,13 @@ AccessAtaDevice(
         goto EXIT;
       }
 
-      Status = TransferAtaDevice (AtaDevice, &SubTask->Packet, Buffer, StartLba, (UINT32) TransferBlockNumber, IsWrite, SubEvent);
+      Status = TransferAtaDevice (AtaDevice, &SubTask->Packet, Buffer, StartLba, (UINT32)TransferBlockNumber, IsWrite, SubEvent);
     } else {
       //
       // Blocking Mode.
       //
       DEBUG ((DEBUG_BLKIO, "Blocking AccessAtaDevice, TransferBlockNumber=%x; StartLba = %x\n", TransferBlockNumber, StartLba));
-      Status = TransferAtaDevice (AtaDevice, NULL, Buffer, StartLba, (UINT32) TransferBlockNumber, IsWrite, NULL);
+      Status = TransferAtaDevice (AtaDevice, NULL, Buffer, StartLba, (UINT32)TransferBlockNumber, IsWrite, NULL);
     }
 
     if (EFI_ERROR (Status)) {
@@ -925,10 +927,10 @@ EXIT:
     // Release resource at non-blocking mode.
     //
     if (EFI_ERROR (Status)) {
-      OldTpl = gBS->RaiseTPL (TPL_NOTIFY);
+      OldTpl                   = gBS->RaiseTPL (TPL_NOTIFY);
       Token->TransactionStatus = Status;
-      *EventCount = (*EventCount) - (TempCount - Index);
-      *IsError    = TRUE;
+      *EventCount              = (*EventCount) - (TempCount - Index);
+      *IsError                 = TRUE;
 
       if (*EventCount == 0) {
         FreePool (EventCount);
@@ -943,6 +945,7 @@ EXIT:
       if (SubEvent != NULL) {
         gBS->CloseEvent (SubEvent);
       }
+
       gBS->RestoreTPL (OldTpl);
     }
   }
@@ -982,14 +985,14 @@ EXIT:
 EFI_STATUS
 EFIAPI
 TrustTransferAtaDevice (
-  IN OUT ATA_DEVICE                 *AtaDevice,
-  IN OUT VOID                       *Buffer,
-  IN UINT8                          SecurityProtocolId,
-  IN UINT16                         SecurityProtocolSpecificData,
-  IN UINTN                          TransferLength,
-  IN BOOLEAN                        IsTrustSend,
-  IN UINT64                         Timeout,
-  OUT UINTN                         *TransferLengthOut
+  IN OUT ATA_DEVICE  *AtaDevice,
+  IN OUT VOID        *Buffer,
+  IN UINT8           SecurityProtocolId,
+  IN UINT16          SecurityProtocolSpecificData,
+  IN UINTN           TransferLength,
+  IN BOOLEAN         IsTrustSend,
+  IN UINT64          Timeout,
+  OUT UINTN          *TransferLengthOut
   )
 {
   EFI_ATA_COMMAND_BLOCK             *Acb;
@@ -1001,27 +1004,28 @@ TrustTransferAtaDevice (
   //
   // Ensure AtaDevice->UdmaValid and IsTrustSend are valid boolean values
   //
-  ASSERT ((UINTN) AtaDevice->UdmaValid < 2);
-  ASSERT ((UINTN) IsTrustSend < 2);
+  ASSERT ((UINTN)AtaDevice->UdmaValid < 2);
+  ASSERT ((UINTN)IsTrustSend < 2);
   //
   // Prepare for ATA command block.
   //
   Acb = ZeroMem (&AtaDevice->Acb, sizeof (EFI_ATA_COMMAND_BLOCK));
   if (TransferLength == 0) {
-    Acb->AtaCommand    = ATA_CMD_TRUST_NON_DATA;
+    Acb->AtaCommand = ATA_CMD_TRUST_NON_DATA;
   } else {
-    Acb->AtaCommand    = mAtaTrustCommands[AtaDevice->UdmaValid][IsTrustSend];
+    Acb->AtaCommand = mAtaTrustCommands[AtaDevice->UdmaValid][IsTrustSend];
   }
-  Acb->AtaFeatures      = SecurityProtocolId;
-  Acb->AtaSectorCount   = (UINT8) (TransferLength / 512);
-  Acb->AtaSectorNumber  = (UINT8) ((TransferLength / 512) >> 8);
+
+  Acb->AtaFeatures     = SecurityProtocolId;
+  Acb->AtaSectorCount  = (UINT8)(TransferLength / 512);
+  Acb->AtaSectorNumber = (UINT8)((TransferLength / 512) >> 8);
   //
   // NOTE: ATA Spec has no explicitly definition for Security Protocol Specific layout.
   // Here use big endian for Cylinder register.
   //
-  Acb->AtaCylinderHigh  = (UINT8) SecurityProtocolSpecificData;
-  Acb->AtaCylinderLow   = (UINT8) (SecurityProtocolSpecificData >> 8);
-  Acb->AtaDeviceHead = (UINT8) (BIT7 | BIT6 | BIT5 | (AtaDevice->PortMultiplierPort == 0xFFFF ? 0 : (AtaDevice->PortMultiplierPort << 4)));
+  Acb->AtaCylinderHigh = (UINT8)SecurityProtocolSpecificData;
+  Acb->AtaCylinderLow  = (UINT8)(SecurityProtocolSpecificData >> 8);
+  Acb->AtaDeviceHead   = (UINT8)(BIT7 | BIT6 | BIT5 | (AtaDevice->PortMultiplierPort == 0xFFFF ? 0 : (AtaDevice->PortMultiplierPort << 4)));
 
   //
   // Prepare for ATA pass through packet.
@@ -1030,7 +1034,7 @@ TrustTransferAtaDevice (
   if (TransferLength == 0) {
     Packet->InTransferLength  = 0;
     Packet->OutTransferLength = 0;
-    Packet->Protocol = EFI_ATA_PASS_THRU_PROTOCOL_ATA_NON_DATA;
+    Packet->Protocol          = EFI_ATA_PASS_THRU_PROTOCOL_ATA_NON_DATA;
   } else if (IsTrustSend) {
     //
     // Check the alignment of the incoming buffer prior to invoking underlying ATA PassThru
@@ -1046,22 +1050,25 @@ TrustTransferAtaDevice (
       FreePool (Buffer);
       Buffer = NewBuffer;
     }
-    Packet->OutDataBuffer = Buffer;
-    Packet->OutTransferLength = (UINT32) TransferLength;
-    Packet->Protocol = mAtaPassThruCmdProtocols[AtaDevice->UdmaValid][IsTrustSend];
+
+    Packet->OutDataBuffer     = Buffer;
+    Packet->OutTransferLength = (UINT32)TransferLength;
+    Packet->Protocol          = mAtaPassThruCmdProtocols[AtaDevice->UdmaValid][IsTrustSend];
   } else {
-    Packet->InDataBuffer = Buffer;
-    Packet->InTransferLength = (UINT32) TransferLength;
-    Packet->Protocol = mAtaPassThruCmdProtocols[AtaDevice->UdmaValid][IsTrustSend];
+    Packet->InDataBuffer     = Buffer;
+    Packet->InTransferLength = (UINT32)TransferLength;
+    Packet->Protocol         = mAtaPassThruCmdProtocols[AtaDevice->UdmaValid][IsTrustSend];
   }
-  Packet->Length   = EFI_ATA_PASS_THRU_LENGTH_BYTES;
-  Packet->Timeout  = Timeout;
+
+  Packet->Length  = EFI_ATA_PASS_THRU_LENGTH_BYTES;
+  Packet->Timeout = Timeout;
 
   Status = AtaDevicePassThru (AtaDevice, NULL, NULL);
   if (TransferLengthOut != NULL) {
-    if (! IsTrustSend) {
+    if (!IsTrustSend) {
       *TransferLengthOut = Packet->InTransferLength;
     }
   }
+
   return Status;
 }

+ 18 - 17
MdeModulePkg/Bus/Ata/AtaBusDxe/ComponentName.c

@@ -11,20 +11,19 @@
 //
 // Driver name table
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mAtaBusDriverNameTable[] = {
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE  mAtaBusDriverNameTable[] = {
   { "eng;en", L"ATA Bus Driver" },
-  { NULL , NULL }
+  { NULL,     NULL              }
 };
 
 //
 // Controller name table
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mAtaBusControllerNameTable[] = {
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE  mAtaBusControllerNameTable[] = {
   { "eng;en", L"ATA Controller" },
-  { NULL , NULL }
+  { NULL,     NULL              }
 };
 
-
 //
 // EFI Component Name Protocol
 //
@@ -37,9 +36,9 @@ GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME_PROTOCOL  gAtaBusComponentName
 //
 // EFI Component Name 2 Protocol
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL gAtaBusComponentName2 = {
-  (EFI_COMPONENT_NAME2_GET_DRIVER_NAME) AtaBusComponentNameGetDriverName,
-  (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME) AtaBusComponentNameGetControllerName,
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL  gAtaBusComponentName2 = {
+  (EFI_COMPONENT_NAME2_GET_DRIVER_NAME)AtaBusComponentNameGetDriverName,
+  (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME)AtaBusComponentNameGetControllerName,
   "en"
 };
 
@@ -99,7 +98,6 @@ AtaBusComponentNameGetDriverName (
            );
 }
 
-
 /**
   Retrieves a Unicode string that is the user readable name of the controller
   that is being managed by a driver.
@@ -171,11 +169,11 @@ AtaBusComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 AtaBusComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  EFI_HANDLE                   ControllerHandle,
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **ControllerName
   )
 {
   EFI_STATUS                Status;
@@ -205,13 +203,14 @@ AtaBusComponentNameGetControllerName (
     if (EFI_ERROR (Status)) {
       return Status;
     }
+
     //
     // Get the child context
     //
     Status = gBS->OpenProtocol (
                     ChildHandle,
                     &gEfiBlockIoProtocolGuid,
-                    (VOID **) &BlockIo,
+                    (VOID **)&BlockIo,
                     gAtaBusDriverBinding.DriverBindingHandle,
                     ChildHandle,
                     EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -219,9 +218,11 @@ AtaBusComponentNameGetControllerName (
     if (EFI_ERROR (Status)) {
       return EFI_UNSUPPORTED;
     }
-    AtaDevice = ATA_DEVICE_FROM_BLOCK_IO (BlockIo);
-    ControllerNameTable =AtaDevice->ControllerNameTable;
+
+    AtaDevice           = ATA_DEVICE_FROM_BLOCK_IO (BlockIo);
+    ControllerNameTable = AtaDevice->ControllerNameTable;
   }
+
   return LookupUnicodeString2 (
            Language,
            This->SupportedLanguages,

+ 226 - 211
MdeModulePkg/Bus/I2c/I2cDxe/I2cBus.c

@@ -12,7 +12,7 @@
 //
 //  EFI_DRIVER_BINDING_PROTOCOL instance
 //
-EFI_DRIVER_BINDING_PROTOCOL gI2cBusDriverBinding = {
+EFI_DRIVER_BINDING_PROTOCOL  gI2cBusDriverBinding = {
   I2cBusDriverSupported,
   I2cBusDriverStart,
   I2cBusDriverStop,
@@ -24,7 +24,7 @@ EFI_DRIVER_BINDING_PROTOCOL gI2cBusDriverBinding = {
 //
 // Template for I2C Bus Child Device.
 //
-I2C_DEVICE_CONTEXT gI2cDeviceContextTemplate = {
+I2C_DEVICE_CONTEXT  gI2cDeviceContextTemplate = {
   I2C_DEVICE_SIGNATURE,
   NULL,
   {                     // I2cIo Protocol
@@ -42,13 +42,13 @@ I2C_DEVICE_CONTEXT gI2cDeviceContextTemplate = {
 //
 // Template for controller device path node.
 //
-CONTROLLER_DEVICE_PATH gControllerDevicePathTemplate = {
+CONTROLLER_DEVICE_PATH  gControllerDevicePathTemplate = {
   {
     HARDWARE_DEVICE_PATH,
     HW_CONTROLLER_DP,
     {
-      (UINT8) (sizeof (CONTROLLER_DEVICE_PATH)),
-      (UINT8) ((sizeof (CONTROLLER_DEVICE_PATH)) >> 8)
+      (UINT8)(sizeof (CONTROLLER_DEVICE_PATH)),
+      (UINT8)((sizeof (CONTROLLER_DEVICE_PATH)) >> 8)
     }
   },
   0
@@ -57,39 +57,40 @@ CONTROLLER_DEVICE_PATH gControllerDevicePathTemplate = {
 //
 // Template for vendor device path node.
 //
-VENDOR_DEVICE_PATH gVendorDevicePathTemplate = {
+VENDOR_DEVICE_PATH  gVendorDevicePathTemplate = {
   {
     HARDWARE_DEVICE_PATH,
     HW_VENDOR_DP,
     {
-      (UINT8) (sizeof (VENDOR_DEVICE_PATH)),
-      (UINT8) ((sizeof (VENDOR_DEVICE_PATH)) >> 8)
+      (UINT8)(sizeof (VENDOR_DEVICE_PATH)),
+      (UINT8)((sizeof (VENDOR_DEVICE_PATH)) >> 8)
     }
   },
-  { 0x0, 0x0, 0x0, { 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 }}
+  { 0x0, 0x0, 0x0, { 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 }
+  }
 };
 
 //
 // Driver name table
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mI2cBusDriverNameTable[] = {
-  { "eng;en", (CHAR16 *) L"I2C Bus Driver" },
-  { NULL , NULL }
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE  mI2cBusDriverNameTable[] = {
+  { "eng;en", (CHAR16 *)L"I2C Bus Driver" },
+  { NULL,     NULL                        }
 };
 
 //
 // EFI Component Name Protocol
 //
 GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME_PROTOCOL  gI2cBusComponentName = {
-  (EFI_COMPONENT_NAME_GET_DRIVER_NAME) I2cBusComponentNameGetDriverName,
-  (EFI_COMPONENT_NAME_GET_CONTROLLER_NAME) I2cBusComponentNameGetControllerName,
+  (EFI_COMPONENT_NAME_GET_DRIVER_NAME)I2cBusComponentNameGetDriverName,
+  (EFI_COMPONENT_NAME_GET_CONTROLLER_NAME)I2cBusComponentNameGetControllerName,
   "eng"
 };
 
 //
 // EFI Component Name 2 Protocol
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL gI2cBusComponentName2 = {
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL  gI2cBusComponentName2 = {
   I2cBusComponentNameGetDriverName,
   I2cBusComponentNameGetControllerName,
   "en"
@@ -138,8 +139,8 @@ EFI_STATUS
 EFIAPI
 I2cBusComponentNameGetDriverName (
   IN  EFI_COMPONENT_NAME2_PROTOCOL  *This,
-  IN  CHAR8                        *Language,
-  OUT CHAR16                       **DriverName
+  IN  CHAR8                         *Language,
+  OUT CHAR16                        **DriverName
   )
 {
   return LookupUnicodeString2 (
@@ -222,11 +223,11 @@ I2cBusComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 I2cBusComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME2_PROTOCOL                     *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME2_PROTOCOL  *This,
+  IN  EFI_HANDLE                    ControllerHandle,
+  IN  EFI_HANDLE                    ChildHandle        OPTIONAL,
+  IN  CHAR8                         *Language,
+  OUT CHAR16                        **ControllerName
   )
 {
   return EFI_UNSUPPORTED;
@@ -254,16 +255,16 @@ CheckRemainingDevicePath (
   IN UINT32                       RemainingControllerNumber
   )
 {
-  EFI_STATUS                              Status;
-  EFI_DEVICE_PATH_PROTOCOL                *SystemDevicePath;
-  EFI_OPEN_PROTOCOL_INFORMATION_ENTRY     *OpenInfoBuffer;
-  UINTN                                   EntryCount;
-  UINTN                                   Index;
-  BOOLEAN                                 SystemHasControllerNode;
-  UINT32                                  SystemControllerNumber;
+  EFI_STATUS                           Status;
+  EFI_DEVICE_PATH_PROTOCOL             *SystemDevicePath;
+  EFI_OPEN_PROTOCOL_INFORMATION_ENTRY  *OpenInfoBuffer;
+  UINTN                                EntryCount;
+  UINTN                                Index;
+  BOOLEAN                              SystemHasControllerNode;
+  UINT32                               SystemControllerNumber;
 
   SystemHasControllerNode = FALSE;
-  SystemControllerNumber    = 0;
+  SystemControllerNumber  = 0;
 
   Status = gBS->OpenProtocolInformation (
                   Controller,
@@ -280,7 +281,7 @@ CheckRemainingDevicePath (
       Status = gBS->OpenProtocol (
                       OpenInfoBuffer[Index].ControllerHandle,
                       &gEfiDevicePathProtocolGuid,
-                      (VOID **) &SystemDevicePath,
+                      (VOID **)&SystemDevicePath,
                       This->DriverBindingHandle,
                       Controller,
                       EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -291,7 +292,8 @@ CheckRemainingDevicePath (
         //
         while (!IsDevicePathEnd (SystemDevicePath)) {
           if ((DevicePathType (SystemDevicePath) == HARDWARE_DEVICE_PATH) &&
-              (DevicePathSubType (SystemDevicePath) == HW_VENDOR_DP)) {
+              (DevicePathSubType (SystemDevicePath) == HW_VENDOR_DP))
+          {
             //
             // Check if vendor device path is same between system device path and remaining device path
             //
@@ -301,31 +303,37 @@ CheckRemainingDevicePath (
               //
               SystemDevicePath = NextDevicePathNode (SystemDevicePath);
               if ((DevicePathType (SystemDevicePath) == HARDWARE_DEVICE_PATH) &&
-                  (DevicePathSubType (SystemDevicePath) == HW_CONTROLLER_DP)) {
+                  (DevicePathSubType (SystemDevicePath) == HW_CONTROLLER_DP))
+              {
                 SystemHasControllerNode = TRUE;
-                SystemControllerNumber    = ((CONTROLLER_DEVICE_PATH *) SystemDevicePath)->ControllerNumber;
+                SystemControllerNumber  = ((CONTROLLER_DEVICE_PATH *)SystemDevicePath)->ControllerNumber;
               } else {
                 SystemHasControllerNode = FALSE;
-                SystemControllerNumber    = 0;
+                SystemControllerNumber  = 0;
               }
+
               if (((SystemHasControllerNode)  && (!RemainingHasControllerNode) && (SystemControllerNumber == 0)) ||
                   ((!SystemHasControllerNode) && (RemainingHasControllerNode)  && (RemainingControllerNumber == 0)) ||
                   ((SystemHasControllerNode)  && (RemainingHasControllerNode)  && (SystemControllerNumber == RemainingControllerNumber)) ||
-                  ((!SystemHasControllerNode) && (!RemainingHasControllerNode))) {
-                  DEBUG ((DEBUG_ERROR, "This I2C device has been already started.\n"));
-                  Status = EFI_UNSUPPORTED;
-                  break;
+                  ((!SystemHasControllerNode) && (!RemainingHasControllerNode)))
+              {
+                DEBUG ((DEBUG_ERROR, "This I2C device has been already started.\n"));
+                Status = EFI_UNSUPPORTED;
+                break;
               }
             }
           }
+
           SystemDevicePath = NextDevicePathNode (SystemDevicePath);
         }
+
         if (EFI_ERROR (Status)) {
           break;
         }
       }
     }
   }
+
   FreePool (OpenInfoBuffer);
   return Status;
 }
@@ -380,16 +388,16 @@ I2cBusDriverSupported (
   IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   )
 {
-  EFI_STATUS                          Status;
-  EFI_I2C_ENUMERATE_PROTOCOL          *I2cEnumerate;
-  EFI_I2C_HOST_PROTOCOL               *I2cHost;
-  EFI_DEVICE_PATH_PROTOCOL            *ParentDevicePath;
-  EFI_DEVICE_PATH_PROTOCOL            *DevPathNode;
-  BOOLEAN                             RemainingHasControllerNode;
-  UINT32                              RemainingControllerNumber;
+  EFI_STATUS                  Status;
+  EFI_I2C_ENUMERATE_PROTOCOL  *I2cEnumerate;
+  EFI_I2C_HOST_PROTOCOL       *I2cHost;
+  EFI_DEVICE_PATH_PROTOCOL    *ParentDevicePath;
+  EFI_DEVICE_PATH_PROTOCOL    *DevPathNode;
+  BOOLEAN                     RemainingHasControllerNode;
+  UINT32                      RemainingControllerNumber;
 
   RemainingHasControllerNode = FALSE;
-  RemainingControllerNumber    = 0;
+  RemainingControllerNumber  = 0;
 
   //
   //  Determine if the I2c Enumerate Protocol is available
@@ -397,7 +405,7 @@ I2cBusDriverSupported (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiI2cEnumerateProtocolGuid,
-                  (VOID **) &I2cEnumerate,
+                  (VOID **)&I2cEnumerate,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_BY_DRIVER
@@ -408,17 +416,17 @@ I2cBusDriverSupported (
 
   if (!EFI_ERROR (Status)) {
     gBS->CloseProtocol (
-          Controller,
-          &gEfiI2cEnumerateProtocolGuid,
-          This->DriverBindingHandle,
-          Controller
-          );
+           Controller,
+           &gEfiI2cEnumerateProtocolGuid,
+           This->DriverBindingHandle,
+           Controller
+           );
   }
 
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiDevicePathProtocolGuid,
-                  (VOID **) &ParentDevicePath,
+                  (VOID **)&ParentDevicePath,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_BY_DRIVER
@@ -430,11 +438,11 @@ I2cBusDriverSupported (
 
   if (!EFI_ERROR (Status)) {
     gBS->CloseProtocol (
-          Controller,
-          &gEfiDevicePathProtocolGuid,
-          This->DriverBindingHandle,
-          Controller
-          );
+           Controller,
+           &gEfiDevicePathProtocolGuid,
+           This->DriverBindingHandle,
+           Controller
+           );
   }
 
   if ((RemainingDevicePath != NULL) && !IsDevicePathEnd (RemainingDevicePath)) {
@@ -442,20 +450,23 @@ I2cBusDriverSupported (
     // Check if the first node of RemainingDevicePath is a hardware vendor device path
     //
     if ((DevicePathType (RemainingDevicePath) != HARDWARE_DEVICE_PATH) ||
-        (DevicePathSubType (RemainingDevicePath) != HW_VENDOR_DP)) {
+        (DevicePathSubType (RemainingDevicePath) != HW_VENDOR_DP))
+    {
       return EFI_UNSUPPORTED;
     }
+
     //
     // Check if the second node of RemainingDevicePath is a controller node
     //
     DevPathNode = NextDevicePathNode (RemainingDevicePath);
     if (!IsDevicePathEnd (DevPathNode)) {
       if ((DevicePathType (DevPathNode) != HARDWARE_DEVICE_PATH) ||
-          (DevicePathSubType (DevPathNode) != HW_CONTROLLER_DP)) {
+          (DevicePathSubType (DevPathNode) != HW_CONTROLLER_DP))
+      {
         return EFI_UNSUPPORTED;
       } else {
         RemainingHasControllerNode = TRUE;
-        RemainingControllerNumber    = ((CONTROLLER_DEVICE_PATH *) DevPathNode)->ControllerNumber;
+        RemainingControllerNumber  = ((CONTROLLER_DEVICE_PATH *)DevPathNode)->ControllerNumber;
       }
     }
   }
@@ -466,7 +477,7 @@ I2cBusDriverSupported (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiI2cHostProtocolGuid,
-                  (VOID **) &I2cHost,
+                  (VOID **)&I2cHost,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_BY_DRIVER
@@ -474,17 +485,17 @@ I2cBusDriverSupported (
 
   if (!EFI_ERROR (Status)) {
     gBS->CloseProtocol (
-          Controller,
-          &gEfiI2cHostProtocolGuid,
-          This->DriverBindingHandle,
-          Controller
-          );
+           Controller,
+           &gEfiI2cHostProtocolGuid,
+           This->DriverBindingHandle,
+           Controller
+           );
   }
 
-
   if (Status == EFI_ALREADY_STARTED) {
     if ((RemainingDevicePath == NULL) ||
-        ((RemainingDevicePath != NULL) && IsDevicePathEnd (RemainingDevicePath))) {
+        ((RemainingDevicePath != NULL) && IsDevicePathEnd (RemainingDevicePath)))
+    {
       //
       // If RemainingDevicePath is NULL or is the End of Device Path Node, return EFI_SUCCESS.
       //
@@ -549,16 +560,16 @@ I2cBusDriverStart (
   IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   )
 {
-  EFI_I2C_ENUMERATE_PROTOCOL *I2cEnumerate;
-  EFI_I2C_HOST_PROTOCOL      *I2cHost;
-  I2C_BUS_CONTEXT            *I2cBusContext;
-  EFI_STATUS                 Status;
-  EFI_DEVICE_PATH_PROTOCOL   *ParentDevicePath;
+  EFI_I2C_ENUMERATE_PROTOCOL  *I2cEnumerate;
+  EFI_I2C_HOST_PROTOCOL       *I2cHost;
+  I2C_BUS_CONTEXT             *I2cBusContext;
+  EFI_STATUS                  Status;
+  EFI_DEVICE_PATH_PROTOCOL    *ParentDevicePath;
 
-  I2cBusContext     = NULL;
-  ParentDevicePath  = NULL;
-  I2cEnumerate      = NULL;
-  I2cHost           = NULL;
+  I2cBusContext    = NULL;
+  ParentDevicePath = NULL;
+  I2cEnumerate     = NULL;
+  I2cHost          = NULL;
 
   //
   //  Determine if the I2C controller is available
@@ -566,7 +577,7 @@ I2cBusDriverStart (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiI2cHostProtocolGuid,
-                  (VOID**)&I2cHost,
+                  (VOID **)&I2cHost,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_BY_DRIVER
@@ -580,7 +591,7 @@ I2cBusDriverStart (
     Status = gBS->OpenProtocol (
                     Controller,
                     &gEfiCallerIdGuid,
-                    (VOID **) &I2cBusContext,
+                    (VOID **)&I2cBusContext,
                     This->DriverBindingHandle,
                     Controller,
                     EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -597,7 +608,7 @@ I2cBusDriverStart (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiI2cEnumerateProtocolGuid,
-                  (VOID**)&I2cEnumerate,
+                  (VOID **)&I2cEnumerate,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_BY_DRIVER
@@ -608,13 +619,13 @@ I2cBusDriverStart (
   }
 
   Status = gBS->OpenProtocol (
-                   Controller,
-                   &gEfiDevicePathProtocolGuid,
-                   (VOID **) &ParentDevicePath,
-                   This->DriverBindingHandle,
-                   Controller,
-                   EFI_OPEN_PROTOCOL_BY_DRIVER
-                   );
+                  Controller,
+                  &gEfiDevicePathProtocolGuid,
+                  (VOID **)&ParentDevicePath,
+                  This->DriverBindingHandle,
+                  Controller,
+                  EFI_OPEN_PROTOCOL_BY_DRIVER
+                  );
   if (EFI_ERROR (Status) && (Status != EFI_ALREADY_STARTED)) {
     DEBUG ((DEBUG_ERROR, "I2cBus: open device path error, Status = %r\n", Status));
     goto Error;
@@ -661,7 +672,7 @@ I2cBusDriverStart (
     //
     // Parent controller used to create children
     //
-    I2cBusContext->Controller   = Controller;
+    I2cBusContext->Controller = Controller;
     //
     // Parent controller device path used to create children device path
     //
@@ -693,29 +704,29 @@ Error:
     DEBUG ((DEBUG_ERROR, "I2cBus: Start() function failed, Status = %r\n", Status));
     if (ParentDevicePath != NULL) {
       gBS->CloseProtocol (
-            Controller,
-            &gEfiDevicePathProtocolGuid,
-            This->DriverBindingHandle,
-            Controller
-            );
+             Controller,
+             &gEfiDevicePathProtocolGuid,
+             This->DriverBindingHandle,
+             Controller
+             );
     }
 
     if (I2cHost != NULL) {
       gBS->CloseProtocol (
-            Controller,
-            &gEfiI2cHostProtocolGuid,
-            This->DriverBindingHandle,
-            Controller
-            );
+             Controller,
+             &gEfiI2cHostProtocolGuid,
+             This->DriverBindingHandle,
+             Controller
+             );
     }
 
     if (I2cEnumerate != NULL) {
       gBS->CloseProtocol (
-            Controller,
-            &gEfiI2cEnumerateProtocolGuid,
-            This->DriverBindingHandle,
-            Controller
-            );
+             Controller,
+             &gEfiI2cEnumerateProtocolGuid,
+             This->DriverBindingHandle,
+             Controller
+             );
     }
 
     if (I2cBusContext != NULL) {
@@ -735,7 +746,6 @@ Error:
   return Status;
 }
 
-
 /**
   Stops a device controller or a bus controller.
 
@@ -771,60 +781,60 @@ I2cBusDriverStop (
   IN  EFI_HANDLE                   *ChildHandleBuffer
   )
 {
-  I2C_BUS_CONTEXT             *I2cBusContext;
-  EFI_STATUS                  Status;
-  BOOLEAN                     AllChildrenStopped;
-  UINTN                       Index;
+  I2C_BUS_CONTEXT  *I2cBusContext;
+  EFI_STATUS       Status;
+  BOOLEAN          AllChildrenStopped;
+  UINTN            Index;
 
   if (NumberOfChildren == 0) {
     gBS->CloseProtocol (
-          Controller,
-          &gEfiDevicePathProtocolGuid,
-          This->DriverBindingHandle,
-          Controller
-          );
+           Controller,
+           &gEfiDevicePathProtocolGuid,
+           This->DriverBindingHandle,
+           Controller
+           );
 
     gBS->CloseProtocol (
-          Controller,
-          &gEfiI2cHostProtocolGuid,
-          This->DriverBindingHandle,
-          Controller
-          );
+           Controller,
+           &gEfiI2cHostProtocolGuid,
+           This->DriverBindingHandle,
+           Controller
+           );
 
     gBS->CloseProtocol (
-          Controller,
-          &gEfiI2cEnumerateProtocolGuid,
-          This->DriverBindingHandle,
-          Controller
-          );
+           Controller,
+           &gEfiI2cEnumerateProtocolGuid,
+           This->DriverBindingHandle,
+           Controller
+           );
 
     Status = gBS->OpenProtocol (
                     Controller,
                     &gEfiCallerIdGuid,
-                    (VOID **) &I2cBusContext,
+                    (VOID **)&I2cBusContext,
                     This->DriverBindingHandle,
                     Controller,
                     EFI_OPEN_PROTOCOL_GET_PROTOCOL
                     );
     if (!EFI_ERROR (Status)) {
       gBS->UninstallMultipleProtocolInterfaces (
-            Controller,
-            &gEfiCallerIdGuid,
-            I2cBusContext,
-            NULL
-            );
+             Controller,
+             &gEfiCallerIdGuid,
+             I2cBusContext,
+             NULL
+             );
       //
       // No more child now, free bus context data.
       //
       FreePool (I2cBusContext);
     }
+
     return Status;
   }
 
   AllChildrenStopped = TRUE;
 
   for (Index = 0; Index < NumberOfChildren; Index++) {
-
     Status = UnRegisterI2cDevice (This, Controller, ChildHandleBuffer[Index]);
     if (EFI_ERROR (Status)) {
       AllChildrenStopped = FALSE;
@@ -834,6 +844,7 @@ I2cBusDriverStop (
   if (!AllChildrenStopped) {
     return EFI_DEVICE_ERROR;
   }
+
   return EFI_SUCCESS;
 }
 
@@ -853,22 +864,22 @@ I2cBusDriverStop (
 **/
 EFI_STATUS
 RegisterI2cDevice (
-  IN I2C_BUS_CONTEXT            *I2cBusContext,
-  IN EFI_HANDLE                 Controller,
-  IN EFI_DEVICE_PATH_PROTOCOL   *RemainingDevicePath
+  IN I2C_BUS_CONTEXT           *I2cBusContext,
+  IN EFI_HANDLE                Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL  *RemainingDevicePath
   )
 {
-  I2C_DEVICE_CONTEXT                *I2cDeviceContext;
-  EFI_STATUS                        Status;
-  CONST EFI_I2C_DEVICE              *Device;
-  CONST EFI_I2C_DEVICE              *TempDevice;
-  UINT32                            RemainingPathDeviceIndex;
-  EFI_DEVICE_PATH_PROTOCOL          *DevPathNode;
-  BOOLEAN                           BuildControllerNode;
-  UINTN                             Count;
-
-  Status                   = EFI_SUCCESS;
-  BuildControllerNode      = TRUE;
+  I2C_DEVICE_CONTEXT        *I2cDeviceContext;
+  EFI_STATUS                Status;
+  CONST EFI_I2C_DEVICE      *Device;
+  CONST EFI_I2C_DEVICE      *TempDevice;
+  UINT32                    RemainingPathDeviceIndex;
+  EFI_DEVICE_PATH_PROTOCOL  *DevPathNode;
+  BOOLEAN                   BuildControllerNode;
+  UINTN                     Count;
+
+  Status              = EFI_SUCCESS;
+  BuildControllerNode = TRUE;
 
   //
   // Default DeviceIndex
@@ -884,12 +895,13 @@ RegisterI2cDevice (
     //
     DevPathNode = NextDevicePathNode (RemainingDevicePath);
     if ((DevicePathType (DevPathNode) == HARDWARE_DEVICE_PATH) &&
-        (DevicePathSubType(DevPathNode) == HW_CONTROLLER_DP)) {
+        (DevicePathSubType (DevPathNode) == HW_CONTROLLER_DP))
+    {
       //
       // RemainingDevicePath != NULL and RemainingDevicePath contains Controller Node,
       // add Controller Node to Device Path on child handle.
       //
-      RemainingPathDeviceIndex = ((CONTROLLER_DEVICE_PATH *) DevPathNode)->ControllerNumber;
+      RemainingPathDeviceIndex = ((CONTROLLER_DEVICE_PATH *)DevPathNode)->ControllerNumber;
     } else {
       //
       // RemainingDevicePath != NULL and RemainingDevicePath does not contain Controller Node,
@@ -908,12 +920,13 @@ RegisterI2cDevice (
     //  Get the next I2C device
     //
     Status = I2cBusContext->I2cEnumerate->Enumerate (I2cBusContext->I2cEnumerate, &Device);
-    if (EFI_ERROR (Status) || Device == NULL) {
+    if (EFI_ERROR (Status) || (Device == NULL)) {
       if (RemainingDevicePath != NULL) {
         Status = EFI_NOT_FOUND;
       } else {
         Status = EFI_SUCCESS;
       }
+
       break;
     }
 
@@ -937,14 +950,16 @@ RegisterI2cDevice (
           //  Get the next I2C device
           //
           Status = I2cBusContext->I2cEnumerate->Enumerate (I2cBusContext->I2cEnumerate, &TempDevice);
-          if (EFI_ERROR (Status) || TempDevice == NULL) {
+          if (EFI_ERROR (Status) || (TempDevice == NULL)) {
             Status = EFI_SUCCESS;
             break;
           }
+
           if (CompareGuid (Device->DeviceGuid, TempDevice->DeviceGuid)) {
             Count++;
           }
         }
+
         if (Count == 1) {
           //
           // RemainingDevicePath == NULL and only DeviceIndex 0 is present on the I2C bus,
@@ -958,7 +973,8 @@ RegisterI2cDevice (
       // Find I2C device reported in Remaining Device Path
       //
       if ((!CompareGuid (&((VENDOR_DEVICE_PATH *)RemainingDevicePath)->Guid, Device->DeviceGuid)) ||
-          (RemainingPathDeviceIndex != Device->DeviceIndex)) {
+          (RemainingPathDeviceIndex != Device->DeviceIndex))
+      {
         continue;
       }
     }
@@ -976,11 +992,11 @@ RegisterI2cDevice (
     //
     //  Initialize the specific device context
     //
-    I2cDeviceContext->I2cBusContext          = I2cBusContext;
-    I2cDeviceContext->I2cDevice              = Device;
-    I2cDeviceContext->I2cIo.DeviceGuid       = Device->DeviceGuid;
-    I2cDeviceContext->I2cIo.DeviceIndex      = Device->DeviceIndex;
-    I2cDeviceContext->I2cIo.HardwareRevision = Device->HardwareRevision;
+    I2cDeviceContext->I2cBusContext                   = I2cBusContext;
+    I2cDeviceContext->I2cDevice                       = Device;
+    I2cDeviceContext->I2cIo.DeviceGuid                = Device->DeviceGuid;
+    I2cDeviceContext->I2cIo.DeviceIndex               = Device->DeviceIndex;
+    I2cDeviceContext->I2cIo.HardwareRevision          = Device->HardwareRevision;
     I2cDeviceContext->I2cIo.I2cControllerCapabilities = I2cBusContext->I2cHost->I2cControllerCapabilities;
 
     //
@@ -996,12 +1012,13 @@ RegisterI2cDevice (
     //  Install the protocol
     //
     Status = gBS->InstallMultipleProtocolInterfaces (
-              &I2cDeviceContext->Handle,
-              &gEfiI2cIoProtocolGuid,
-              &I2cDeviceContext->I2cIo,
-              &gEfiDevicePathProtocolGuid,
-              I2cDeviceContext->DevicePath,
-              NULL );
+                    &I2cDeviceContext->Handle,
+                    &gEfiI2cIoProtocolGuid,
+                    &I2cDeviceContext->I2cIo,
+                    &gEfiDevicePathProtocolGuid,
+                    I2cDeviceContext->DevicePath,
+                    NULL
+                    );
     if (EFI_ERROR (Status)) {
       //
       // Free resources for this I2C device
@@ -1016,7 +1033,7 @@ RegisterI2cDevice (
     Status = gBS->OpenProtocol (
                     Controller,
                     &gEfiI2cHostProtocolGuid,
-                    (VOID **) &I2cBusContext->I2cHost,
+                    (VOID **)&I2cBusContext->I2cHost,
                     I2cBusContext->DriverBindingHandle,
                     I2cDeviceContext->Handle,
                     EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER
@@ -1048,7 +1065,6 @@ RegisterI2cDevice (
   return Status;
 }
 
-
 /**
   Queue an I2C transaction for execution on the I2C device.
 
@@ -1130,11 +1146,11 @@ I2cBusQueueRequest (
   OUT EFI_STATUS                *I2cStatus          OPTIONAL
   )
 {
-  CONST EFI_I2C_DEVICE        *I2cDevice;
-  I2C_BUS_CONTEXT             *I2cBusContext;
-  CONST EFI_I2C_HOST_PROTOCOL *I2cHost;
-  I2C_DEVICE_CONTEXT          *I2cDeviceContext;
-  EFI_STATUS                  Status;
+  CONST EFI_I2C_DEVICE         *I2cDevice;
+  I2C_BUS_CONTEXT              *I2cBusContext;
+  CONST EFI_I2C_HOST_PROTOCOL  *I2cHost;
+  I2C_DEVICE_CONTEXT           *I2cDeviceContext;
+  EFI_STATUS                   Status;
 
   if (RequestPacket == NULL) {
     return EFI_INVALID_PARAMETER;
@@ -1161,7 +1177,7 @@ I2cBusQueueRequest (
   Status = I2cHost->QueueRequest (
                       I2cHost,
                       I2cDevice->I2cBusConfiguration,
-                      I2cDevice->SlaveAddressArray [SlaveAddressIndex],
+                      I2cDevice->SlaveAddressArray[SlaveAddressIndex],
                       Event,
                       RequestPacket,
                       I2cStatus
@@ -1180,7 +1196,7 @@ I2cBusQueueRequest (
 **/
 VOID
 ReleaseI2cDeviceContext (
-  IN I2C_DEVICE_CONTEXT          *I2cDeviceContext
+  IN I2C_DEVICE_CONTEXT  *I2cDeviceContext
   )
 {
   if (I2cDeviceContext == NULL) {
@@ -1210,22 +1226,22 @@ ReleaseI2cDeviceContext (
 **/
 EFI_STATUS
 UnRegisterI2cDevice (
-  IN  EFI_DRIVER_BINDING_PROTOCOL    *This,
-  IN  EFI_HANDLE                     Controller,
-  IN  EFI_HANDLE                     Handle
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN  EFI_HANDLE                   Controller,
+  IN  EFI_HANDLE                   Handle
   )
 {
-  EFI_STATUS                  Status;
-  I2C_DEVICE_CONTEXT          *I2cDeviceContext;
-  EFI_I2C_IO_PROTOCOL         *I2cIo;
-  EFI_I2C_HOST_PROTOCOL       *I2cHost;
+  EFI_STATUS             Status;
+  I2C_DEVICE_CONTEXT     *I2cDeviceContext;
+  EFI_I2C_IO_PROTOCOL    *I2cIo;
+  EFI_I2C_HOST_PROTOCOL  *I2cHost;
 
   I2cIo = NULL;
 
   Status = gBS->OpenProtocol (
                   Handle,
                   &gEfiI2cIoProtocolGuid,
-                  (VOID **) &I2cIo,
+                  (VOID **)&I2cIo,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -1267,13 +1283,13 @@ UnRegisterI2cDevice (
     // Keep parent and child relationship
     //
     gBS->OpenProtocol (
-          Controller,
-          &gEfiI2cHostProtocolGuid,
-          (VOID **) &I2cHost,
-          This->DriverBindingHandle,
-          Handle,
-          EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER
-          );
+           Controller,
+           &gEfiI2cHostProtocolGuid,
+           (VOID **)&I2cHost,
+           This->DriverBindingHandle,
+           Handle,
+           EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER
+           );
     return Status;
   }
 
@@ -1299,8 +1315,8 @@ UnRegisterI2cDevice (
 **/
 EFI_STATUS
 I2cBusDevicePathAppend (
-  IN I2C_DEVICE_CONTEXT     *I2cDeviceContext,
-  IN BOOLEAN                BuildControllerNode
+  IN I2C_DEVICE_CONTEXT  *I2cDeviceContext,
+  IN BOOLEAN             BuildControllerNode
   )
 {
   EFI_DEVICE_PATH_PROTOCOL  *PreviousDevicePath;
@@ -1311,10 +1327,10 @@ I2cBusDevicePathAppend (
   // Build vendor device path
   //
   CopyMem (&gVendorDevicePathTemplate.Guid, I2cDeviceContext->I2cDevice->DeviceGuid, sizeof (EFI_GUID));
-  I2cDeviceContext->DevicePath                    = AppendDevicePathNode (
-                                                      I2cDeviceContext->I2cBusContext->ParentDevicePath,
-                                                      (EFI_DEVICE_PATH_PROTOCOL *) &gVendorDevicePathTemplate
-                                                      );
+  I2cDeviceContext->DevicePath = AppendDevicePathNode (
+                                   I2cDeviceContext->I2cBusContext->ParentDevicePath,
+                                   (EFI_DEVICE_PATH_PROTOCOL *)&gVendorDevicePathTemplate
+                                   );
   ASSERT (I2cDeviceContext->DevicePath != NULL);
   if (I2cDeviceContext->DevicePath == NULL) {
     return EFI_OUT_OF_RESOURCES;
@@ -1324,12 +1340,12 @@ I2cBusDevicePathAppend (
     //
     // Build the final I2C device path with controller node
     //
-    PreviousDevicePath = I2cDeviceContext->DevicePath;
+    PreviousDevicePath                             = I2cDeviceContext->DevicePath;
     gControllerDevicePathTemplate.ControllerNumber = I2cDeviceContext->I2cDevice->DeviceIndex;
-    I2cDeviceContext->DevicePath          = AppendDevicePathNode (
-                                              I2cDeviceContext->DevicePath,
-                                              (EFI_DEVICE_PATH_PROTOCOL *) &gControllerDevicePathTemplate
-                                              );
+    I2cDeviceContext->DevicePath                   = AppendDevicePathNode (
+                                                       I2cDeviceContext->DevicePath,
+                                                       (EFI_DEVICE_PATH_PROTOCOL *)&gControllerDevicePathTemplate
+                                                       );
     gBS->FreePool (PreviousDevicePath);
     ASSERT (I2cDeviceContext->DevicePath != NULL);
     if (I2cDeviceContext->DevicePath == NULL) {
@@ -1353,12 +1369,12 @@ I2cBusDevicePathAppend (
 **/
 EFI_STATUS
 EFIAPI
-InitializeI2cBus(
-  IN EFI_HANDLE           ImageHandle,
-  IN EFI_SYSTEM_TABLE     *SystemTable
+InitializeI2cBus (
+  IN EFI_HANDLE        ImageHandle,
+  IN EFI_SYSTEM_TABLE  *SystemTable
   )
 {
-  EFI_STATUS              Status;
+  EFI_STATUS  Status;
 
   //
   // Install driver model protocol(s).
@@ -1373,7 +1389,6 @@ InitializeI2cBus(
              );
   ASSERT_EFI_ERROR (Status);
 
-
   return Status;
 }
 
@@ -1392,15 +1407,15 @@ InitializeI2cBus(
 EFI_STATUS
 EFIAPI
 I2cBusUnload (
-  IN EFI_HANDLE             ImageHandle
+  IN EFI_HANDLE  ImageHandle
   )
 {
-  EFI_STATUS                        Status;
-  EFI_HANDLE                        *DeviceHandleBuffer;
-  UINTN                             DeviceHandleCount;
-  UINTN                             Index;
-  EFI_COMPONENT_NAME_PROTOCOL       *ComponentName;
-  EFI_COMPONENT_NAME2_PROTOCOL      *ComponentName2;
+  EFI_STATUS                    Status;
+  EFI_HANDLE                    *DeviceHandleBuffer;
+  UINTN                         DeviceHandleCount;
+  UINTN                         Index;
+  EFI_COMPONENT_NAME_PROTOCOL   *ComponentName;
+  EFI_COMPONENT_NAME2_PROTOCOL  *ComponentName2;
 
   //
   // Get the list of all I2C Controller handles in the handle database.
@@ -1455,7 +1470,7 @@ I2cBusUnload (
   Status = gBS->HandleProtocol (
                   gI2cBusDriverBinding.DriverBindingHandle,
                   &gEfiComponentNameProtocolGuid,
-                  (VOID **) &ComponentName
+                  (VOID **)&ComponentName
                   );
   if (!EFI_ERROR (Status)) {
     gBS->UninstallProtocolInterface (
@@ -1468,7 +1483,7 @@ I2cBusUnload (
   Status = gBS->HandleProtocol (
                   gI2cBusDriverBinding.DriverBindingHandle,
                   &gEfiComponentName2ProtocolGuid,
-                  (VOID **) &ComponentName2
+                  (VOID **)&ComponentName2
                   );
   if (!EFI_ERROR (Status)) {
     gBS->UninstallProtocolInterface (

+ 14 - 13
MdeModulePkg/Bus/I2c/I2cDxe/I2cDxe.c

@@ -20,21 +20,21 @@
 **/
 EFI_STATUS
 EFIAPI
-InitializeI2c(
-  IN EFI_HANDLE           ImageHandle,
-  IN EFI_SYSTEM_TABLE     *SystemTable
+InitializeI2c (
+  IN EFI_HANDLE        ImageHandle,
+  IN EFI_SYSTEM_TABLE  *SystemTable
   )
 {
-  EFI_STATUS              Status;
+  EFI_STATUS  Status;
 
   //
   // Install driver model protocol(s).
   //
-  Status = InitializeI2cHost ( ImageHandle, SystemTable );
-  if ( !EFI_ERROR ( Status ))
-  {
-    Status = InitializeI2cBus ( ImageHandle, SystemTable );
+  Status = InitializeI2cHost (ImageHandle, SystemTable);
+  if ( !EFI_ERROR (Status)) {
+    Status = InitializeI2cBus (ImageHandle, SystemTable);
   }
+
   return Status;
 }
 
@@ -53,17 +53,18 @@ InitializeI2c(
 EFI_STATUS
 EFIAPI
 I2cUnload (
-  IN EFI_HANDLE             ImageHandle
+  IN EFI_HANDLE  ImageHandle
   )
 {
-  EFI_STATUS                        Status;
+  EFI_STATUS  Status;
 
   //
   //  Disconnect the drivers
   //
-  Status = I2cBusUnload ( ImageHandle );
-  if ( !EFI_ERROR ( Status )) {
-    Status = I2cHostUnload ( ImageHandle );
+  Status = I2cBusUnload (ImageHandle);
+  if ( !EFI_ERROR (Status)) {
+    Status = I2cHostUnload (ImageHandle);
   }
+
   return Status;
 }

+ 87 - 87
MdeModulePkg/Bus/I2c/I2cDxe/I2cDxe.h

@@ -30,24 +30,24 @@
 #include <Protocol/I2cBusConfigurationManagement.h>
 #include <Protocol/LoadedImage.h>
 
-#define I2C_DEVICE_SIGNATURE          SIGNATURE_32 ('I', '2', 'C', 'D')
-#define I2C_HOST_SIGNATURE            SIGNATURE_32 ('I', '2', 'C', 'H')
-#define I2C_REQUEST_SIGNATURE         SIGNATURE_32 ('I', '2', 'C', 'R')
+#define I2C_DEVICE_SIGNATURE   SIGNATURE_32 ('I', '2', 'C', 'D')
+#define I2C_HOST_SIGNATURE     SIGNATURE_32 ('I', '2', 'C', 'H')
+#define I2C_REQUEST_SIGNATURE  SIGNATURE_32 ('I', '2', 'C', 'R')
 
 //
 // Synchronize access to the list of requests
 //
-#define TPL_I2C_SYNC                  TPL_NOTIFY
+#define TPL_I2C_SYNC  TPL_NOTIFY
 
 //
 //  I2C bus context
 //
 typedef struct {
-  EFI_I2C_ENUMERATE_PROTOCOL       *I2cEnumerate;
-  EFI_I2C_HOST_PROTOCOL            *I2cHost;
-  EFI_HANDLE                       Controller;
-  EFI_DEVICE_PATH_PROTOCOL         *ParentDevicePath;
-  EFI_HANDLE                       DriverBindingHandle;
+  EFI_I2C_ENUMERATE_PROTOCOL    *I2cEnumerate;
+  EFI_I2C_HOST_PROTOCOL         *I2cHost;
+  EFI_HANDLE                    Controller;
+  EFI_DEVICE_PATH_PROTOCOL      *ParentDevicePath;
+  EFI_HANDLE                    DriverBindingHandle;
 } I2C_BUS_CONTEXT;
 
 //
@@ -57,36 +57,36 @@ typedef struct {
   //
   // Structure identification
   //
-  UINT32                        Signature;
+  UINT32                      Signature;
 
   //
   // I2c device handle
   //
-  EFI_HANDLE                    Handle;
+  EFI_HANDLE                  Handle;
 
   //
   // Upper level API to support the I2C device I/O
   //
-  EFI_I2C_IO_PROTOCOL           I2cIo;
+  EFI_I2C_IO_PROTOCOL         I2cIo;
 
   //
   // Device path for this device
   //
-  EFI_DEVICE_PATH_PROTOCOL      *DevicePath;
+  EFI_DEVICE_PATH_PROTOCOL    *DevicePath;
 
   //
   // Platform specific data for this device
   //
-  CONST EFI_I2C_DEVICE          *I2cDevice;
+  CONST EFI_I2C_DEVICE        *I2cDevice;
 
   //
   // Context for the common I/O support including the
   // lower level API to the host controller.
   //
-  I2C_BUS_CONTEXT               *I2cBusContext;
+  I2C_BUS_CONTEXT             *I2cBusContext;
 } I2C_DEVICE_CONTEXT;
 
-#define I2C_DEVICE_CONTEXT_FROM_PROTOCOL(a) CR (a, I2C_DEVICE_CONTEXT, I2cIo, I2C_DEVICE_SIGNATURE)
+#define I2C_DEVICE_CONTEXT_FROM_PROTOCOL(a)  CR (a, I2C_DEVICE_CONTEXT, I2cIo, I2C_DEVICE_SIGNATURE)
 
 //
 // I2C Request
@@ -95,41 +95,41 @@ typedef struct {
   //
   // Signature
   //
-  UINT32                            Signature;
+  UINT32                    Signature;
 
   //
   // Next request in the pending request list
   //
-  LIST_ENTRY                        Link;
+  LIST_ENTRY                Link;
 
   //
   // I2C bus configuration for the operation
   //
-  UINTN                             I2cBusConfiguration;
+  UINTN                     I2cBusConfiguration;
 
   //
   // I2C slave address for the operation
   //
-  UINTN                             SlaveAddress;
+  UINTN                     SlaveAddress;
 
   //
   // Event to set for asynchronous operations, NULL for
   // synchronous operations
   //
-  EFI_EVENT                         Event;
+  EFI_EVENT                 Event;
 
   //
   // I2C operation description
   //
-  EFI_I2C_REQUEST_PACKET            *RequestPacket;
+  EFI_I2C_REQUEST_PACKET    *RequestPacket;
 
   //
   // Optional buffer to receive the I2C operation completion status
   //
-  EFI_STATUS                        *Status;
+  EFI_STATUS                *Status;
 } I2C_REQUEST;
 
-#define I2C_REQUEST_FROM_ENTRY(a)         CR (a, I2C_REQUEST, Link, I2C_REQUEST_SIGNATURE);
+#define I2C_REQUEST_FROM_ENTRY(a)  CR (a, I2C_REQUEST, Link, I2C_REQUEST_SIGNATURE);
 
 //
 // I2C host context
@@ -138,66 +138,66 @@ typedef struct {
   //
   // Structure identification
   //
-  UINTN Signature;
+  UINTN                                            Signature;
 
   //
   // Current I2C bus configuration
   //
-  UINTN I2cBusConfiguration;
+  UINTN                                            I2cBusConfiguration;
 
   //
   // I2C bus configuration management event
   //
-  EFI_EVENT I2cBusConfigurationEvent;
+  EFI_EVENT                                        I2cBusConfigurationEvent;
 
   //
   // I2C operation completion event
   //
-  EFI_EVENT I2cEvent;
+  EFI_EVENT                                        I2cEvent;
 
   //
   // I2C operation and I2C bus configuration management status
   //
-  EFI_STATUS Status;
+  EFI_STATUS                                       Status;
 
   //
   // I2C bus configuration management operation pending
   //
-  BOOLEAN I2cBusConfigurationManagementPending;
+  BOOLEAN                                          I2cBusConfigurationManagementPending;
 
   //
   // I2C request list maintained by I2C Host
   //
-  LIST_ENTRY                  RequestList;
+  LIST_ENTRY                                       RequestList;
 
   //
   // Upper level API
   //
-  EFI_I2C_HOST_PROTOCOL       I2cHost;
+  EFI_I2C_HOST_PROTOCOL                            I2cHost;
 
   //
   // I2C bus configuration management protocol
   //
-  EFI_I2C_BUS_CONFIGURATION_MANAGEMENT_PROTOCOL *I2cBusConfigurationManagement;
+  EFI_I2C_BUS_CONFIGURATION_MANAGEMENT_PROTOCOL    *I2cBusConfigurationManagement;
 
   //
   // Lower level API for I2C master (controller)
   //
-  EFI_I2C_MASTER_PROTOCOL *I2cMaster;
+  EFI_I2C_MASTER_PROTOCOL                          *I2cMaster;
 } I2C_HOST_CONTEXT;
 
-#define I2C_HOST_CONTEXT_FROM_PROTOCOL(a) CR (a, I2C_HOST_CONTEXT, I2cHost, I2C_HOST_SIGNATURE)
+#define I2C_HOST_CONTEXT_FROM_PROTOCOL(a)  CR (a, I2C_HOST_CONTEXT, I2cHost, I2C_HOST_SIGNATURE)
 
 //
 // Global Variables
 //
-extern EFI_COMPONENT_NAME_PROTOCOL    gI2cBusComponentName;
-extern EFI_COMPONENT_NAME2_PROTOCOL   gI2cBusComponentName2;
-extern EFI_DRIVER_BINDING_PROTOCOL    gI2cBusDriverBinding;
+extern EFI_COMPONENT_NAME_PROTOCOL   gI2cBusComponentName;
+extern EFI_COMPONENT_NAME2_PROTOCOL  gI2cBusComponentName2;
+extern EFI_DRIVER_BINDING_PROTOCOL   gI2cBusDriverBinding;
 
-extern EFI_COMPONENT_NAME_PROTOCOL    gI2cHostComponentName;
-extern EFI_COMPONENT_NAME2_PROTOCOL   gI2cHostComponentName2;
-extern EFI_DRIVER_BINDING_PROTOCOL    gI2cHostDriverBinding;
+extern EFI_COMPONENT_NAME_PROTOCOL   gI2cHostComponentName;
+extern EFI_COMPONENT_NAME2_PROTOCOL  gI2cHostComponentName2;
+extern EFI_DRIVER_BINDING_PROTOCOL   gI2cHostDriverBinding;
 
 /**
   Start the I2C driver
@@ -217,7 +217,7 @@ extern EFI_DRIVER_BINDING_PROTOCOL    gI2cHostDriverBinding;
 EFI_STATUS
 RegisterI2cDevice (
   IN I2C_BUS_CONTEXT           *I2cBus,
-  IN EFI_HANDLE                 Controller,
+  IN EFI_HANDLE                Controller,
   IN EFI_DEVICE_PATH_PROTOCOL  *RemainingDevicePath
   );
 
@@ -237,9 +237,9 @@ RegisterI2cDevice (
 **/
 EFI_STATUS
 UnRegisterI2cDevice (
-  IN  EFI_DRIVER_BINDING_PROTOCOL    *This,
-  IN  EFI_HANDLE                     Controller,
-  IN  EFI_HANDLE                     Handle
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN  EFI_HANDLE                   Controller,
+  IN  EFI_HANDLE                   Handle
   );
 
 /**
@@ -256,8 +256,8 @@ UnRegisterI2cDevice (
 **/
 EFI_STATUS
 I2cBusDevicePathAppend (
-  IN I2C_DEVICE_CONTEXT     *I2cDeviceContext,
-  IN BOOLEAN                BuildControllerNode
+  IN I2C_DEVICE_CONTEXT  *I2cDeviceContext,
+  IN BOOLEAN             BuildControllerNode
   );
 
 /**
@@ -514,9 +514,9 @@ I2cBusDriverStop (
 EFI_STATUS
 EFIAPI
 I2cBusComponentNameGetDriverName (
-  IN  EFI_COMPONENT_NAME2_PROTOCOL *This,
-  IN  CHAR8                        *Language,
-  OUT CHAR16                       **DriverName
+  IN  EFI_COMPONENT_NAME2_PROTOCOL  *This,
+  IN  CHAR8                         *Language,
+  OUT CHAR16                        **DriverName
   );
 
 /**
@@ -590,11 +590,11 @@ I2cBusComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 I2cBusComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME2_PROTOCOL                    *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME2_PROTOCOL  *This,
+  IN  EFI_HANDLE                    ControllerHandle,
+  IN  EFI_HANDLE                    ChildHandle        OPTIONAL,
+  IN  CHAR8                         *Language,
+  OUT CHAR16                        **ControllerName
   );
 
 /**
@@ -610,9 +610,9 @@ I2cBusComponentNameGetControllerName (
 **/
 EFI_STATUS
 EFIAPI
-InitializeI2cBus(
-  IN EFI_HANDLE           ImageHandle,
-  IN EFI_SYSTEM_TABLE     *SystemTable
+InitializeI2cBus (
+  IN EFI_HANDLE        ImageHandle,
+  IN EFI_SYSTEM_TABLE  *SystemTable
   );
 
 /**
@@ -630,7 +630,7 @@ InitializeI2cBus(
 EFI_STATUS
 EFIAPI
 I2cBusUnload (
-  IN EFI_HANDLE             ImageHandle
+  IN EFI_HANDLE  ImageHandle
   );
 
 /**
@@ -643,7 +643,7 @@ I2cBusUnload (
 **/
 VOID
 ReleaseI2cDeviceContext (
-  IN I2C_DEVICE_CONTEXT          *I2cDeviceContext
+  IN I2C_DEVICE_CONTEXT  *I2cDeviceContext
   );
 
 /**
@@ -657,8 +657,8 @@ ReleaseI2cDeviceContext (
 **/
 EFI_STATUS
 I2cHostRequestComplete (
-  I2C_HOST_CONTEXT *I2cHost,
-  EFI_STATUS       Status
+  I2C_HOST_CONTEXT  *I2cHost,
+  EFI_STATUS        Status
   );
 
 /**
@@ -688,7 +688,7 @@ I2cHostRequestComplete (
 **/
 EFI_STATUS
 I2cHostRequestEnable (
-  I2C_HOST_CONTEXT *I2cHost
+  I2C_HOST_CONTEXT  *I2cHost
   );
 
 /**
@@ -779,9 +779,9 @@ I2cHostDriverSupported (
 EFI_STATUS
 EFIAPI
 I2cHostDriverStart (
-  IN EFI_DRIVER_BINDING_PROTOCOL        *This,
-  IN EFI_HANDLE                         Controller,
-  IN EFI_DEVICE_PATH_PROTOCOL           *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   );
 
 /**
@@ -813,10 +813,10 @@ I2cHostDriverStart (
 EFI_STATUS
 EFIAPI
 I2cHostDriverStop (
-  IN  EFI_DRIVER_BINDING_PROTOCOL       *This,
-  IN  EFI_HANDLE                        Controller,
-  IN  UINTN                             NumberOfChildren,
-  IN  EFI_HANDLE                        *ChildHandleBuffer
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN  EFI_HANDLE                   Controller,
+  IN  UINTN                        NumberOfChildren,
+  IN  EFI_HANDLE                   *ChildHandleBuffer
   );
 
 /**
@@ -861,9 +861,9 @@ I2cHostDriverStop (
 EFI_STATUS
 EFIAPI
 I2cHostComponentNameGetDriverName (
-  IN  EFI_COMPONENT_NAME2_PROTOCOL *This,
-  IN  CHAR8                        *Language,
-  OUT CHAR16                       **DriverName
+  IN  EFI_COMPONENT_NAME2_PROTOCOL  *This,
+  IN  CHAR8                         *Language,
+  OUT CHAR16                        **DriverName
   );
 
 /**
@@ -937,11 +937,11 @@ I2cHostComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 I2cHostComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME2_PROTOCOL                    *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME2_PROTOCOL  *This,
+  IN  EFI_HANDLE                    ControllerHandle,
+  IN  EFI_HANDLE                    ChildHandle        OPTIONAL,
+  IN  CHAR8                         *Language,
+  OUT CHAR16                        **ControllerName
   );
 
 /**
@@ -956,8 +956,8 @@ I2cHostComponentNameGetControllerName (
 VOID
 EFIAPI
 I2cHostRequestCompleteEvent (
-  IN EFI_EVENT Event,
-  IN VOID *Context
+  IN EFI_EVENT  Event,
+  IN VOID       *Context
   );
 
 /**
@@ -972,8 +972,8 @@ I2cHostRequestCompleteEvent (
 VOID
 EFIAPI
 I2cHostI2cBusConfigurationAvailable (
-  IN EFI_EVENT Event,
-  IN VOID *Context
+  IN EFI_EVENT  Event,
+  IN VOID       *Context
   );
 
 /**
@@ -1065,9 +1065,9 @@ I2cHostQueueRequest (
 **/
 EFI_STATUS
 EFIAPI
-InitializeI2cHost(
-  IN EFI_HANDLE           ImageHandle,
-  IN EFI_SYSTEM_TABLE     *SystemTable
+InitializeI2cHost (
+  IN EFI_HANDLE        ImageHandle,
+  IN EFI_SYSTEM_TABLE  *SystemTable
   );
 
 /**
@@ -1085,7 +1085,7 @@ InitializeI2cHost(
 EFI_STATUS
 EFIAPI
 I2cHostUnload (
-  IN EFI_HANDLE             ImageHandle
+  IN EFI_HANDLE  ImageHandle
   );
 
-#endif  //  __I2C_DXE_H__
+#endif //  __I2C_DXE_H__

+ 108 - 107
MdeModulePkg/Bus/I2c/I2cDxe/I2cHost.c

@@ -10,7 +10,7 @@
 
 #include "I2cDxe.h"
 
-EFI_DRIVER_BINDING_PROTOCOL gI2cHostDriverBinding = {
+EFI_DRIVER_BINDING_PROTOCOL  gI2cHostDriverBinding = {
   I2cHostDriverSupported,
   I2cHostDriverStart,
   I2cHostDriverStop,
@@ -22,24 +22,24 @@ EFI_DRIVER_BINDING_PROTOCOL gI2cHostDriverBinding = {
 //
 // Driver name table
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mI2cHostDriverNameTable[] = {
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE  mI2cHostDriverNameTable[] = {
   { "eng;en", L"I2c Host Driver" },
-  { NULL , NULL }
+  { NULL,     NULL               }
 };
 
 //
 // EFI Component Name Protocol
 //
 GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME_PROTOCOL  gI2cHostComponentName = {
-  (EFI_COMPONENT_NAME_GET_DRIVER_NAME) I2cHostComponentNameGetDriverName,
-  (EFI_COMPONENT_NAME_GET_CONTROLLER_NAME) I2cHostComponentNameGetControllerName,
+  (EFI_COMPONENT_NAME_GET_DRIVER_NAME)I2cHostComponentNameGetDriverName,
+  (EFI_COMPONENT_NAME_GET_CONTROLLER_NAME)I2cHostComponentNameGetControllerName,
   "eng"
 };
 
 //
 // EFI Component Name 2 Protocol
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL gI2cHostComponentName2 = {
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL  gI2cHostComponentName2 = {
   I2cHostComponentNameGetDriverName,
   I2cHostComponentNameGetControllerName,
   "en"
@@ -88,8 +88,8 @@ EFI_STATUS
 EFIAPI
 I2cHostComponentNameGetDriverName (
   IN  EFI_COMPONENT_NAME2_PROTOCOL  *This,
-  IN  CHAR8                        *Language,
-  OUT CHAR16                       **DriverName
+  IN  CHAR8                         *Language,
+  OUT CHAR16                        **DriverName
   )
 {
   return LookupUnicodeString2 (
@@ -172,11 +172,11 @@ I2cHostComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 I2cHostComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME2_PROTOCOL                    *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME2_PROTOCOL  *This,
+  IN  EFI_HANDLE                    ControllerHandle,
+  IN  EFI_HANDLE                    ChildHandle        OPTIONAL,
+  IN  CHAR8                         *Language,
+  OUT CHAR16                        **ControllerName
   )
 {
   return EFI_UNSUPPORTED;
@@ -232,9 +232,9 @@ I2cHostDriverSupported (
   IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   )
 {
-  EFI_I2C_MASTER_PROTOCOL                       *I2cMaster;
-  EFI_I2C_BUS_CONFIGURATION_MANAGEMENT_PROTOCOL *I2cBusConfigurationManagement;
-  EFI_STATUS                                    Status;
+  EFI_I2C_MASTER_PROTOCOL                        *I2cMaster;
+  EFI_I2C_BUS_CONFIGURATION_MANAGEMENT_PROTOCOL  *I2cBusConfigurationManagement;
+  EFI_STATUS                                     Status;
 
   //
   //  Locate I2C Bus Configuration Management Protocol
@@ -255,11 +255,11 @@ I2cHostDriverSupported (
   // Close the protocol because we don't use it here
   //
   gBS->CloseProtocol (
-                  Controller,
-                  &gEfiI2cBusConfigurationManagementProtocolGuid,
-                  This->DriverBindingHandle,
-                  Controller
-                  );
+         Controller,
+         &gEfiI2cBusConfigurationManagementProtocolGuid,
+         This->DriverBindingHandle,
+         Controller
+         );
 
   //
   //  Locate I2C Master Protocol
@@ -317,15 +317,15 @@ I2cHostDriverSupported (
 EFI_STATUS
 EFIAPI
 I2cHostDriverStart (
-  IN EFI_DRIVER_BINDING_PROTOCOL        *This,
-  IN EFI_HANDLE                         Controller,
-  IN EFI_DEVICE_PATH_PROTOCOL           *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   )
 {
-  EFI_STATUS                                          Status;
-  EFI_I2C_MASTER_PROTOCOL                             *I2cMaster;
-  EFI_I2C_BUS_CONFIGURATION_MANAGEMENT_PROTOCOL       *I2cBusConfigurationManagement;
-  I2C_HOST_CONTEXT                                    *I2cHostContext;
+  EFI_STATUS                                     Status;
+  EFI_I2C_MASTER_PROTOCOL                        *I2cMaster;
+  EFI_I2C_BUS_CONFIGURATION_MANAGEMENT_PROTOCOL  *I2cBusConfigurationManagement;
+  I2C_HOST_CONTEXT                               *I2cHostContext;
 
   I2cMaster                     = NULL;
   I2cHostContext                = NULL;
@@ -379,8 +379,8 @@ I2cHostDriverStart (
   I2cHostContext->Signature                     = I2C_HOST_SIGNATURE;
   I2cHostContext->I2cMaster                     = I2cMaster;
   I2cHostContext->I2cBusConfigurationManagement = I2cBusConfigurationManagement;
-  I2cHostContext->I2cBusConfiguration           = (UINTN) -1;
-  InitializeListHead(&I2cHostContext->RequestList);
+  I2cHostContext->I2cBusConfiguration           = (UINTN)-1;
+  InitializeListHead (&I2cHostContext->RequestList);
 
   //
   // Reset the controller
@@ -441,11 +441,11 @@ Exit:
     DEBUG ((DEBUG_ERROR, "I2cHost: Start() function failed, Status = %r\n", Status));
     if (I2cBusConfigurationManagement != NULL) {
       gBS->CloseProtocol (
-                      Controller,
-                      &gEfiI2cBusConfigurationManagementProtocolGuid,
-                      This->DriverBindingHandle,
-                      Controller
-                      );
+             Controller,
+             &gEfiI2cBusConfigurationManagementProtocolGuid,
+             This->DriverBindingHandle,
+             Controller
+             );
     }
 
     if ((I2cHostContext != NULL) && (I2cHostContext->I2cEvent != NULL)) {
@@ -501,16 +501,16 @@ Exit:
 EFI_STATUS
 EFIAPI
 I2cHostDriverStop (
-  IN  EFI_DRIVER_BINDING_PROTOCOL       *This,
-  IN  EFI_HANDLE                        Controller,
-  IN  UINTN                             NumberOfChildren,
-  IN  EFI_HANDLE                        *ChildHandleBuffer
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN  EFI_HANDLE                   Controller,
+  IN  UINTN                        NumberOfChildren,
+  IN  EFI_HANDLE                   *ChildHandleBuffer
   )
 {
-  EFI_STATUS                  Status;
-  I2C_HOST_CONTEXT            *I2cHostContext;
-  EFI_I2C_HOST_PROTOCOL       *I2cHost;
-  EFI_TPL                     TplPrevious;
+  EFI_STATUS             Status;
+  I2C_HOST_CONTEXT       *I2cHostContext;
+  EFI_I2C_HOST_PROTOCOL  *I2cHost;
+  EFI_TPL                TplPrevious;
 
   TplPrevious = EfiGetCurrentTpl ();
   if (TplPrevious > TPL_I2C_SYNC) {
@@ -521,7 +521,7 @@ I2cHostDriverStop (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiI2cHostProtocolGuid,
-                  (VOID **) &I2cHost,
+                  (VOID **)&I2cHost,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -542,9 +542,9 @@ I2cHostDriverStop (
   // If there is pending request or pending bus configuration, do not stop
   //
   Status = EFI_DEVICE_ERROR;
-  if (( !I2cHostContext->I2cBusConfigurationManagementPending )
-    && IsListEmpty (&I2cHostContext->RequestList)) {
-
+  if (  (!I2cHostContext->I2cBusConfigurationManagementPending)
+     && IsListEmpty (&I2cHostContext->RequestList))
+  {
     //
     //  Remove the I2C host protocol
     //
@@ -602,16 +602,16 @@ I2cHostDriverStop (
 VOID
 EFIAPI
 I2cHostI2cBusConfigurationAvailable (
-  IN EFI_EVENT Event,
-  IN VOID *Context
+  IN EFI_EVENT  Event,
+  IN VOID       *Context
   )
 {
-  I2C_HOST_CONTEXT            *I2cHostContext;
-  EFI_I2C_MASTER_PROTOCOL     *I2cMaster;
-  I2C_REQUEST                 *I2cRequest;
-  LIST_ENTRY                  *EntryHeader;
-  LIST_ENTRY                  *Entry;
-  EFI_STATUS                  Status;
+  I2C_HOST_CONTEXT         *I2cHostContext;
+  EFI_I2C_MASTER_PROTOCOL  *I2cMaster;
+  I2C_REQUEST              *I2cRequest;
+  LIST_ENTRY               *EntryHeader;
+  LIST_ENTRY               *Entry;
+  EFI_STATUS               Status;
 
   //
   // Mark this I2C bus configuration management operation as complete
@@ -637,7 +637,7 @@ I2cHostI2cBusConfigurationAvailable (
     // Unknown I2C bus configuration
     // Force next operation to enable the I2C bus configuration
     //
-    I2cHostContext->I2cBusConfiguration = (UINTN) -1;
+    I2cHostContext->I2cBusConfiguration = (UINTN)-1;
 
     //
     // Do not continue current I2C request
@@ -649,8 +649,8 @@ I2cHostI2cBusConfigurationAvailable (
   // Get the first request in the link with FIFO order
   //
   EntryHeader = &I2cHostContext->RequestList;
-  Entry = GetFirstNode (EntryHeader);
-  I2cRequest = I2C_REQUEST_FROM_ENTRY (Entry);
+  Entry       = GetFirstNode (EntryHeader);
+  I2cRequest  = I2C_REQUEST_FROM_ENTRY (Entry);
 
   //
   // Update the I2C bus configuration of the current I2C request
@@ -669,7 +669,7 @@ I2cHostI2cBusConfigurationAvailable (
                         );
 
   if (EFI_ERROR (Status)) {
-    DEBUG((DEBUG_ERROR, "I2cHostI2cBusConfigurationAvailable: Error starting I2C operation, %r\n", Status));
+    DEBUG ((DEBUG_ERROR, "I2cHostI2cBusConfigurationAvailable: Error starting I2C operation, %r\n", Status));
   }
 }
 
@@ -686,20 +686,20 @@ I2cHostI2cBusConfigurationAvailable (
 **/
 EFI_STATUS
 I2cHostRequestComplete (
-  I2C_HOST_CONTEXT *I2cHostContext,
-  EFI_STATUS       Status
+  I2C_HOST_CONTEXT  *I2cHostContext,
+  EFI_STATUS        Status
   )
 {
-  I2C_REQUEST *I2cRequest;
-  LIST_ENTRY  *EntryHeader;
-  LIST_ENTRY  *Entry;
+  I2C_REQUEST  *I2cRequest;
+  LIST_ENTRY   *EntryHeader;
+  LIST_ENTRY   *Entry;
 
   //
   // Remove the current I2C request from the list
   //
   EntryHeader = &I2cHostContext->RequestList;
-  Entry = GetFirstNode (EntryHeader);
-  I2cRequest = I2C_REQUEST_FROM_ENTRY (Entry);
+  Entry       = GetFirstNode (EntryHeader);
+  I2cRequest  = I2C_REQUEST_FROM_ENTRY (Entry);
 
   //
   // Save the status for QueueRequest
@@ -725,7 +725,7 @@ I2cHostRequestComplete (
   //
   // If there is more I2C request, start next one
   //
-  if(!IsListEmpty (EntryHeader)) {
+  if (!IsListEmpty (EntryHeader)) {
     I2cHostRequestEnable (I2cHostContext);
   }
 
@@ -744,11 +744,11 @@ I2cHostRequestComplete (
 VOID
 EFIAPI
 I2cHostRequestCompleteEvent (
-  IN EFI_EVENT Event,
-  IN VOID *Context
+  IN EFI_EVENT  Event,
+  IN VOID       *Context
   )
 {
-  I2C_HOST_CONTEXT *I2cHostContext;
+  I2C_HOST_CONTEXT  *I2cHostContext;
 
   //
   // Handle the completion event
@@ -784,16 +784,16 @@ I2cHostRequestCompleteEvent (
 **/
 EFI_STATUS
 I2cHostRequestEnable (
-  I2C_HOST_CONTEXT *I2cHostContext
+  I2C_HOST_CONTEXT  *I2cHostContext
   )
 {
-  UINTN                                                 I2cBusConfiguration;
-  CONST EFI_I2C_BUS_CONFIGURATION_MANAGEMENT_PROTOCOL   *I2cBusConfigurationManagement;
-  I2C_REQUEST                                           *I2cRequest;
-  EFI_STATUS                                            Status;
-  EFI_TPL                                               TplPrevious;
-  LIST_ENTRY                                            *EntryHeader;
-  LIST_ENTRY                                            *Entry;
+  UINTN                                                I2cBusConfiguration;
+  CONST EFI_I2C_BUS_CONFIGURATION_MANAGEMENT_PROTOCOL  *I2cBusConfigurationManagement;
+  I2C_REQUEST                                          *I2cRequest;
+  EFI_STATUS                                           Status;
+  EFI_TPL                                              TplPrevious;
+  LIST_ENTRY                                           *EntryHeader;
+  LIST_ENTRY                                           *Entry;
 
   //
   //  Assume pending request
@@ -807,7 +807,7 @@ I2cHostRequestEnable (
   //
   EntryHeader = &I2cHostContext->RequestList;
   Entry       = GetFirstNode (EntryHeader);
-  I2cRequest = I2C_REQUEST_FROM_ENTRY (Entry);
+  I2cRequest  = I2C_REQUEST_FROM_ENTRY (Entry);
 
   I2cBusConfiguration = I2cRequest->I2cBusConfiguration;
 
@@ -820,16 +820,16 @@ I2cHostRequestEnable (
     //  Update bus configuration for this device's requesting bus configuration
     //
     Status = I2cBusConfigurationManagement->EnableI2cBusConfiguration (
-                I2cBusConfigurationManagement,
-                I2cBusConfiguration,
-                I2cHostContext->I2cBusConfigurationEvent,
-                &I2cHostContext->Status
-                );
+                                              I2cBusConfigurationManagement,
+                                              I2cBusConfiguration,
+                                              I2cHostContext->I2cBusConfigurationEvent,
+                                              &I2cHostContext->Status
+                                              );
   } else {
     //
     //  I2C bus configuration is same, no need change configuration and start I2c transaction directly
     //
-    TplPrevious = gBS->RaiseTPL ( TPL_I2C_SYNC );
+    TplPrevious = gBS->RaiseTPL (TPL_I2C_SYNC);
 
     //
     //  Same I2C bus configuration
@@ -840,8 +840,9 @@ I2cHostRequestEnable (
     //
     //  Release the thread synchronization
     //
-    gBS->RestoreTPL ( TplPrevious );
+    gBS->RestoreTPL (TplPrevious);
   }
+
   return Status;
 }
 
@@ -965,12 +966,12 @@ I2cHostQueueRequest (
     // For synchronous transaction, register an event used to wait for finishing synchronous transaction
     //
     Status = gBS->CreateEvent (
-                0,
-                TPL_I2C_SYNC,
-                NULL,
-                NULL,
-                &SyncEvent
-                );
+                    0,
+                    TPL_I2C_SYNC,
+                    NULL,
+                    NULL,
+                    &SyncEvent
+                    );
     if (EFI_ERROR (Status)) {
       return Status;
     }
@@ -1007,7 +1008,7 @@ I2cHostQueueRequest (
   //
   // Copy request packet into private buffer, as RequestPacket may be freed during asynchronous transaction
   //
-  RequestPacketSize = sizeof (UINTN) + RequestPacket->OperationCount * sizeof (EFI_I2C_OPERATION);
+  RequestPacketSize         = sizeof (UINTN) + RequestPacket->OperationCount * sizeof (EFI_I2C_OPERATION);
   I2cRequest->RequestPacket = AllocateZeroPool (RequestPacketSize);
   ASSERT (I2cRequest->RequestPacket != NULL);
   CopyMem (I2cRequest->RequestPacket, RequestPacket, RequestPacketSize);
@@ -1015,7 +1016,7 @@ I2cHostQueueRequest (
   //
   // Synchronize with the other threads
   //
-  gBS->RaiseTPL ( TPL_I2C_SYNC );
+  gBS->RaiseTPL (TPL_I2C_SYNC);
 
   FirstRequest = IsListEmpty (&I2cHostContext->RequestList);
 
@@ -1085,12 +1086,12 @@ I2cHostQueueRequest (
 **/
 EFI_STATUS
 EFIAPI
-InitializeI2cHost(
-  IN EFI_HANDLE           ImageHandle,
-  IN EFI_SYSTEM_TABLE     *SystemTable
+InitializeI2cHost (
+  IN EFI_HANDLE        ImageHandle,
+  IN EFI_SYSTEM_TABLE  *SystemTable
   )
 {
-  EFI_STATUS              Status;
+  EFI_STATUS  Status;
 
   //
   // Install driver model protocol(s).
@@ -1122,15 +1123,15 @@ InitializeI2cHost(
 EFI_STATUS
 EFIAPI
 I2cHostUnload (
-  IN EFI_HANDLE             ImageHandle
+  IN EFI_HANDLE  ImageHandle
   )
 {
-  EFI_STATUS                        Status;
-  EFI_HANDLE                        *DeviceHandleBuffer;
-  UINTN                             DeviceHandleCount;
-  UINTN                             Index;
-  EFI_COMPONENT_NAME_PROTOCOL       *ComponentName;
-  EFI_COMPONENT_NAME2_PROTOCOL      *ComponentName2;
+  EFI_STATUS                    Status;
+  EFI_HANDLE                    *DeviceHandleBuffer;
+  UINTN                         DeviceHandleCount;
+  UINTN                         Index;
+  EFI_COMPONENT_NAME_PROTOCOL   *ComponentName;
+  EFI_COMPONENT_NAME2_PROTOCOL  *ComponentName2;
 
   //
   // Get the list of all I2C Controller handles in the handle database.
@@ -1185,7 +1186,7 @@ I2cHostUnload (
   Status = gBS->HandleProtocol (
                   gI2cHostDriverBinding.DriverBindingHandle,
                   &gEfiComponentNameProtocolGuid,
-                  (VOID **) &ComponentName
+                  (VOID **)&ComponentName
                   );
   if (!EFI_ERROR (Status)) {
     gBS->UninstallProtocolInterface (
@@ -1198,7 +1199,7 @@ I2cHostUnload (
   Status = gBS->HandleProtocol (
                   gI2cHostDriverBinding.DriverBindingHandle,
                   &gEfiComponentName2ProtocolGuid,
-                  (VOID **) &ComponentName2
+                  (VOID **)&ComponentName2
                   );
   if (!EFI_ERROR (Status)) {
     gBS->UninstallProtocolInterface (

+ 10 - 11
MdeModulePkg/Bus/Isa/IsaBusDxe/ComponentName.c

@@ -12,9 +12,9 @@
 //
 // Driver name table
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE     mIsaBusDriverNameTable[] = {
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE  mIsaBusDriverNameTable[] = {
   { "eng;en", L"PI ISA BUS Driver" },
-  { NULL , NULL }
+  { NULL,     NULL                 }
 };
 
 //
@@ -29,9 +29,9 @@ GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME_PROTOCOL  gIsaBusComponentName
 //
 // EFI Component Name 2 Protocol
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL gIsaBusComponentName2 = {
-  (EFI_COMPONENT_NAME2_GET_DRIVER_NAME) IsaBusComponentNameGetDriverName,
-  (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME) IsaBusComponentNameGetControllerName,
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL  gIsaBusComponentName2 = {
+  (EFI_COMPONENT_NAME2_GET_DRIVER_NAME)IsaBusComponentNameGetDriverName,
+  (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME)IsaBusComponentNameGetControllerName,
   "en"
 };
 
@@ -91,7 +91,6 @@ IsaBusComponentNameGetDriverName (
            );
 }
 
-
 /**
   Retrieves a Unicode string that is the user readable name of the controller
   that is being managed by a driver.
@@ -163,11 +162,11 @@ IsaBusComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 IsaBusComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  EFI_HANDLE                   ControllerHandle,
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **ControllerName
   )
 {
   return EFI_UNSUPPORTED;

+ 7 - 8
MdeModulePkg/Bus/Isa/IsaBusDxe/ComponentName.h

@@ -13,8 +13,8 @@
 #include <Protocol/ComponentName.h>
 #include <Protocol/ComponentName2.h>
 
-extern EFI_COMPONENT_NAME_PROTOCOL  gIsaBusComponentName;
-extern EFI_COMPONENT_NAME2_PROTOCOL gIsaBusComponentName2;
+extern EFI_COMPONENT_NAME_PROTOCOL   gIsaBusComponentName;
+extern EFI_COMPONENT_NAME2_PROTOCOL  gIsaBusComponentName2;
 
 /**
   Retrieves a Unicode string that is the user readable name of the driver.
@@ -63,7 +63,6 @@ IsaBusComponentNameGetDriverName (
   OUT CHAR16                       **DriverName
   );
 
-
 /**
   Retrieves a Unicode string that is the user readable name of the controller
   that is being managed by a driver.
@@ -135,11 +134,11 @@ IsaBusComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 IsaBusComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  EFI_HANDLE                   ControllerHandle,
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **ControllerName
   );
 
 #endif

+ 68 - 62
MdeModulePkg/Bus/Isa/IsaBusDxe/IsaBusDxe.c

@@ -43,13 +43,13 @@
 EFI_STATUS
 EFIAPI
 IsaBusDriverBindingSupported (
-  IN EFI_DRIVER_BINDING_PROTOCOL    *This,
-  IN EFI_HANDLE                     Controller,
-  IN EFI_DEVICE_PATH_PROTOCOL       *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   )
 {
-  EFI_STATUS                        Status;
-  VOID                              *Instance;
+  EFI_STATUS  Status;
+  VOID        *Instance;
 
   Status = gBS->OpenProtocol (
                   Controller,
@@ -61,11 +61,11 @@ IsaBusDriverBindingSupported (
                   );
   if (!EFI_ERROR (Status)) {
     gBS->CloseProtocol (
-      Controller,
-      &gEfiIsaHcProtocolGuid,
-      This->DriverBindingHandle,
-      Controller
-      );
+           Controller,
+           &gEfiIsaHcProtocolGuid,
+           This->DriverBindingHandle,
+           Controller
+           );
   }
 
   if (EFI_ERROR (Status)) {
@@ -82,17 +82,17 @@ IsaBusDriverBindingSupported (
                   );
   if (!EFI_ERROR (Status)) {
     gBS->CloseProtocol (
-      Controller,
-      &gEfiDevicePathProtocolGuid,
-      This->DriverBindingHandle,
-      Controller
-      );
+           Controller,
+           &gEfiDevicePathProtocolGuid,
+           This->DriverBindingHandle,
+           Controller
+           );
   }
 
   return Status;
 }
 
-ISA_BUS_CHILD_PRIVATE_DATA mIsaBusChildPrivateTemplate = {
+ISA_BUS_CHILD_PRIVATE_DATA  mIsaBusChildPrivateTemplate = {
   ISA_BUS_CHILD_PRIVATE_DATA_SIGNATURE,
   FALSE
 };
@@ -123,10 +123,10 @@ IsaBusCreateChild (
   IN OUT EFI_HANDLE                    *ChildHandle
   )
 {
-  EFI_STATUS                           Status;
-  ISA_BUS_PRIVATE_DATA                 *Private;
-  EFI_ISA_HC_PROTOCOL                  *IsaHc;
-  ISA_BUS_CHILD_PRIVATE_DATA           *Child;
+  EFI_STATUS                  Status;
+  ISA_BUS_PRIVATE_DATA        *Private;
+  EFI_ISA_HC_PROTOCOL         *IsaHc;
+  ISA_BUS_CHILD_PRIVATE_DATA  *Child;
 
   Private = ISA_BUS_PRIVATE_DATA_FROM_THIS (This);
 
@@ -137,8 +137,10 @@ IsaBusCreateChild (
 
   Status = gBS->InstallMultipleProtocolInterfaces (
                   ChildHandle,
-                  &gEfiIsaHcProtocolGuid, Private->IsaHc,
-                  &gEfiCallerIdGuid,      Child,
+                  &gEfiIsaHcProtocolGuid,
+                  Private->IsaHc,
+                  &gEfiCallerIdGuid,
+                  Child,
                   NULL
                   );
   if (EFI_ERROR (Status)) {
@@ -149,7 +151,7 @@ IsaBusCreateChild (
   return gBS->OpenProtocol (
                 Private->IsaHcHandle,
                 &gEfiIsaHcProtocolGuid,
-                (VOID **) &IsaHc,
+                (VOID **)&IsaHc,
                 gIsaBusDriverBinding.DriverBindingHandle,
                 *ChildHandle,
                 EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER
@@ -177,21 +179,21 @@ IsaBusCreateChild (
 EFI_STATUS
 EFIAPI
 IsaBusDestroyChild (
-  IN EFI_SERVICE_BINDING_PROTOCOL     *This,
-  IN EFI_HANDLE                       ChildHandle
+  IN EFI_SERVICE_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                    ChildHandle
   )
 {
-  EFI_STATUS                           Status;
-  ISA_BUS_PRIVATE_DATA                 *Private;
-  EFI_ISA_HC_PROTOCOL                  *IsaHc;
-  ISA_BUS_CHILD_PRIVATE_DATA           *Child;
+  EFI_STATUS                  Status;
+  ISA_BUS_PRIVATE_DATA        *Private;
+  EFI_ISA_HC_PROTOCOL         *IsaHc;
+  ISA_BUS_CHILD_PRIVATE_DATA  *Child;
 
   Private = ISA_BUS_PRIVATE_DATA_FROM_THIS (This);
 
   Status = gBS->OpenProtocol (
                   ChildHandle,
                   &gEfiCallerIdGuid,
-                  (VOID **) &Child,
+                  (VOID **)&Child,
                   gIsaBusDriverBinding.DriverBindingHandle,
                   ChildHandle,
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -207,25 +209,27 @@ IsaBusDestroyChild (
   }
 
   Child->InDestroying = TRUE;
-  Status = gBS->CloseProtocol (
-                  Private->IsaHcHandle,
-                  &gEfiIsaHcProtocolGuid,
-                  gIsaBusDriverBinding.DriverBindingHandle,
-                  ChildHandle
-                  );
+  Status              = gBS->CloseProtocol (
+                               Private->IsaHcHandle,
+                               &gEfiIsaHcProtocolGuid,
+                               gIsaBusDriverBinding.DriverBindingHandle,
+                               ChildHandle
+                               );
   ASSERT_EFI_ERROR (Status);
   if (!EFI_ERROR (Status)) {
     Status = gBS->UninstallMultipleProtocolInterfaces (
                     ChildHandle,
-                    &gEfiIsaHcProtocolGuid, Private->IsaHc,
-                    &gEfiCallerIdGuid,      Child,
+                    &gEfiIsaHcProtocolGuid,
+                    Private->IsaHc,
+                    &gEfiCallerIdGuid,
+                    Child,
                     NULL
                     );
     if (EFI_ERROR (Status)) {
       gBS->OpenProtocol (
              Private->IsaHcHandle,
              &gEfiIsaHcProtocolGuid,
-             (VOID **) &IsaHc,
+             (VOID **)&IsaHc,
              gIsaBusDriverBinding.DriverBindingHandle,
              ChildHandle,
              EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER
@@ -242,7 +246,7 @@ IsaBusDestroyChild (
   return Status;
 }
 
-ISA_BUS_PRIVATE_DATA   mIsaBusPrivateTemplate = {
+ISA_BUS_PRIVATE_DATA  mIsaBusPrivateTemplate = {
   ISA_BUS_PRIVATE_DATA_SIGNATURE,
   {
     IsaBusCreateChild,
@@ -278,19 +282,19 @@ ISA_BUS_PRIVATE_DATA   mIsaBusPrivateTemplate = {
 EFI_STATUS
 EFIAPI
 IsaBusDriverBindingStart (
-  IN EFI_DRIVER_BINDING_PROTOCOL    *This,
-  IN EFI_HANDLE                     Controller,
-  IN EFI_DEVICE_PATH_PROTOCOL       *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   )
 {
-  EFI_STATUS                        Status;
-  EFI_DEVICE_PATH_PROTOCOL          *DevicePath;
-  ISA_BUS_PRIVATE_DATA              *Private;
+  EFI_STATUS                Status;
+  EFI_DEVICE_PATH_PROTOCOL  *DevicePath;
+  ISA_BUS_PRIVATE_DATA      *Private;
 
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiIsaHcProtocolGuid,
-                  (VOID **) &mIsaBusPrivateTemplate.IsaHc,
+                  (VOID **)&mIsaBusPrivateTemplate.IsaHc,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_BY_DRIVER
@@ -302,7 +306,7 @@ IsaBusDriverBindingStart (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiDevicePathProtocolGuid,
-                  (VOID **) &DevicePath,
+                  (VOID **)&DevicePath,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_BY_DRIVER
@@ -324,7 +328,8 @@ IsaBusDriverBindingStart (
 
   Status = gBS->InstallMultipleProtocolInterfaces (
                   &Controller,
-                  &gEfiIsaHcServiceBindingProtocolGuid, &Private->ServiceBinding,
+                  &gEfiIsaHcServiceBindingProtocolGuid,
+                  &Private->ServiceBinding,
                   NULL
                   );
   ASSERT_EFI_ERROR (Status);
@@ -350,22 +355,22 @@ IsaBusDriverBindingStart (
 EFI_STATUS
 EFIAPI
 IsaBusDriverBindingStop (
-  IN  EFI_DRIVER_BINDING_PROTOCOL    *This,
-  IN  EFI_HANDLE                     Controller,
-  IN  UINTN                          NumberOfChildren,
-  IN  EFI_HANDLE                     *ChildHandleBuffer
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN  EFI_HANDLE                   Controller,
+  IN  UINTN                        NumberOfChildren,
+  IN  EFI_HANDLE                   *ChildHandleBuffer
   )
 {
-  EFI_STATUS                         Status;
-  EFI_SERVICE_BINDING_PROTOCOL       *ServiceBinding;
-  ISA_BUS_PRIVATE_DATA               *Private;
-  UINTN                              Index;
-  BOOLEAN                            AllChildrenStopped;
+  EFI_STATUS                    Status;
+  EFI_SERVICE_BINDING_PROTOCOL  *ServiceBinding;
+  ISA_BUS_PRIVATE_DATA          *Private;
+  UINTN                         Index;
+  BOOLEAN                       AllChildrenStopped;
 
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiIsaHcServiceBindingProtocolGuid,
-                  (VOID **) &ServiceBinding,
+                  (VOID **)&ServiceBinding,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -379,7 +384,8 @@ IsaBusDriverBindingStop (
   if (NumberOfChildren == 0) {
     Status = gBS->UninstallMultipleProtocolInterfaces (
                     Controller,
-                    &gEfiIsaHcServiceBindingProtocolGuid, &Private->ServiceBinding,
+                    &gEfiIsaHcServiceBindingProtocolGuid,
+                    &Private->ServiceBinding,
                     NULL
                     );
     if (!EFI_ERROR (Status)) {
@@ -415,7 +421,7 @@ IsaBusDriverBindingStop (
 //
 // ISA Bus Driver Binding Protocol Instance
 //
-EFI_DRIVER_BINDING_PROTOCOL gIsaBusDriverBinding = {
+EFI_DRIVER_BINDING_PROTOCOL  gIsaBusDriverBinding = {
   IsaBusDriverBindingSupported,
   IsaBusDriverBindingStart,
   IsaBusDriverBindingStop,
@@ -440,7 +446,7 @@ InitializeIsaBus (
   IN EFI_SYSTEM_TABLE  *SystemTable
   )
 {
-  EFI_STATUS           Status;
+  EFI_STATUS  Status;
 
   Status = EfiLibInstallDriverBindingComponentName2 (
              ImageHandle,

+ 6 - 6
MdeModulePkg/Bus/Isa/IsaBusDxe/IsaBusDxe.h

@@ -26,15 +26,15 @@ typedef struct {
   EFI_ISA_HC_PROTOCOL             *IsaHc;       ///< ISA HC protocol produced by the ISA Host Controller driver
   EFI_HANDLE                      IsaHcHandle;  ///< ISA HC handle created by the ISA Host Controller driver
 } ISA_BUS_PRIVATE_DATA;
-#define ISA_BUS_PRIVATE_DATA_SIGNATURE    SIGNATURE_32 ('_', 'i', 's', 'b')
-#define ISA_BUS_PRIVATE_DATA_FROM_THIS(a) CR (a, ISA_BUS_PRIVATE_DATA, ServiceBinding, ISA_BUS_PRIVATE_DATA_SIGNATURE)
+#define ISA_BUS_PRIVATE_DATA_SIGNATURE  SIGNATURE_32 ('_', 'i', 's', 'b')
+#define ISA_BUS_PRIVATE_DATA_FROM_THIS(a)  CR (a, ISA_BUS_PRIVATE_DATA, ServiceBinding, ISA_BUS_PRIVATE_DATA_SIGNATURE)
 
 typedef struct {
-  UINT32                          Signature;
-  BOOLEAN                         InDestroying; ///< Flag to avoid DestroyChild() re-entry.
+  UINT32     Signature;
+  BOOLEAN    InDestroying;                      ///< Flag to avoid DestroyChild() re-entry.
 } ISA_BUS_CHILD_PRIVATE_DATA;
-#define ISA_BUS_CHILD_PRIVATE_DATA_SIGNATURE    SIGNATURE_32 ('_', 'i', 's', 'c')
+#define ISA_BUS_CHILD_PRIVATE_DATA_SIGNATURE  SIGNATURE_32 ('_', 'i', 's', 'c')
 
-extern EFI_DRIVER_BINDING_PROTOCOL gIsaBusDriverBinding;
+extern EFI_DRIVER_BINDING_PROTOCOL  gIsaBusDriverBinding;
 
 #endif

+ 21 - 21
MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/ComponentName.c

@@ -11,6 +11,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 //
 // EFI Component Name Functions
 //
+
 /**
   Retrieves a Unicode string that is the user readable name of the driver.
 
@@ -58,7 +59,6 @@ Ps2KeyboardComponentNameGetDriverName (
   OUT CHAR16                       **DriverName
   );
 
-
 /**
   Retrieves a Unicode string that is the user readable name of the controller
   that is being managed by a driver.
@@ -130,14 +130,13 @@ Ps2KeyboardComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 Ps2KeyboardComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  EFI_HANDLE                   ControllerHandle,
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **ControllerName
   );
 
-
 //
 // EFI Component Name Protocol
 //
@@ -150,14 +149,13 @@ GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME_PROTOCOL  gPs2KeyboardComponent
 //
 // EFI Component Name 2 Protocol
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL gPs2KeyboardComponentName2 = {
-  (EFI_COMPONENT_NAME2_GET_DRIVER_NAME) Ps2KeyboardComponentNameGetDriverName,
-  (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME) Ps2KeyboardComponentNameGetControllerName,
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL  gPs2KeyboardComponentName2 = {
+  (EFI_COMPONENT_NAME2_GET_DRIVER_NAME)Ps2KeyboardComponentNameGetDriverName,
+  (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME)Ps2KeyboardComponentNameGetControllerName,
   "en"
 };
 
-
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mPs2KeyboardDriverNameTable[] = {
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE  mPs2KeyboardDriverNameTable[] = {
   {
     "eng;en",
     L"PS/2 Keyboard Driver"
@@ -295,16 +293,17 @@ Ps2KeyboardComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 Ps2KeyboardComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  EFI_HANDLE                   ControllerHandle,
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **ControllerName
   )
 {
-  EFI_STATUS                                  Status;
-  EFI_SIMPLE_TEXT_INPUT_PROTOCOL              *ConIn;
-  KEYBOARD_CONSOLE_IN_DEV                     *ConsoleIn;
+  EFI_STATUS                      Status;
+  EFI_SIMPLE_TEXT_INPUT_PROTOCOL  *ConIn;
+  KEYBOARD_CONSOLE_IN_DEV         *ConsoleIn;
+
   //
   // This is a device driver, so ChildHandle must be NULL.
   //
@@ -319,13 +318,14 @@ Ps2KeyboardComponentNameGetControllerName (
   if (EFI_ERROR (Status)) {
     return Status;
   }
+
   //
   // Get the device context
   //
   Status = gBS->OpenProtocol (
                   ControllerHandle,
                   &gEfiSimpleTextInProtocolGuid,
-                  (VOID **) &ConIn,
+                  (VOID **)&ConIn,
                   gKeyboardControllerDriver.DriverBindingHandle,
                   ControllerHandle,
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL

File diff suppressed because it is too large
+ 282 - 257
MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KbdCtrller.c


+ 85 - 74
MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KbdTextIn.c

@@ -7,7 +7,6 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
-
 #include "Ps2Keyboard.h"
 
 /**
@@ -20,10 +19,10 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 BOOLEAN
 IsEfikeyBufEmpty (
-  IN  EFI_KEY_QUEUE         *Queue
+  IN  EFI_KEY_QUEUE  *Queue
   )
 {
-  return (BOOLEAN) (Queue->Head == Queue->Tail);
+  return (BOOLEAN)(Queue->Head == Queue->Tail);
 }
 
 /**
@@ -37,19 +36,21 @@ IsEfikeyBufEmpty (
 **/
 EFI_STATUS
 PopEfikeyBufHead (
-  IN  EFI_KEY_QUEUE         *Queue,
-  OUT EFI_KEY_DATA          *KeyData OPTIONAL
+  IN  EFI_KEY_QUEUE  *Queue,
+  OUT EFI_KEY_DATA   *KeyData OPTIONAL
   )
 {
   if (IsEfikeyBufEmpty (Queue)) {
     return EFI_NOT_READY;
   }
+
   //
   // Retrieve and remove the values
   //
   if (KeyData != NULL) {
     CopyMem (KeyData, &Queue->Buffer[Queue->Head], sizeof (EFI_KEY_DATA));
   }
+
   Queue->Head = (Queue->Head + 1) % KEYBOARD_EFI_KEY_MAX_COUNT;
   return EFI_SUCCESS;
 }
@@ -62,8 +63,8 @@ PopEfikeyBufHead (
 **/
 VOID
 PushEfikeyBufTail (
-  IN  EFI_KEY_QUEUE         *Queue,
-  IN  EFI_KEY_DATA          *KeyData
+  IN  EFI_KEY_QUEUE  *Queue,
+  IN  EFI_KEY_DATA   *KeyData
   )
 {
   if ((Queue->Tail + 1) % KEYBOARD_EFI_KEY_MAX_COUNT == Queue->Head) {
@@ -72,6 +73,7 @@ PushEfikeyBufTail (
     //
     PopEfikeyBufHead (Queue, NULL);
   }
+
   CopyMem (&Queue->Buffer[Queue->Tail], KeyData, sizeof (EFI_KEY_DATA));
   Queue->Tail = (Queue->Tail + 1) % KEYBOARD_EFI_KEY_MAX_COUNT;
 }
@@ -98,24 +100,27 @@ IsKeyRegistered (
   ASSERT (RegsiteredData != NULL && InputData != NULL);
 
   if ((RegsiteredData->Key.ScanCode    != InputData->Key.ScanCode) ||
-      (RegsiteredData->Key.UnicodeChar != InputData->Key.UnicodeChar)) {
+      (RegsiteredData->Key.UnicodeChar != InputData->Key.UnicodeChar))
+  {
     return FALSE;
   }
 
   //
   // Assume KeyShiftState/KeyToggleState = 0 in Registered key data means these state could be ignored.
   //
-  if (RegsiteredData->KeyState.KeyShiftState != 0 &&
-      RegsiteredData->KeyState.KeyShiftState != InputData->KeyState.KeyShiftState) {
+  if ((RegsiteredData->KeyState.KeyShiftState != 0) &&
+      (RegsiteredData->KeyState.KeyShiftState != InputData->KeyState.KeyShiftState))
+  {
     return FALSE;
   }
-  if (RegsiteredData->KeyState.KeyToggleState != 0 &&
-      RegsiteredData->KeyState.KeyToggleState != InputData->KeyState.KeyToggleState) {
+
+  if ((RegsiteredData->KeyState.KeyToggleState != 0) &&
+      (RegsiteredData->KeyState.KeyToggleState != InputData->KeyState.KeyToggleState))
+  {
     return FALSE;
   }
 
   return TRUE;
-
 }
 
 /**
@@ -136,13 +141,13 @@ IsKeyRegistered (
 **/
 EFI_STATUS
 KeyboardReadKeyStrokeWorker (
-  IN  KEYBOARD_CONSOLE_IN_DEV           *ConsoleInDev,
-  OUT EFI_KEY_DATA                      *KeyData
+  IN  KEYBOARD_CONSOLE_IN_DEV  *ConsoleInDev,
+  OUT EFI_KEY_DATA             *KeyData
   )
 
 {
-  EFI_STATUS                            Status;
-  EFI_TPL                               OldTpl;
+  EFI_STATUS  Status;
+  EFI_TPL     OldTpl;
 
   if (KeyData == NULL) {
     return EFI_INVALID_PARAMETER;
@@ -185,9 +190,9 @@ KeyboardEfiReset (
   IN  BOOLEAN                         ExtendedVerification
   )
 {
-  EFI_STATUS              Status;
-  KEYBOARD_CONSOLE_IN_DEV *ConsoleIn;
-  EFI_TPL                 OldTpl;
+  EFI_STATUS               Status;
+  KEYBOARD_CONSOLE_IN_DEV  *ConsoleIn;
+  EFI_TPL                  OldTpl;
 
   ConsoleIn = KEYBOARD_CONSOLE_IN_DEV_FROM_THIS (This);
   if (ConsoleIn->KeyboardErr) {
@@ -232,6 +237,7 @@ KeyboardEfiReset (
       ConsoleIn->DevicePath
       );
   }
+
   //
   // Report the status If keyboard is locked
   //
@@ -261,9 +267,9 @@ KeyboardReadKeyStroke (
   OUT EFI_INPUT_KEY                   *Key
   )
 {
-  EFI_STATUS              Status;
-  KEYBOARD_CONSOLE_IN_DEV *ConsoleIn;
-  EFI_KEY_DATA            KeyData;
+  EFI_STATUS               Status;
+  KEYBOARD_CONSOLE_IN_DEV  *ConsoleIn;
+  EFI_KEY_DATA             KeyData;
 
   ConsoleIn = KEYBOARD_CONSOLE_IN_DEV_FROM_THIS (This);
 
@@ -280,21 +286,23 @@ KeyboardReadKeyStroke (
     if (EFI_ERROR (Status)) {
       return Status;
     }
+
     //
     // If it is partial keystroke, skip it.
     //
-    if (KeyData.Key.ScanCode == SCAN_NULL && KeyData.Key.UnicodeChar == CHAR_NULL) {
+    if ((KeyData.Key.ScanCode == SCAN_NULL) && (KeyData.Key.UnicodeChar == CHAR_NULL)) {
       continue;
     }
+
     //
     // Translate the CTRL-Alpha characters to their corresponding control value
     // (ctrl-a = 0x0001 through ctrl-Z = 0x001A)
     //
     if ((KeyData.KeyState.KeyShiftState & (EFI_LEFT_CONTROL_PRESSED | EFI_RIGHT_CONTROL_PRESSED)) != 0) {
-      if (KeyData.Key.UnicodeChar >= L'a' && KeyData.Key.UnicodeChar <= L'z') {
-        KeyData.Key.UnicodeChar = (CHAR16) (KeyData.Key.UnicodeChar - L'a' + 1);
-      } else if (KeyData.Key.UnicodeChar >= L'A' && KeyData.Key.UnicodeChar <= L'Z') {
-        KeyData.Key.UnicodeChar = (CHAR16) (KeyData.Key.UnicodeChar - L'A' + 1);
+      if ((KeyData.Key.UnicodeChar >= L'a') && (KeyData.Key.UnicodeChar <= L'z')) {
+        KeyData.Key.UnicodeChar = (CHAR16)(KeyData.Key.UnicodeChar - L'a' + 1);
+      } else if ((KeyData.Key.UnicodeChar >= L'A') && (KeyData.Key.UnicodeChar <= L'Z')) {
+        KeyData.Key.UnicodeChar = (CHAR16)(KeyData.Key.UnicodeChar - L'A' + 1);
       }
     }
 
@@ -314,15 +322,15 @@ KeyboardReadKeyStroke (
 VOID
 EFIAPI
 KeyboardWaitForKey (
-  IN  EFI_EVENT               Event,
-  IN  VOID                    *Context
+  IN  EFI_EVENT  Event,
+  IN  VOID       *Context
   )
 {
-  EFI_TPL                     OldTpl;
-  KEYBOARD_CONSOLE_IN_DEV     *ConsoleIn;
-  EFI_KEY_DATA                KeyData;
+  EFI_TPL                  OldTpl;
+  KEYBOARD_CONSOLE_IN_DEV  *ConsoleIn;
+  EFI_KEY_DATA             KeyData;
 
-  ConsoleIn = (KEYBOARD_CONSOLE_IN_DEV *) Context;
+  ConsoleIn = (KEYBOARD_CONSOLE_IN_DEV *)Context;
 
   //
   // Enter critical section
@@ -344,10 +352,11 @@ KeyboardWaitForKey (
         &(ConsoleIn->EfiKeyQueue.Buffer[ConsoleIn->EfiKeyQueue.Head]),
         sizeof (EFI_KEY_DATA)
         );
-      if (KeyData.Key.ScanCode == SCAN_NULL && KeyData.Key.UnicodeChar == CHAR_NULL) {
+      if ((KeyData.Key.ScanCode == SCAN_NULL) && (KeyData.Key.UnicodeChar == CHAR_NULL)) {
         PopEfikeyBufHead (&ConsoleIn->EfiKeyQueue, &KeyData);
         continue;
       }
+
       //
       // if there is pending value key, signal the event.
       //
@@ -355,6 +364,7 @@ KeyboardWaitForKey (
       break;
     }
   }
+
   //
   // Leave critical section and return
   //
@@ -372,8 +382,8 @@ KeyboardWaitForKey (
 VOID
 EFIAPI
 KeyboardWaitForKeyEx (
-  IN  EFI_EVENT               Event,
-  IN  VOID                    *Context
+  IN  EFI_EVENT  Event,
+  IN  VOID       *Context
   )
 
 {
@@ -399,7 +409,7 @@ KeyboardEfiResetEx (
   )
 
 {
-  KEYBOARD_CONSOLE_IN_DEV               *ConsoleInDev;
+  KEYBOARD_CONSOLE_IN_DEV  *ConsoleInDev;
 
   ConsoleInDev = TEXT_INPUT_EX_KEYBOARD_CONSOLE_IN_DEV_FROM_THIS (This);
 
@@ -428,12 +438,12 @@ KeyboardEfiResetEx (
 EFI_STATUS
 EFIAPI
 KeyboardReadKeyStrokeEx (
-  IN  EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This,
-  OUT EFI_KEY_DATA                      *KeyData
+  IN  EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL  *This,
+  OUT EFI_KEY_DATA                       *KeyData
   )
 
 {
-  KEYBOARD_CONSOLE_IN_DEV               *ConsoleInDev;
+  KEYBOARD_CONSOLE_IN_DEV  *ConsoleInDev;
 
   if (KeyData == NULL) {
     return EFI_INVALID_PARAMETER;
@@ -465,9 +475,9 @@ KeyboardSetState (
   )
 
 {
-  EFI_STATUS                            Status;
-  KEYBOARD_CONSOLE_IN_DEV               *ConsoleInDev;
-  EFI_TPL                               OldTpl;
+  EFI_STATUS               Status;
+  KEYBOARD_CONSOLE_IN_DEV  *ConsoleInDev;
+  EFI_TPL                  OldTpl;
 
   if (KeyToggleState == NULL) {
     return EFI_INVALID_PARAMETER;
@@ -501,12 +511,15 @@ KeyboardSetState (
   if ((*KeyToggleState & EFI_SCROLL_LOCK_ACTIVE) == EFI_SCROLL_LOCK_ACTIVE) {
     ConsoleInDev->ScrollLock = TRUE;
   }
+
   if ((*KeyToggleState & EFI_NUM_LOCK_ACTIVE) == EFI_NUM_LOCK_ACTIVE) {
     ConsoleInDev->NumLock = TRUE;
   }
+
   if ((*KeyToggleState & EFI_CAPS_LOCK_ACTIVE) == EFI_CAPS_LOCK_ACTIVE) {
     ConsoleInDev->CapsLock = TRUE;
   }
+
   if ((*KeyToggleState & EFI_KEY_STATE_EXPOSED) == EFI_KEY_STATE_EXPOSED) {
     ConsoleInDev->IsSupportPartialKey = TRUE;
   }
@@ -523,7 +536,6 @@ Exit:
   gBS->RestoreTPL (OldTpl);
 
   return Status;
-
 }
 
 /**
@@ -553,14 +565,14 @@ KeyboardRegisterKeyNotify (
   OUT VOID                              **NotifyHandle
   )
 {
-  EFI_STATUS                            Status;
-  KEYBOARD_CONSOLE_IN_DEV               *ConsoleInDev;
-  EFI_TPL                               OldTpl;
-  LIST_ENTRY                            *Link;
-  KEYBOARD_CONSOLE_IN_EX_NOTIFY         *CurrentNotify;
-  KEYBOARD_CONSOLE_IN_EX_NOTIFY         *NewNotify;
-
-  if (KeyData == NULL || NotifyHandle == NULL || KeyNotificationFunction == NULL) {
+  EFI_STATUS                     Status;
+  KEYBOARD_CONSOLE_IN_DEV        *ConsoleInDev;
+  EFI_TPL                        OldTpl;
+  LIST_ENTRY                     *Link;
+  KEYBOARD_CONSOLE_IN_EX_NOTIFY  *CurrentNotify;
+  KEYBOARD_CONSOLE_IN_EX_NOTIFY  *NewNotify;
+
+  if ((KeyData == NULL) || (NotifyHandle == NULL) || (KeyNotificationFunction == NULL)) {
     return EFI_INVALID_PARAMETER;
   }
 
@@ -584,7 +596,7 @@ KeyboardRegisterKeyNotify (
     if (IsKeyRegistered (&CurrentNotify->KeyData, KeyData)) {
       if (CurrentNotify->KeyNotificationFn == KeyNotificationFunction) {
         *NotifyHandle = CurrentNotify;
-        Status = EFI_SUCCESS;
+        Status        = EFI_SUCCESS;
         goto Exit;
       }
     }
@@ -593,7 +605,7 @@ KeyboardRegisterKeyNotify (
   //
   // Allocate resource to save the notification function
   //
-  NewNotify = (KEYBOARD_CONSOLE_IN_EX_NOTIFY *) AllocateZeroPool (sizeof (KEYBOARD_CONSOLE_IN_EX_NOTIFY));
+  NewNotify = (KEYBOARD_CONSOLE_IN_EX_NOTIFY *)AllocateZeroPool (sizeof (KEYBOARD_CONSOLE_IN_EX_NOTIFY));
   if (NewNotify == NULL) {
     Status = EFI_OUT_OF_RESOURCES;
     goto Exit;
@@ -604,8 +616,8 @@ KeyboardRegisterKeyNotify (
   CopyMem (&NewNotify->KeyData, KeyData, sizeof (EFI_KEY_DATA));
   InsertTailList (&ConsoleInDev->NotifyList, &NewNotify->NotifyEntry);
 
-  *NotifyHandle                = NewNotify;
-  Status                       = EFI_SUCCESS;
+  *NotifyHandle = NewNotify;
+  Status        = EFI_SUCCESS;
 
 Exit:
   //
@@ -613,7 +625,6 @@ Exit:
   //
   gBS->RestoreTPL (OldTpl);
   return Status;
-
 }
 
 /**
@@ -634,11 +645,11 @@ KeyboardUnregisterKeyNotify (
   IN VOID                               *NotificationHandle
   )
 {
-  EFI_STATUS                            Status;
-  KEYBOARD_CONSOLE_IN_DEV               *ConsoleInDev;
-  EFI_TPL                               OldTpl;
-  LIST_ENTRY                            *Link;
-  KEYBOARD_CONSOLE_IN_EX_NOTIFY         *CurrentNotify;
+  EFI_STATUS                     Status;
+  KEYBOARD_CONSOLE_IN_DEV        *ConsoleInDev;
+  EFI_TPL                        OldTpl;
+  LIST_ENTRY                     *Link;
+  KEYBOARD_CONSOLE_IN_EX_NOTIFY  *CurrentNotify;
 
   if (NotificationHandle == NULL) {
     return EFI_INVALID_PARAMETER;
@@ -691,19 +702,19 @@ Exit:
 VOID
 EFIAPI
 KeyNotifyProcessHandler (
-  IN  EFI_EVENT                 Event,
-  IN  VOID                      *Context
+  IN  EFI_EVENT  Event,
+  IN  VOID       *Context
   )
 {
-  EFI_STATUS                    Status;
-  KEYBOARD_CONSOLE_IN_DEV       *ConsoleIn;
-  EFI_KEY_DATA                  KeyData;
-  LIST_ENTRY                    *Link;
-  LIST_ENTRY                    *NotifyList;
-  KEYBOARD_CONSOLE_IN_EX_NOTIFY *CurrentNotify;
-  EFI_TPL                       OldTpl;
+  EFI_STATUS                     Status;
+  KEYBOARD_CONSOLE_IN_DEV        *ConsoleIn;
+  EFI_KEY_DATA                   KeyData;
+  LIST_ENTRY                     *Link;
+  LIST_ENTRY                     *NotifyList;
+  KEYBOARD_CONSOLE_IN_EX_NOTIFY  *CurrentNotify;
+  EFI_TPL                        OldTpl;
 
-  ConsoleIn = (KEYBOARD_CONSOLE_IN_DEV *) Context;
+  ConsoleIn = (KEYBOARD_CONSOLE_IN_DEV *)Context;
 
   //
   // Invoke notification functions.
@@ -722,6 +733,7 @@ KeyNotifyProcessHandler (
     if (EFI_ERROR (Status)) {
       break;
     }
+
     for (Link = GetFirstNode (NotifyList); !IsNull (NotifyList, Link); Link = GetNextNode (NotifyList, Link)) {
       CurrentNotify = CR (Link, KEYBOARD_CONSOLE_IN_EX_NOTIFY, NotifyEntry, KEYBOARD_CONSOLE_IN_EX_NOTIFY_SIGNATURE);
       if (IsKeyRegistered (&CurrentNotify->KeyData, &KeyData)) {
@@ -730,4 +742,3 @@ KeyNotifyProcessHandler (
     }
   }
 }
-

+ 87 - 73
MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2Keyboard.c

@@ -13,6 +13,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 //
 // Function prototypes
 //
+
 /**
   Test controller is a keyboard Controller.
 
@@ -26,9 +27,9 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 EFI_STATUS
 EFIAPI
 KbdControllerDriverSupported (
-  IN EFI_DRIVER_BINDING_PROTOCOL    *This,
-  IN EFI_HANDLE                     Controller,
-  IN EFI_DEVICE_PATH_PROTOCOL       *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   );
 
 /**
@@ -43,9 +44,9 @@ KbdControllerDriverSupported (
 EFI_STATUS
 EFIAPI
 KbdControllerDriverStart (
-  IN EFI_DRIVER_BINDING_PROTOCOL    *This,
-  IN EFI_HANDLE                     Controller,
-  IN EFI_DEVICE_PATH_PROTOCOL       *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   );
 
 /**
@@ -65,10 +66,10 @@ KbdControllerDriverStart (
 EFI_STATUS
 EFIAPI
 KbdControllerDriverStop (
-  IN  EFI_DRIVER_BINDING_PROTOCOL    *This,
-  IN  EFI_HANDLE                     Controller,
-  IN  UINTN                          NumberOfChildren,
-  IN  EFI_HANDLE                     *ChildHandleBuffer
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN  EFI_HANDLE                   Controller,
+  IN  UINTN                        NumberOfChildren,
+  IN  EFI_HANDLE                   *ChildHandleBuffer
   );
 
 /**
@@ -81,13 +82,13 @@ KbdControllerDriverStop (
 **/
 EFI_STATUS
 KbdFreeNotifyList (
-  IN OUT LIST_ENTRY           *ListHead
+  IN OUT LIST_ENTRY  *ListHead
   );
 
 //
 // DriverBinding Protocol Instance
 //
-EFI_DRIVER_BINDING_PROTOCOL gKeyboardControllerDriver = {
+EFI_DRIVER_BINDING_PROTOCOL  gKeyboardControllerDriver = {
   KbdControllerDriverSupported,
   KbdControllerDriverStart,
   KbdControllerDriverStop,
@@ -109,15 +110,15 @@ EFI_DRIVER_BINDING_PROTOCOL gKeyboardControllerDriver = {
 EFI_STATUS
 EFIAPI
 KbdControllerDriverSupported (
-  IN EFI_DRIVER_BINDING_PROTOCOL    *This,
-  IN EFI_HANDLE                     Controller,
-  IN EFI_DEVICE_PATH_PROTOCOL       *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   )
 {
-  EFI_STATUS                                 Status;
-  EFI_SIO_PROTOCOL                           *Sio;
-  EFI_DEVICE_PATH_PROTOCOL                   *DevicePath;
-  ACPI_HID_DEVICE_PATH                       *Acpi;
+  EFI_STATUS                Status;
+  EFI_SIO_PROTOCOL          *Sio;
+  EFI_DEVICE_PATH_PROTOCOL  *DevicePath;
+  ACPI_HID_DEVICE_PATH      *Acpi;
 
   //
   // Check whether the controller is keyboard.
@@ -125,7 +126,7 @@ KbdControllerDriverSupported (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiDevicePathProtocolGuid,
-                  (VOID **) &DevicePath,
+                  (VOID **)&DevicePath,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -135,16 +136,17 @@ KbdControllerDriverSupported (
   }
 
   do {
-    Acpi = (ACPI_HID_DEVICE_PATH *) DevicePath;
+    Acpi       = (ACPI_HID_DEVICE_PATH *)DevicePath;
     DevicePath = NextDevicePathNode (DevicePath);
   } while (!IsDevicePathEnd (DevicePath));
 
-  if (DevicePathType (Acpi) != ACPI_DEVICE_PATH ||
-      (DevicePathSubType (Acpi) != ACPI_DP && DevicePathSubType (Acpi) != ACPI_EXTENDED_DP)) {
+  if ((DevicePathType (Acpi) != ACPI_DEVICE_PATH) ||
+      ((DevicePathSubType (Acpi) != ACPI_DP) && (DevicePathSubType (Acpi) != ACPI_EXTENDED_DP)))
+  {
     return EFI_UNSUPPORTED;
   }
 
-  if (Acpi->HID != EISA_PNP_ID (0x303) || Acpi->UID != 0) {
+  if ((Acpi->HID != EISA_PNP_ID (0x303)) || (Acpi->UID != 0)) {
     return EFI_UNSUPPORTED;
   }
 
@@ -154,7 +156,7 @@ KbdControllerDriverSupported (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiSioProtocolGuid,
-                  (VOID **) &Sio,
+                  (VOID **)&Sio,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_BY_DRIVER
@@ -188,25 +190,25 @@ KbdControllerDriverSupported (
 EFI_STATUS
 EFIAPI
 KbdControllerDriverStart (
-  IN EFI_DRIVER_BINDING_PROTOCOL    *This,
-  IN EFI_HANDLE                     Controller,
-  IN EFI_DEVICE_PATH_PROTOCOL       *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   )
 {
-  EFI_STATUS                                Status;
-  EFI_STATUS                                Status1;
-  EFI_SIO_PROTOCOL                          *Sio;
-  KEYBOARD_CONSOLE_IN_DEV                   *ConsoleIn;
-  UINT8                                     Data;
-  EFI_STATUS_CODE_VALUE                     StatusCode;
-  EFI_DEVICE_PATH_PROTOCOL                  *DevicePath;
+  EFI_STATUS                Status;
+  EFI_STATUS                Status1;
+  EFI_SIO_PROTOCOL          *Sio;
+  KEYBOARD_CONSOLE_IN_DEV   *ConsoleIn;
+  UINT8                     Data;
+  EFI_STATUS_CODE_VALUE     StatusCode;
+  EFI_DEVICE_PATH_PROTOCOL  *DevicePath;
 
   StatusCode = 0;
 
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiDevicePathProtocolGuid,
-                  (VOID **) &DevicePath,
+                  (VOID **)&DevicePath,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -214,6 +216,7 @@ KbdControllerDriverStart (
   if (EFI_ERROR (Status)) {
     return Status;
   }
+
   //
   // Report that the keyboard is being enabled
   //
@@ -229,7 +232,7 @@ KbdControllerDriverStart (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiSioProtocolGuid,
-                  (VOID **) &Sio,
+                  (VOID **)&Sio,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_BY_DRIVER
@@ -237,15 +240,17 @@ KbdControllerDriverStart (
   if (EFI_ERROR (Status)) {
     return Status;
   }
+
   //
   // Allocate private data
   //
   ConsoleIn = AllocateZeroPool (sizeof (KEYBOARD_CONSOLE_IN_DEV));
   if (ConsoleIn == NULL) {
-    Status      = EFI_OUT_OF_RESOURCES;
-    StatusCode  = EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_CONTROLLER_ERROR;
+    Status     = EFI_OUT_OF_RESOURCES;
+    StatusCode = EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_CONTROLLER_ERROR;
     goto ErrorExit;
   }
+
   //
   // Setup the device instance
   //
@@ -283,8 +288,8 @@ KbdControllerDriverStart (
       // If nobody decodes KBC I/O port, it will read back as 0xFF.
       // Check the Time-Out and Parity bit to see if it has an active KBC in system
       //
-      Status      = EFI_DEVICE_ERROR;
-      StatusCode  = EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_NOT_DETECTED;
+      Status     = EFI_DEVICE_ERROR;
+      StatusCode = EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_NOT_DETECTED;
       goto ErrorExit;
     }
   }
@@ -300,10 +305,11 @@ KbdControllerDriverStart (
                   &((ConsoleIn->ConIn).WaitForKey)
                   );
   if (EFI_ERROR (Status)) {
-    Status      = EFI_OUT_OF_RESOURCES;
-    StatusCode  = EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_CONTROLLER_ERROR;
+    Status     = EFI_OUT_OF_RESOURCES;
+    StatusCode = EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_CONTROLLER_ERROR;
     goto ErrorExit;
   }
+
   //
   // Setup the WaitForKeyEx event
   //
@@ -315,10 +321,11 @@ KbdControllerDriverStart (
                   &(ConsoleIn->ConInEx.WaitForKeyEx)
                   );
   if (EFI_ERROR (Status)) {
-    Status      = EFI_OUT_OF_RESOURCES;
-    StatusCode  = EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_CONTROLLER_ERROR;
+    Status     = EFI_OUT_OF_RESOURCES;
+    StatusCode = EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_CONTROLLER_ERROR;
     goto ErrorExit;
   }
+
   // Setup a periodic timer, used for reading keystrokes at a fixed interval
   //
   Status = gBS->CreateEvent (
@@ -329,8 +336,8 @@ KbdControllerDriverStart (
                   &ConsoleIn->TimerEvent
                   );
   if (EFI_ERROR (Status)) {
-    Status      = EFI_OUT_OF_RESOURCES;
-    StatusCode  = EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_CONTROLLER_ERROR;
+    Status     = EFI_OUT_OF_RESOURCES;
+    StatusCode = EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_CONTROLLER_ERROR;
     goto ErrorExit;
   }
 
@@ -340,8 +347,8 @@ KbdControllerDriverStart (
                   KEYBOARD_TIMER_INTERVAL
                   );
   if (EFI_ERROR (Status)) {
-    Status      = EFI_OUT_OF_RESOURCES;
-    StatusCode  = EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_CONTROLLER_ERROR;
+    Status     = EFI_OUT_OF_RESOURCES;
+    StatusCode = EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_CONTROLLER_ERROR;
     goto ErrorExit;
   }
 
@@ -353,8 +360,8 @@ KbdControllerDriverStart (
                   &ConsoleIn->KeyNotifyProcessEvent
                   );
   if (EFI_ERROR (Status)) {
-    Status      = EFI_OUT_OF_RESOURCES;
-    StatusCode  = EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_CONTROLLER_ERROR;
+    Status     = EFI_OUT_OF_RESOURCES;
+    StatusCode = EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_CONTROLLER_ERROR;
     goto ErrorExit;
   }
 
@@ -369,8 +376,8 @@ KbdControllerDriverStart (
   //
   Status = ConsoleIn->ConInEx.Reset (&ConsoleIn->ConInEx, FeaturePcdGet (PcdPs2KbdExtendedVerification));
   if (EFI_ERROR (Status)) {
-    Status      = EFI_DEVICE_ERROR;
-    StatusCode  = EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_NOT_DETECTED;
+    Status     = EFI_DEVICE_ERROR;
+    StatusCode = EFI_PERIPHERAL_KEYBOARD | EFI_P_EC_NOT_DETECTED;
     goto ErrorExit;
   }
 
@@ -396,7 +403,6 @@ KbdControllerDriverStart (
     FALSE
     );
 
-
   //
   // Install protocol interfaces for the keyboard device.
   //
@@ -434,16 +440,20 @@ ErrorExit:
   if ((ConsoleIn != NULL) && (ConsoleIn->TimerEvent != NULL)) {
     gBS->CloseEvent (ConsoleIn->TimerEvent);
   }
+
   if ((ConsoleIn != NULL) && (ConsoleIn->ConInEx.WaitForKeyEx != NULL)) {
     gBS->CloseEvent (ConsoleIn->ConInEx.WaitForKeyEx);
   }
+
   if ((ConsoleIn != NULL) && (ConsoleIn->KeyNotifyProcessEvent != NULL)) {
     gBS->CloseEvent (ConsoleIn->KeyNotifyProcessEvent);
   }
+
   KbdFreeNotifyList (&ConsoleIn->NotifyList);
   if ((ConsoleIn != NULL) && (ConsoleIn->ControllerNameTable != NULL)) {
     FreeUnicodeStringTable (ConsoleIn->ControllerNameTable);
   }
+
   //
   // Since there will be no timer handler for keyboard input any more,
   // exhaust input data just in case there is still keyboard data left
@@ -451,7 +461,7 @@ ErrorExit:
   if (ConsoleIn != NULL) {
     Status1 = EFI_SUCCESS;
     while (!EFI_ERROR (Status1) && (Status != EFI_DEVICE_ERROR)) {
-      Status1 = KeyboardRead (ConsoleIn, &Data);;
+      Status1 = KeyboardRead (ConsoleIn, &Data);
     }
   }
 
@@ -486,16 +496,16 @@ ErrorExit:
 EFI_STATUS
 EFIAPI
 KbdControllerDriverStop (
-  IN  EFI_DRIVER_BINDING_PROTOCOL    *This,
-  IN  EFI_HANDLE                     Controller,
-  IN  UINTN                          NumberOfChildren,
-  IN  EFI_HANDLE                     *ChildHandleBuffer
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN  EFI_HANDLE                   Controller,
+  IN  UINTN                        NumberOfChildren,
+  IN  EFI_HANDLE                   *ChildHandleBuffer
   )
 {
-  EFI_STATUS                     Status;
-  EFI_SIMPLE_TEXT_INPUT_PROTOCOL *ConIn;
-  KEYBOARD_CONSOLE_IN_DEV        *ConsoleIn;
-  UINT8                          Data;
+  EFI_STATUS                      Status;
+  EFI_SIMPLE_TEXT_INPUT_PROTOCOL  *ConIn;
+  KEYBOARD_CONSOLE_IN_DEV         *ConsoleIn;
+  UINT8                           Data;
 
   //
   // Disable Keyboard
@@ -503,7 +513,7 @@ KbdControllerDriverStop (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiSimpleTextInProtocolGuid,
-                  (VOID **) &ConIn,
+                  (VOID **)&ConIn,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -511,6 +521,7 @@ KbdControllerDriverStop (
   if (EFI_ERROR (Status)) {
     return Status;
   }
+
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiSimpleTextInputExProtocolGuid,
@@ -545,8 +556,9 @@ KbdControllerDriverStop (
   //
   Status = EFI_SUCCESS;
   while (!EFI_ERROR (Status)) {
-    Status = KeyboardRead (ConsoleIn, &Data);;
+    Status = KeyboardRead (ConsoleIn, &Data);
   }
+
   //
   // Uninstall the SimpleTextIn and SimpleTextInEx protocols
   //
@@ -576,14 +588,17 @@ KbdControllerDriverStop (
     gBS->CloseEvent ((ConsoleIn->ConIn).WaitForKey);
     (ConsoleIn->ConIn).WaitForKey = NULL;
   }
+
   if (ConsoleIn->ConInEx.WaitForKeyEx != NULL) {
     gBS->CloseEvent (ConsoleIn->ConInEx.WaitForKeyEx);
     ConsoleIn->ConInEx.WaitForKeyEx = NULL;
   }
+
   if (ConsoleIn->KeyNotifyProcessEvent != NULL) {
     gBS->CloseEvent (ConsoleIn->KeyNotifyProcessEvent);
     ConsoleIn->KeyNotifyProcessEvent = NULL;
   }
+
   KbdFreeNotifyList (&ConsoleIn->NotifyList);
   FreeUnicodeStringTable (ConsoleIn->ControllerNameTable);
   gBS->FreePool (ConsoleIn);
@@ -601,14 +616,15 @@ KbdControllerDriverStop (
 **/
 EFI_STATUS
 KbdFreeNotifyList (
-  IN OUT LIST_ENTRY           *ListHead
+  IN OUT LIST_ENTRY  *ListHead
   )
 {
-  KEYBOARD_CONSOLE_IN_EX_NOTIFY *NotifyNode;
+  KEYBOARD_CONSOLE_IN_EX_NOTIFY  *NotifyNode;
 
   if (ListHead == NULL) {
     return EFI_INVALID_PARAMETER;
   }
+
   while (!IsListEmpty (ListHead)) {
     NotifyNode = CR (
                    ListHead->ForwardLink,
@@ -635,12 +651,12 @@ KbdFreeNotifyList (
 **/
 EFI_STATUS
 EFIAPI
-InitializePs2Keyboard(
-  IN EFI_HANDLE           ImageHandle,
-  IN EFI_SYSTEM_TABLE     *SystemTable
+InitializePs2Keyboard (
+  IN EFI_HANDLE        ImageHandle,
+  IN EFI_SYSTEM_TABLE  *SystemTable
   )
 {
-  EFI_STATUS              Status;
+  EFI_STATUS  Status;
 
   //
   // Install driver model protocol(s).
@@ -655,7 +671,5 @@ InitializePs2Keyboard(
              );
   ASSERT_EFI_ERROR (Status);
 
-
   return Status;
 }
-

+ 123 - 124
MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2Keyboard.h

@@ -41,79 +41,79 @@ extern EFI_COMPONENT_NAME2_PROTOCOL  gPs2KeyboardComponentName2;
 //
 // Driver Private Data
 //
-#define KEYBOARD_CONSOLE_IN_DEV_SIGNATURE       SIGNATURE_32 ('k', 'k', 'e', 'y')
-#define KEYBOARD_CONSOLE_IN_EX_NOTIFY_SIGNATURE SIGNATURE_32 ('k', 'c', 'e', 'n')
+#define KEYBOARD_CONSOLE_IN_DEV_SIGNATURE        SIGNATURE_32 ('k', 'k', 'e', 'y')
+#define KEYBOARD_CONSOLE_IN_EX_NOTIFY_SIGNATURE  SIGNATURE_32 ('k', 'c', 'e', 'n')
 
 typedef struct _KEYBOARD_CONSOLE_IN_EX_NOTIFY {
-  UINTN                               Signature;
-  EFI_KEY_DATA                        KeyData;
-  EFI_KEY_NOTIFY_FUNCTION             KeyNotificationFn;
-  LIST_ENTRY                          NotifyEntry;
+  UINTN                      Signature;
+  EFI_KEY_DATA               KeyData;
+  EFI_KEY_NOTIFY_FUNCTION    KeyNotificationFn;
+  LIST_ENTRY                 NotifyEntry;
 } KEYBOARD_CONSOLE_IN_EX_NOTIFY;
 
 #define KEYBOARD_SCAN_CODE_MAX_COUNT  32
 typedef struct {
-  UINT8                               Buffer[KEYBOARD_SCAN_CODE_MAX_COUNT];
-  UINTN                               Head;
-  UINTN                               Tail;
+  UINT8    Buffer[KEYBOARD_SCAN_CODE_MAX_COUNT];
+  UINTN    Head;
+  UINTN    Tail;
 } SCAN_CODE_QUEUE;
 
-#define KEYBOARD_EFI_KEY_MAX_COUNT    256
+#define KEYBOARD_EFI_KEY_MAX_COUNT  256
 typedef struct {
-  EFI_KEY_DATA                        Buffer[KEYBOARD_EFI_KEY_MAX_COUNT];
-  UINTN                               Head;
-  UINTN                               Tail;
+  EFI_KEY_DATA    Buffer[KEYBOARD_EFI_KEY_MAX_COUNT];
+  UINTN           Head;
+  UINTN           Tail;
 } EFI_KEY_QUEUE;
 
 typedef struct {
-  UINTN                               Signature;
-
-  EFI_HANDLE                          Handle;
-  EFI_SIMPLE_TEXT_INPUT_PROTOCOL      ConIn;
-  EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL   ConInEx;
-
-  EFI_EVENT                           TimerEvent;
-
-  UINT32                              DataRegisterAddress;
-  UINT32                              StatusRegisterAddress;
-  UINT32                              CommandRegisterAddress;
-
-  BOOLEAN                             LeftCtrl;
-  BOOLEAN                             RightCtrl;
-  BOOLEAN                             LeftAlt;
-  BOOLEAN                             RightAlt;
-  BOOLEAN                             LeftShift;
-  BOOLEAN                             RightShift;
-  BOOLEAN                             LeftLogo;
-  BOOLEAN                             RightLogo;
-  BOOLEAN                             Menu;
-  BOOLEAN                             SysReq;
-
-  BOOLEAN                             CapsLock;
-  BOOLEAN                             NumLock;
-  BOOLEAN                             ScrollLock;
-
-  BOOLEAN                             IsSupportPartialKey;
+  UINTN                                Signature;
+
+  EFI_HANDLE                           Handle;
+  EFI_SIMPLE_TEXT_INPUT_PROTOCOL       ConIn;
+  EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL    ConInEx;
+
+  EFI_EVENT                            TimerEvent;
+
+  UINT32                               DataRegisterAddress;
+  UINT32                               StatusRegisterAddress;
+  UINT32                               CommandRegisterAddress;
+
+  BOOLEAN                              LeftCtrl;
+  BOOLEAN                              RightCtrl;
+  BOOLEAN                              LeftAlt;
+  BOOLEAN                              RightAlt;
+  BOOLEAN                              LeftShift;
+  BOOLEAN                              RightShift;
+  BOOLEAN                              LeftLogo;
+  BOOLEAN                              RightLogo;
+  BOOLEAN                              Menu;
+  BOOLEAN                              SysReq;
+
+  BOOLEAN                              CapsLock;
+  BOOLEAN                              NumLock;
+  BOOLEAN                              ScrollLock;
+
+  BOOLEAN                              IsSupportPartialKey;
   //
   // Queue storing key scancodes
   //
-  SCAN_CODE_QUEUE                     ScancodeQueue;
-  EFI_KEY_QUEUE                       EfiKeyQueue;
-  EFI_KEY_QUEUE                       EfiKeyQueueForNotify;
+  SCAN_CODE_QUEUE                      ScancodeQueue;
+  EFI_KEY_QUEUE                        EfiKeyQueue;
+  EFI_KEY_QUEUE                        EfiKeyQueueForNotify;
 
   //
   // Error state
   //
-  BOOLEAN                             KeyboardErr;
+  BOOLEAN                              KeyboardErr;
 
-  EFI_UNICODE_STRING_TABLE            *ControllerNameTable;
+  EFI_UNICODE_STRING_TABLE             *ControllerNameTable;
 
-  EFI_DEVICE_PATH_PROTOCOL            *DevicePath;
+  EFI_DEVICE_PATH_PROTOCOL             *DevicePath;
   //
   // Notification Function List
   //
-  LIST_ENTRY                          NotifyList;
-  EFI_EVENT                           KeyNotifyProcessEvent;
+  LIST_ENTRY                           NotifyList;
+  EFI_EVENT                            KeyNotifyProcessEvent;
 } KEYBOARD_CONSOLE_IN_DEV;
 
 #define KEYBOARD_CONSOLE_IN_DEV_FROM_THIS(a)  CR (a, KEYBOARD_CONSOLE_IN_DEV, ConIn, KEYBOARD_CONSOLE_IN_DEV_SIGNATURE)
@@ -124,11 +124,12 @@ typedef struct {
       KEYBOARD_CONSOLE_IN_DEV_SIGNATURE \
       )
 
-#define TABLE_END 0x0
+#define TABLE_END  0x0
 
 //
 // Driver entry point
 //
+
 /**
   The user Entry Point for module Ps2Keyboard. The user code starts with this function.
 
@@ -142,58 +143,57 @@ typedef struct {
 EFI_STATUS
 EFIAPI
 InstallPs2KeyboardDriver (
-  IN EFI_HANDLE           ImageHandle,
-  IN EFI_SYSTEM_TABLE     *SystemTable
+  IN EFI_HANDLE        ImageHandle,
+  IN EFI_SYSTEM_TABLE  *SystemTable
   );
 
 #define KEYBOARD_8042_DATA_REGISTER     0x60
 #define KEYBOARD_8042_STATUS_REGISTER   0x64
 #define KEYBOARD_8042_COMMAND_REGISTER  0x64
 
-#define KEYBOARD_KBEN                   0xF4
-#define KEYBOARD_CMDECHO_ACK            0xFA
-
-#define KEYBOARD_MAX_TRY                256     // 256
-#define KEYBOARD_TIMEOUT                65536   // 0.07s
-#define KEYBOARD_WAITFORVALUE_TIMEOUT   1000000 // 1s
-#define KEYBOARD_BAT_TIMEOUT            4000000 // 4s
-#define KEYBOARD_TIMER_INTERVAL         200000  // 0.02s
-#define SCANCODE_EXTENDED0              0xE0
-#define SCANCODE_EXTENDED1              0xE1
-#define SCANCODE_CTRL_MAKE              0x1D
-#define SCANCODE_CTRL_BREAK             0x9D
-#define SCANCODE_ALT_MAKE               0x38
-#define SCANCODE_ALT_BREAK              0xB8
-#define SCANCODE_LEFT_SHIFT_MAKE        0x2A
-#define SCANCODE_LEFT_SHIFT_BREAK       0xAA
-#define SCANCODE_RIGHT_SHIFT_MAKE       0x36
-#define SCANCODE_RIGHT_SHIFT_BREAK      0xB6
-#define SCANCODE_CAPS_LOCK_MAKE         0x3A
-#define SCANCODE_NUM_LOCK_MAKE          0x45
-#define SCANCODE_SCROLL_LOCK_MAKE       0x46
-#define SCANCODE_DELETE_MAKE            0x53
-#define SCANCODE_LEFT_LOGO_MAKE         0x5B //GUI key defined in Keyboard scan code
-#define SCANCODE_LEFT_LOGO_BREAK        0xDB
-#define SCANCODE_RIGHT_LOGO_MAKE        0x5C
-#define SCANCODE_RIGHT_LOGO_BREAK       0xDC
-#define SCANCODE_MENU_MAKE              0x5D //APPS key defined in Keyboard scan code
-#define SCANCODE_MENU_BREAK             0xDD
-#define SCANCODE_SYS_REQ_MAKE           0x37
-#define SCANCODE_SYS_REQ_BREAK          0xB7
-#define SCANCODE_SYS_REQ_MAKE_WITH_ALT  0x54
-#define SCANCODE_SYS_REQ_BREAK_WITH_ALT 0xD4
-
-#define SCANCODE_MAX_MAKE               0x60
-
-
-#define KEYBOARD_STATUS_REGISTER_HAS_OUTPUT_DATA     BIT0        ///< 0 - Output register has no data; 1 - Output register has data
-#define KEYBOARD_STATUS_REGISTER_HAS_INPUT_DATA      BIT1        ///< 0 - Input register has no data;  1 - Input register has data
-#define KEYBOARD_STATUS_REGISTER_SYSTEM_FLAG         BIT2        ///< Set to 0 after power on reset
-#define KEYBOARD_STATUS_REGISTER_INPUT_DATA_TYPE     BIT3        ///< 0 - Data in input register is data; 1 - Data in input register is command
-#define KEYBOARD_STATUS_REGISTER_ENABLE_FLAG         BIT4        ///< 0 - Keyboard is disable; 1 - Keyboard is enable
-#define KEYBOARD_STATUS_REGISTER_TRANSMIT_TIMEOUT    BIT5        ///< 0 - Transmit is complete without timeout; 1 - Transmit is timeout without complete
-#define KEYBOARD_STATUS_REGISTER_RECEIVE_TIMEOUT     BIT6        ///< 0 - Receive is complete without timeout; 1 - Receive is timeout without complete
-#define KEYBOARD_STATUS_REGISTER_PARITY              BIT7        ///< 0 - Odd parity; 1 - Even parity
+#define KEYBOARD_KBEN         0xF4
+#define KEYBOARD_CMDECHO_ACK  0xFA
+
+#define KEYBOARD_MAX_TRY                 256     // 256
+#define KEYBOARD_TIMEOUT                 65536   // 0.07s
+#define KEYBOARD_WAITFORVALUE_TIMEOUT    1000000 // 1s
+#define KEYBOARD_BAT_TIMEOUT             4000000 // 4s
+#define KEYBOARD_TIMER_INTERVAL          200000  // 0.02s
+#define SCANCODE_EXTENDED0               0xE0
+#define SCANCODE_EXTENDED1               0xE1
+#define SCANCODE_CTRL_MAKE               0x1D
+#define SCANCODE_CTRL_BREAK              0x9D
+#define SCANCODE_ALT_MAKE                0x38
+#define SCANCODE_ALT_BREAK               0xB8
+#define SCANCODE_LEFT_SHIFT_MAKE         0x2A
+#define SCANCODE_LEFT_SHIFT_BREAK        0xAA
+#define SCANCODE_RIGHT_SHIFT_MAKE        0x36
+#define SCANCODE_RIGHT_SHIFT_BREAK       0xB6
+#define SCANCODE_CAPS_LOCK_MAKE          0x3A
+#define SCANCODE_NUM_LOCK_MAKE           0x45
+#define SCANCODE_SCROLL_LOCK_MAKE        0x46
+#define SCANCODE_DELETE_MAKE             0x53
+#define SCANCODE_LEFT_LOGO_MAKE          0x5B// GUI key defined in Keyboard scan code
+#define SCANCODE_LEFT_LOGO_BREAK         0xDB
+#define SCANCODE_RIGHT_LOGO_MAKE         0x5C
+#define SCANCODE_RIGHT_LOGO_BREAK        0xDC
+#define SCANCODE_MENU_MAKE               0x5D// APPS key defined in Keyboard scan code
+#define SCANCODE_MENU_BREAK              0xDD
+#define SCANCODE_SYS_REQ_MAKE            0x37
+#define SCANCODE_SYS_REQ_BREAK           0xB7
+#define SCANCODE_SYS_REQ_MAKE_WITH_ALT   0x54
+#define SCANCODE_SYS_REQ_BREAK_WITH_ALT  0xD4
+
+#define SCANCODE_MAX_MAKE  0x60
+
+#define KEYBOARD_STATUS_REGISTER_HAS_OUTPUT_DATA   BIT0          ///< 0 - Output register has no data; 1 - Output register has data
+#define KEYBOARD_STATUS_REGISTER_HAS_INPUT_DATA    BIT1          ///< 0 - Input register has no data;  1 - Input register has data
+#define KEYBOARD_STATUS_REGISTER_SYSTEM_FLAG       BIT2          ///< Set to 0 after power on reset
+#define KEYBOARD_STATUS_REGISTER_INPUT_DATA_TYPE   BIT3          ///< 0 - Data in input register is data; 1 - Data in input register is command
+#define KEYBOARD_STATUS_REGISTER_ENABLE_FLAG       BIT4          ///< 0 - Keyboard is disable; 1 - Keyboard is enable
+#define KEYBOARD_STATUS_REGISTER_TRANSMIT_TIMEOUT  BIT5          ///< 0 - Transmit is complete without timeout; 1 - Transmit is timeout without complete
+#define KEYBOARD_STATUS_REGISTER_RECEIVE_TIMEOUT   BIT6          ///< 0 - Receive is complete without timeout; 1 - Receive is timeout without complete
+#define KEYBOARD_STATUS_REGISTER_PARITY            BIT7          ///< 0 - Odd parity; 1 - Even parity
 
 #define KEYBOARD_8042_COMMAND_READ                          0x20
 #define KEYBOARD_8042_COMMAND_WRITE                         0x60
@@ -203,14 +203,13 @@ InstallPs2KeyboardDriver (
 #define KEYBOARD_8042_COMMAND_KEYBOARD_INTERFACE_SELF_TEST  0xAB
 #define KEYBOARD_8042_COMMAND_DISABLE_KEYBOARD_INTERFACE    0xAD
 
-#define KEYBOARD_8048_COMMAND_CLEAR_OUTPUT_DATA             0xF4
-#define KEYBOARD_8048_COMMAND_RESET                         0xFF
-#define KEYBOARD_8048_COMMAND_SELECT_SCAN_CODE_SET          0xF0
-
-#define KEYBOARD_8048_RETURN_8042_BAT_SUCCESS               0xAA
-#define KEYBOARD_8048_RETURN_8042_BAT_ERROR                 0xFC
-#define KEYBOARD_8048_RETURN_8042_ACK                       0xFA
+#define KEYBOARD_8048_COMMAND_CLEAR_OUTPUT_DATA     0xF4
+#define KEYBOARD_8048_COMMAND_RESET                 0xFF
+#define KEYBOARD_8048_COMMAND_SELECT_SCAN_CODE_SET  0xF0
 
+#define KEYBOARD_8048_RETURN_8042_BAT_SUCCESS  0xAA
+#define KEYBOARD_8048_RETURN_8042_BAT_ERROR    0xFC
+#define KEYBOARD_8048_RETURN_8042_ACK          0xFA
 
 //
 // Keyboard Controller Status
@@ -221,6 +220,7 @@ InstallPs2KeyboardDriver (
 //
 // Other functions that are used among .c files
 //
+
 /**
   Show keyboard status lights according to
   indicators in ConsoleIn.
@@ -232,7 +232,7 @@ InstallPs2KeyboardDriver (
 **/
 EFI_STATUS
 UpdateStatusLights (
-  IN KEYBOARD_CONSOLE_IN_DEV *ConsoleIn
+  IN KEYBOARD_CONSOLE_IN_DEV  *ConsoleIn
   );
 
 /**
@@ -261,7 +261,7 @@ KeyboardRead (
 **/
 VOID
 KeyGetchar (
-  IN OUT KEYBOARD_CONSOLE_IN_DEV *ConsoleIn
+  IN OUT KEYBOARD_CONSOLE_IN_DEV  *ConsoleIn
   );
 
 /**
@@ -273,8 +273,8 @@ KeyGetchar (
 VOID
 EFIAPI
 KeyNotifyProcessHandler (
-  IN  EFI_EVENT                 Event,
-  IN  VOID                      *Context
+  IN  EFI_EVENT  Event,
+  IN  VOID       *Context
   );
 
 /**
@@ -290,11 +290,10 @@ KeyNotifyProcessHandler (
 **/
 EFI_STATUS
 InitKeyboard (
-  IN OUT KEYBOARD_CONSOLE_IN_DEV *ConsoleIn,
-  IN BOOLEAN                     ExtendedVerification
+  IN OUT KEYBOARD_CONSOLE_IN_DEV  *ConsoleIn,
+  IN BOOLEAN                      ExtendedVerification
   );
 
-
 /**
   Timer event handler: read a series of scancodes from 8042
   and put them into memory scancode buffer.
@@ -309,8 +308,8 @@ InitKeyboard (
 VOID
 EFIAPI
 KeyboardTimerHandler (
-  IN EFI_EVENT    Event,
-  IN VOID         *Context
+  IN EFI_EVENT  Event,
+  IN VOID       *Context
   );
 
 /**
@@ -358,8 +357,8 @@ KeyboardReadKeyStroke (
 VOID
 EFIAPI
 KeyboardWaitForKey (
-  IN  EFI_EVENT               Event,
-  IN  VOID                    *Context
+  IN  EFI_EVENT  Event,
+  IN  VOID       *Context
   );
 
 /**
@@ -372,7 +371,7 @@ KeyboardWaitForKey (
 **/
 UINT8
 KeyReadStatusRegister (
-  IN KEYBOARD_CONSOLE_IN_DEV *ConsoleIn
+  IN KEYBOARD_CONSOLE_IN_DEV  *ConsoleIn
   );
 
 /**
@@ -388,7 +387,7 @@ KeyReadStatusRegister (
 BOOLEAN
 EFIAPI
 CheckKeyboardConnect (
-  IN KEYBOARD_CONSOLE_IN_DEV *ConsoleIn
+  IN KEYBOARD_CONSOLE_IN_DEV  *ConsoleIn
   );
 
 /**
@@ -402,8 +401,8 @@ CheckKeyboardConnect (
 VOID
 EFIAPI
 KeyboardWaitForKeyEx (
-  IN  EFI_EVENT               Event,
-  IN  VOID                    *Context
+  IN  EFI_EVENT  Event,
+  IN  VOID       *Context
   );
 
 //
@@ -447,8 +446,8 @@ KeyboardEfiResetEx (
 EFI_STATUS
 EFIAPI
 KeyboardReadKeyStrokeEx (
-  IN  EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL *This,
-  OUT EFI_KEY_DATA                      *KeyData
+  IN  EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL  *This,
+  OUT EFI_KEY_DATA                       *KeyData
   );
 
 /**
@@ -526,8 +525,8 @@ KeyboardUnregisterKeyNotify (
 **/
 VOID
 PushEfikeyBufTail (
-  IN  EFI_KEY_QUEUE         *Queue,
-  IN  EFI_KEY_DATA          *KeyData
+  IN  EFI_KEY_QUEUE  *Queue,
+  IN  EFI_KEY_DATA   *KeyData
   );
 
 /**
@@ -556,8 +555,8 @@ IsKeyRegistered (
 **/
 VOID
 InitializeKeyState (
-  IN  KEYBOARD_CONSOLE_IN_DEV *ConsoleIn,
-  OUT EFI_KEY_STATE           *KeyState
+  IN  KEYBOARD_CONSOLE_IN_DEV  *ConsoleIn,
+  OUT EFI_KEY_STATE            *KeyState
   );
 
 #endif

+ 132 - 123
MdeModulePkg/Bus/Isa/Ps2MouseDxe/CommPs2.c

@@ -9,9 +9,9 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #include "Ps2Mouse.h"
 #include "CommPs2.h"
 
-UINT8 SampleRateTbl[MaxSampleRate]  = { 0xa, 0x14, 0x28, 0x3c, 0x50, 0x64, 0xc8 };
+UINT8  SampleRateTbl[MaxSampleRate] = { 0xa, 0x14, 0x28, 0x3c, 0x50, 0x64, 0xc8 };
 
-UINT8 ResolutionTbl[MaxResolution]  = { 0, 1, 2, 3 };
+UINT8  ResolutionTbl[MaxResolution] = { 0, 1, 2, 3 };
 
 /**
   Issue self test command via IsaIo interface.
@@ -34,6 +34,7 @@ KbcSelfTest (
   if (EFI_ERROR (Status)) {
     return Status;
   }
+
   //
   // Read return code
   //
@@ -45,6 +46,7 @@ KbcSelfTest (
   if (Data != 0x55) {
     return EFI_DEVICE_ERROR;
   }
+
   //
   // Set system flag
   //
@@ -63,7 +65,7 @@ KbcSelfTest (
     return Status;
   }
 
-  Data |= CMD_SYS_FLAG;
+  Data  |= CMD_SYS_FLAG;
   Status = Out8042Data (Data);
   if (EFI_ERROR (Status)) {
     return Status;
@@ -149,7 +151,7 @@ KbcDisableKb (
 **/
 EFI_STATUS
 CheckKbStatus (
-  OUT BOOLEAN                             *KeyboardEnable
+  OUT BOOLEAN  *KeyboardEnable
   )
 {
   EFI_STATUS  Status;
@@ -167,6 +169,7 @@ CheckKbStatus (
   if (EFI_ERROR (Status)) {
     return Status;
   }
+
   //
   // Check keyboard enable or not
   //
@@ -201,6 +204,7 @@ PS2MouseReset (
   if (EFI_ERROR (Status)) {
     return Status;
   }
+
   //
   // Check BAT Complete Code
   //
@@ -212,6 +216,7 @@ PS2MouseReset (
   if (EFI_ERROR (Status)) {
     return Status;
   }
+
   //
   // Check BAT Complete Code
   //
@@ -231,7 +236,7 @@ PS2MouseReset (
 **/
 EFI_STATUS
 PS2MouseSetSampleRate (
-  IN MOUSE_SR                             SampleRate
+  IN MOUSE_SR  SampleRate
   )
 {
   EFI_STATUS  Status;
@@ -258,7 +263,7 @@ PS2MouseSetSampleRate (
 **/
 EFI_STATUS
 PS2MouseSetResolution (
-  IN MOUSE_RE                             Resolution
+  IN MOUSE_RE  Resolution
   )
 {
   EFI_STATUS  Status;
@@ -285,7 +290,7 @@ PS2MouseSetResolution (
 **/
 EFI_STATUS
 PS2MouseSetScaling (
-  IN MOUSE_SF                             Scaling
+  IN MOUSE_SF  Scaling
   )
 {
   //
@@ -321,7 +326,7 @@ PS2MouseEnable (
 **/
 EFI_STATUS
 PS2MouseGetPacket (
-  PS2_MOUSE_DEV     *MouseDev
+  PS2_MOUSE_DEV  *MouseDev
   )
 
 {
@@ -336,111 +341,112 @@ PS2MouseGetPacket (
   BOOLEAN     LButton;
   BOOLEAN     RButton;
 
-  KeyboardEnable  = FALSE;
-  State           = PS2_READ_BYTE_ONE;
+  KeyboardEnable = FALSE;
+  State          = PS2_READ_BYTE_ONE;
 
   //
   // State machine to get mouse packet
   //
   while (1) {
-
     switch (State) {
-    case PS2_READ_BYTE_ONE:
-      //
-      // Read mouse first byte data, if failed, immediately return
-      //
-      KbcDisableAux ();
-      Count  = 1;
-      Status = PS2MouseRead (&Data, &Count, State);
-      if (EFI_ERROR (Status)) {
-        KbcEnableAux ();
-        return EFI_NOT_READY;
-      }
-
-      if (Count != 1) {
-        KbcEnableAux ();
-        return EFI_NOT_READY;
-      }
-
-      if (IS_PS2_SYNC_BYTE (Data)) {
-        Packet[0] = Data;
-        State     = PS2_READ_DATA_BYTE;
-
-        CheckKbStatus (&KeyboardEnable);
-        KbcDisableKb ();
-        KbcEnableAux ();
-      }
-      break;
+      case PS2_READ_BYTE_ONE:
+        //
+        // Read mouse first byte data, if failed, immediately return
+        //
+        KbcDisableAux ();
+        Count  = 1;
+        Status = PS2MouseRead (&Data, &Count, State);
+        if (EFI_ERROR (Status)) {
+          KbcEnableAux ();
+          return EFI_NOT_READY;
+        }
 
-    case PS2_READ_DATA_BYTE:
-      Count   = 2;
-      Status  = PS2MouseRead ((Packet + 1), &Count, State);
-      if (EFI_ERROR (Status)) {
-        if (KeyboardEnable) {
-          KbcEnableKb ();
+        if (Count != 1) {
+          KbcEnableAux ();
+          return EFI_NOT_READY;
+        }
+
+        if (IS_PS2_SYNC_BYTE (Data)) {
+          Packet[0] = Data;
+          State     = PS2_READ_DATA_BYTE;
+
+          CheckKbStatus (&KeyboardEnable);
+          KbcDisableKb ();
+          KbcEnableAux ();
+        }
+
+        break;
+
+      case PS2_READ_DATA_BYTE:
+        Count  = 2;
+        Status = PS2MouseRead ((Packet + 1), &Count, State);
+        if (EFI_ERROR (Status)) {
+          if (KeyboardEnable) {
+            KbcEnableKb ();
+          }
+
+          return EFI_NOT_READY;
+        }
+
+        if (Count != 2) {
+          if (KeyboardEnable) {
+            KbcEnableKb ();
+          }
+
+          return EFI_NOT_READY;
         }
 
-        return EFI_NOT_READY;
-      }
+        State = PS2_PROCESS_PACKET;
+        break;
 
-      if (Count != 2) {
+      case PS2_PROCESS_PACKET:
         if (KeyboardEnable) {
           KbcEnableKb ();
         }
 
-        return EFI_NOT_READY;
-      }
+        //
+        // Decode the packet
+        //
+        RelativeMovementX = Packet[1];
+        RelativeMovementY = Packet[2];
+        //
+        //               Bit 7   |    Bit 6   |    Bit 5   |   Bit 4    |   Bit 3  |   Bit 2    |   Bit 1   |   Bit 0
+        //  Byte 0  | Y overflow | X overflow | Y sign bit | X sign bit | Always 1 | Middle Btn | Right Btn | Left Btn
+        //  Byte 1  |                                           8 bit X Movement
+        //  Byte 2  |                                           8 bit Y Movement
+        //
+        // X sign bit + 8 bit X Movement : 9-bit signed twos complement integer that presents the relative displacement of the device in the X direction since the last data transmission.
+        // Y sign bit + 8 bit Y Movement : Same as X sign bit + 8 bit X Movement.
+        //
+        //
+        // First, Clear X and Y high 8 bits
+        //
+        RelativeMovementX = (INT16)(RelativeMovementX & 0xFF);
+        RelativeMovementY = (INT16)(RelativeMovementY & 0xFF);
+        //
+        // Second, if the 9-bit signed twos complement integer is negative, set the high 8 bit 0xff
+        //
+        if ((Packet[0] & 0x10) != 0) {
+          RelativeMovementX = (INT16)(RelativeMovementX | 0xFF00);
+        }
 
-      State = PS2_PROCESS_PACKET;
-      break;
+        if ((Packet[0] & 0x20) != 0) {
+          RelativeMovementY = (INT16)(RelativeMovementY | 0xFF00);
+        }
+
+        RButton = (UINT8)(Packet[0] & 0x2);
+        LButton = (UINT8)(Packet[0] & 0x1);
+
+        //
+        // Update mouse state
+        //
+        MouseDev->State.RelativeMovementX += RelativeMovementX;
+        MouseDev->State.RelativeMovementY -= RelativeMovementY;
+        MouseDev->State.RightButton        = (UINT8)(RButton ? TRUE : FALSE);
+        MouseDev->State.LeftButton         = (UINT8)(LButton ? TRUE : FALSE);
+        MouseDev->StateChanged             = TRUE;
 
-    case PS2_PROCESS_PACKET:
-      if (KeyboardEnable) {
-        KbcEnableKb ();
-      }
-      //
-      // Decode the packet
-      //
-      RelativeMovementX = Packet[1];
-      RelativeMovementY = Packet[2];
-      //
-      //               Bit 7   |    Bit 6   |    Bit 5   |   Bit 4    |   Bit 3  |   Bit 2    |   Bit 1   |   Bit 0
-      //  Byte 0  | Y overflow | X overflow | Y sign bit | X sign bit | Always 1 | Middle Btn | Right Btn | Left Btn
-      //  Byte 1  |                                           8 bit X Movement
-      //  Byte 2  |                                           8 bit Y Movement
-      //
-      // X sign bit + 8 bit X Movement : 9-bit signed twos complement integer that presents the relative displacement of the device in the X direction since the last data transmission.
-      // Y sign bit + 8 bit Y Movement : Same as X sign bit + 8 bit X Movement.
-      //
-      //
-      // First, Clear X and Y high 8 bits
-      //
-      RelativeMovementX = (INT16) (RelativeMovementX & 0xFF);
-      RelativeMovementY = (INT16) (RelativeMovementY & 0xFF);
-      //
-      // Second, if the 9-bit signed twos complement integer is negative, set the high 8 bit 0xff
-      //
-      if ((Packet[0] & 0x10) != 0) {
-        RelativeMovementX = (INT16) (RelativeMovementX | 0xFF00);
-      }
-      if ((Packet[0] & 0x20) != 0) {
-        RelativeMovementY = (INT16) (RelativeMovementY | 0xFF00);
-      }
-
-
-      RButton           = (UINT8) (Packet[0] & 0x2);
-      LButton           = (UINT8) (Packet[0] & 0x1);
-
-      //
-      // Update mouse state
-      //
-      MouseDev->State.RelativeMovementX += RelativeMovementX;
-      MouseDev->State.RelativeMovementY -= RelativeMovementY;
-      MouseDev->State.RightButton = (UINT8) (RButton ? TRUE : FALSE);
-      MouseDev->State.LeftButton  = (UINT8) (LButton ? TRUE : FALSE);
-      MouseDev->StateChanged      = TRUE;
-
-      return EFI_SUCCESS;
+        return EFI_SUCCESS;
     }
   }
 }
@@ -456,15 +462,15 @@ PS2MouseGetPacket (
 **/
 EFI_STATUS
 PS2MouseRead (
-  OUT UINT8                               *Buffer,
-  IN OUT UINTN                            *BufSize,
-  IN  UINTN                               State
+  OUT UINT8     *Buffer,
+  IN OUT UINTN  *BufSize,
+  IN  UINTN     State
   )
 {
   EFI_STATUS  Status;
   UINTN       BytesRead;
 
-  Status    = EFI_SUCCESS;
+  Status = EFI_SUCCESS;
 
   if (State == PS2_READ_BYTE_ONE) {
     //
@@ -478,17 +484,18 @@ PS2MouseRead (
   }
 
   for (BytesRead = 0; BytesRead < *BufSize; BytesRead++) {
-
     Status = WaitOutputFull (TIMEOUT);
     if (EFI_ERROR (Status)) {
       break;
     }
+
     Buffer[BytesRead] = IoRead8 (KBC_DATA_PORT);
   }
+
   //
   // Verify the correct number of bytes read
   //
-  if (BytesRead == 0 || BytesRead != *BufSize) {
+  if ((BytesRead == 0) || (BytesRead != *BufSize)) {
     Status = EFI_NOT_FOUND;
   }
 
@@ -499,6 +506,7 @@ PS2MouseRead (
 //
 // 8042 I/O function
 //
+
 /**
   I/O work flow of outing 8042 command.
 
@@ -509,7 +517,7 @@ PS2MouseRead (
 **/
 EFI_STATUS
 Out8042Command (
-  IN UINT8                                Command
+  IN UINT8  Command
   )
 {
   EFI_STATUS  Status;
@@ -521,6 +529,7 @@ Out8042Command (
   if (EFI_ERROR (Status)) {
     return Status;
   }
+
   //
   // Send command
   //
@@ -544,10 +553,11 @@ Out8042Command (
 **/
 EFI_STATUS
 Out8042Data (
-  IN UINT8                                Data
+  IN UINT8  Data
   )
 {
   EFI_STATUS  Status;
+
   //
   // Wait keyboard controller input buffer empty
   //
@@ -570,10 +580,10 @@ Out8042Data (
 **/
 EFI_STATUS
 In8042Data (
-  IN OUT UINT8                            *Data
+  IN OUT UINT8  *Data
   )
 {
-  UINTN Delay;
+  UINTN  Delay;
 
   Delay = TIMEOUT / 50;
 
@@ -609,8 +619,8 @@ In8042Data (
 **/
 EFI_STATUS
 Out8042AuxCommand (
-  IN UINT8                                Command,
-  IN BOOLEAN                              Resend
+  IN UINT8    Command,
+  IN BOOLEAN  Resend
   )
 {
   EFI_STATUS  Status;
@@ -623,6 +633,7 @@ Out8042AuxCommand (
   if (EFI_ERROR (Status)) {
     return Status;
   }
+
   //
   // Send write to auxiliary device command
   //
@@ -632,6 +643,7 @@ Out8042AuxCommand (
   if (EFI_ERROR (Status)) {
     return Status;
   }
+
   //
   // Send auxiliary device command
   //
@@ -650,13 +662,11 @@ Out8042AuxCommand (
     // Receive mouse acknowledge, command send success
     //
     return EFI_SUCCESS;
-
   } else if (Resend) {
     //
     // Resend fail
     //
     return EFI_DEVICE_ERROR;
-
   } else if (Data == PS2_RESEND) {
     //
     // Resend command
@@ -665,13 +675,11 @@ Out8042AuxCommand (
     if (EFI_ERROR (Status)) {
       return Status;
     }
-
   } else {
     //
     // Invalid return code
     //
     return EFI_DEVICE_ERROR;
-
   }
 
   return EFI_SUCCESS;
@@ -687,10 +695,11 @@ Out8042AuxCommand (
 **/
 EFI_STATUS
 Out8042AuxData (
-  IN UINT8                                Data
+  IN UINT8  Data
   )
 {
   EFI_STATUS  Status;
+
   //
   // Wait keyboard controller input buffer empty
   //
@@ -698,6 +707,7 @@ Out8042AuxData (
   if (EFI_ERROR (Status)) {
     return Status;
   }
+
   //
   // Send write to auxiliary device command
   //
@@ -728,7 +738,7 @@ Out8042AuxData (
 **/
 EFI_STATUS
 In8042AuxData (
-  IN OUT UINT8                            *Data
+  IN OUT UINT8  *Data
   )
 {
   EFI_STATUS  Status;
@@ -746,7 +756,6 @@ In8042AuxData (
   return EFI_SUCCESS;
 }
 
-
 /**
   Check keyboard controller status, if it is output buffer full and for auxiliary device.
 
@@ -758,7 +767,7 @@ CheckForInput (
   VOID
   )
 {
-  UINT8 Data;
+  UINT8  Data;
 
   Data = IoRead8 (KBC_CMD_STS_PORT);
 
@@ -782,11 +791,11 @@ CheckForInput (
 **/
 EFI_STATUS
 WaitInputEmpty (
-  IN UINTN                                Timeout
+  IN UINTN  Timeout
   )
 {
-  UINTN Delay;
-  UINT8 Data;
+  UINTN  Delay;
+  UINT8  Data;
 
   Delay = Timeout / 50;
 
@@ -821,11 +830,11 @@ WaitInputEmpty (
 **/
 EFI_STATUS
 WaitOutputFull (
-  IN UINTN                                Timeout
+  IN UINTN  Timeout
   )
 {
-  UINTN Delay;
-  UINT8 Data;
+  UINTN  Delay;
+  UINT8  Data;
 
   Delay = Timeout / 50;
 

+ 44 - 44
MdeModulePkg/Bus/Isa/Ps2MouseDxe/CommPs2.h

@@ -11,18 +11,18 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 
 #include "Ps2Mouse.h"
 
-#define PS2_PACKET_LENGTH       3
-#define PS2_SYNC_MASK           0xc
-#define PS2_SYNC_BYTE           0x8
+#define PS2_PACKET_LENGTH  3
+#define PS2_SYNC_MASK      0xc
+#define PS2_SYNC_BYTE      0x8
 
 #define IS_PS2_SYNC_BYTE(byte)  ((byte & PS2_SYNC_MASK) == PS2_SYNC_BYTE)
 
-#define PS2_READ_BYTE_ONE       0
-#define PS2_READ_DATA_BYTE      1
-#define PS2_PROCESS_PACKET      2
+#define PS2_READ_BYTE_ONE   0
+#define PS2_READ_DATA_BYTE  1
+#define PS2_PROCESS_PACKET  2
 
-#define TIMEOUT                 50000
-#define BAT_TIMEOUT             500000
+#define TIMEOUT      50000
+#define BAT_TIMEOUT  500000
 
 //
 // 8042 I/O Port
@@ -42,31 +42,31 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #define ENABLE_KB       0xae
 #define WRITE_AUX_DEV   0xd4
 
-#define CMD_SYS_FLAG    0x04
-#define CMD_KB_STS      0x10
-#define CMD_KB_DIS      0x10
-#define CMD_KB_EN       0x0
+#define CMD_SYS_FLAG  0x04
+#define CMD_KB_STS    0x10
+#define CMD_KB_DIS    0x10
+#define CMD_KB_EN     0x0
 
 //
 // 8042 Auxiliary Device Command
 //
-#define SETSF1_CMD  0xe6
-#define SETSF2_CMD  0xe7
-#define SETRE_CMD   0xe8
-#define READ_CMD    0xeb
-#define SETRM_CMD   0xf0
-#define SETSR_CMD   0xf3
-#define ENABLE_CMD  0xf4
-#define DISABLE_CMD 0xf5
-#define RESET_CMD   0xff
+#define SETSF1_CMD   0xe6
+#define SETSF2_CMD   0xe7
+#define SETRE_CMD    0xe8
+#define READ_CMD     0xeb
+#define SETRM_CMD    0xf0
+#define SETSR_CMD    0xf3
+#define ENABLE_CMD   0xf4
+#define DISABLE_CMD  0xf5
+#define RESET_CMD    0xff
 
 //
 // return code
 //
-#define PS2_ACK       0xfa
-#define PS2_RESEND    0xfe
-#define PS2MOUSE_BAT1 0xaa
-#define PS2MOUSE_BAT2 0x0
+#define PS2_ACK        0xfa
+#define PS2_RESEND     0xfe
+#define PS2MOUSE_BAT1  0xaa
+#define PS2MOUSE_BAT2  0x0
 
 //
 // Keyboard Controller Status
@@ -78,7 +78,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 ///
 /// General Time Out
 ///
-#define KBC_TIM   0x40
+#define KBC_TIM  0x40
 ///
 /// Output buffer for auxiliary device (PS/2):
 ///    0 - Holds keyboard data
@@ -176,7 +176,7 @@ KbcDisableKb (
 **/
 EFI_STATUS
 CheckKbStatus (
-  OUT BOOLEAN                             *KeyboardEnable
+  OUT BOOLEAN  *KeyboardEnable
   );
 
 /**
@@ -198,7 +198,7 @@ PS2MouseReset (
 **/
 EFI_STATUS
 PS2MouseSetSampleRate (
-  IN MOUSE_SR                             SampleRate
+  IN MOUSE_SR  SampleRate
   );
 
 /**
@@ -210,7 +210,7 @@ PS2MouseSetSampleRate (
 **/
 EFI_STATUS
 PS2MouseSetResolution (
-  IN MOUSE_RE                             Resolution
+  IN MOUSE_RE  Resolution
   );
 
 /**
@@ -222,7 +222,7 @@ PS2MouseSetResolution (
 **/
 EFI_STATUS
 PS2MouseSetScaling (
-  IN MOUSE_SF                             Scaling
+  IN MOUSE_SF  Scaling
   );
 
 /**
@@ -246,7 +246,7 @@ PS2MouseEnable (
 **/
 EFI_STATUS
 PS2MouseGetPacket (
-  PS2_MOUSE_DEV     *MouseDev
+  PS2_MOUSE_DEV  *MouseDev
   );
 
 /**
@@ -260,14 +260,15 @@ PS2MouseGetPacket (
 **/
 EFI_STATUS
 PS2MouseRead (
-  OUT UINT8                               *Buffer,
-  IN OUT UINTN                            *BufSize,
-  IN  UINTN                               State
+  OUT UINT8     *Buffer,
+  IN OUT UINTN  *BufSize,
+  IN  UINTN     State
   );
 
 //
 // 8042 I/O function
 //
+
 /**
   I/O work flow of outing 8042 command.
 
@@ -278,7 +279,7 @@ PS2MouseRead (
 **/
 EFI_STATUS
 Out8042Command (
-  IN UINT8                                Command
+  IN UINT8  Command
   );
 
 /**
@@ -291,7 +292,7 @@ Out8042Command (
 **/
 EFI_STATUS
 In8042Data (
-  IN OUT UINT8                            *Data
+  IN OUT UINT8  *Data
   );
 
 /**
@@ -304,7 +305,7 @@ In8042Data (
 **/
 EFI_STATUS
 Out8042Data (
-  IN UINT8                                Data
+  IN UINT8  Data
   );
 
 /**
@@ -318,8 +319,8 @@ Out8042Data (
 **/
 EFI_STATUS
 Out8042AuxCommand (
-  IN UINT8                                Command,
-  IN BOOLEAN                              Resend
+  IN UINT8    Command,
+  IN BOOLEAN  Resend
   );
 
 /**
@@ -332,7 +333,7 @@ Out8042AuxCommand (
 **/
 EFI_STATUS
 In8042AuxData (
-  IN OUT UINT8                            *Data
+  IN OUT UINT8  *Data
   );
 
 /**
@@ -345,7 +346,7 @@ In8042AuxData (
 **/
 EFI_STATUS
 Out8042AuxData (
-  IN UINT8                                Data
+  IN UINT8  Data
   );
 
 /**
@@ -369,7 +370,7 @@ CheckForInput (
 **/
 EFI_STATUS
 WaitInputEmpty (
-  IN UINTN                                Timeout
+  IN UINTN  Timeout
   );
 
 /**
@@ -382,8 +383,7 @@ WaitInputEmpty (
 **/
 EFI_STATUS
 WaitOutputFull (
-  IN UINTN                                Timeout
+  IN UINTN  Timeout
   );
 
 #endif
-

+ 15 - 14
MdeModulePkg/Bus/Isa/Ps2MouseDxe/ComponentName.c

@@ -20,14 +20,13 @@ GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME_PROTOCOL  gPs2MouseComponentNam
 //
 // EFI Component Name 2 Protocol
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL gPs2MouseComponentName2 = {
-  (EFI_COMPONENT_NAME2_GET_DRIVER_NAME) Ps2MouseComponentNameGetDriverName,
-  (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME) Ps2MouseComponentNameGetControllerName,
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL  gPs2MouseComponentName2 = {
+  (EFI_COMPONENT_NAME2_GET_DRIVER_NAME)Ps2MouseComponentNameGetDriverName,
+  (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME)Ps2MouseComponentNameGetControllerName,
   "en"
 };
 
-
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mPs2MouseDriverNameTable[] = {
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE  mPs2MouseDriverNameTable[] = {
   {
     "eng;en",
     L"PS/2 Mouse Driver"
@@ -165,16 +164,16 @@ Ps2MouseComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 Ps2MouseComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  EFI_HANDLE                   ControllerHandle,
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **ControllerName
   )
 {
-  EFI_STATUS                                  Status;
-  EFI_SIMPLE_POINTER_PROTOCOL                 *SimplePointerProtocol;
-  PS2_MOUSE_DEV                               *MouseDev;
+  EFI_STATUS                   Status;
+  EFI_SIMPLE_POINTER_PROTOCOL  *SimplePointerProtocol;
+  PS2_MOUSE_DEV                *MouseDev;
 
   //
   // This is a device driver, so ChildHandle must be NULL.
@@ -182,6 +181,7 @@ Ps2MouseComponentNameGetControllerName (
   if (ChildHandle != NULL) {
     return EFI_UNSUPPORTED;
   }
+
   //
   // Check Controller's handle
   //
@@ -190,13 +190,14 @@ Ps2MouseComponentNameGetControllerName (
   if (EFI_ERROR (Status)) {
     return Status;
   }
+
   //
   // Get the device context
   //
   Status = gBS->OpenProtocol (
                   ControllerHandle,
                   &gEfiSimplePointerProtocolGuid,
-                  (VOID **) &SimplePointerProtocol,
+                  (VOID **)&SimplePointerProtocol,
                   gPS2MouseDriver.DriverBindingHandle,
                   ControllerHandle,
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL

+ 94 - 91
MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2Mouse.c

@@ -13,7 +13,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 ///
 /// DriverBinding Protocol Instance
 ///
-EFI_DRIVER_BINDING_PROTOCOL gPS2MouseDriver = {
+EFI_DRIVER_BINDING_PROTOCOL  gPS2MouseDriver = {
   PS2MouseDriverSupported,
   PS2MouseDriverStart,
   PS2MouseDriverStop,
@@ -39,15 +39,15 @@ EFI_DRIVER_BINDING_PROTOCOL gPS2MouseDriver = {
 EFI_STATUS
 EFIAPI
 PS2MouseDriverSupported (
-  IN EFI_DRIVER_BINDING_PROTOCOL    *This,
-  IN EFI_HANDLE                     Controller,
-  IN EFI_DEVICE_PATH_PROTOCOL       *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   )
 {
-  EFI_STATUS                        Status;
-  EFI_SIO_PROTOCOL                  *Sio;
-  EFI_DEVICE_PATH_PROTOCOL          *DevicePath;
-  ACPI_HID_DEVICE_PATH              *Acpi;
+  EFI_STATUS                Status;
+  EFI_SIO_PROTOCOL          *Sio;
+  EFI_DEVICE_PATH_PROTOCOL  *DevicePath;
+  ACPI_HID_DEVICE_PATH      *Acpi;
 
   //
   // Check whether the controller is keyboard.
@@ -55,7 +55,7 @@ PS2MouseDriverSupported (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiDevicePathProtocolGuid,
-                  (VOID **) &DevicePath,
+                  (VOID **)&DevicePath,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -65,37 +65,38 @@ PS2MouseDriverSupported (
   }
 
   do {
-    Acpi = (ACPI_HID_DEVICE_PATH *) DevicePath;
+    Acpi       = (ACPI_HID_DEVICE_PATH *)DevicePath;
     DevicePath = NextDevicePathNode (DevicePath);
   } while (!IsDevicePathEnd (DevicePath));
 
-  if (DevicePathType (Acpi) != ACPI_DEVICE_PATH ||
-      (DevicePathSubType (Acpi) != ACPI_DP && DevicePathSubType (Acpi) != ACPI_EXTENDED_DP)) {
+  if ((DevicePathType (Acpi) != ACPI_DEVICE_PATH) ||
+      ((DevicePathSubType (Acpi) != ACPI_DP) && (DevicePathSubType (Acpi) != ACPI_EXTENDED_DP)))
+  {
     return EFI_UNSUPPORTED;
   }
 
   switch (Acpi->HID) {
-  case EISA_PNP_ID (0xF03):
+    case EISA_PNP_ID (0xF03):
     //
     // Microsoft PS/2 style mouse
     //
-  case EISA_PNP_ID (0xF13):
-    //
-    // PS/2 Port for PS/2-style Mice
-    //
-    break;
-
-  case EISA_PNP_ID (0x303):
-    //
-    // IBM Enhanced (101/102-key, PS/2 mouse support)
-    //
-    if (Acpi->UID == 1) {
+    case EISA_PNP_ID (0xF13):
+      //
+      // PS/2 Port for PS/2-style Mice
+      //
       break;
-    }
 
-  default:
-    return EFI_UNSUPPORTED;
-    break;
+    case EISA_PNP_ID (0x303):
+      //
+      // IBM Enhanced (101/102-key, PS/2 mouse support)
+      //
+      if (Acpi->UID == 1) {
+        break;
+      }
+
+    default:
+      return EFI_UNSUPPORTED;
+      break;
   }
 
   //
@@ -104,7 +105,7 @@ PS2MouseDriverSupported (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiSioProtocolGuid,
-                  (VOID **) &Sio,
+                  (VOID **)&Sio,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_BY_DRIVER
@@ -143,21 +144,21 @@ PS2MouseDriverSupported (
 EFI_STATUS
 EFIAPI
 PS2MouseDriverStart (
-  IN EFI_DRIVER_BINDING_PROTOCOL    *This,
-  IN EFI_HANDLE                     Controller,
-  IN EFI_DEVICE_PATH_PROTOCOL       *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   )
 {
-  EFI_STATUS                          Status;
-  EFI_STATUS                          EmptyStatus;
-  EFI_SIO_PROTOCOL                    *Sio;
-  PS2_MOUSE_DEV                       *MouseDev;
-  UINT8                               Data;
-  EFI_TPL                             OldTpl;
-  EFI_STATUS_CODE_VALUE               StatusCode;
-  EFI_DEVICE_PATH_PROTOCOL            *DevicePath;
+  EFI_STATUS                Status;
+  EFI_STATUS                EmptyStatus;
+  EFI_SIO_PROTOCOL          *Sio;
+  PS2_MOUSE_DEV             *MouseDev;
+  UINT8                     Data;
+  EFI_TPL                   OldTpl;
+  EFI_STATUS_CODE_VALUE     StatusCode;
+  EFI_DEVICE_PATH_PROTOCOL  *DevicePath;
 
-  StatusCode  = 0;
+  StatusCode = 0;
 
   //
   // Open the device path protocol
@@ -165,7 +166,7 @@ PS2MouseDriverStart (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiDevicePathProtocolGuid,
-                  (VOID **) &DevicePath,
+                  (VOID **)&DevicePath,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -173,6 +174,7 @@ PS2MouseDriverStart (
   if (EFI_ERROR (Status)) {
     return Status;
   }
+
   //
   // Report that the keyboard is being enabled
   //
@@ -188,7 +190,7 @@ PS2MouseDriverStart (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiSioProtocolGuid,
-                  (VOID **) &Sio,
+                  (VOID **)&Sio,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_BY_DRIVER
@@ -196,6 +198,7 @@ PS2MouseDriverStart (
   if (EFI_ERROR (Status)) {
     return Status;
   }
+
   //
   // Raise TPL to avoid keyboard operation impact
   //
@@ -209,6 +212,7 @@ PS2MouseDriverStart (
     Status = EFI_OUT_OF_RESOURCES;
     goto ErrorExit;
   }
+
   //
   // Setup the device instance
   //
@@ -223,14 +227,14 @@ PS2MouseDriverStart (
   //
   // Resolution = 4 counts/mm
   //
-  MouseDev->Mode.ResolutionX                = 4;
-  MouseDev->Mode.ResolutionY                = 4;
-  MouseDev->Mode.LeftButton                 = TRUE;
-  MouseDev->Mode.RightButton                = TRUE;
+  MouseDev->Mode.ResolutionX = 4;
+  MouseDev->Mode.ResolutionY = 4;
+  MouseDev->Mode.LeftButton  = TRUE;
+  MouseDev->Mode.RightButton = TRUE;
 
-  MouseDev->SimplePointerProtocol.Reset     = MouseReset;
-  MouseDev->SimplePointerProtocol.GetState  = MouseGetState;
-  MouseDev->SimplePointerProtocol.Mode      = &(MouseDev->Mode);
+  MouseDev->SimplePointerProtocol.Reset    = MouseReset;
+  MouseDev->SimplePointerProtocol.GetState = MouseGetState;
+  MouseDev->SimplePointerProtocol.Mode     = &(MouseDev->Mode);
 
   //
   // Initialize keyboard controller if necessary
@@ -275,15 +279,15 @@ PS2MouseDriverStart (
   // Reset the mouse
   //
   Status = MouseDev->SimplePointerProtocol.Reset (
-                     &MouseDev->SimplePointerProtocol,
-                     FeaturePcdGet (PcdPs2MouseExtendedVerification)
-                     );
+                                             &MouseDev->SimplePointerProtocol,
+                                             FeaturePcdGet (PcdPs2MouseExtendedVerification)
+                                             );
   if (EFI_ERROR (Status)) {
     //
     // mouse not connected
     //
-    Status      = EFI_SUCCESS;
-    StatusCode  = EFI_PERIPHERAL_MOUSE | EFI_P_EC_NOT_DETECTED;
+    Status     = EFI_SUCCESS;
+    StatusCode = EFI_PERIPHERAL_MOUSE | EFI_P_EC_NOT_DETECTED;
     goto ErrorExit;
   }
 
@@ -307,6 +311,7 @@ PS2MouseDriverStart (
     Status = EFI_OUT_OF_RESOURCES;
     goto ErrorExit;
   }
+
   //
   // Setup a periodic timer, used to poll mouse state
   //
@@ -321,6 +326,7 @@ PS2MouseDriverStart (
     Status = EFI_OUT_OF_RESOURCES;
     goto ErrorExit;
   }
+
   //
   // Start timer to poll mouse (100 samples per second)
   //
@@ -346,7 +352,6 @@ PS2MouseDriverStart (
     FALSE
     );
 
-
   //
   // Install protocol interfaces for the mouse device.
   //
@@ -441,21 +446,21 @@ ErrorExit:
 EFI_STATUS
 EFIAPI
 PS2MouseDriverStop (
-  IN EFI_DRIVER_BINDING_PROTOCOL    *This,
-  IN EFI_HANDLE                     Controller,
-  IN UINTN                          NumberOfChildren,
-  IN EFI_HANDLE                     *ChildHandleBuffer
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN UINTN                        NumberOfChildren,
+  IN EFI_HANDLE                   *ChildHandleBuffer
   )
 {
-  EFI_STATUS                  Status;
-  EFI_SIMPLE_POINTER_PROTOCOL *SimplePointerProtocol;
-  PS2_MOUSE_DEV               *MouseDev;
-  UINT8                       Data;
+  EFI_STATUS                   Status;
+  EFI_SIMPLE_POINTER_PROTOCOL  *SimplePointerProtocol;
+  PS2_MOUSE_DEV                *MouseDev;
+  UINT8                        Data;
 
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiSimplePointerProtocolGuid,
-                  (VOID **) &SimplePointerProtocol,
+                  (VOID **)&SimplePointerProtocol,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -535,15 +540,15 @@ PS2MouseDriverStop (
 EFI_STATUS
 EFIAPI
 MouseReset (
-  IN EFI_SIMPLE_POINTER_PROTOCOL    *This,
-  IN BOOLEAN                        ExtendedVerification
+  IN EFI_SIMPLE_POINTER_PROTOCOL  *This,
+  IN BOOLEAN                      ExtendedVerification
   )
 {
-  EFI_STATUS    Status;
-  PS2_MOUSE_DEV *MouseDev;
-  EFI_TPL       OldTpl;
-  BOOLEAN       KeyboardEnable;
-  UINT8         Data;
+  EFI_STATUS     Status;
+  PS2_MOUSE_DEV  *MouseDev;
+  EFI_TPL        OldTpl;
+  BOOLEAN        KeyboardEnable;
+  UINT8          Data;
 
   MouseDev = PS2_MOUSE_DEV_FROM_THIS (This);
 
@@ -625,6 +630,7 @@ MouseReset (
       goto Exit;
     }
   }
+
 Exit:
   gBS->RestoreTPL (OldTpl);
 
@@ -646,11 +652,11 @@ Exit:
 **/
 BOOLEAN
 CheckMouseConnect (
-  IN  PS2_MOUSE_DEV     *MouseDev
+  IN  PS2_MOUSE_DEV  *MouseDev
   )
 
 {
-  EFI_STATUS     Status;
+  EFI_STATUS  Status;
 
   Status = PS2MouseEnable ();
   if (!EFI_ERROR (Status)) {
@@ -673,12 +679,12 @@ CheckMouseConnect (
 EFI_STATUS
 EFIAPI
 MouseGetState (
-  IN EFI_SIMPLE_POINTER_PROTOCOL    *This,
-  IN OUT EFI_SIMPLE_POINTER_STATE   *State
+  IN EFI_SIMPLE_POINTER_PROTOCOL   *This,
+  IN OUT EFI_SIMPLE_POINTER_STATE  *State
   )
 {
-  PS2_MOUSE_DEV *MouseDev;
-  EFI_TPL       OldTpl;
+  PS2_MOUSE_DEV  *MouseDev;
+  EFI_TPL        OldTpl;
 
   MouseDev = PS2_MOUSE_DEV_FROM_THIS (This);
 
@@ -717,13 +723,13 @@ MouseGetState (
 VOID
 EFIAPI
 MouseWaitForInput (
-  IN  EFI_EVENT               Event,
-  IN  VOID                    *Context
+  IN  EFI_EVENT  Event,
+  IN  VOID       *Context
   )
 {
-  PS2_MOUSE_DEV *MouseDev;
+  PS2_MOUSE_DEV  *MouseDev;
 
-  MouseDev = (PS2_MOUSE_DEV *) Context;
+  MouseDev = (PS2_MOUSE_DEV *)Context;
 
   //
   // Someone is waiting on the mouse event, if there's
@@ -732,7 +738,6 @@ MouseWaitForInput (
   if (MouseDev->StateChanged) {
     gBS->SignalEvent (Event);
   }
-
 }
 
 /**
@@ -751,9 +756,9 @@ PollMouse (
   )
 
 {
-  PS2_MOUSE_DEV *MouseDev;
+  PS2_MOUSE_DEV  *MouseDev;
 
-  MouseDev = (PS2_MOUSE_DEV *) Context;
+  MouseDev = (PS2_MOUSE_DEV *)Context;
 
   //
   // Polling mouse packet data
@@ -773,12 +778,12 @@ PollMouse (
 **/
 EFI_STATUS
 EFIAPI
-InitializePs2Mouse(
-  IN EFI_HANDLE           ImageHandle,
-  IN EFI_SYSTEM_TABLE     *SystemTable
+InitializePs2Mouse (
+  IN EFI_HANDLE        ImageHandle,
+  IN EFI_SYSTEM_TABLE  *SystemTable
   )
 {
-  EFI_STATUS              Status;
+  EFI_STATUS  Status;
 
   //
   // Install driver model protocol(s).
@@ -793,7 +798,5 @@ InitializePs2Mouse(
              );
   ASSERT_EFI_ERROR (Status);
 
-
   return Status;
 }
-

+ 39 - 38
MdeModulePkg/Bus/Isa/Ps2MouseDxe/Ps2Mouse.h

@@ -69,29 +69,29 @@ typedef enum {
 //
 // Driver Private Data
 //
-#define PS2_MOUSE_DEV_SIGNATURE SIGNATURE_32 ('p', 's', '2', 'm')
+#define PS2_MOUSE_DEV_SIGNATURE  SIGNATURE_32 ('p', 's', '2', 'm')
 
 typedef struct {
-  UINTN                               Signature;
+  UINTN                          Signature;
 
-  EFI_HANDLE                          Handle;
-  EFI_SIMPLE_POINTER_PROTOCOL         SimplePointerProtocol;
-  EFI_SIMPLE_POINTER_STATE            State;
-  EFI_SIMPLE_POINTER_MODE             Mode;
-  BOOLEAN                             StateChanged;
+  EFI_HANDLE                     Handle;
+  EFI_SIMPLE_POINTER_PROTOCOL    SimplePointerProtocol;
+  EFI_SIMPLE_POINTER_STATE       State;
+  EFI_SIMPLE_POINTER_MODE        Mode;
+  BOOLEAN                        StateChanged;
 
   //
   // PS2 Mouse device specific information
   //
-  MOUSE_SR                            SampleRate;
-  MOUSE_RE                            Resolution;
-  MOUSE_SF                            Scaling;
-  UINT8                               DataPackageSize;
+  MOUSE_SR                       SampleRate;
+  MOUSE_RE                       Resolution;
+  MOUSE_SF                       Scaling;
+  UINT8                          DataPackageSize;
 
-  EFI_EVENT                           TimerEvent;
+  EFI_EVENT                      TimerEvent;
 
-  EFI_UNICODE_STRING_TABLE            *ControllerNameTable;
-  EFI_DEVICE_PATH_PROTOCOL            *DevicePath;
+  EFI_UNICODE_STRING_TABLE       *ControllerNameTable;
+  EFI_DEVICE_PATH_PROTOCOL       *DevicePath;
 } PS2_MOUSE_DEV;
 
 #define PS2_MOUSE_DEV_FROM_THIS(a)  CR (a, PS2_MOUSE_DEV, SimplePointerProtocol, PS2_MOUSE_DEV_SIGNATURE)
@@ -99,6 +99,7 @@ typedef struct {
 //
 // Function prototypes
 //
+
 /**
   Test to see if this driver supports ControllerHandle. Any ControllerHandle
   than contains a IsaIo protocol can be supported.
@@ -116,9 +117,9 @@ typedef struct {
 EFI_STATUS
 EFIAPI
 PS2MouseDriverSupported (
-  IN EFI_DRIVER_BINDING_PROTOCOL    *This,
-  IN EFI_HANDLE                     Controller,
-  IN EFI_DEVICE_PATH_PROTOCOL       *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   );
 
 /**
@@ -139,9 +140,9 @@ PS2MouseDriverSupported (
 EFI_STATUS
 EFIAPI
 PS2MouseDriverStart (
-  IN EFI_DRIVER_BINDING_PROTOCOL    *This,
-  IN EFI_HANDLE                     Controller,
-  IN EFI_DEVICE_PATH_PROTOCOL       *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   );
 
 /**
@@ -161,15 +162,16 @@ PS2MouseDriverStart (
 EFI_STATUS
 EFIAPI
 PS2MouseDriverStop (
-  IN EFI_DRIVER_BINDING_PROTOCOL   *This,
-  IN EFI_HANDLE                    Controller,
-  IN UINTN                         NumberOfChildren,
-  IN EFI_HANDLE                    *ChildHandleBuffer
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN UINTN                        NumberOfChildren,
+  IN EFI_HANDLE                   *ChildHandleBuffer
   );
 
 //
 // EFI Component Name Functions
 //
+
 /**
   Retrieves a Unicode string that is the user readable name of the driver.
 
@@ -217,7 +219,6 @@ Ps2MouseComponentNameGetDriverName (
   OUT CHAR16                       **DriverName
   );
 
-
 /**
   Retrieves a Unicode string that is the user readable name of the controller
   that is being managed by a driver.
@@ -289,11 +290,11 @@ Ps2MouseComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 Ps2MouseComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  EFI_HANDLE                   ControllerHandle,
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **ControllerName
   );
 
 /**
@@ -311,8 +312,8 @@ Ps2MouseComponentNameGetControllerName (
 EFI_STATUS
 EFIAPI
 MouseReset (
-  IN EFI_SIMPLE_POINTER_PROTOCOL    *This,
-  IN BOOLEAN                        ExtendedVerification
+  IN EFI_SIMPLE_POINTER_PROTOCOL  *This,
+  IN BOOLEAN                      ExtendedVerification
   );
 
 /**
@@ -328,8 +329,8 @@ MouseReset (
 EFI_STATUS
 EFIAPI
 MouseGetState (
-  IN EFI_SIMPLE_POINTER_PROTOCOL    *This,
-  IN OUT EFI_SIMPLE_POINTER_STATE   *State
+  IN EFI_SIMPLE_POINTER_PROTOCOL   *This,
+  IN OUT EFI_SIMPLE_POINTER_STATE  *State
   );
 
 /**
@@ -344,8 +345,8 @@ MouseGetState (
 VOID
 EFIAPI
 MouseWaitForInput (
-  IN  EFI_EVENT               Event,
-  IN  VOID                    *Context
+  IN  EFI_EVENT  Event,
+  IN  VOID       *Context
   );
 
 /**
@@ -373,7 +374,7 @@ PollMouse (
 **/
 EFI_STATUS
 In8042Data (
-  IN OUT UINT8                            *Data
+  IN OUT UINT8  *Data
   );
 
 /**
@@ -387,7 +388,7 @@ In8042Data (
 **/
 BOOLEAN
 CheckMouseConnect (
-  IN  PS2_MOUSE_DEV     *MouseDev
+  IN  PS2_MOUSE_DEV  *MouseDev
   );
 
 #endif

+ 16 - 18
MdeModulePkg/Bus/Pci/EhciDxe/ComponentName.c

@@ -9,7 +9,6 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 
 #include "Ehci.h"
 
-
 //
 // EFI Component Name Protocol
 //
@@ -22,19 +21,17 @@ GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME_PROTOCOL  gEhciComponentName =
 //
 // EFI Component Name 2 Protocol
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL gEhciComponentName2 = {
-  (EFI_COMPONENT_NAME2_GET_DRIVER_NAME) EhciComponentNameGetDriverName,
-  (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME) EhciComponentNameGetControllerName,
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL  gEhciComponentName2 = {
+  (EFI_COMPONENT_NAME2_GET_DRIVER_NAME)EhciComponentNameGetDriverName,
+  (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME)EhciComponentNameGetControllerName,
   "en"
 };
 
-
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mEhciDriverNameTable[] = {
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE  mEhciDriverNameTable[] = {
   { "eng;en", L"Usb Ehci Driver" },
-  { NULL , NULL }
+  { NULL,     NULL               }
 };
 
-
 /**
   Retrieves a Unicode string that is the user readable name of the driver.
 
@@ -162,16 +159,16 @@ EhciComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 EhciComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  EFI_HANDLE                   ControllerHandle,
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **ControllerName
   )
 {
-  EFI_STATUS           Status;
-  USB2_HC_DEV          *EhciDev;
-  EFI_USB2_HC_PROTOCOL *Usb2Hc;
+  EFI_STATUS            Status;
+  USB2_HC_DEV           *EhciDev;
+  EFI_USB2_HC_PROTOCOL  *Usb2Hc;
 
   //
   // This is a device driver, so ChildHandle must be NULL.
@@ -179,6 +176,7 @@ EhciComponentNameGetControllerName (
   if (ChildHandle != NULL) {
     return EFI_UNSUPPORTED;
   }
+
   //
   // Make sure this driver is currently managing ControllerHandle
   //
@@ -190,13 +188,14 @@ EhciComponentNameGetControllerName (
   if (EFI_ERROR (Status)) {
     return Status;
   }
+
   //
   // Get the device context
   //
   Status = gBS->OpenProtocol (
                   ControllerHandle,
                   &gEfiUsb2HcProtocolGuid,
-                  (VOID **) &Usb2Hc,
+                  (VOID **)&Usb2Hc,
                   gEhciDriverBinding.DriverBindingHandle,
                   ControllerHandle,
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -214,5 +213,4 @@ EhciComponentNameGetControllerName (
            ControllerName,
            (BOOLEAN)(This == &gEhciComponentName)
            );
-
 }

+ 5 - 8
MdeModulePkg/Bus/Pci/EhciDxe/ComponentName.h

@@ -10,7 +10,6 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #ifndef _COMPONENT_NAME_H_
 #define _COMPONENT_NAME_H_
 
-
 /**
   Retrieves a Unicode string that is the user readable name of the driver.
 
@@ -58,7 +57,6 @@ EhciComponentNameGetDriverName (
   OUT CHAR16                       **DriverName
   );
 
-
 /**
   Retrieves a Unicode string that is the user readable name of the controller
   that is being managed by a driver.
@@ -130,12 +128,11 @@ EhciComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 EhciComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  EFI_HANDLE                   ControllerHandle,
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **ControllerName
   );
 
 #endif
-

File diff suppressed because it is too large
+ 322 - 324
MdeModulePkg/Bus/Pci/EhciDxe/Ehci.c


+ 55 - 59
MdeModulePkg/Bus/Pci/EhciDxe/Ehci.h

@@ -11,7 +11,6 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #ifndef _EFI_EHCI_H_
 #define _EFI_EHCI_H_
 
-
 #include <Uefi.h>
 
 #include <Protocol/Usb2HostController.h>
@@ -31,7 +30,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 
 #include <IndustryStandard/Pci.h>
 
-typedef struct _USB2_HC_DEV  USB2_HC_DEV;
+typedef struct _USB2_HC_DEV USB2_HC_DEV;
 
 #include "UsbHcMem.h"
 #include "EhciReg.h"
@@ -44,64 +43,63 @@ typedef struct _USB2_HC_DEV  USB2_HC_DEV;
 // EHC timeout experience values
 //
 
-#define EHC_1_MICROSECOND            1
-#define EHC_1_MILLISECOND            (1000 * EHC_1_MICROSECOND)
-#define EHC_1_SECOND                 (1000 * EHC_1_MILLISECOND)
+#define EHC_1_MICROSECOND  1
+#define EHC_1_MILLISECOND  (1000 * EHC_1_MICROSECOND)
+#define EHC_1_SECOND       (1000 * EHC_1_MILLISECOND)
 
 //
 // EHCI register operation timeout, set by experience
 //
-#define EHC_RESET_TIMEOUT            (1 * EHC_1_SECOND)
-#define EHC_GENERIC_TIMEOUT          (10 * EHC_1_MILLISECOND)
+#define EHC_RESET_TIMEOUT    (1 * EHC_1_SECOND)
+#define EHC_GENERIC_TIMEOUT  (10 * EHC_1_MILLISECOND)
 
 //
 // Wait for roothub port power stable, refers to Spec[EHCI1.0-2.3.9]
 //
-#define EHC_ROOT_PORT_RECOVERY_STALL (20 * EHC_1_MILLISECOND)
+#define EHC_ROOT_PORT_RECOVERY_STALL  (20 * EHC_1_MILLISECOND)
 
 //
 // Sync and Async transfer polling interval, set by experience,
 // and the unit of Async is 100us, means 1ms as interval.
 //
-#define EHC_SYNC_POLL_INTERVAL       (1 * EHC_1_MILLISECOND)
-#define EHC_ASYNC_POLL_INTERVAL      EFI_TIMER_PERIOD_MILLISECONDS(1)
+#define EHC_SYNC_POLL_INTERVAL   (1 * EHC_1_MILLISECOND)
+#define EHC_ASYNC_POLL_INTERVAL  EFI_TIMER_PERIOD_MILLISECONDS(1)
 
 //
 // EHCI debug port control status register bit definition
 //
-#define USB_DEBUG_PORT_IN_USE        BIT10
-#define USB_DEBUG_PORT_ENABLE        BIT28
-#define USB_DEBUG_PORT_OWNER         BIT30
-#define USB_DEBUG_PORT_IN_USE_MASK   (USB_DEBUG_PORT_IN_USE | \
+#define USB_DEBUG_PORT_IN_USE       BIT10
+#define USB_DEBUG_PORT_ENABLE       BIT28
+#define USB_DEBUG_PORT_OWNER        BIT30
+#define USB_DEBUG_PORT_IN_USE_MASK  (USB_DEBUG_PORT_IN_USE |  \
                                       USB_DEBUG_PORT_OWNER)
 
 //
 // EHC raises TPL to TPL_NOTIFY to serialize all its operations
 // to protect shared data structures.
 //
-#define  EHC_TPL                     TPL_NOTIFY
-
-#define EFI_LIST_CONTAINER(Entry, Type, Field) BASE_CR(Entry, Type, Field)
+#define  EHC_TPL  TPL_NOTIFY
 
+#define EFI_LIST_CONTAINER(Entry, Type, Field)  BASE_CR(Entry, Type, Field)
 
-#define EHC_LOW_32BIT(Addr64)     ((UINT32)(((UINTN)(Addr64)) & 0XFFFFFFFF))
-#define EHC_HIGH_32BIT(Addr64)    ((UINT32)(RShiftU64((UINTN)(Addr64), 32) & 0XFFFFFFFF))
-#define EHC_BIT_IS_SET(Data, Bit) ((BOOLEAN)(((Data) & (Bit)) == (Bit)))
+#define EHC_LOW_32BIT(Addr64)      ((UINT32)(((UINTN)(Addr64)) & 0XFFFFFFFF))
+#define EHC_HIGH_32BIT(Addr64)     ((UINT32)(RShiftU64((UINTN)(Addr64), 32) & 0XFFFFFFFF))
+#define EHC_BIT_IS_SET(Data, Bit)  ((BOOLEAN)(((Data) & (Bit)) == (Bit)))
 
 #define EHC_REG_BIT_IS_SET(Ehc, Offset, Bit) \
           (EHC_BIT_IS_SET(EhcReadOpReg ((Ehc), (Offset)), (Bit)))
 
 #define USB2_HC_DEV_SIGNATURE  SIGNATURE_32 ('e', 'h', 'c', 'i')
-#define EHC_FROM_THIS(a)       CR(a, USB2_HC_DEV, Usb2Hc, USB2_HC_DEV_SIGNATURE)
+#define EHC_FROM_THIS(a)  CR(a, USB2_HC_DEV, Usb2Hc, USB2_HC_DEV_SIGNATURE)
 
 struct _USB2_HC_DEV {
-  UINTN                     Signature;
-  EFI_USB2_HC_PROTOCOL      Usb2Hc;
+  UINTN                       Signature;
+  EFI_USB2_HC_PROTOCOL        Usb2Hc;
 
-  EFI_PCI_IO_PROTOCOL       *PciIo;
-  EFI_DEVICE_PATH_PROTOCOL  *DevicePath;
-  UINT64                    OriginalPciAttributes;
-  USBHC_MEM_POOL            *MemPool;
+  EFI_PCI_IO_PROTOCOL         *PciIo;
+  EFI_DEVICE_PATH_PROTOCOL    *DevicePath;
+  UINT64                      OriginalPciAttributes;
+  USBHC_MEM_POOL              *MemPool;
 
   //
   // Schedule data shared between asynchronous and periodic
@@ -112,58 +110,57 @@ struct _USB2_HC_DEV {
   // For control transfer, even the short read happens, try the
   // status stage.
   //
-  EHC_QTD                  *ShortReadStop;
-  EFI_EVENT                 PollTimer;
+  EHC_QTD                     *ShortReadStop;
+  EFI_EVENT                   PollTimer;
 
   //
   // ExitBootServicesEvent is used to stop the EHC DMA operation
   // after exit boot service.
   //
-  EFI_EVENT                 ExitBootServiceEvent;
+  EFI_EVENT                   ExitBootServiceEvent;
 
   //
   // Asynchronous(bulk and control) transfer schedule data:
   // ReclaimHead is used as the head of the asynchronous transfer
   // list. It acts as the reclamation header.
   //
-  EHC_QH                   *ReclaimHead;
+  EHC_QH                      *ReclaimHead;
 
   //
   // Periodic (interrupt) transfer schedule data:
   //
-  VOID                      *PeriodFrame;     // the buffer pointed by this pointer is used to store pci bus address of the QH descriptor.
-  VOID                      *PeriodFrameHost; // the buffer pointed by this pointer is used to store host memory address of the QH descriptor.
-  VOID                      *PeriodFrameMap;
+  VOID                        *PeriodFrame;     // the buffer pointed by this pointer is used to store pci bus address of the QH descriptor.
+  VOID                        *PeriodFrameHost; // the buffer pointed by this pointer is used to store host memory address of the QH descriptor.
+  VOID                        *PeriodFrameMap;
 
-  EHC_QH                    *PeriodOne;
-  LIST_ENTRY                AsyncIntTransfers;
+  EHC_QH                      *PeriodOne;
+  LIST_ENTRY                  AsyncIntTransfers;
 
   //
   // EHCI configuration data
   //
-  UINT32                    HcStructParams; // Cache of HC structure parameter, EHC_HCSPARAMS_OFFSET
-  UINT32                    HcCapParams;    // Cache of HC capability parameter, HCCPARAMS
-  UINT32                    CapLen;         // Capability length
+  UINT32                      HcStructParams; // Cache of HC structure parameter, EHC_HCSPARAMS_OFFSET
+  UINT32                      HcCapParams;    // Cache of HC capability parameter, HCCPARAMS
+  UINT32                      CapLen;         // Capability length
 
   //
   // Misc
   //
-  EFI_UNICODE_STRING_TABLE  *ControllerNameTable;
+  EFI_UNICODE_STRING_TABLE    *ControllerNameTable;
 
   //
   // EHCI debug port info
   //
-  UINT16                    DebugPortOffset; // The offset of debug port mmio register
-  UINT8                     DebugPortBarNum; // The bar number of debug port mmio register
-  UINT8                     DebugPortNum;    // The port number of usb debug port
+  UINT16                      DebugPortOffset; // The offset of debug port mmio register
+  UINT8                       DebugPortBarNum; // The bar number of debug port mmio register
+  UINT8                       DebugPortNum;    // The port number of usb debug port
 
-  BOOLEAN                   Support64BitDma; // Whether 64 bit DMA may be used with this device
+  BOOLEAN                     Support64BitDma; // Whether 64 bit DMA may be used with this device
 };
 
-
-extern EFI_DRIVER_BINDING_PROTOCOL      gEhciDriverBinding;
-extern EFI_COMPONENT_NAME_PROTOCOL      gEhciComponentName;
-extern EFI_COMPONENT_NAME2_PROTOCOL     gEhciComponentName2;
+extern EFI_DRIVER_BINDING_PROTOCOL   gEhciDriverBinding;
+extern EFI_COMPONENT_NAME_PROTOCOL   gEhciComponentName;
+extern EFI_COMPONENT_NAME2_PROTOCOL  gEhciComponentName2;
 
 /**
   Test to see if this driver supports ControllerHandle. Any
@@ -181,9 +178,9 @@ extern EFI_COMPONENT_NAME2_PROTOCOL     gEhciComponentName2;
 EFI_STATUS
 EFIAPI
 EhcDriverBindingSupported (
-  IN EFI_DRIVER_BINDING_PROTOCOL *This,
-  IN EFI_HANDLE                  Controller,
-  IN EFI_DEVICE_PATH_PROTOCOL    *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   );
 
 /**
@@ -202,9 +199,9 @@ EhcDriverBindingSupported (
 EFI_STATUS
 EFIAPI
 EhcDriverBindingStart (
-  IN EFI_DRIVER_BINDING_PROTOCOL *This,
-  IN EFI_HANDLE                  Controller,
-  IN EFI_DEVICE_PATH_PROTOCOL    *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   );
 
 /**
@@ -223,11 +220,10 @@ EhcDriverBindingStart (
 EFI_STATUS
 EFIAPI
 EhcDriverBindingStop (
-  IN EFI_DRIVER_BINDING_PROTOCOL *This,
-  IN EFI_HANDLE                  Controller,
-  IN UINTN                       NumberOfChildren,
-  IN EFI_HANDLE                  *ChildHandleBuffer
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   Controller,
+  IN UINTN                        NumberOfChildren,
+  IN EFI_HANDLE                   *ChildHandleBuffer
   );
 
 #endif
-

+ 23 - 27
MdeModulePkg/Bus/Pci/EhciDxe/EhciDebug.c

@@ -8,7 +8,6 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
-
 #include "Ehci.h"
 
 /**
@@ -19,7 +18,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 VOID
 EhcDumpStatus (
-  IN UINT32               State
+  IN UINT32  State
   )
 {
   if (EHC_BIT_IS_SET (State, QTD_STAT_DO_PING)) {
@@ -57,7 +56,6 @@ EhcDumpStatus (
   DEBUG ((DEBUG_VERBOSE, "\n"));
 }
 
-
 /**
   Dump the fields of a QTD.
 
@@ -67,12 +65,12 @@ EhcDumpStatus (
 **/
 VOID
 EhcDumpQtd (
-  IN EHC_QTD              *Qtd,
-  IN CHAR8                *Msg
+  IN EHC_QTD  *Qtd,
+  IN CHAR8    *Msg
   )
 {
-  QTD_HW                  *QtdHw;
-  UINTN                   Index;
+  QTD_HW  *QtdHw;
+  UINTN   Index;
 
   if (Msg != NULL) {
     DEBUG ((DEBUG_VERBOSE, Msg));
@@ -89,13 +87,10 @@ EhcDumpQtd (
 
   if (QtdHw->Pid == QTD_PID_SETUP) {
     DEBUG ((DEBUG_VERBOSE, "PID          : Setup\n"));
-
   } else if (QtdHw->Pid == QTD_PID_INPUT) {
     DEBUG ((DEBUG_VERBOSE, "PID          : IN\n"));
-
   } else if (QtdHw->Pid == QTD_PID_OUTPUT) {
     DEBUG ((DEBUG_VERBOSE, "PID          : OUT\n"));
-
   }
 
   DEBUG ((DEBUG_VERBOSE, "Error Count  : %d\n", QtdHw->ErrCnt));
@@ -109,7 +104,6 @@ EhcDumpQtd (
   }
 }
 
-
 /**
   Dump the queue head.
 
@@ -120,22 +114,27 @@ EhcDumpQtd (
 **/
 VOID
 EhcDumpQh (
-  IN EHC_QH               *Qh,
-  IN CHAR8                *Msg,
-  IN BOOLEAN              DumpBuf
+  IN EHC_QH   *Qh,
+  IN CHAR8    *Msg,
+  IN BOOLEAN  DumpBuf
   )
 {
-  EHC_QTD                 *Qtd;
-  QH_HW                   *QhHw;
-  LIST_ENTRY              *Entry;
-  UINTN                   Index;
+  EHC_QTD     *Qtd;
+  QH_HW       *QhHw;
+  LIST_ENTRY  *Entry;
+  UINTN       Index;
 
   if (Msg != NULL) {
     DEBUG ((DEBUG_VERBOSE, Msg));
   }
 
-  DEBUG ((DEBUG_VERBOSE, "Queue head @ 0x%p, interval %ld, next qh %p\n",
-                                Qh, (UINT64)Qh->Interval, Qh->NextQh));
+  DEBUG ((
+    DEBUG_VERBOSE,
+    "Queue head @ 0x%p, interval %ld, next qh %p\n",
+    Qh,
+    (UINT64)Qh->Interval,
+    Qh->NextQh
+    ));
 
   QhHw = &Qh->QhHw;
 
@@ -166,10 +165,8 @@ EhcDumpQh (
 
   if (QhHw->Pid == QTD_PID_SETUP) {
     DEBUG ((DEBUG_VERBOSE, "PID           : Setup\n"));
-
   } else if (QhHw->Pid == QTD_PID_INPUT) {
     DEBUG ((DEBUG_VERBOSE, "PID           : IN\n"));
-
   } else if (QhHw->Pid == QTD_PID_OUTPUT) {
     DEBUG ((DEBUG_VERBOSE, "PID           : OUT\n"));
   }
@@ -196,7 +193,6 @@ EhcDumpQh (
   }
 }
 
-
 /**
   Dump the buffer in the form of hex.
 
@@ -206,15 +202,15 @@ EhcDumpQh (
 **/
 VOID
 EhcDumpBuf (
-  IN UINT8                *Buf,
-  IN UINTN                Len
+  IN UINT8  *Buf,
+  IN UINTN  Len
   )
 {
-  UINTN                   Index;
+  UINTN  Index;
 
   for (Index = 0; Index < Len; Index++) {
     if (Index % 16 == 0) {
-      DEBUG ((DEBUG_VERBOSE,"\n"));
+      DEBUG ((DEBUG_VERBOSE, "\n"));
     }
 
     DEBUG ((DEBUG_VERBOSE, "%02x ", Buf[Index]));

+ 7 - 11
MdeModulePkg/Bus/Pci/EhciDxe/EhciDebug.h

@@ -10,7 +10,6 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #ifndef _EFI_EHCI_DEBUG_H_
 #define _EFI_EHCI_DEBUG_H_
 
-
 /**
   Dump the fields of a QTD.
 
@@ -20,11 +19,10 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 VOID
 EhcDumpQtd (
-  IN EHC_QTD              *Qtd,
-  IN CHAR8                *Msg
+  IN EHC_QTD  *Qtd,
+  IN CHAR8    *Msg
   );
 
-
 /**
   Dump the queue head.
 
@@ -35,12 +33,11 @@ EhcDumpQtd (
 **/
 VOID
 EhcDumpQh (
-  IN EHC_QH               *Qh,
-  IN CHAR8                *Msg,
-  IN BOOLEAN              DumpBuf
+  IN EHC_QH   *Qh,
+  IN CHAR8    *Msg,
+  IN BOOLEAN  DumpBuf
   );
 
-
 /**
   Dump the buffer in the form of hex.
 
@@ -50,9 +47,8 @@ EhcDumpQh (
 **/
 VOID
 EhcDumpBuf (
-  IN UINT8                *Buf,
-  IN UINTN                Len
+  IN UINT8  *Buf,
+  IN UINTN  Len
   );
 
-
 #endif

+ 70 - 99
MdeModulePkg/Bus/Pci/EhciDxe/EhciReg.c

@@ -7,10 +7,8 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
-
 #include "Ehci.h"
 
-
 /**
   Read EHCI capability register.
 
@@ -23,18 +21,18 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 UINT32
 EhcReadCapRegister (
-  IN  USB2_HC_DEV         *Ehc,
-  IN  UINT32              Offset
+  IN  USB2_HC_DEV  *Ehc,
+  IN  UINT32       Offset
   )
 {
-  UINT32                  Data;
-  EFI_STATUS              Status;
+  UINT32      Data;
+  EFI_STATUS  Status;
 
   Status = Ehc->PciIo->Mem.Read (
                              Ehc->PciIo,
                              EfiPciIoWidthUint32,
                              EHC_BAR_INDEX,
-                             (UINT64) Offset,
+                             (UINT64)Offset,
                              1,
                              &Data
                              );
@@ -59,12 +57,12 @@ EhcReadCapRegister (
 **/
 UINT32
 EhcReadDbgRegister (
-  IN  CONST USB2_HC_DEV   *Ehc,
-  IN  UINT32              Offset
+  IN  CONST USB2_HC_DEV  *Ehc,
+  IN  UINT32             Offset
   )
 {
-  UINT32                  Data;
-  EFI_STATUS              Status;
+  UINT32      Data;
+  EFI_STATUS  Status;
 
   Status = Ehc->PciIo->Mem.Read (
                              Ehc->PciIo,
@@ -83,7 +81,6 @@ EhcReadDbgRegister (
   return Data;
 }
 
-
 /**
   Check whether the host controller has an in-use debug port.
 
@@ -105,11 +102,11 @@ EhcReadDbgRegister (
 **/
 BOOLEAN
 EhcIsDebugPortInUse (
-  IN CONST USB2_HC_DEV *Ehc,
-  IN CONST UINT8       *PortNumber OPTIONAL
+  IN CONST USB2_HC_DEV  *Ehc,
+  IN CONST UINT8        *PortNumber OPTIONAL
   )
 {
-  UINT32 State;
+  UINT32  State;
 
   if (Ehc->DebugPortNum == 0) {
     //
@@ -121,7 +118,7 @@ EhcIsDebugPortInUse (
   //
   // The Debug Port Number field in HCSPARAMS is one-based.
   //
-  if (PortNumber != NULL && *PortNumber != Ehc->DebugPortNum - 1) {
+  if ((PortNumber != NULL) && (*PortNumber != Ehc->DebugPortNum - 1)) {
     //
     // The caller specified a port, but it's not the debug port of the host
     // controller.
@@ -132,11 +129,10 @@ EhcIsDebugPortInUse (
   //
   // Deduce usage from the Control Register.
   //
-  State = EhcReadDbgRegister(Ehc, 0);
+  State = EhcReadDbgRegister (Ehc, 0);
   return (State & USB_DEBUG_PORT_IN_USE_MASK) == USB_DEBUG_PORT_IN_USE_MASK;
 }
 
-
 /**
   Read EHCI Operation register.
 
@@ -149,12 +145,12 @@ EhcIsDebugPortInUse (
 **/
 UINT32
 EhcReadOpReg (
-  IN  USB2_HC_DEV         *Ehc,
-  IN  UINT32              Offset
+  IN  USB2_HC_DEV  *Ehc,
+  IN  UINT32       Offset
   )
 {
-  UINT32                  Data;
-  EFI_STATUS              Status;
+  UINT32      Data;
+  EFI_STATUS  Status;
 
   ASSERT (Ehc->CapLen != 0);
 
@@ -175,7 +171,6 @@ EhcReadOpReg (
   return Data;
 }
 
-
 /**
   Write  the data to the EHCI operation register.
 
@@ -186,12 +181,12 @@ EhcReadOpReg (
 **/
 VOID
 EhcWriteOpReg (
-  IN USB2_HC_DEV          *Ehc,
-  IN UINT32               Offset,
-  IN UINT32               Data
+  IN USB2_HC_DEV  *Ehc,
+  IN UINT32       Offset,
+  IN UINT32       Data
   )
 {
-  EFI_STATUS              Status;
+  EFI_STATUS  Status;
 
   ASSERT (Ehc->CapLen != 0);
 
@@ -209,7 +204,6 @@ EhcWriteOpReg (
   }
 }
 
-
 /**
   Set one bit of the operational register while keeping other bits.
 
@@ -220,19 +214,18 @@ EhcWriteOpReg (
 **/
 VOID
 EhcSetOpRegBit (
-  IN USB2_HC_DEV          *Ehc,
-  IN UINT32               Offset,
-  IN UINT32               Bit
+  IN USB2_HC_DEV  *Ehc,
+  IN UINT32       Offset,
+  IN UINT32       Bit
   )
 {
-  UINT32                  Data;
+  UINT32  Data;
 
   Data  = EhcReadOpReg (Ehc, Offset);
   Data |= Bit;
   EhcWriteOpReg (Ehc, Offset, Data);
 }
 
-
 /**
   Clear one bit of the operational register while keeping other bits.
 
@@ -243,19 +236,18 @@ EhcSetOpRegBit (
 **/
 VOID
 EhcClearOpRegBit (
-  IN USB2_HC_DEV          *Ehc,
-  IN UINT32               Offset,
-  IN UINT32               Bit
+  IN USB2_HC_DEV  *Ehc,
+  IN UINT32       Offset,
+  IN UINT32       Bit
   )
 {
-  UINT32                  Data;
+  UINT32  Data;
 
   Data  = EhcReadOpReg (Ehc, Offset);
   Data &= ~Bit;
   EhcWriteOpReg (Ehc, Offset, Data);
 }
 
-
 /**
   Wait the operation register's bit as specified by Bit
   to become set (or clear).
@@ -272,14 +264,14 @@ EhcClearOpRegBit (
 **/
 EFI_STATUS
 EhcWaitOpRegBit (
-  IN USB2_HC_DEV          *Ehc,
-  IN UINT32               Offset,
-  IN UINT32               Bit,
-  IN BOOLEAN              WaitToSet,
-  IN UINT32               Timeout
+  IN USB2_HC_DEV  *Ehc,
+  IN UINT32       Offset,
+  IN UINT32       Bit,
+  IN BOOLEAN      WaitToSet,
+  IN UINT32       Timeout
   )
 {
-  UINT32                  Index;
+  UINT32  Index;
 
   for (Index = 0; Index < Timeout / EHC_SYNC_POLL_INTERVAL + 1; Index++) {
     if (EHC_REG_BIT_IS_SET (Ehc, Offset, Bit) == WaitToSet) {
@@ -292,7 +284,6 @@ EhcWaitOpRegBit (
   return EFI_TIMEOUT;
 }
 
-
 /**
   Add support for UEFI Over Legacy (UoL) feature, stop
   the legacy USB SMI support.
@@ -302,13 +293,13 @@ EhcWaitOpRegBit (
 **/
 VOID
 EhcClearLegacySupport (
-  IN USB2_HC_DEV          *Ehc
+  IN USB2_HC_DEV  *Ehc
   )
 {
-  UINT32                    ExtendCap;
-  EFI_PCI_IO_PROTOCOL       *PciIo;
-  UINT32                    Value;
-  UINT32                    TimeOut;
+  UINT32               ExtendCap;
+  EFI_PCI_IO_PROTOCOL  *PciIo;
+  UINT32               Value;
+  UINT32               TimeOut;
 
   DEBUG ((DEBUG_INFO, "EhcClearLegacySupport: called to clear legacy support\n"));
 
@@ -337,8 +328,6 @@ EhcClearLegacySupport (
   PciIo->Pci.Read (PciIo, EfiPciIoWidthUint32, ExtendCap + 0x4, 1, &Value);
 }
 
-
-
 /**
   Set door bell and wait it to be ACKed by host controller.
   This function is used to synchronize with the hardware.
@@ -352,12 +341,12 @@ EhcClearLegacySupport (
 **/
 EFI_STATUS
 EhcSetAndWaitDoorBell (
-  IN  USB2_HC_DEV         *Ehc,
-  IN  UINT32              Timeout
+  IN  USB2_HC_DEV  *Ehc,
+  IN  UINT32       Timeout
   )
 {
-  EFI_STATUS              Status;
-  UINT32                  Data;
+  EFI_STATUS  Status;
+  UINT32      Data;
 
   EhcSetOpRegBit (Ehc, EHC_USBCMD_OFFSET, USBCMD_IAAD);
 
@@ -376,7 +365,6 @@ EhcSetAndWaitDoorBell (
   return Status;
 }
 
-
 /**
   Clear all the interrutp status bits, these bits
   are Write-Clean.
@@ -386,13 +374,12 @@ EhcSetAndWaitDoorBell (
 **/
 VOID
 EhcAckAllInterrupt (
-  IN  USB2_HC_DEV         *Ehc
+  IN  USB2_HC_DEV  *Ehc
   )
 {
   EhcWriteOpReg (Ehc, EHC_USBSTS_OFFSET, USBSTS_INTACK_MASK);
 }
 
-
 /**
   Enable the periodic schedule then wait EHC to
   actually enable it.
@@ -406,11 +393,11 @@ EhcAckAllInterrupt (
 **/
 EFI_STATUS
 EhcEnablePeriodSchd (
-  IN USB2_HC_DEV          *Ehc,
-  IN UINT32               Timeout
+  IN USB2_HC_DEV  *Ehc,
+  IN UINT32       Timeout
   )
 {
-  EFI_STATUS              Status;
+  EFI_STATUS  Status;
 
   EhcSetOpRegBit (Ehc, EHC_USBCMD_OFFSET, USBCMD_ENABLE_PERIOD);
 
@@ -418,11 +405,6 @@ EhcEnablePeriodSchd (
   return Status;
 }
 
-
-
-
-
-
 /**
   Enable asynchrounous schedule.
 
@@ -435,11 +417,11 @@ EhcEnablePeriodSchd (
 **/
 EFI_STATUS
 EhcEnableAsyncSchd (
-  IN USB2_HC_DEV          *Ehc,
-  IN UINT32               Timeout
+  IN USB2_HC_DEV  *Ehc,
+  IN UINT32       Timeout
   )
 {
-  EFI_STATUS              Status;
+  EFI_STATUS  Status;
 
   EhcSetOpRegBit (Ehc, EHC_USBCMD_OFFSET, USBCMD_ENABLE_ASYNC);
 
@@ -447,12 +429,6 @@ EhcEnableAsyncSchd (
   return Status;
 }
 
-
-
-
-
-
-
 /**
   Whether Ehc is halted.
 
@@ -464,13 +440,12 @@ EhcEnableAsyncSchd (
 **/
 BOOLEAN
 EhcIsHalt (
-  IN USB2_HC_DEV          *Ehc
+  IN USB2_HC_DEV  *Ehc
   )
 {
   return EHC_REG_BIT_IS_SET (Ehc, EHC_USBSTS_OFFSET, USBSTS_HALT);
 }
 
-
 /**
   Whether system error occurred.
 
@@ -482,13 +457,12 @@ EhcIsHalt (
 **/
 BOOLEAN
 EhcIsSysError (
-  IN USB2_HC_DEV          *Ehc
+  IN USB2_HC_DEV  *Ehc
   )
 {
   return EHC_REG_BIT_IS_SET (Ehc, EHC_USBSTS_OFFSET, USBSTS_SYS_ERROR);
 }
 
-
 /**
   Reset the host controller.
 
@@ -501,11 +475,11 @@ EhcIsSysError (
 **/
 EFI_STATUS
 EhcResetHC (
-  IN USB2_HC_DEV          *Ehc,
-  IN UINT32               Timeout
+  IN USB2_HC_DEV  *Ehc,
+  IN UINT32       Timeout
   )
 {
-  EFI_STATUS              Status;
+  EFI_STATUS  Status;
 
   //
   // Host can only be reset when it is halt. If not so, halt it
@@ -523,7 +497,6 @@ EhcResetHC (
   return Status;
 }
 
-
 /**
   Halt the host controller.
 
@@ -536,18 +509,17 @@ EhcResetHC (
 **/
 EFI_STATUS
 EhcHaltHC (
-  IN USB2_HC_DEV         *Ehc,
-  IN UINT32              Timeout
+  IN USB2_HC_DEV  *Ehc,
+  IN UINT32       Timeout
   )
 {
-  EFI_STATUS              Status;
+  EFI_STATUS  Status;
 
   EhcClearOpRegBit (Ehc, EHC_USBCMD_OFFSET, USBCMD_RUN);
   Status = EhcWaitOpRegBit (Ehc, EHC_USBSTS_OFFSET, USBSTS_HALT, TRUE, Timeout);
   return Status;
 }
 
-
 /**
   Set the EHCI to run.
 
@@ -560,18 +532,17 @@ EhcHaltHC (
 **/
 EFI_STATUS
 EhcRunHC (
-  IN USB2_HC_DEV          *Ehc,
-  IN UINT32               Timeout
+  IN USB2_HC_DEV  *Ehc,
+  IN UINT32       Timeout
   )
 {
-  EFI_STATUS              Status;
+  EFI_STATUS  Status;
 
   EhcSetOpRegBit (Ehc, EHC_USBCMD_OFFSET, USBCMD_RUN);
   Status = EhcWaitOpRegBit (Ehc, EHC_USBSTS_OFFSET, USBSTS_HALT, FALSE, Timeout);
   return Status;
 }
 
-
 /**
   Initialize the HC hardware.
   EHCI spec lists the five things to do to initialize the hardware:
@@ -589,12 +560,12 @@ EhcRunHC (
 **/
 EFI_STATUS
 EhcInitHC (
-  IN USB2_HC_DEV          *Ehc
+  IN USB2_HC_DEV  *Ehc
   )
 {
-  EFI_STATUS              Status;
-  UINT32                  Index;
-  UINT32                  RegVal;
+  EFI_STATUS  Status;
+  UINT32      Index;
+  UINT32      RegVal;
 
   // This ASSERT crashes the BeagleBoard. There is some issue in the USB stack.
   // This ASSERT needs to be removed so the BeagleBoard will boot. When we fix
@@ -629,15 +600,15 @@ EhcInitHC (
   // 3. Power up all ports if EHCI has Port Power Control (PPC) support
   //
   if (Ehc->HcStructParams & HCSP_PPC) {
-    for (Index = 0; Index < (UINT8) (Ehc->HcStructParams & HCSP_NPORTS); Index++) {
+    for (Index = 0; Index < (UINT8)(Ehc->HcStructParams & HCSP_NPORTS); Index++) {
       //
       // Do not clear port status bits on initialization.  Otherwise devices will
       // not enumerate properly at startup.
       //
-      RegVal  = EhcReadOpReg(Ehc, (UINT32)(EHC_PORT_STAT_OFFSET + (4 * Index)));
+      RegVal  = EhcReadOpReg (Ehc, (UINT32)(EHC_PORT_STAT_OFFSET + (4 * Index)));
       RegVal &= ~PORTSC_CHANGE_MASK;
       RegVal |= PORTSC_POWER;
-      EhcWriteOpReg (Ehc, (UINT32) (EHC_PORT_STAT_OFFSET + (4 * Index)), RegVal);
+      EhcWriteOpReg (Ehc, (UINT32)(EHC_PORT_STAT_OFFSET + (4 * Index)), RegVal);
     }
   }
 

+ 72 - 85
MdeModulePkg/Bus/Pci/EhciDxe/EhciReg.h

@@ -14,20 +14,19 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 // EHCI register offset
 //
 
-
 //
 // Capability register offset
 //
-#define EHC_CAPLENGTH_OFFSET    0    // Capability register length offset
-#define EHC_HCSPARAMS_OFFSET    0x04 // Structural Parameters 04-07h
-#define EHC_HCCPARAMS_OFFSET    0x08 // Capability parameters offset
+#define EHC_CAPLENGTH_OFFSET  0      // Capability register length offset
+#define EHC_HCSPARAMS_OFFSET  0x04   // Structural Parameters 04-07h
+#define EHC_HCCPARAMS_OFFSET  0x08   // Capability parameters offset
 
 //
 // Capability register bit definition
 //
-#define HCSP_NPORTS             0x0F // Number of root hub port
-#define HCSP_PPC                0x10 // Port Power Control
-#define HCCP_64BIT              0x01 // 64-bit addressing capability
+#define HCSP_NPORTS  0x0F            // Number of root hub port
+#define HCSP_PPC     0x10            // Port Power Control
+#define HCCP_64BIT   0x01            // 64-bit addressing capability
 
 //
 // Operational register offset
@@ -42,66 +41,66 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #define EHC_CONFIG_FLAG_OFFSET  0x40 // Configure flag register offset
 #define EHC_PORT_STAT_OFFSET    0x44 // Port status/control offset
 
-#define EHC_FRAME_LEN           1024
+#define EHC_FRAME_LEN  1024
 
 //
 // Register bit definition
 //
-#define CONFIGFLAG_ROUTE_EHC    0x01 // Route port to EHC
-
-#define USBCMD_RUN              0x01   // Run/stop
-#define USBCMD_RESET            0x02   // Start the host controller reset
-#define USBCMD_ENABLE_PERIOD    0x10   // Enable periodic schedule
-#define USBCMD_ENABLE_ASYNC     0x20   // Enable asynchronous schedule
-#define USBCMD_IAAD             0x40   // Interrupt on async advance doorbell
-
-#define USBSTS_IAA              0x20   // Interrupt on async advance
-#define USBSTS_PERIOD_ENABLED   0x4000 // Periodic schedule status
-#define USBSTS_ASYNC_ENABLED    0x8000 // Asynchronous schedule status
-#define USBSTS_HALT             0x1000 // Host controller halted
-#define USBSTS_SYS_ERROR        0x10   // Host system error
-#define USBSTS_INTACK_MASK      0x003F // Mask for the interrupt ACK, the WC
+#define CONFIGFLAG_ROUTE_EHC  0x01   // Route port to EHC
+
+#define USBCMD_RUN            0x01     // Run/stop
+#define USBCMD_RESET          0x02     // Start the host controller reset
+#define USBCMD_ENABLE_PERIOD  0x10     // Enable periodic schedule
+#define USBCMD_ENABLE_ASYNC   0x20     // Enable asynchronous schedule
+#define USBCMD_IAAD           0x40     // Interrupt on async advance doorbell
+
+#define USBSTS_IAA             0x20    // Interrupt on async advance
+#define USBSTS_PERIOD_ENABLED  0x4000  // Periodic schedule status
+#define USBSTS_ASYNC_ENABLED   0x8000  // Asynchronous schedule status
+#define USBSTS_HALT            0x1000  // Host controller halted
+#define USBSTS_SYS_ERROR       0x10    // Host system error
+#define USBSTS_INTACK_MASK     0x003F  // Mask for the interrupt ACK, the WC
                                        // (write clean) bits in USBSTS register
 
-#define PORTSC_CONN             0x01   // Current Connect Status
-#define PORTSC_CONN_CHANGE      0x02   // Connect Status Change
-#define PORTSC_ENABLED          0x04   // Port Enable / Disable
-#define PORTSC_ENABLE_CHANGE    0x08   // Port Enable / Disable Change
-#define PORTSC_OVERCUR          0x10   // Over current Active
-#define PORTSC_OVERCUR_CHANGE   0x20   // Over current Change
-#define PORSTSC_RESUME          0x40   // Force Port Resume
-#define PORTSC_SUSPEND          0x80   // Port Suspend State
-#define PORTSC_RESET            0x100  // Port Reset
-#define PORTSC_LINESTATE_K      0x400  // Line Status K-state
-#define PORTSC_LINESTATE_J      0x800  // Line Status J-state
-#define PORTSC_POWER            0x1000 // Port Power
-#define PORTSC_OWNER            0x2000 // Port Owner
-#define PORTSC_CHANGE_MASK      0x2A   // Mask of the port change bits,
+#define PORTSC_CONN            0x01    // Current Connect Status
+#define PORTSC_CONN_CHANGE     0x02    // Connect Status Change
+#define PORTSC_ENABLED         0x04    // Port Enable / Disable
+#define PORTSC_ENABLE_CHANGE   0x08    // Port Enable / Disable Change
+#define PORTSC_OVERCUR         0x10    // Over current Active
+#define PORTSC_OVERCUR_CHANGE  0x20    // Over current Change
+#define PORSTSC_RESUME         0x40    // Force Port Resume
+#define PORTSC_SUSPEND         0x80    // Port Suspend State
+#define PORTSC_RESET           0x100   // Port Reset
+#define PORTSC_LINESTATE_K     0x400   // Line Status K-state
+#define PORTSC_LINESTATE_J     0x800   // Line Status J-state
+#define PORTSC_POWER           0x1000  // Port Power
+#define PORTSC_OWNER           0x2000  // Port Owner
+#define PORTSC_CHANGE_MASK     0x2A    // Mask of the port change bits,
                                        // they are WC (write clean)
 //
 // PCI Configuration Registers
 //
-#define EHC_BAR_INDEX           0      // how many bytes away from USB_BASE to 0x10
+#define EHC_BAR_INDEX  0               // how many bytes away from USB_BASE to 0x10
 
 //
 // Debug port capability id
 //
-#define EHC_DEBUG_PORT_CAP_ID   0x0A
+#define EHC_DEBUG_PORT_CAP_ID  0x0A
 
-#define EHC_LINK_TERMINATED(Link) (((Link) & 0x01) != 0)
+#define EHC_LINK_TERMINATED(Link)  (((Link) & 0x01) != 0)
 
 #define EHC_ADDR(High, QhHw32)   \
         ((VOID *) (UINTN) (LShiftU64 ((High), 32) | ((QhHw32) & 0xFFFFFFF0)))
 
-#define EHCI_IS_DATAIN(EndpointAddr) EHC_BIT_IS_SET((EndpointAddr), 0x80)
+#define EHCI_IS_DATAIN(EndpointAddr)  EHC_BIT_IS_SET((EndpointAddr), 0x80)
 
 //
 // Structure to map the hardware port states to the
 // UEFI's port states.
 //
 typedef struct {
-  UINT16                  HwState;
-  UINT16                  UefiState;
+  UINT16    HwState;
+  UINT16    UefiState;
 } USB_PORT_STATE_MAP;
 
 //
@@ -109,9 +108,9 @@ typedef struct {
 //
 #pragma pack(1)
 typedef struct {
-  UINT8                   ProgInterface;
-  UINT8                   SubClassCode;
-  UINT8                   BaseCode;
+  UINT8    ProgInterface;
+  UINT8    SubClassCode;
+  UINT8    BaseCode;
 } USB_CLASSC;
 #pragma pack()
 
@@ -126,8 +125,8 @@ typedef struct {
 **/
 UINT32
 EhcReadCapRegister (
-  IN  USB2_HC_DEV         *Ehc,
-  IN  UINT32              Offset
+  IN  USB2_HC_DEV  *Ehc,
+  IN  UINT32       Offset
   );
 
 /**
@@ -151,8 +150,8 @@ EhcReadCapRegister (
 **/
 BOOLEAN
 EhcIsDebugPortInUse (
-  IN CONST USB2_HC_DEV *Ehc,
-  IN CONST UINT8       *PortNumber OPTIONAL
+  IN CONST USB2_HC_DEV  *Ehc,
+  IN CONST UINT8        *PortNumber OPTIONAL
   );
 
 /**
@@ -166,11 +165,10 @@ EhcIsDebugPortInUse (
 **/
 UINT32
 EhcReadOpReg (
-  IN  USB2_HC_DEV         *Ehc,
-  IN  UINT32              Offset
+  IN  USB2_HC_DEV  *Ehc,
+  IN  UINT32       Offset
   );
 
-
 /**
   Write  the data to the EHCI operation register.
 
@@ -181,9 +179,9 @@ EhcReadOpReg (
 **/
 VOID
 EhcWriteOpReg (
-  IN USB2_HC_DEV          *Ehc,
-  IN UINT32               Offset,
-  IN UINT32               Data
+  IN USB2_HC_DEV  *Ehc,
+  IN UINT32       Offset,
+  IN UINT32       Data
   );
 
 /**
@@ -196,9 +194,9 @@ EhcWriteOpReg (
 **/
 VOID
 EhcSetOpRegBit (
-  IN USB2_HC_DEV          *Ehc,
-  IN UINT32               Offset,
-  IN UINT32               Bit
+  IN USB2_HC_DEV  *Ehc,
+  IN UINT32       Offset,
+  IN UINT32       Bit
   );
 
 /**
@@ -211,9 +209,9 @@ EhcSetOpRegBit (
 **/
 VOID
 EhcClearOpRegBit (
-  IN USB2_HC_DEV          *Ehc,
-  IN UINT32               Offset,
-  IN UINT32               Bit
+  IN USB2_HC_DEV  *Ehc,
+  IN UINT32       Offset,
+  IN UINT32       Bit
   );
 
 /**
@@ -225,11 +223,9 @@ EhcClearOpRegBit (
 **/
 VOID
 EhcClearLegacySupport (
-  IN USB2_HC_DEV          *Ehc
+  IN USB2_HC_DEV  *Ehc
   );
 
-
-
 /**
   Set door bell and wait it to be ACKed by host controller.
   This function is used to synchronize with the hardware.
@@ -243,11 +239,10 @@ EhcClearLegacySupport (
 **/
 EFI_STATUS
 EhcSetAndWaitDoorBell (
-  IN  USB2_HC_DEV         *Ehc,
-  IN  UINT32               Timeout
+  IN  USB2_HC_DEV  *Ehc,
+  IN  UINT32       Timeout
   );
 
-
 /**
   Clear all the interrutp status bits, these bits are Write-Clean.
 
@@ -256,11 +251,9 @@ EhcSetAndWaitDoorBell (
 **/
 VOID
 EhcAckAllInterrupt (
-  IN  USB2_HC_DEV         *Ehc
+  IN  USB2_HC_DEV  *Ehc
   );
 
-
-
 /**
   Whether Ehc is halted.
 
@@ -272,10 +265,9 @@ EhcAckAllInterrupt (
 **/
 BOOLEAN
 EhcIsHalt (
-  IN USB2_HC_DEV          *Ehc
+  IN USB2_HC_DEV  *Ehc
   );
 
-
 /**
   Whether system error occurred.
 
@@ -287,10 +279,9 @@ EhcIsHalt (
 **/
 BOOLEAN
 EhcIsSysError (
-  IN USB2_HC_DEV          *Ehc
+  IN USB2_HC_DEV  *Ehc
   );
 
-
 /**
   Reset the host controller.
 
@@ -303,11 +294,10 @@ EhcIsSysError (
 **/
 EFI_STATUS
 EhcResetHC (
-  IN USB2_HC_DEV          *Ehc,
-  IN UINT32               Timeout
+  IN USB2_HC_DEV  *Ehc,
+  IN UINT32       Timeout
   );
 
-
 /**
   Halt the host controller.
 
@@ -320,11 +310,10 @@ EhcResetHC (
 **/
 EFI_STATUS
 EhcHaltHC (
-  IN USB2_HC_DEV         *Ehc,
-  IN UINT32              Timeout
+  IN USB2_HC_DEV  *Ehc,
+  IN UINT32       Timeout
   );
 
-
 /**
   Set the EHCI to run.
 
@@ -337,12 +326,10 @@ EhcHaltHC (
 **/
 EFI_STATUS
 EhcRunHC (
-  IN USB2_HC_DEV          *Ehc,
-  IN UINT32               Timeout
+  IN USB2_HC_DEV  *Ehc,
+  IN UINT32       Timeout
   );
 
-
-
 /**
   Initialize the HC hardware.
   EHCI spec lists the five things to do to initialize the hardware:
@@ -360,7 +347,7 @@ EhcRunHC (
 **/
 EFI_STATUS
 EhcInitHC (
-  IN USB2_HC_DEV          *Ehc
+  IN USB2_HC_DEV  *Ehc
   );
 
 #endif

+ 183 - 198
MdeModulePkg/Bus/Pci/EhciDxe/EhciSched.c

@@ -10,7 +10,6 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 
 #include "Ehci.h"
 
-
 /**
   Create helper QTD/QH for the EHCI device.
 
@@ -22,14 +21,14 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 EFI_STATUS
 EhcCreateHelpQ (
-  IN USB2_HC_DEV          *Ehc
+  IN USB2_HC_DEV  *Ehc
   )
 {
-  USB_ENDPOINT            Ep;
-  EHC_QH                  *Qh;
-  QH_HW                   *QhHw;
-  EHC_QTD                 *Qtd;
-  EFI_PHYSICAL_ADDRESS    PciAddr;
+  USB_ENDPOINT          Ep;
+  EHC_QH                *Qh;
+  QH_HW                 *QhHw;
+  EHC_QTD               *Qtd;
+  EFI_PHYSICAL_ADDRESS  PciAddr;
 
   //
   // Create an inactive Qtd to terminate the short packet read.
@@ -40,25 +39,25 @@ EhcCreateHelpQ (
     return EFI_OUT_OF_RESOURCES;
   }
 
-  Qtd->QtdHw.Status   = QTD_STAT_HALTED;
-  Ehc->ShortReadStop  = Qtd;
+  Qtd->QtdHw.Status  = QTD_STAT_HALTED;
+  Ehc->ShortReadStop = Qtd;
 
   //
   // Create a QH to act as the EHC reclamation header.
   // Set the header to loopback to itself.
   //
-  Ep.DevAddr    = 0;
-  Ep.EpAddr     = 1;
-  Ep.Direction  = EfiUsbDataIn;
-  Ep.DevSpeed   = EFI_USB_SPEED_HIGH;
-  Ep.MaxPacket  = 64;
-  Ep.HubAddr    = 0;
-  Ep.HubPort    = 0;
-  Ep.Toggle     = 0;
-  Ep.Type       = EHC_BULK_TRANSFER;
-  Ep.PollRate   = 1;
-
-  Qh            = EhcCreateQh (Ehc, &Ep);
+  Ep.DevAddr   = 0;
+  Ep.EpAddr    = 1;
+  Ep.Direction = EfiUsbDataIn;
+  Ep.DevSpeed  = EFI_USB_SPEED_HIGH;
+  Ep.MaxPacket = 64;
+  Ep.HubAddr   = 0;
+  Ep.HubPort   = 0;
+  Ep.Toggle    = 0;
+  Ep.Type      = EHC_BULK_TRANSFER;
+  Ep.PollRate  = 1;
+
+  Qh = EhcCreateQh (Ehc, &Ep);
 
   if (Qh == NULL) {
     return EFI_OUT_OF_RESOURCES;
@@ -66,7 +65,7 @@ EhcCreateHelpQ (
 
   PciAddr           = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Qh, sizeof (EHC_QH));
   QhHw              = &Qh->QhHw;
-  QhHw->HorizonLink = QH_LINK (PciAddr + OFFSET_OF(EHC_QH, QhHw), EHC_TYPE_QH, FALSE);
+  QhHw->HorizonLink = QH_LINK (PciAddr + OFFSET_OF (EHC_QH, QhHw), EHC_TYPE_QH, FALSE);
   QhHw->Status      = QTD_STAT_HALTED;
   QhHw->ReclaimHead = 1;
   Qh->NextQh        = Qh;
@@ -75,10 +74,10 @@ EhcCreateHelpQ (
   //
   // Create a dummy QH to act as the terminator for periodical schedule
   //
-  Ep.EpAddr   = 2;
-  Ep.Type     = EHC_INT_TRANSFER_SYNC;
+  Ep.EpAddr = 2;
+  Ep.Type   = EHC_INT_TRANSFER_SYNC;
 
-  Qh          = EhcCreateQh (Ehc, &Ep);
+  Qh = EhcCreateQh (Ehc, &Ep);
 
   if (Qh == NULL) {
     return EFI_OUT_OF_RESOURCES;
@@ -90,7 +89,6 @@ EhcCreateHelpQ (
   return EFI_SUCCESS;
 }
 
-
 /**
   Initialize the schedule data structure such as frame list.
 
@@ -102,7 +100,7 @@ EhcCreateHelpQ (
 **/
 EFI_STATUS
 EhcInitSched (
-  IN USB2_HC_DEV          *Ehc
+  IN USB2_HC_DEV  *Ehc
   )
 {
   EFI_PCI_IO_PROTOCOL   *PciIo;
@@ -154,8 +152,8 @@ EhcInitSched (
     return EFI_OUT_OF_RESOURCES;
   }
 
-  Ehc->PeriodFrame      = Buf;
-  Ehc->PeriodFrameMap   = Map;
+  Ehc->PeriodFrame    = Buf;
+  Ehc->PeriodFrameMap = Map;
 
   //
   // Program the FRAMELISTBASE register with the low 32 bit addr
@@ -191,13 +189,13 @@ EhcInitSched (
   //
   // Initialize the frame list entries then set the registers
   //
-  Ehc->PeriodFrameHost      = AllocateZeroPool (EHC_FRAME_LEN * sizeof (UINTN));
+  Ehc->PeriodFrameHost = AllocateZeroPool (EHC_FRAME_LEN * sizeof (UINTN));
   if (Ehc->PeriodFrameHost == NULL) {
     Status = EFI_OUT_OF_RESOURCES;
     goto ErrorExit;
   }
 
-  PciAddr  = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Ehc->PeriodOne, sizeof (EHC_QH));
+  PciAddr = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Ehc->PeriodOne, sizeof (EHC_QH));
 
   for (Index = 0; Index < EHC_FRAME_LEN; Index++) {
     //
@@ -242,7 +240,6 @@ ErrorExit1:
   return Status;
 }
 
-
 /**
   Free the schedule data. It may be partially initialized.
 
@@ -251,10 +248,10 @@ ErrorExit1:
 **/
 VOID
 EhcFreeSched (
-  IN USB2_HC_DEV          *Ehc
+  IN USB2_HC_DEV  *Ehc
   )
 {
-  EFI_PCI_IO_PROTOCOL     *PciIo;
+  EFI_PCI_IO_PROTOCOL  *PciIo;
 
   EhcWriteOpReg (Ehc, EHC_FRAME_BASE_OFFSET, 0);
   EhcWriteOpReg (Ehc, EHC_ASYNC_HEAD_OFFSET, 0);
@@ -300,7 +297,6 @@ EhcFreeSched (
   }
 }
 
-
 /**
   Link the queue head to the asynchronous schedule list.
   UEFI only supports one CTRL/BULK transfer at a time
@@ -314,30 +310,29 @@ EhcFreeSched (
 **/
 VOID
 EhcLinkQhToAsync (
-  IN USB2_HC_DEV          *Ehc,
-  IN EHC_QH               *Qh
+  IN USB2_HC_DEV  *Ehc,
+  IN EHC_QH       *Qh
   )
 {
-  EHC_QH                  *Head;
-  EFI_PHYSICAL_ADDRESS    PciAddr;
+  EHC_QH                *Head;
+  EFI_PHYSICAL_ADDRESS  PciAddr;
 
   //
   // Append the queue head after the reclaim header, then
   // fix the hardware visiable parts (EHCI R1.0 page 72).
   // ReclaimHead is always linked to the EHCI's AsynListAddr.
   //
-  Head                    = Ehc->ReclaimHead;
+  Head = Ehc->ReclaimHead;
 
-  Qh->NextQh              = Head->NextQh;
-  Head->NextQh            = Qh;
+  Qh->NextQh   = Head->NextQh;
+  Head->NextQh = Qh;
 
-  PciAddr = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Qh->NextQh, sizeof (EHC_QH));
-  Qh->QhHw.HorizonLink    = QH_LINK (PciAddr, EHC_TYPE_QH, FALSE);
-  PciAddr = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Head->NextQh, sizeof (EHC_QH));
-  Head->QhHw.HorizonLink  = QH_LINK (PciAddr, EHC_TYPE_QH, FALSE);
+  PciAddr                = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Qh->NextQh, sizeof (EHC_QH));
+  Qh->QhHw.HorizonLink   = QH_LINK (PciAddr, EHC_TYPE_QH, FALSE);
+  PciAddr                = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Head->NextQh, sizeof (EHC_QH));
+  Head->QhHw.HorizonLink = QH_LINK (PciAddr, EHC_TYPE_QH, FALSE);
 }
 
-
 /**
   Unlink a queue head from the asynchronous schedule list.
   Need to synchronize with hardware.
@@ -348,13 +343,13 @@ EhcLinkQhToAsync (
 **/
 VOID
 EhcUnlinkQhFromAsync (
-  IN USB2_HC_DEV          *Ehc,
-  IN EHC_QH               *Qh
+  IN USB2_HC_DEV  *Ehc,
+  IN EHC_QH       *Qh
   )
 {
-  EHC_QH                  *Head;
-  EFI_STATUS              Status;
-  EFI_PHYSICAL_ADDRESS    PciAddr;
+  EHC_QH                *Head;
+  EFI_STATUS            Status;
+  EFI_PHYSICAL_ADDRESS  PciAddr;
 
   ASSERT (Ehc->ReclaimHead->NextQh == Qh);
 
@@ -363,13 +358,13 @@ EhcUnlinkQhFromAsync (
   // visiable part: Only need to loopback the ReclaimHead. The Qh
   // is pointing to ReclaimHead (which is staill in the list).
   //
-  Head                    = Ehc->ReclaimHead;
+  Head = Ehc->ReclaimHead;
 
-  Head->NextQh            = Qh->NextQh;
-  Qh->NextQh              = NULL;
+  Head->NextQh = Qh->NextQh;
+  Qh->NextQh   = NULL;
 
-  PciAddr = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Head->NextQh, sizeof (EHC_QH));
-  Head->QhHw.HorizonLink  = QH_LINK (PciAddr, EHC_TYPE_QH, FALSE);
+  PciAddr                = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Head->NextQh, sizeof (EHC_QH));
+  Head->QhHw.HorizonLink = QH_LINK (PciAddr, EHC_TYPE_QH, FALSE);
 
   //
   // Set and wait the door bell to synchronize with the hardware
@@ -381,7 +376,6 @@ EhcUnlinkQhFromAsync (
   }
 }
 
-
 /**
   Link a queue head for interrupt transfer to the periodic
   schedule frame list. This code is very much the same as
@@ -393,23 +387,23 @@ EhcUnlinkQhFromAsync (
 **/
 VOID
 EhcLinkQhToPeriod (
-  IN USB2_HC_DEV          *Ehc,
-  IN EHC_QH               *Qh
+  IN USB2_HC_DEV  *Ehc,
+  IN EHC_QH       *Qh
   )
 {
-  UINTN                   Index;
-  EHC_QH                  *Prev;
-  EHC_QH                  *Next;
-  EFI_PHYSICAL_ADDRESS    PciAddr;
+  UINTN                 Index;
+  EHC_QH                *Prev;
+  EHC_QH                *Next;
+  EFI_PHYSICAL_ADDRESS  PciAddr;
 
   for (Index = 0; Index < EHC_FRAME_LEN; Index += Qh->Interval) {
     //
     // First QH can't be NULL because we always keep PeriodOne
     // heads on the frame list
     //
-    ASSERT (!EHC_LINK_TERMINATED (((UINT32*)Ehc->PeriodFrame)[Index]));
-    Next  = (EHC_QH*)((UINTN*)Ehc->PeriodFrameHost)[Index];
-    Prev  = NULL;
+    ASSERT (!EHC_LINK_TERMINATED (((UINT32 *)Ehc->PeriodFrame)[Index]));
+    Next = (EHC_QH *)((UINTN *)Ehc->PeriodFrameHost)[Index];
+    Prev = NULL;
 
     //
     // Now, insert the queue head (Qh) into this frame:
@@ -422,8 +416,8 @@ EhcLinkQhToPeriod (
     //    Then, insert the Qh between then
     //
     while (Next->Interval > Qh->Interval) {
-      Prev  = Next;
-      Next  = Next->NextQh;
+      Prev = Next;
+      Next = Next->NextQh;
     }
 
     ASSERT (Next != NULL);
@@ -449,15 +443,15 @@ EhcLinkQhToPeriod (
       //
       ASSERT ((Index == 0) && (Qh->NextQh == NULL));
 
-      Prev                    = Next;
-      Next                    = Next->NextQh;
+      Prev = Next;
+      Next = Next->NextQh;
 
-      Qh->NextQh              = Next;
-      Prev->NextQh            = Qh;
+      Qh->NextQh   = Next;
+      Prev->NextQh = Qh;
 
-      Qh->QhHw.HorizonLink    = Prev->QhHw.HorizonLink;
-      PciAddr = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Qh, sizeof (EHC_QH));
-      Prev->QhHw.HorizonLink  = QH_LINK (PciAddr, EHC_TYPE_QH, FALSE);
+      Qh->QhHw.HorizonLink   = Prev->QhHw.HorizonLink;
+      PciAddr                = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Qh, sizeof (EHC_QH));
+      Prev->QhHw.HorizonLink = QH_LINK (PciAddr, EHC_TYPE_QH, FALSE);
       break;
     }
 
@@ -467,24 +461,23 @@ EhcLinkQhToPeriod (
     // guarranted by 2^n polling interval.
     //
     if (Qh->NextQh == NULL) {
-      Qh->NextQh              = Next;
-      PciAddr = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Next, sizeof (EHC_QH));
-      Qh->QhHw.HorizonLink    = QH_LINK (PciAddr, EHC_TYPE_QH, FALSE);
+      Qh->NextQh           = Next;
+      PciAddr              = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Next, sizeof (EHC_QH));
+      Qh->QhHw.HorizonLink = QH_LINK (PciAddr, EHC_TYPE_QH, FALSE);
     }
 
     PciAddr = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Qh, sizeof (EHC_QH));
 
     if (Prev == NULL) {
-      ((UINT32*)Ehc->PeriodFrame)[Index]     = QH_LINK (PciAddr, EHC_TYPE_QH, FALSE);
-      ((UINTN*)Ehc->PeriodFrameHost)[Index]  = (UINTN)Qh;
+      ((UINT32 *)Ehc->PeriodFrame)[Index]    = QH_LINK (PciAddr, EHC_TYPE_QH, FALSE);
+      ((UINTN *)Ehc->PeriodFrameHost)[Index] = (UINTN)Qh;
     } else {
-      Prev->NextQh            = Qh;
-      Prev->QhHw.HorizonLink  = QH_LINK (PciAddr, EHC_TYPE_QH, FALSE);
+      Prev->NextQh           = Qh;
+      Prev->QhHw.HorizonLink = QH_LINK (PciAddr, EHC_TYPE_QH, FALSE);
     }
   }
 }
 
-
 /**
   Unlink an interrupt queue head from the periodic
   schedule frame list.
@@ -495,30 +488,30 @@ EhcLinkQhToPeriod (
 **/
 VOID
 EhcUnlinkQhFromPeriod (
-  IN USB2_HC_DEV          *Ehc,
-  IN EHC_QH               *Qh
+  IN USB2_HC_DEV  *Ehc,
+  IN EHC_QH       *Qh
   )
 {
-  UINTN                   Index;
-  EHC_QH                  *Prev;
-  EHC_QH                  *This;
+  UINTN   Index;
+  EHC_QH  *Prev;
+  EHC_QH  *This;
 
   for (Index = 0; Index < EHC_FRAME_LEN; Index += Qh->Interval) {
     //
     // Frame link can't be NULL because we always keep PeroidOne
     // on the frame list
     //
-    ASSERT (!EHC_LINK_TERMINATED (((UINT32*)Ehc->PeriodFrame)[Index]));
-    This  = (EHC_QH*)((UINTN*)Ehc->PeriodFrameHost)[Index];
-    Prev  = NULL;
+    ASSERT (!EHC_LINK_TERMINATED (((UINT32 *)Ehc->PeriodFrame)[Index]));
+    This = (EHC_QH *)((UINTN *)Ehc->PeriodFrameHost)[Index];
+    Prev = NULL;
 
     //
     // Walk through the frame's QH list to find the
     // queue head to remove
     //
     while ((This != NULL) && (This != Qh)) {
-      Prev  = This;
-      This  = This->NextQh;
+      Prev = This;
+      This = This->NextQh;
     }
 
     //
@@ -533,16 +526,15 @@ EhcUnlinkQhFromPeriod (
       //
       // Qh is the first entry in the frame
       //
-      ((UINT32*)Ehc->PeriodFrame)[Index] = Qh->QhHw.HorizonLink;
-      ((UINTN*)Ehc->PeriodFrameHost)[Index] = (UINTN)Qh->NextQh;
+      ((UINT32 *)Ehc->PeriodFrame)[Index]    = Qh->QhHw.HorizonLink;
+      ((UINTN *)Ehc->PeriodFrameHost)[Index] = (UINTN)Qh->NextQh;
     } else {
-      Prev->NextQh            = Qh->NextQh;
-      Prev->QhHw.HorizonLink  = Qh->QhHw.HorizonLink;
+      Prev->NextQh           = Qh->NextQh;
+      Prev->QhHw.HorizonLink = Qh->QhHw.HorizonLink;
     }
   }
 }
 
-
 /**
   Check the URB's execution result and update the URB's
   result accordingly.
@@ -555,23 +547,23 @@ EhcUnlinkQhFromPeriod (
 **/
 BOOLEAN
 EhcCheckUrbResult (
-  IN  USB2_HC_DEV         *Ehc,
-  IN  URB                 *Urb
+  IN  USB2_HC_DEV  *Ehc,
+  IN  URB          *Urb
   )
 {
-  LIST_ENTRY              *Entry;
-  EHC_QTD                 *Qtd;
-  QTD_HW                  *QtdHw;
-  UINT8                   State;
-  BOOLEAN                 Finished;
-  EFI_PHYSICAL_ADDRESS    PciAddr;
+  LIST_ENTRY            *Entry;
+  EHC_QTD               *Qtd;
+  QTD_HW                *QtdHw;
+  UINT8                 State;
+  BOOLEAN               Finished;
+  EFI_PHYSICAL_ADDRESS  PciAddr;
 
   ASSERT ((Ehc != NULL) && (Urb != NULL) && (Urb->Qh != NULL));
 
-  Finished        = TRUE;
-  Urb->Completed  = 0;
+  Finished       = TRUE;
+  Urb->Completed = 0;
 
-  Urb->Result     = EFI_USB_NOERROR;
+  Urb->Result = EFI_USB_NOERROR;
 
   if (EhcIsHalt (Ehc) || EhcIsSysError (Ehc)) {
     Urb->Result |= EFI_USB_ERR_SYSTEM;
@@ -581,7 +573,7 @@ EhcCheckUrbResult (
   BASE_LIST_FOR_EACH (Entry, &Urb->Qh->Qtds) {
     Qtd   = EFI_LIST_CONTAINER (Entry, EHC_QTD, QtdList);
     QtdHw = &Qtd->QtdHw;
-    State = (UINT8) QtdHw->Status;
+    State = (UINT8)QtdHw->Status;
 
     if (EHC_BIT_IS_SET (State, QTD_STAT_HALTED)) {
       //
@@ -606,7 +598,6 @@ EhcCheckUrbResult (
 
       Finished = TRUE;
       goto ON_EXIT;
-
     } else if (EHC_BIT_IS_SET (State, QTD_STAT_ACTIVE)) {
       //
       // The QTD is still active, no need to check furthur.
@@ -615,7 +606,6 @@ EhcCheckUrbResult (
 
       Finished = FALSE;
       goto ON_EXIT;
-
     } else {
       //
       // This QTD is finished OK or met short packet read. Update the
@@ -657,12 +647,11 @@ ON_EXIT:
   // NOTICE: don't move DT update before the loop, otherwise there is
   // a race condition that DT is wrong.
   //
-  Urb->DataToggle = (UINT8) Urb->Qh->QhHw.DataToggle;
+  Urb->DataToggle = (UINT8)Urb->Qh->QhHw.DataToggle;
 
   return Finished;
 }
 
-
 /**
   Execute the transfer by polling the URB. This is a synchronous operation.
 
@@ -677,16 +666,16 @@ ON_EXIT:
 **/
 EFI_STATUS
 EhcExecTransfer (
-  IN  USB2_HC_DEV         *Ehc,
-  IN  URB                 *Urb,
-  IN  UINTN               TimeOut
+  IN  USB2_HC_DEV  *Ehc,
+  IN  URB          *Urb,
+  IN  UINTN        TimeOut
   )
 {
-  EFI_STATUS              Status;
-  UINTN                   Index;
-  UINTN                   Loop;
-  BOOLEAN                 Finished;
-  BOOLEAN                 InfiniteLoop;
+  EFI_STATUS  Status;
+  UINTN       Index;
+  UINTN       Loop;
+  BOOLEAN     Finished;
+  BOOLEAN     InfiniteLoop;
 
   Status       = EFI_SUCCESS;
   Loop         = TimeOut * EHC_1_MILLISECOND;
@@ -717,7 +706,6 @@ EhcExecTransfer (
     EhcDumpQh (Urb->Qh, NULL, FALSE);
 
     Status = EFI_TIMEOUT;
-
   } else if (Urb->Result != EFI_USB_NOERROR) {
     DEBUG ((DEBUG_ERROR, "EhcExecTransfer: transfer failed with %x\n", Urb->Result));
     EhcDumpQh (Urb->Qh, NULL, FALSE);
@@ -728,7 +716,6 @@ EhcExecTransfer (
   return Status;
 }
 
-
 /**
   Delete a single asynchronous interrupt transfer for
   the device and endpoint.
@@ -744,10 +731,10 @@ EhcExecTransfer (
 **/
 EFI_STATUS
 EhciDelAsyncIntTransfer (
-  IN  USB2_HC_DEV         *Ehc,
-  IN  UINT8               DevAddr,
-  IN  UINT8               EpNum,
-  OUT UINT8               *DataToggle
+  IN  USB2_HC_DEV  *Ehc,
+  IN  UINT8        DevAddr,
+  IN  UINT8        EpNum,
+  OUT UINT8        *DataToggle
   )
 {
   LIST_ENTRY              *Entry;
@@ -762,7 +749,8 @@ EhciDelAsyncIntTransfer (
     Urb = EFI_LIST_CONTAINER (Entry, URB, UrbList);
 
     if ((Urb->Ep.DevAddr == DevAddr) && (Urb->Ep.EpAddr == EpNum) &&
-        (Urb->Ep.Direction == Direction)) {
+        (Urb->Ep.Direction == Direction))
+    {
       //
       // Check the URB status to retrieve the next data toggle
       // from the associated queue head.
@@ -782,7 +770,6 @@ EhciDelAsyncIntTransfer (
   return EFI_NOT_FOUND;
 }
 
-
 /**
   Remove all the asynchronous interrutp transfers.
 
@@ -791,12 +778,12 @@ EhciDelAsyncIntTransfer (
 **/
 VOID
 EhciDelAllAsyncIntTransfers (
-  IN USB2_HC_DEV          *Ehc
+  IN USB2_HC_DEV  *Ehc
   )
 {
-  LIST_ENTRY              *Entry;
-  LIST_ENTRY              *Next;
-  URB                     *Urb;
+  LIST_ENTRY  *Entry;
+  LIST_ENTRY  *Next;
+  URB         *Urb;
 
   BASE_LIST_FOR_EACH_SAFE (Entry, Next, &Ehc->AsyncIntTransfers) {
     Urb = EFI_LIST_CONTAINER (Entry, URB, UrbList);
@@ -830,21 +817,21 @@ EhciDelAllAsyncIntTransfers (
 **/
 URB *
 EhciInsertAsyncIntTransfer (
-  IN USB2_HC_DEV                        *Ehc,
-  IN UINT8                              DevAddr,
-  IN UINT8                              EpAddr,
-  IN UINT8                              DevSpeed,
-  IN UINT8                              Toggle,
-  IN UINTN                              MaxPacket,
-  IN EFI_USB2_HC_TRANSACTION_TRANSLATOR *Hub,
-  IN UINTN                              DataLen,
-  IN EFI_ASYNC_USB_TRANSFER_CALLBACK    Callback,
-  IN VOID                               *Context,
-  IN UINTN                              Interval
+  IN USB2_HC_DEV                         *Ehc,
+  IN UINT8                               DevAddr,
+  IN UINT8                               EpAddr,
+  IN UINT8                               DevSpeed,
+  IN UINT8                               Toggle,
+  IN UINTN                               MaxPacket,
+  IN EFI_USB2_HC_TRANSACTION_TRANSLATOR  *Hub,
+  IN UINTN                               DataLen,
+  IN EFI_ASYNC_USB_TRANSFER_CALLBACK     Callback,
+  IN VOID                                *Context,
+  IN UINTN                               Interval
   )
 {
-  VOID      *Data;
-  URB       *Urb;
+  VOID  *Data;
+  URB   *Urb;
 
   Data = AllocatePool (DataLen);
 
@@ -899,16 +886,16 @@ EhciInsertAsyncIntTransfer (
 **/
 EFI_STATUS
 EhcFlushAsyncIntMap (
-  IN  USB2_HC_DEV         *Ehc,
-  IN  URB                 *Urb
+  IN  USB2_HC_DEV  *Ehc,
+  IN  URB          *Urb
   )
 {
-  EFI_STATUS                    Status;
-  EFI_PHYSICAL_ADDRESS          PhyAddr;
-  EFI_PCI_IO_PROTOCOL_OPERATION MapOp;
-  EFI_PCI_IO_PROTOCOL           *PciIo;
-  UINTN                         Len;
-  VOID                          *Map;
+  EFI_STATUS                     Status;
+  EFI_PHYSICAL_ADDRESS           PhyAddr;
+  EFI_PCI_IO_PROTOCOL_OPERATION  MapOp;
+  EFI_PCI_IO_PROTOCOL            *PciIo;
+  UINTN                          Len;
+  VOID                           *Map;
 
   PciIo = Ehc->PciIo;
   Len   = Urb->DataLen;
@@ -931,15 +918,14 @@ EhcFlushAsyncIntMap (
     goto ON_ERROR;
   }
 
-  Urb->DataPhy  = (VOID *) ((UINTN) PhyAddr);
-  Urb->DataMap  = Map;
+  Urb->DataPhy = (VOID *)((UINTN)PhyAddr);
+  Urb->DataMap = Map;
   return EFI_SUCCESS;
 
 ON_ERROR:
   return EFI_DEVICE_ERROR;
 }
 
-
 /**
   Update the queue head for next round of asynchronous transfer.
 
@@ -949,17 +935,17 @@ ON_ERROR:
 **/
 VOID
 EhcUpdateAsyncRequest (
-  IN  USB2_HC_DEV         *Ehc,
-  IN URB                  *Urb
+  IN  USB2_HC_DEV  *Ehc,
+  IN URB           *Urb
   )
 {
-  LIST_ENTRY              *Entry;
-  EHC_QTD                 *FirstQtd;
-  QH_HW                   *QhHw;
-  EHC_QTD                 *Qtd;
-  QTD_HW                  *QtdHw;
-  UINTN                   Index;
-  EFI_PHYSICAL_ADDRESS    PciAddr;
+  LIST_ENTRY            *Entry;
+  EHC_QTD               *FirstQtd;
+  QH_HW                 *QhHw;
+  EHC_QTD               *Qtd;
+  QTD_HW                *QtdHw;
+  UINTN                 Index;
+  EFI_PHYSICAL_ADDRESS  PciAddr;
 
   Qtd = NULL;
 
@@ -985,13 +971,13 @@ EhcUpdateAsyncRequest (
       QtdHw->Status     = QTD_STAT_ACTIVE;
       QtdHw->ErrCnt     = QTD_MAX_ERR;
       QtdHw->CurPage    = 0;
-      QtdHw->TotalBytes = (UINT32) Qtd->DataLen;
+      QtdHw->TotalBytes = (UINT32)Qtd->DataLen;
       //
       // calculate physical address by offset.
       //
-      PciAddr = (UINTN)Urb->DataPhy + ((UINTN)Qtd->Data - (UINTN)Urb->Data);
-      QtdHw->Page[0]    = EHC_LOW_32BIT (PciAddr);
-      QtdHw->PageHigh[0]= EHC_HIGH_32BIT (PciAddr);
+      PciAddr            = (UINTN)Urb->DataPhy + ((UINTN)Qtd->Data - (UINTN)Urb->Data);
+      QtdHw->Page[0]     = EHC_LOW_32BIT (PciAddr);
+      QtdHw->PageHigh[0] = EHC_HIGH_32BIT (PciAddr);
     }
 
     //
@@ -1000,30 +986,29 @@ EhcUpdateAsyncRequest (
     // zero out the overlay area and set NextQtd to the first
     // QTD. DateToggle bit is left untouched.
     //
-    QhHw              = &Urb->Qh->QhHw;
-    QhHw->CurQtd      = QTD_LINK (0, TRUE);
-    QhHw->AltQtd      = 0;
+    QhHw         = &Urb->Qh->QhHw;
+    QhHw->CurQtd = QTD_LINK (0, TRUE);
+    QhHw->AltQtd = 0;
 
-    QhHw->Status      = 0;
-    QhHw->Pid         = 0;
-    QhHw->ErrCnt      = 0;
-    QhHw->CurPage     = 0;
-    QhHw->Ioc         = 0;
-    QhHw->TotalBytes  = 0;
+    QhHw->Status     = 0;
+    QhHw->Pid        = 0;
+    QhHw->ErrCnt     = 0;
+    QhHw->CurPage    = 0;
+    QhHw->Ioc        = 0;
+    QhHw->TotalBytes = 0;
 
     for (Index = 0; Index < 5; Index++) {
       QhHw->Page[Index]     = 0;
       QhHw->PageHigh[Index] = 0;
     }
 
-    PciAddr = UsbHcGetPciAddressForHostMem (Ehc->MemPool, FirstQtd, sizeof (EHC_QTD));
+    PciAddr       = UsbHcGetPciAddressForHostMem (Ehc->MemPool, FirstQtd, sizeof (EHC_QTD));
     QhHw->NextQtd = QTD_LINK (PciAddr, FALSE);
   }
 
-  return ;
+  return;
 }
 
-
 /**
   Interrupt transfer periodic check handler.
 
@@ -1034,21 +1019,21 @@ EhcUpdateAsyncRequest (
 VOID
 EFIAPI
 EhcMonitorAsyncRequests (
-  IN EFI_EVENT            Event,
-  IN VOID                 *Context
+  IN EFI_EVENT  Event,
+  IN VOID       *Context
   )
 {
-  USB2_HC_DEV             *Ehc;
-  EFI_TPL                 OldTpl;
-  LIST_ENTRY              *Entry;
-  LIST_ENTRY              *Next;
-  BOOLEAN                 Finished;
-  UINT8                   *ProcBuf;
-  URB                     *Urb;
-  EFI_STATUS              Status;
-
-  OldTpl  = gBS->RaiseTPL (EHC_TPL);
-  Ehc     = (USB2_HC_DEV *) Context;
+  USB2_HC_DEV  *Ehc;
+  EFI_TPL      OldTpl;
+  LIST_ENTRY   *Entry;
+  LIST_ENTRY   *Next;
+  BOOLEAN      Finished;
+  UINT8        *ProcBuf;
+  URB          *Urb;
+  EFI_STATUS   Status;
+
+  OldTpl = gBS->RaiseTPL (EHC_TPL);
+  Ehc    = (USB2_HC_DEV *)Context;
 
   BASE_LIST_FOR_EACH_SAFE (Entry, Next, &Ehc->AsyncIntTransfers) {
     Urb = EFI_LIST_CONTAINER (Entry, URB, UrbList);
@@ -1113,7 +1098,7 @@ EhcMonitorAsyncRequests (
       // his callback. Some drivers may has a lower TPL restriction.
       //
       gBS->RestoreTPL (OldTpl);
-      (Urb->Callback) (ProcBuf, Urb->Completed, Urb->Context, Urb->Result);
+      (Urb->Callback)(ProcBuf, Urb->Completed, Urb->Context, Urb->Result);
       OldTpl = gBS->RaiseTPL (EHC_TPL);
     }
 

+ 31 - 41
MdeModulePkg/Bus/Pci/EhciDxe/EhciSched.h

@@ -10,7 +10,6 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #ifndef _EFI_EHCI_SCHED_H_
 #define _EFI_EHCI_SCHED_H_
 
-
 /**
   Initialize the schedule data structure such as frame list.
 
@@ -22,10 +21,9 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 EFI_STATUS
 EhcInitSched (
-  IN USB2_HC_DEV          *Ehc
+  IN USB2_HC_DEV  *Ehc
   );
 
-
 /**
   Free the schedule data. It may be partially initialized.
 
@@ -34,10 +32,9 @@ EhcInitSched (
 **/
 VOID
 EhcFreeSched (
-  IN USB2_HC_DEV          *Ehc
+  IN USB2_HC_DEV  *Ehc
   );
 
-
 /**
   Link the queue head to the asynchronous schedule list.
   UEFI only supports one CTRL/BULK transfer at a time
@@ -51,11 +48,10 @@ EhcFreeSched (
 **/
 VOID
 EhcLinkQhToAsync (
-  IN USB2_HC_DEV          *Ehc,
-  IN EHC_QH               *Qh
+  IN USB2_HC_DEV  *Ehc,
+  IN EHC_QH       *Qh
   );
 
-
 /**
   Unlink a queue head from the asynchronous schedule list.
   Need to synchronize with hardware.
@@ -66,11 +62,10 @@ EhcLinkQhToAsync (
 **/
 VOID
 EhcUnlinkQhFromAsync (
-  IN USB2_HC_DEV          *Ehc,
-  IN EHC_QH               *Qh
+  IN USB2_HC_DEV  *Ehc,
+  IN EHC_QH       *Qh
   );
 
-
 /**
   Link a queue head for interrupt transfer to the periodic
   schedule frame list. This code is very much the same as
@@ -82,11 +77,10 @@ EhcUnlinkQhFromAsync (
 **/
 VOID
 EhcLinkQhToPeriod (
-  IN USB2_HC_DEV          *Ehc,
-  IN EHC_QH               *Qh
+  IN USB2_HC_DEV  *Ehc,
+  IN EHC_QH       *Qh
   );
 
-
 /**
   Unlink an interrupt queue head from the periodic
   schedule frame list.
@@ -97,12 +91,10 @@ EhcLinkQhToPeriod (
 **/
 VOID
 EhcUnlinkQhFromPeriod (
-  IN USB2_HC_DEV          *Ehc,
-  IN EHC_QH               *Qh
+  IN USB2_HC_DEV  *Ehc,
+  IN EHC_QH       *Qh
   );
 
-
-
 /**
   Execute the transfer by polling the URB. This is a synchronous operation.
 
@@ -117,12 +109,11 @@ EhcUnlinkQhFromPeriod (
 **/
 EFI_STATUS
 EhcExecTransfer (
-  IN  USB2_HC_DEV         *Ehc,
-  IN  URB                 *Urb,
-  IN  UINTN               TimeOut
+  IN  USB2_HC_DEV  *Ehc,
+  IN  URB          *Urb,
+  IN  UINTN        TimeOut
   );
 
-
 /**
   Delete a single asynchronous interrupt transfer for
   the device and endpoint.
@@ -138,13 +129,12 @@ EhcExecTransfer (
 **/
 EFI_STATUS
 EhciDelAsyncIntTransfer (
-  IN  USB2_HC_DEV         *Ehc,
-  IN  UINT8               DevAddr,
-  IN  UINT8               EpNum,
-  OUT UINT8               *DataToggle
+  IN  USB2_HC_DEV  *Ehc,
+  IN  UINT8        DevAddr,
+  IN  UINT8        EpNum,
+  OUT UINT8        *DataToggle
   );
 
-
 /**
   Remove all the asynchronous interrutp transfers.
 
@@ -153,7 +143,7 @@ EhciDelAsyncIntTransfer (
 **/
 VOID
 EhciDelAllAsyncIntTransfers (
-  IN USB2_HC_DEV          *Ehc
+  IN USB2_HC_DEV  *Ehc
   );
 
 /**
@@ -177,17 +167,17 @@ EhciDelAllAsyncIntTransfers (
 **/
 URB *
 EhciInsertAsyncIntTransfer (
-  IN USB2_HC_DEV                        *Ehc,
-  IN UINT8                              DevAddr,
-  IN UINT8                              EpAddr,
-  IN UINT8                              DevSpeed,
-  IN UINT8                              Toggle,
-  IN UINTN                              MaxPacket,
-  IN EFI_USB2_HC_TRANSACTION_TRANSLATOR *Hub,
-  IN UINTN                              DataLen,
-  IN EFI_ASYNC_USB_TRANSFER_CALLBACK    Callback,
-  IN VOID                               *Context,
-  IN UINTN                              Interval
+  IN USB2_HC_DEV                         *Ehc,
+  IN UINT8                               DevAddr,
+  IN UINT8                               EpAddr,
+  IN UINT8                               DevSpeed,
+  IN UINT8                               Toggle,
+  IN UINTN                               MaxPacket,
+  IN EFI_USB2_HC_TRANSACTION_TRANSLATOR  *Hub,
+  IN UINTN                               DataLen,
+  IN EFI_ASYNC_USB_TRANSFER_CALLBACK     Callback,
+  IN VOID                                *Context,
+  IN UINTN                               Interval
   );
 
 /**
@@ -200,8 +190,8 @@ EhciInsertAsyncIntTransfer (
 VOID
 EFIAPI
 EhcMonitorAsyncRequests (
-  IN EFI_EVENT            Event,
-  IN VOID                 *Context
+  IN EFI_EVENT  Event,
+  IN VOID       *Context
   );
 
 #endif

+ 156 - 165
MdeModulePkg/Bus/Pci/EhciDxe/EhciUrb.c

@@ -11,7 +11,6 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 
 #include "Ehci.h"
 
-
 /**
   Create a single QTD to hold the data.
 
@@ -28,20 +27,20 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 EHC_QTD *
 EhcCreateQtd (
-  IN USB2_HC_DEV          *Ehc,
-  IN UINT8                *Data,
-  IN UINT8                *DataPhy,
-  IN UINTN                DataLen,
-  IN UINT8                PktId,
-  IN UINT8                Toggle,
-  IN UINTN                MaxPacket
+  IN USB2_HC_DEV  *Ehc,
+  IN UINT8        *Data,
+  IN UINT8        *DataPhy,
+  IN UINTN        DataLen,
+  IN UINT8        PktId,
+  IN UINT8        Toggle,
+  IN UINTN        MaxPacket
   )
 {
-  EHC_QTD                 *Qtd;
-  QTD_HW                  *QtdHw;
-  UINTN                   Index;
-  UINTN                   Len;
-  UINTN                   ThisBufLen;
+  EHC_QTD  *Qtd;
+  QTD_HW   *QtdHw;
+  UINTN    Index;
+  UINTN    Len;
+  UINTN    ThisBufLen;
 
   ASSERT (Ehc != NULL);
 
@@ -51,9 +50,9 @@ EhcCreateQtd (
     return NULL;
   }
 
-  Qtd->Signature    = EHC_QTD_SIG;
-  Qtd->Data         = Data;
-  Qtd->DataLen      = 0;
+  Qtd->Signature = EHC_QTD_SIG;
+  Qtd->Data      = Data;
+  Qtd->DataLen   = 0;
 
   InitializeListHead (&Qtd->QtdList);
 
@@ -79,18 +78,18 @@ EhcCreateQtd (
       // compute the offset and clear Reserved fields. This is already
       // done in the data point.
       //
-      QtdHw->Page[Index]      = EHC_LOW_32BIT (DataPhy);
-      QtdHw->PageHigh[Index]  = EHC_HIGH_32BIT (DataPhy);
+      QtdHw->Page[Index]     = EHC_LOW_32BIT (DataPhy);
+      QtdHw->PageHigh[Index] = EHC_HIGH_32BIT (DataPhy);
 
-      ThisBufLen              = QTD_BUF_LEN - (EHC_LOW_32BIT (DataPhy) & QTD_BUF_MASK);
+      ThisBufLen = QTD_BUF_LEN - (EHC_LOW_32BIT (DataPhy) & QTD_BUF_MASK);
 
       if (Len + ThisBufLen >= DataLen) {
         Len = DataLen;
         break;
       }
 
-      Len += ThisBufLen;
-      Data += ThisBufLen;
+      Len     += ThisBufLen;
+      Data    += ThisBufLen;
       DataPhy += ThisBufLen;
     }
 
@@ -104,15 +103,13 @@ EhcCreateQtd (
       Len = Len - Len % MaxPacket;
     }
 
-    QtdHw->TotalBytes = (UINT32) Len;
+    QtdHw->TotalBytes = (UINT32)Len;
     Qtd->DataLen      = Len;
   }
 
   return Qtd;
 }
 
-
-
 /**
   Initialize the queue head for interrupt transfer,
   that is, initialize the following three fields:
@@ -126,8 +123,8 @@ EhcCreateQtd (
 **/
 VOID
 EhcInitIntQh (
-  IN USB_ENDPOINT         *Ep,
-  IN QH_HW                *QhHw
+  IN USB_ENDPOINT  *Ep,
+  IN QH_HW         *QhHw
   )
 {
   //
@@ -139,7 +136,7 @@ EhcInitIntQh (
   //
   if (Ep->DevSpeed == EFI_USB_SPEED_HIGH) {
     QhHw->SMask = QH_MICROFRAME_0;
-    return ;
+    return;
   }
 
   //
@@ -157,8 +154,6 @@ EhcInitIntQh (
   QhHw->CMask = QH_MICROFRAME_3 | QH_MICROFRAME_4 | QH_MICROFRAME_5;
 }
 
-
-
 /**
   Allocate and initialize a EHCI queue head.
 
@@ -170,12 +165,12 @@ EhcInitIntQh (
 **/
 EHC_QH *
 EhcCreateQh (
-  IN USB2_HC_DEV          *Ehci,
-  IN USB_ENDPOINT         *Ep
+  IN USB2_HC_DEV   *Ehci,
+  IN USB_ENDPOINT  *Ep
   )
 {
-  EHC_QH                  *Qh;
-  QH_HW                   *QhHw;
+  EHC_QH  *Qh;
+  QH_HW   *QhHw;
 
   Qh = UsbHcAllocateMem (Ehci->MemPool, sizeof (EHC_QH));
 
@@ -183,68 +178,68 @@ EhcCreateQh (
     return NULL;
   }
 
-  Qh->Signature       = EHC_QH_SIG;
-  Qh->NextQh          = NULL;
-  Qh->Interval        = Ep->PollRate;
+  Qh->Signature = EHC_QH_SIG;
+  Qh->NextQh    = NULL;
+  Qh->Interval  = Ep->PollRate;
 
   InitializeListHead (&Qh->Qtds);
 
-  QhHw                = &Qh->QhHw;
-  QhHw->HorizonLink   = QH_LINK (NULL, 0, TRUE);
-  QhHw->DeviceAddr    = Ep->DevAddr;
-  QhHw->Inactive      = 0;
-  QhHw->EpNum         = Ep->EpAddr;
-  QhHw->EpSpeed       = Ep->DevSpeed;
-  QhHw->DtCtrl        = 0;
-  QhHw->ReclaimHead   = 0;
-  QhHw->MaxPacketLen  = (UINT32) Ep->MaxPacket;
-  QhHw->CtrlEp        = 0;
-  QhHw->NakReload     = QH_NAK_RELOAD;
-  QhHw->HubAddr       = Ep->HubAddr;
-  QhHw->PortNum       = Ep->HubPort;
-  QhHw->Multiplier    = 1;
-  QhHw->DataToggle    = Ep->Toggle;
+  QhHw               = &Qh->QhHw;
+  QhHw->HorizonLink  = QH_LINK (NULL, 0, TRUE);
+  QhHw->DeviceAddr   = Ep->DevAddr;
+  QhHw->Inactive     = 0;
+  QhHw->EpNum        = Ep->EpAddr;
+  QhHw->EpSpeed      = Ep->DevSpeed;
+  QhHw->DtCtrl       = 0;
+  QhHw->ReclaimHead  = 0;
+  QhHw->MaxPacketLen = (UINT32)Ep->MaxPacket;
+  QhHw->CtrlEp       = 0;
+  QhHw->NakReload    = QH_NAK_RELOAD;
+  QhHw->HubAddr      = Ep->HubAddr;
+  QhHw->PortNum      = Ep->HubPort;
+  QhHw->Multiplier   = 1;
+  QhHw->DataToggle   = Ep->Toggle;
 
   if (Ep->DevSpeed != EFI_USB_SPEED_HIGH) {
     QhHw->Status |= QTD_STAT_DO_SS;
   }
 
   switch (Ep->Type) {
-  case EHC_CTRL_TRANSFER:
-    //
-    // Special initialization for the control transfer:
-    // 1. Control transfer initialize data toggle from each QTD
-    // 2. Set the Control Endpoint Flag (C) for low/full speed endpoint.
-    //
-    QhHw->DtCtrl = 1;
+    case EHC_CTRL_TRANSFER:
+      //
+      // Special initialization for the control transfer:
+      // 1. Control transfer initialize data toggle from each QTD
+      // 2. Set the Control Endpoint Flag (C) for low/full speed endpoint.
+      //
+      QhHw->DtCtrl = 1;
 
-    if (Ep->DevSpeed != EFI_USB_SPEED_HIGH) {
-      QhHw->CtrlEp = 1;
-    }
-    break;
+      if (Ep->DevSpeed != EFI_USB_SPEED_HIGH) {
+        QhHw->CtrlEp = 1;
+      }
 
-  case EHC_INT_TRANSFER_ASYNC:
-  case EHC_INT_TRANSFER_SYNC:
-    //
-    // Special initialization for the interrupt transfer
-    // to set the S-Mask and C-Mask
-    //
-    QhHw->NakReload = 0;
-    EhcInitIntQh (Ep, QhHw);
-    break;
+      break;
 
-  case EHC_BULK_TRANSFER:
-    if ((Ep->DevSpeed == EFI_USB_SPEED_HIGH) && (Ep->Direction == EfiUsbDataOut)) {
-      QhHw->Status |= QTD_STAT_DO_PING;
-    }
+    case EHC_INT_TRANSFER_ASYNC:
+    case EHC_INT_TRANSFER_SYNC:
+      //
+      // Special initialization for the interrupt transfer
+      // to set the S-Mask and C-Mask
+      //
+      QhHw->NakReload = 0;
+      EhcInitIntQh (Ep, QhHw);
+      break;
+
+    case EHC_BULK_TRANSFER:
+      if ((Ep->DevSpeed == EFI_USB_SPEED_HIGH) && (Ep->Direction == EfiUsbDataOut)) {
+        QhHw->Status |= QTD_STAT_DO_PING;
+      }
 
-    break;
+      break;
   }
 
   return Qh;
 }
 
-
 /**
   Convert the poll interval from application to that
   be used by EHCI interface data structure. Only need
@@ -260,10 +255,10 @@ EhcCreateQh (
 **/
 UINTN
 EhcConvertPollRate (
-  IN  UINTN               Interval
+  IN  UINTN  Interval
   )
 {
-  UINTN                   BitCount;
+  UINTN  BitCount;
 
   if (Interval == 0) {
     return 1;
@@ -282,7 +277,6 @@ EhcConvertPollRate (
   return (UINTN)1 << (BitCount - 1);
 }
 
-
 /**
   Free a list of QTDs.
 
@@ -292,13 +286,13 @@ EhcConvertPollRate (
 **/
 VOID
 EhcFreeQtds (
-  IN USB2_HC_DEV          *Ehc,
-  IN LIST_ENTRY           *Qtds
+  IN USB2_HC_DEV  *Ehc,
+  IN LIST_ENTRY   *Qtds
   )
 {
-  LIST_ENTRY              *Entry;
-  LIST_ENTRY              *Next;
-  EHC_QTD                 *Qtd;
+  LIST_ENTRY  *Entry;
+  LIST_ENTRY  *Next;
+  EHC_QTD     *Qtd;
 
   BASE_LIST_FOR_EACH_SAFE (Entry, Next, Qtds) {
     Qtd = EFI_LIST_CONTAINER (Entry, EHC_QTD, QtdList);
@@ -308,7 +302,6 @@ EhcFreeQtds (
   }
 }
 
-
 /**
   Free an allocated URB. It is possible for it to be partially inited.
 
@@ -318,11 +311,11 @@ EhcFreeQtds (
 **/
 VOID
 EhcFreeUrb (
-  IN USB2_HC_DEV          *Ehc,
-  IN URB                  *Urb
+  IN USB2_HC_DEV  *Ehc,
+  IN URB          *Urb
   )
 {
-  EFI_PCI_IO_PROTOCOL       *PciIo;
+  EFI_PCI_IO_PROTOCOL  *PciIo;
 
   PciIo = Ehc->PciIo;
 
@@ -346,7 +339,6 @@ EhcFreeUrb (
   gBS->FreePool (Urb);
 }
 
-
 /**
   Create a list of QTDs for the URB.
 
@@ -359,21 +351,21 @@ EhcFreeUrb (
 **/
 EFI_STATUS
 EhcCreateQtds (
-  IN USB2_HC_DEV          *Ehc,
-  IN URB                  *Urb
+  IN USB2_HC_DEV  *Ehc,
+  IN URB          *Urb
   )
 {
-  USB_ENDPOINT            *Ep;
-  EHC_QH                  *Qh;
-  EHC_QTD                 *Qtd;
-  EHC_QTD                 *StatusQtd;
-  EHC_QTD                 *NextQtd;
-  LIST_ENTRY              *Entry;
-  UINT32                  AlterNext;
-  UINT8                   Toggle;
-  UINTN                   Len;
-  UINT8                   Pid;
-  EFI_PHYSICAL_ADDRESS    PhyAddr;
+  USB_ENDPOINT          *Ep;
+  EHC_QH                *Qh;
+  EHC_QTD               *Qtd;
+  EHC_QTD               *StatusQtd;
+  EHC_QTD               *NextQtd;
+  LIST_ENTRY            *Entry;
+  UINT32                AlterNext;
+  UINT8                 Toggle;
+  UINTN                 Len;
+  UINT8                 Pid;
+  EFI_PHYSICAL_ADDRESS  PhyAddr;
 
   ASSERT ((Urb != NULL) && (Urb->Qh != NULL));
 
@@ -389,7 +381,7 @@ EhcCreateQtds (
   StatusQtd = NULL;
   AlterNext = QTD_LINK (NULL, TRUE);
 
-  PhyAddr   = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Ehc->ShortReadStop, sizeof (EHC_QTD));
+  PhyAddr = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Ehc->ShortReadStop, sizeof (EHC_QTD));
   if (Ep->Direction == EfiUsbDataIn) {
     AlterNext = QTD_LINK (PhyAddr, FALSE);
   }
@@ -448,8 +440,8 @@ EhcCreateQtds (
   while (Len < Urb->DataLen) {
     Qtd = EhcCreateQtd (
             Ehc,
-            (UINT8 *) Urb->Data + Len,
-            (UINT8 *) Urb->DataPhy + Len,
+            (UINT8 *)Urb->Data + Len,
+            (UINT8 *)Urb->DataPhy + Len,
             Urb->DataLen - Len,
             Pid,
             Toggle,
@@ -467,7 +459,7 @@ EhcCreateQtds (
     // Switch the Toggle bit if odd number of packets are included in the QTD.
     //
     if (((Qtd->DataLen + Ep->MaxPacket - 1) / Ep->MaxPacket) % 2) {
-      Toggle = (UINT8) (1 - Toggle);
+      Toggle = (UINT8)(1 - Toggle);
     }
 
     Len += Qtd->DataLen;
@@ -493,17 +485,17 @@ EhcCreateQtds (
       break;
     }
 
-    NextQtd             = EFI_LIST_CONTAINER (Entry->ForwardLink, EHC_QTD, QtdList);
-    PhyAddr             = UsbHcGetPciAddressForHostMem (Ehc->MemPool, NextQtd, sizeof (EHC_QTD));
-    Qtd->QtdHw.NextQtd  = QTD_LINK (PhyAddr, FALSE);
+    NextQtd            = EFI_LIST_CONTAINER (Entry->ForwardLink, EHC_QTD, QtdList);
+    PhyAddr            = UsbHcGetPciAddressForHostMem (Ehc->MemPool, NextQtd, sizeof (EHC_QTD));
+    Qtd->QtdHw.NextQtd = QTD_LINK (PhyAddr, FALSE);
   }
 
   //
   // Link the QTDs to the queue head
   //
-  NextQtd           = EFI_LIST_CONTAINER (Qh->Qtds.ForwardLink, EHC_QTD, QtdList);
-  PhyAddr           = UsbHcGetPciAddressForHostMem (Ehc->MemPool, NextQtd, sizeof (EHC_QTD));
-  Qh->QhHw.NextQtd  = QTD_LINK (PhyAddr, FALSE);
+  NextQtd          = EFI_LIST_CONTAINER (Qh->Qtds.ForwardLink, EHC_QTD, QtdList);
+  PhyAddr          = UsbHcGetPciAddressForHostMem (Ehc->MemPool, NextQtd, sizeof (EHC_QTD));
+  Qh->QhHw.NextQtd = QTD_LINK (PhyAddr, FALSE);
   return EFI_SUCCESS;
 
 ON_ERROR:
@@ -511,7 +503,6 @@ ON_ERROR:
   return EFI_OUT_OF_RESOURCES;
 }
 
-
 /**
   Create a new URB and its associated QTD.
 
@@ -535,30 +526,30 @@ ON_ERROR:
 **/
 URB *
 EhcCreateUrb (
-  IN USB2_HC_DEV                        *Ehc,
-  IN UINT8                              DevAddr,
-  IN UINT8                              EpAddr,
-  IN UINT8                              DevSpeed,
-  IN UINT8                              Toggle,
-  IN UINTN                              MaxPacket,
-  IN EFI_USB2_HC_TRANSACTION_TRANSLATOR *Hub,
-  IN UINTN                              Type,
-  IN EFI_USB_DEVICE_REQUEST             *Request,
-  IN VOID                               *Data,
-  IN UINTN                              DataLen,
-  IN EFI_ASYNC_USB_TRANSFER_CALLBACK    Callback,
-  IN VOID                               *Context,
-  IN UINTN                              Interval
+  IN USB2_HC_DEV                         *Ehc,
+  IN UINT8                               DevAddr,
+  IN UINT8                               EpAddr,
+  IN UINT8                               DevSpeed,
+  IN UINT8                               Toggle,
+  IN UINTN                               MaxPacket,
+  IN EFI_USB2_HC_TRANSACTION_TRANSLATOR  *Hub,
+  IN UINTN                               Type,
+  IN EFI_USB_DEVICE_REQUEST              *Request,
+  IN VOID                                *Data,
+  IN UINTN                               DataLen,
+  IN EFI_ASYNC_USB_TRANSFER_CALLBACK     Callback,
+  IN VOID                                *Context,
+  IN UINTN                               Interval
   )
 {
-  USB_ENDPOINT                  *Ep;
-  EFI_PHYSICAL_ADDRESS          PhyAddr;
-  EFI_PCI_IO_PROTOCOL_OPERATION MapOp;
-  EFI_PCI_IO_PROTOCOL           *PciIo;
-  EFI_STATUS                    Status;
-  UINTN                         Len;
-  URB                           *Urb;
-  VOID                          *Map;
+  USB_ENDPOINT                   *Ep;
+  EFI_PHYSICAL_ADDRESS           PhyAddr;
+  EFI_PCI_IO_PROTOCOL_OPERATION  MapOp;
+  EFI_PCI_IO_PROTOCOL            *PciIo;
+  EFI_STATUS                     Status;
+  UINTN                          Len;
+  URB                            *Urb;
+  VOID                           *Map;
 
   Urb = AllocateZeroPool (sizeof (URB));
 
@@ -566,38 +557,38 @@ EhcCreateUrb (
     return NULL;
   }
 
-  Urb->Signature  = EHC_URB_SIG;
+  Urb->Signature = EHC_URB_SIG;
   InitializeListHead (&Urb->UrbList);
 
-  Ep              = &Urb->Ep;
-  Ep->DevAddr     = DevAddr;
-  Ep->EpAddr      = (UINT8) (EpAddr & 0x0F);
-  Ep->Direction   = (((EpAddr & 0x80) != 0) ? EfiUsbDataIn : EfiUsbDataOut);
-  Ep->DevSpeed    = DevSpeed;
-  Ep->MaxPacket   = MaxPacket;
+  Ep            = &Urb->Ep;
+  Ep->DevAddr   = DevAddr;
+  Ep->EpAddr    = (UINT8)(EpAddr & 0x0F);
+  Ep->Direction = (((EpAddr & 0x80) != 0) ? EfiUsbDataIn : EfiUsbDataOut);
+  Ep->DevSpeed  = DevSpeed;
+  Ep->MaxPacket = MaxPacket;
 
-  Ep->HubAddr     = 0;
-  Ep->HubPort     = 0;
+  Ep->HubAddr = 0;
+  Ep->HubPort = 0;
 
   if (DevSpeed != EFI_USB_SPEED_HIGH) {
     ASSERT (Hub != NULL);
 
-    Ep->HubAddr   = Hub->TranslatorHubAddress;
-    Ep->HubPort   = Hub->TranslatorPortNumber;
+    Ep->HubAddr = Hub->TranslatorHubAddress;
+    Ep->HubPort = Hub->TranslatorPortNumber;
   }
 
-  Ep->Toggle      = Toggle;
-  Ep->Type        = Type;
-  Ep->PollRate    = EhcConvertPollRate (Interval);
+  Ep->Toggle   = Toggle;
+  Ep->Type     = Type;
+  Ep->PollRate = EhcConvertPollRate (Interval);
 
-  Urb->Request    = Request;
-  Urb->Data       = Data;
-  Urb->DataLen    = DataLen;
-  Urb->Callback   = Callback;
-  Urb->Context    = Context;
+  Urb->Request  = Request;
+  Urb->Data     = Data;
+  Urb->DataLen  = DataLen;
+  Urb->Callback = Callback;
+  Urb->Context  = Context;
 
-  PciIo           = Ehc->PciIo;
-  Urb->Qh         = EhcCreateQh (Ehc, &Urb->Ep);
+  PciIo   = Ehc->PciIo;
+  Urb->Qh = EhcCreateQh (Ehc, &Urb->Ep);
 
   if (Urb->Qh == NULL) {
     goto ON_ERROR;
@@ -607,20 +598,20 @@ EhcCreateUrb (
   // Map the request and user data
   //
   if (Request != NULL) {
-    Len     = sizeof (EFI_USB_DEVICE_REQUEST);
-    MapOp   = EfiPciIoOperationBusMasterRead;
-    Status  = PciIo->Map (PciIo, MapOp, Request, &Len, &PhyAddr, &Map);
+    Len    = sizeof (EFI_USB_DEVICE_REQUEST);
+    MapOp  = EfiPciIoOperationBusMasterRead;
+    Status = PciIo->Map (PciIo, MapOp, Request, &Len, &PhyAddr, &Map);
 
     if (EFI_ERROR (Status) || (Len != sizeof (EFI_USB_DEVICE_REQUEST))) {
       goto ON_ERROR;
     }
 
-    Urb->RequestPhy = (VOID *) ((UINTN) PhyAddr);
+    Urb->RequestPhy = (VOID *)((UINTN)PhyAddr);
     Urb->RequestMap = Map;
   }
 
   if (Data != NULL) {
-    Len     = DataLen;
+    Len = DataLen;
 
     if (Ep->Direction == EfiUsbDataIn) {
       MapOp = EfiPciIoOperationBusMasterWrite;
@@ -628,14 +619,14 @@ EhcCreateUrb (
       MapOp = EfiPciIoOperationBusMasterRead;
     }
 
-    Status  = PciIo->Map (PciIo, MapOp, Data, &Len, &PhyAddr, &Map);
+    Status = PciIo->Map (PciIo, MapOp, Data, &Len, &PhyAddr, &Map);
 
     if (EFI_ERROR (Status) || (Len != DataLen)) {
       goto ON_ERROR;
     }
 
-    Urb->DataPhy  = (VOID *) ((UINTN) PhyAddr);
-    Urb->DataMap  = Map;
+    Urb->DataPhy = (VOID *)((UINTN)PhyAddr);
+    Urb->DataMap = Map;
   }
 
   Status = EhcCreateQtds (Ehc, Urb);

+ 147 - 154
MdeModulePkg/Bus/Pci/EhciDxe/EhciUrb.h

@@ -11,7 +11,6 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #ifndef _EFI_EHCI_URB_H_
 #define _EFI_EHCI_URB_H_
 
-
 typedef struct _EHC_QTD  EHC_QTD;
 typedef struct _EHC_QH   EHC_QH;
 typedef struct _URB      URB;
@@ -24,51 +23,51 @@ typedef struct _URB      URB;
 #define EHC_INT_TRANSFER_SYNC   0x04
 #define EHC_INT_TRANSFER_ASYNC  0x08
 
-#define EHC_QTD_SIG             SIGNATURE_32 ('U', 'S', 'B', 'T')
-#define EHC_QH_SIG              SIGNATURE_32 ('U', 'S', 'B', 'H')
-#define EHC_URB_SIG             SIGNATURE_32 ('U', 'S', 'B', 'R')
+#define EHC_QTD_SIG  SIGNATURE_32 ('U', 'S', 'B', 'T')
+#define EHC_QH_SIG   SIGNATURE_32 ('U', 'S', 'B', 'H')
+#define EHC_URB_SIG  SIGNATURE_32 ('U', 'S', 'B', 'R')
 
 //
 // Hardware related bit definitions
 //
-#define EHC_TYPE_ITD            0x00
-#define EHC_TYPE_QH             0x02
-#define EHC_TYPE_SITD           0x04
-#define EHC_TYPE_FSTN           0x06
-
-#define QH_NAK_RELOAD           3
-#define QH_HSHBW_MULTI          1
-
-#define QTD_MAX_ERR             3
-#define QTD_PID_OUTPUT          0x00
-#define QTD_PID_INPUT           0x01
-#define QTD_PID_SETUP           0x02
-
-#define QTD_STAT_DO_OUT         0
-#define QTD_STAT_DO_SS          0
-#define QTD_STAT_DO_PING        0x01
-#define QTD_STAT_DO_CS          0x02
-#define QTD_STAT_TRANS_ERR      0x08
-#define QTD_STAT_BABBLE_ERR     0x10
-#define QTD_STAT_BUFF_ERR       0x20
-#define QTD_STAT_HALTED         0x40
-#define QTD_STAT_ACTIVE         0x80
-#define QTD_STAT_ERR_MASK       (QTD_STAT_TRANS_ERR | QTD_STAT_BABBLE_ERR | QTD_STAT_BUFF_ERR)
-
-#define QTD_MAX_BUFFER          4
-#define QTD_BUF_LEN             4096
-#define QTD_BUF_MASK            0x0FFF
-
-#define QH_MICROFRAME_0         0x01
-#define QH_MICROFRAME_1         0x02
-#define QH_MICROFRAME_2         0x04
-#define QH_MICROFRAME_3         0x08
-#define QH_MICROFRAME_4         0x10
-#define QH_MICROFRAME_5         0x20
-#define QH_MICROFRAME_6         0x40
-#define QH_MICROFRAME_7         0x80
-
-#define USB_ERR_SHORT_PACKET    0x200
+#define EHC_TYPE_ITD   0x00
+#define EHC_TYPE_QH    0x02
+#define EHC_TYPE_SITD  0x04
+#define EHC_TYPE_FSTN  0x06
+
+#define QH_NAK_RELOAD   3
+#define QH_HSHBW_MULTI  1
+
+#define QTD_MAX_ERR     3
+#define QTD_PID_OUTPUT  0x00
+#define QTD_PID_INPUT   0x01
+#define QTD_PID_SETUP   0x02
+
+#define QTD_STAT_DO_OUT      0
+#define QTD_STAT_DO_SS       0
+#define QTD_STAT_DO_PING     0x01
+#define QTD_STAT_DO_CS       0x02
+#define QTD_STAT_TRANS_ERR   0x08
+#define QTD_STAT_BABBLE_ERR  0x10
+#define QTD_STAT_BUFF_ERR    0x20
+#define QTD_STAT_HALTED      0x40
+#define QTD_STAT_ACTIVE      0x80
+#define QTD_STAT_ERR_MASK    (QTD_STAT_TRANS_ERR | QTD_STAT_BABBLE_ERR | QTD_STAT_BUFF_ERR)
+
+#define QTD_MAX_BUFFER  4
+#define QTD_BUF_LEN     4096
+#define QTD_BUF_MASK    0x0FFF
+
+#define QH_MICROFRAME_0  0x01
+#define QH_MICROFRAME_1  0x02
+#define QH_MICROFRAME_2  0x04
+#define QH_MICROFRAME_3  0x08
+#define QH_MICROFRAME_4  0x10
+#define QH_MICROFRAME_5  0x20
+#define QH_MICROFRAME_6  0x40
+#define QH_MICROFRAME_7  0x80
+
+#define USB_ERR_SHORT_PACKET  0x200
 
 //
 // Fill in the hardware link point: pass in a EHC_QH/QH_HW
@@ -77,7 +76,7 @@ typedef struct _URB      URB;
 #define QH_LINK(Addr, Type, Term) \
           ((UINT32) ((EHC_LOW_32BIT (Addr) & 0xFFFFFFE0) | (Type) | ((Term) ? 1 : 0)))
 
-#define QTD_LINK(Addr, Term)      QH_LINK((Addr), 0, (Term))
+#define QTD_LINK(Addr, Term)  QH_LINK((Addr), 0, (Term))
 
 //
 // The defination of EHCI hardware used data structure for
@@ -87,77 +86,76 @@ typedef struct _URB      URB;
 //
 #pragma pack(1)
 typedef struct {
-  UINT32                  NextQtd;
-  UINT32                  AltNext;
-
-  UINT32                  Status       : 8;
-  UINT32                  Pid          : 2;
-  UINT32                  ErrCnt       : 2;
-  UINT32                  CurPage      : 3;
-  UINT32                  Ioc          : 1;
-  UINT32                  TotalBytes   : 15;
-  UINT32                  DataToggle   : 1;
-
-  UINT32                  Page[5];
-  UINT32                  PageHigh[5];
+  UINT32    NextQtd;
+  UINT32    AltNext;
+
+  UINT32    Status     : 8;
+  UINT32    Pid        : 2;
+  UINT32    ErrCnt     : 2;
+  UINT32    CurPage    : 3;
+  UINT32    Ioc        : 1;
+  UINT32    TotalBytes : 15;
+  UINT32    DataToggle : 1;
+
+  UINT32    Page[5];
+  UINT32    PageHigh[5];
 } QTD_HW;
 
 typedef struct {
-  UINT32                  HorizonLink;
+  UINT32    HorizonLink;
   //
   // Endpoint capabilities/Characteristics DWord 1 and DWord 2
   //
-  UINT32                  DeviceAddr   : 7;
-  UINT32                  Inactive     : 1;
-  UINT32                  EpNum        : 4;
-  UINT32                  EpSpeed      : 2;
-  UINT32                  DtCtrl       : 1;
-  UINT32                  ReclaimHead  : 1;
-  UINT32                  MaxPacketLen : 11;
-  UINT32                  CtrlEp       : 1;
-  UINT32                  NakReload    : 4;
-
-  UINT32                  SMask        : 8;
-  UINT32                  CMask        : 8;
-  UINT32                  HubAddr      : 7;
-  UINT32                  PortNum      : 7;
-  UINT32                  Multiplier   : 2;
+  UINT32    DeviceAddr   : 7;
+  UINT32    Inactive     : 1;
+  UINT32    EpNum        : 4;
+  UINT32    EpSpeed      : 2;
+  UINT32    DtCtrl       : 1;
+  UINT32    ReclaimHead  : 1;
+  UINT32    MaxPacketLen : 11;
+  UINT32    CtrlEp       : 1;
+  UINT32    NakReload    : 4;
+
+  UINT32    SMask        : 8;
+  UINT32    CMask        : 8;
+  UINT32    HubAddr      : 7;
+  UINT32    PortNum      : 7;
+  UINT32    Multiplier   : 2;
 
   //
   // Transaction execution overlay area
   //
-  UINT32                  CurQtd;
-  UINT32                  NextQtd;
-  UINT32                  AltQtd;
-
-  UINT32                  Status       : 8;
-  UINT32                  Pid          : 2;
-  UINT32                  ErrCnt       : 2;
-  UINT32                  CurPage      : 3;
-  UINT32                  Ioc          : 1;
-  UINT32                  TotalBytes   : 15;
-  UINT32                  DataToggle   : 1;
-
-  UINT32                  Page[5];
-  UINT32                  PageHigh[5];
+  UINT32    CurQtd;
+  UINT32    NextQtd;
+  UINT32    AltQtd;
+
+  UINT32    Status     : 8;
+  UINT32    Pid        : 2;
+  UINT32    ErrCnt     : 2;
+  UINT32    CurPage    : 3;
+  UINT32    Ioc        : 1;
+  UINT32    TotalBytes : 15;
+  UINT32    DataToggle : 1;
+
+  UINT32    Page[5];
+  UINT32    PageHigh[5];
 } QH_HW;
 #pragma pack()
 
-
 //
 // Endpoint address and its capabilities
 //
 typedef struct _USB_ENDPOINT {
-  UINT8                   DevAddr;
-  UINT8                   EpAddr;     // Endpoint address, no direction encoded in
-  EFI_USB_DATA_DIRECTION  Direction;
-  UINT8                   DevSpeed;
-  UINTN                   MaxPacket;
-  UINT8                   HubAddr;
-  UINT8                   HubPort;
-  UINT8                   Toggle;     // Data toggle, not used for control transfer
-  UINTN                   Type;
-  UINTN                   PollRate;   // Polling interval used by EHCI
+  UINT8                     DevAddr;
+  UINT8                     EpAddr;   // Endpoint address, no direction encoded in
+  EFI_USB_DATA_DIRECTION    Direction;
+  UINT8                     DevSpeed;
+  UINTN                     MaxPacket;
+  UINT8                     HubAddr;
+  UINT8                     HubPort;
+  UINT8                     Toggle;   // Data toggle, not used for control transfer
+  UINTN                     Type;
+  UINTN                     PollRate; // Polling interval used by EHCI
 } USB_ENDPOINT;
 
 //
@@ -165,11 +163,11 @@ typedef struct _USB_ENDPOINT {
 // QTD generated from a URB. Don't add fields before QtdHw.
 //
 struct _EHC_QTD {
-  QTD_HW                  QtdHw;
-  UINT32                  Signature;
-  LIST_ENTRY              QtdList;   // The list of QTDs to one end point
-  UINT8                   *Data;     // Buffer of the original data
-  UINTN                   DataLen;   // Original amount of data in this QTD
+  QTD_HW        QtdHw;
+  UINT32        Signature;
+  LIST_ENTRY    QtdList;             // The list of QTDs to one end point
+  UINT8         *Data;               // Buffer of the original data
+  UINTN         DataLen;             // Original amount of data in this QTD
 };
 
 //
@@ -188,11 +186,11 @@ struct _EHC_QTD {
 // as the reclamation header. New transfer is inserted after this QH.
 //
 struct _EHC_QH {
-  QH_HW                   QhHw;
-  UINT32                  Signature;
-  EHC_QH                  *NextQh;    // The queue head pointed to by horizontal link
-  LIST_ENTRY              Qtds;       // The list of QTDs to this queue head
-  UINTN                   Interval;
+  QH_HW         QhHw;
+  UINT32        Signature;
+  EHC_QH        *NextQh;              // The queue head pointed to by horizontal link
+  LIST_ENTRY    Qtds;                 // The list of QTDs to this queue head
+  UINTN         Interval;
 };
 
 //
@@ -200,38 +198,36 @@ struct _EHC_QH {
 // usb requests.
 //
 struct _URB {
-  UINT32                          Signature;
-  LIST_ENTRY                      UrbList;
+  UINT32                             Signature;
+  LIST_ENTRY                         UrbList;
 
   //
   // Transaction information
   //
-  USB_ENDPOINT                    Ep;
-  EFI_USB_DEVICE_REQUEST          *Request;     // Control transfer only
-  VOID                            *RequestPhy;  // Address of the mapped request
-  VOID                            *RequestMap;
-  VOID                            *Data;
-  UINTN                           DataLen;
-  VOID                            *DataPhy;     // Address of the mapped user data
-  VOID                            *DataMap;
-  EFI_ASYNC_USB_TRANSFER_CALLBACK Callback;
-  VOID                            *Context;
+  USB_ENDPOINT                       Ep;
+  EFI_USB_DEVICE_REQUEST             *Request;    // Control transfer only
+  VOID                               *RequestPhy; // Address of the mapped request
+  VOID                               *RequestMap;
+  VOID                               *Data;
+  UINTN                              DataLen;
+  VOID                               *DataPhy;  // Address of the mapped user data
+  VOID                               *DataMap;
+  EFI_ASYNC_USB_TRANSFER_CALLBACK    Callback;
+  VOID                               *Context;
 
   //
   // Schedule data
   //
-  EHC_QH                          *Qh;
+  EHC_QH                             *Qh;
 
   //
   // Transaction result
   //
-  UINT32                          Result;
-  UINTN                           Completed;    // completed data length
-  UINT8                           DataToggle;
+  UINT32                             Result;
+  UINTN                              Completed; // completed data length
+  UINT8                              DataToggle;
 };
 
-
-
 /**
   Create a single QTD to hold the data.
 
@@ -248,17 +244,15 @@ struct _URB {
 **/
 EHC_QTD *
 EhcCreateQtd (
-  IN USB2_HC_DEV          *Ehc,
-  IN UINT8                *Data,
-  IN UINT8                *DataPhy,
-  IN UINTN                DataLen,
-  IN UINT8                PktId,
-  IN UINT8                Toggle,
-  IN UINTN                MaxPacket
+  IN USB2_HC_DEV  *Ehc,
+  IN UINT8        *Data,
+  IN UINT8        *DataPhy,
+  IN UINTN        DataLen,
+  IN UINT8        PktId,
+  IN UINT8        Toggle,
+  IN UINTN        MaxPacket
   );
 
-
-
 /**
   Allocate and initialize a EHCI queue head.
 
@@ -270,11 +264,10 @@ EhcCreateQtd (
 **/
 EHC_QH *
 EhcCreateQh (
-  IN USB2_HC_DEV          *Ehci,
-  IN USB_ENDPOINT         *Ep
+  IN USB2_HC_DEV   *Ehci,
+  IN USB_ENDPOINT  *Ep
   );
 
-
 /**
   Free an allocated URB. It is possible for it to be partially inited.
 
@@ -284,11 +277,10 @@ EhcCreateQh (
 **/
 VOID
 EhcFreeUrb (
-  IN USB2_HC_DEV          *Ehc,
-  IN URB                  *Urb
+  IN USB2_HC_DEV  *Ehc,
+  IN URB          *Urb
   );
 
-
 /**
   Create a new URB and its associated QTD.
 
@@ -312,19 +304,20 @@ EhcFreeUrb (
 **/
 URB *
 EhcCreateUrb (
-  IN USB2_HC_DEV                        *Ehc,
-  IN UINT8                              DevAddr,
-  IN UINT8                              EpAddr,
-  IN UINT8                              DevSpeed,
-  IN UINT8                              Toggle,
-  IN UINTN                              MaxPacket,
-  IN EFI_USB2_HC_TRANSACTION_TRANSLATOR *Hub,
-  IN UINTN                              Type,
-  IN EFI_USB_DEVICE_REQUEST             *Request,
-  IN VOID                               *Data,
-  IN UINTN                              DataLen,
-  IN EFI_ASYNC_USB_TRANSFER_CALLBACK    Callback,
-  IN VOID                               *Context,
-  IN UINTN                              Interval
+  IN USB2_HC_DEV                         *Ehc,
+  IN UINT8                               DevAddr,
+  IN UINT8                               EpAddr,
+  IN UINT8                               DevSpeed,
+  IN UINT8                               Toggle,
+  IN UINTN                               MaxPacket,
+  IN EFI_USB2_HC_TRANSACTION_TRANSLATOR  *Hub,
+  IN UINTN                               Type,
+  IN EFI_USB_DEVICE_REQUEST              *Request,
+  IN VOID                                *Data,
+  IN UINTN                               DataLen,
+  IN EFI_ASYNC_USB_TRANSFER_CALLBACK     Callback,
+  IN VOID                                *Context,
+  IN UINTN                               Interval
   );
+
 #endif

+ 80 - 92
MdeModulePkg/Bus/Pci/EhciDxe/UsbHcMem.c

@@ -7,10 +7,8 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 
 **/
 
-
 #include "Ehci.h"
 
-
 /**
   Allocate a block of memory to be used by the buffer pool.
 
@@ -22,17 +20,17 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 USBHC_MEM_BLOCK *
 UsbHcAllocMemBlock (
-  IN  USBHC_MEM_POOL      *Pool,
-  IN  UINTN               Pages
+  IN  USBHC_MEM_POOL  *Pool,
+  IN  UINTN           Pages
   )
 {
-  USBHC_MEM_BLOCK         *Block;
-  EFI_PCI_IO_PROTOCOL     *PciIo;
-  VOID                    *BufHost;
-  VOID                    *Mapping;
-  EFI_PHYSICAL_ADDRESS    MappedAddr;
-  UINTN                   Bytes;
-  EFI_STATUS              Status;
+  USBHC_MEM_BLOCK       *Block;
+  EFI_PCI_IO_PROTOCOL   *PciIo;
+  VOID                  *BufHost;
+  VOID                  *Mapping;
+  EFI_PHYSICAL_ADDRESS  MappedAddr;
+  UINTN                 Bytes;
+  EFI_STATUS            Status;
 
   PciIo = Pool->PciIo;
 
@@ -47,9 +45,9 @@ UsbHcAllocMemBlock (
   //
   ASSERT (USBHC_MEM_UNIT * 8 <= EFI_PAGE_SIZE);
 
-  Block->BufLen   = EFI_PAGES_TO_SIZE (Pages);
-  Block->BitsLen  = Block->BufLen / (USBHC_MEM_UNIT * 8);
-  Block->Bits     = AllocateZeroPool (Block->BitsLen);
+  Block->BufLen  = EFI_PAGES_TO_SIZE (Pages);
+  Block->BitsLen = Block->BufLen / (USBHC_MEM_UNIT * 8);
+  Block->Bits    = AllocateZeroPool (Block->BitsLen);
 
   if (Block->Bits == NULL) {
     gBS->FreePool (Block);
@@ -73,7 +71,7 @@ UsbHcAllocMemBlock (
     goto FREE_BITARRAY;
   }
 
-  Bytes = EFI_PAGES_TO_SIZE (Pages);
+  Bytes  = EFI_PAGES_TO_SIZE (Pages);
   Status = PciIo->Map (
                     PciIo,
                     EfiPciIoOperationBusMasterCommonBuffer,
@@ -96,9 +94,9 @@ UsbHcAllocMemBlock (
     goto FREE_BUFFER;
   }
 
-  Block->BufHost  = BufHost;
-  Block->Buf      = (UINT8 *) ((UINTN) MappedAddr);
-  Block->Mapping  = Mapping;
+  Block->BufHost = BufHost;
+  Block->Buf     = (UINT8 *)((UINTN)MappedAddr);
+  Block->Mapping = Mapping;
 
   return Block;
 
@@ -111,7 +109,6 @@ FREE_BITARRAY:
   return NULL;
 }
 
-
 /**
   Free the memory block from the memory pool.
 
@@ -121,11 +118,11 @@ FREE_BITARRAY:
 **/
 VOID
 UsbHcFreeMemBlock (
-  IN USBHC_MEM_POOL       *Pool,
-  IN USBHC_MEM_BLOCK      *Block
+  IN USBHC_MEM_POOL   *Pool,
+  IN USBHC_MEM_BLOCK  *Block
   )
 {
-  EFI_PCI_IO_PROTOCOL     *PciIo;
+  EFI_PCI_IO_PROTOCOL  *PciIo;
 
   ASSERT ((Pool != NULL) && (Block != NULL));
 
@@ -141,7 +138,6 @@ UsbHcFreeMemBlock (
   gBS->FreePool (Block);
 }
 
-
 /**
   Alloc some memory from the block.
 
@@ -154,22 +150,22 @@ UsbHcFreeMemBlock (
 **/
 VOID *
 UsbHcAllocMemFromBlock (
-  IN  USBHC_MEM_BLOCK     *Block,
-  IN  UINTN               Units
+  IN  USBHC_MEM_BLOCK  *Block,
+  IN  UINTN            Units
   )
 {
-  UINTN                   Byte;
-  UINT8                   Bit;
-  UINTN                   StartByte;
-  UINT8                   StartBit;
-  UINTN                   Available;
-  UINTN                   Count;
+  UINTN  Byte;
+  UINT8  Bit;
+  UINTN  StartByte;
+  UINT8  StartBit;
+  UINTN  Available;
+  UINTN  Count;
 
   ASSERT ((Block != 0) && (Units != 0));
 
-  StartByte  = 0;
-  StartBit   = 0;
-  Available  = 0;
+  StartByte = 0;
+  StartBit  = 0;
+  Available = 0;
 
   for (Byte = 0, Bit = 0; Byte < Block->BitsLen;) {
     //
@@ -185,13 +181,12 @@ UsbHcAllocMemFromBlock (
       }
 
       NEXT_BIT (Byte, Bit);
-
     } else {
       NEXT_BIT (Byte, Bit);
 
-      Available  = 0;
-      StartByte  = Byte;
-      StartBit   = Bit;
+      Available = 0;
+      StartByte = Byte;
+      StartBit  = Bit;
     }
   }
 
@@ -202,13 +197,13 @@ UsbHcAllocMemFromBlock (
   //
   // Mark the memory as allocated
   //
-  Byte  = StartByte;
-  Bit   = StartBit;
+  Byte = StartByte;
+  Bit  = StartBit;
 
   for (Count = 0; Count < Units; Count++) {
     ASSERT (!USB_HC_BIT_IS_SET (Block->Bits[Byte], Bit));
 
-    Block->Bits[Byte] = (UINT8) (Block->Bits[Byte] | USB_HC_BIT (Bit));
+    Block->Bits[Byte] = (UINT8)(Block->Bits[Byte] | USB_HC_BIT (Bit));
     NEXT_BIT (Byte, Bit);
   }
 
@@ -226,16 +221,16 @@ UsbHcAllocMemFromBlock (
 **/
 EFI_PHYSICAL_ADDRESS
 UsbHcGetPciAddressForHostMem (
-  IN USBHC_MEM_POOL       *Pool,
-  IN VOID                 *Mem,
-  IN UINTN                Size
+  IN USBHC_MEM_POOL  *Pool,
+  IN VOID            *Mem,
+  IN UINTN           Size
   )
 {
-  USBHC_MEM_BLOCK         *Head;
-  USBHC_MEM_BLOCK         *Block;
-  UINTN                   AllocSize;
-  EFI_PHYSICAL_ADDRESS    PhyAddr;
-  UINTN                   Offset;
+  USBHC_MEM_BLOCK       *Head;
+  USBHC_MEM_BLOCK       *Block;
+  UINTN                 AllocSize;
+  EFI_PHYSICAL_ADDRESS  PhyAddr;
+  UINTN                 Offset;
 
   Head      = Pool->Head;
   AllocSize = USBHC_MEM_ROUND (Size);
@@ -249,7 +244,7 @@ UsbHcGetPciAddressForHostMem (
     // scan the memory block list for the memory block that
     // completely contains the allocated memory.
     //
-    if ((Block->BufHost <= (UINT8 *) Mem) && (((UINT8 *) Mem + AllocSize) <= (Block->BufHost + Block->BufLen))) {
+    if ((Block->BufHost <= (UINT8 *)Mem) && (((UINT8 *)Mem + AllocSize) <= (Block->BufHost + Block->BufLen))) {
       break;
     }
   }
@@ -258,12 +253,11 @@ UsbHcGetPciAddressForHostMem (
   //
   // calculate the pci memory address for host memory address.
   //
-  Offset = (UINT8 *)Mem - Block->BufHost;
-  PhyAddr = (EFI_PHYSICAL_ADDRESS)(UINTN) (Block->Buf + Offset);
+  Offset  = (UINT8 *)Mem - Block->BufHost;
+  PhyAddr = (EFI_PHYSICAL_ADDRESS)(UINTN)(Block->Buf + Offset);
   return PhyAddr;
 }
 
-
 /**
   Insert the memory block to the pool's list of the blocks.
 
@@ -273,8 +267,8 @@ UsbHcGetPciAddressForHostMem (
 **/
 VOID
 UsbHcInsertMemBlockToPool (
-  IN USBHC_MEM_BLOCK      *Head,
-  IN USBHC_MEM_BLOCK      *Block
+  IN USBHC_MEM_BLOCK  *Head,
+  IN USBHC_MEM_BLOCK  *Block
   )
 {
   ASSERT ((Head != NULL) && (Block != NULL));
@@ -282,7 +276,6 @@ UsbHcInsertMemBlockToPool (
   Head->Next  = Block;
 }
 
-
 /**
   Is the memory block empty?
 
@@ -294,10 +287,10 @@ UsbHcInsertMemBlockToPool (
 **/
 BOOLEAN
 UsbHcIsMemBlockEmpty (
-  IN USBHC_MEM_BLOCK     *Block
+  IN USBHC_MEM_BLOCK  *Block
   )
 {
-  UINTN                   Index;
+  UINTN  Index;
 
   for (Index = 0; Index < Block->BitsLen; Index++) {
     if (Block->Bits[Index] != 0) {
@@ -308,7 +301,6 @@ UsbHcIsMemBlockEmpty (
   return TRUE;
 }
 
-
 /**
   Unlink the memory block from the pool's list.
 
@@ -318,11 +310,11 @@ UsbHcIsMemBlockEmpty (
 **/
 VOID
 UsbHcUnlinkMemBlock (
-  IN USBHC_MEM_BLOCK      *Head,
-  IN USBHC_MEM_BLOCK      *BlockToUnlink
+  IN USBHC_MEM_BLOCK  *Head,
+  IN USBHC_MEM_BLOCK  *BlockToUnlink
   )
 {
-  USBHC_MEM_BLOCK         *Block;
+  USBHC_MEM_BLOCK  *Block;
 
   ASSERT ((Head != NULL) && (BlockToUnlink != NULL));
 
@@ -335,7 +327,6 @@ UsbHcUnlinkMemBlock (
   }
 }
 
-
 /**
   Initialize the memory management pool for the host controller.
 
@@ -355,7 +346,7 @@ UsbHcInitMemPool (
   IN UINT32               Which4G
   )
 {
-  USBHC_MEM_POOL          *Pool;
+  USBHC_MEM_POOL  *Pool;
 
   Pool = AllocatePool (sizeof (USBHC_MEM_POOL));
 
@@ -376,7 +367,6 @@ UsbHcInitMemPool (
   return Pool;
 }
 
-
 /**
   Release the memory management pool.
 
@@ -388,10 +378,10 @@ UsbHcInitMemPool (
 **/
 EFI_STATUS
 UsbHcFreeMemPool (
-  IN USBHC_MEM_POOL       *Pool
+  IN USBHC_MEM_POOL  *Pool
   )
 {
-  USBHC_MEM_BLOCK *Block;
+  USBHC_MEM_BLOCK  *Block;
 
   ASSERT (Pool->Head != NULL);
 
@@ -410,7 +400,6 @@ UsbHcFreeMemPool (
   return EFI_SUCCESS;
 }
 
-
 /**
   Allocate some memory from the host controller's memory pool
   which can be used to communicate with host controller.
@@ -423,16 +412,16 @@ UsbHcFreeMemPool (
 **/
 VOID *
 UsbHcAllocateMem (
-  IN  USBHC_MEM_POOL      *Pool,
-  IN  UINTN               Size
+  IN  USBHC_MEM_POOL  *Pool,
+  IN  UINTN           Size
   )
 {
-  USBHC_MEM_BLOCK         *Head;
-  USBHC_MEM_BLOCK         *Block;
-  USBHC_MEM_BLOCK         *NewBlock;
-  VOID                    *Mem;
-  UINTN                   AllocSize;
-  UINTN                   Pages;
+  USBHC_MEM_BLOCK  *Head;
+  USBHC_MEM_BLOCK  *Block;
+  USBHC_MEM_BLOCK  *NewBlock;
+  VOID             *Mem;
+  UINTN            AllocSize;
+  UINTN            Pages;
 
   Mem       = NULL;
   AllocSize = USBHC_MEM_ROUND (Size);
@@ -487,7 +476,6 @@ UsbHcAllocateMem (
   return Mem;
 }
 
-
 /**
   Free the allocated memory back to the memory pool.
 
@@ -498,22 +486,22 @@ UsbHcAllocateMem (
 **/
 VOID
 UsbHcFreeMem (
-  IN USBHC_MEM_POOL       *Pool,
-  IN VOID                 *Mem,
-  IN UINTN                Size
+  IN USBHC_MEM_POOL  *Pool,
+  IN VOID            *Mem,
+  IN UINTN           Size
   )
 {
-  USBHC_MEM_BLOCK         *Head;
-  USBHC_MEM_BLOCK         *Block;
-  UINT8                   *ToFree;
-  UINTN                   AllocSize;
-  UINTN                   Byte;
-  UINTN                   Bit;
-  UINTN                   Count;
+  USBHC_MEM_BLOCK  *Head;
+  USBHC_MEM_BLOCK  *Block;
+  UINT8            *ToFree;
+  UINTN            AllocSize;
+  UINTN            Byte;
+  UINTN            Bit;
+  UINTN            Count;
 
   Head      = Pool->Head;
   AllocSize = USBHC_MEM_ROUND (Size);
-  ToFree    = (UINT8 *) Mem;
+  ToFree    = (UINT8 *)Mem;
 
   for (Block = Head; Block != NULL; Block = Block->Next) {
     //
@@ -524,8 +512,8 @@ UsbHcFreeMem (
       //
       // compute the start byte and bit in the bit array
       //
-      Byte  = ((ToFree - Block->BufHost) / USBHC_MEM_UNIT) / 8;
-      Bit   = ((ToFree - Block->BufHost) / USBHC_MEM_UNIT) % 8;
+      Byte = ((ToFree - Block->BufHost) / USBHC_MEM_UNIT) / 8;
+      Bit  = ((ToFree - Block->BufHost) / USBHC_MEM_UNIT) % 8;
 
       //
       // reset associated bits in bit array
@@ -533,7 +521,7 @@ UsbHcFreeMem (
       for (Count = 0; Count < (AllocSize / USBHC_MEM_UNIT); Count++) {
         ASSERT (USB_HC_BIT_IS_SET (Block->Bits[Byte], Bit));
 
-        Block->Bits[Byte] = (UINT8) (Block->Bits[Byte] ^ USB_HC_BIT (Bit));
+        Block->Bits[Byte] = (UINT8)(Block->Bits[Byte] ^ USB_HC_BIT (Bit));
         NEXT_BIT (Byte, Bit);
       }
 
@@ -556,5 +544,5 @@ UsbHcFreeMem (
     UsbHcFreeMemBlock (Pool, Block);
   }
 
-  return ;
+  return;
 }

+ 22 - 27
MdeModulePkg/Bus/Pci/EhciDxe/UsbHcMem.h

@@ -10,7 +10,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #ifndef _EFI_EHCI_MEM_H_
 #define _EFI_EHCI_MEM_H_
 
-#define USB_HC_BIT(a)                  ((UINTN)(1 << (a)))
+#define USB_HC_BIT(a)  ((UINTN)(1 << (a)))
 
 #define USB_HC_BIT_IS_SET(Data, Bit)   \
           ((BOOLEAN)(((Data) & USB_HC_BIT(Bit)) == USB_HC_BIT(Bit)))
@@ -20,13 +20,13 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 
 typedef struct _USBHC_MEM_BLOCK USBHC_MEM_BLOCK;
 struct _USBHC_MEM_BLOCK {
-  UINT8                   *Bits;    // Bit array to record which unit is allocated
-  UINTN                   BitsLen;
-  UINT8                   *Buf;
-  UINT8                   *BufHost;
-  UINTN                   BufLen;   // Memory size in bytes
-  VOID                    *Mapping;
-  USBHC_MEM_BLOCK         *Next;
+  UINT8              *Bits;         // Bit array to record which unit is allocated
+  UINTN              BitsLen;
+  UINT8              *Buf;
+  UINT8              *BufHost;
+  UINTN              BufLen;        // Memory size in bytes
+  VOID               *Mapping;
+  USBHC_MEM_BLOCK    *Next;
 };
 
 //
@@ -35,16 +35,16 @@ struct _USBHC_MEM_BLOCK {
 // data to be on the same 4G memory.
 //
 typedef struct _USBHC_MEM_POOL {
-  EFI_PCI_IO_PROTOCOL     *PciIo;
-  BOOLEAN                 Check4G;
-  UINT32                  Which4G;
-  USBHC_MEM_BLOCK         *Head;
+  EFI_PCI_IO_PROTOCOL    *PciIo;
+  BOOLEAN                Check4G;
+  UINT32                 Which4G;
+  USBHC_MEM_BLOCK        *Head;
 } USBHC_MEM_POOL;
 
 //
 // Memory allocation unit, must be 2^n, n>4
 //
-#define USBHC_MEM_UNIT           64
+#define USBHC_MEM_UNIT  64
 
 #define USBHC_MEM_UNIT_MASK      (USBHC_MEM_UNIT - 1)
 #define USBHC_MEM_DEFAULT_PAGES  16
@@ -63,8 +63,6 @@ typedef struct _USBHC_MEM_POOL {
             }                 \
           } while (0)
 
-
-
 /**
   Initialize the memory management pool for the host controller.
 
@@ -84,7 +82,6 @@ UsbHcInitMemPool (
   IN UINT32               Which4G
   );
 
-
 /**
   Release the memory management pool.
 
@@ -96,10 +93,9 @@ UsbHcInitMemPool (
 **/
 EFI_STATUS
 UsbHcFreeMemPool (
-  IN USBHC_MEM_POOL       *Pool
+  IN USBHC_MEM_POOL  *Pool
   );
 
-
 /**
   Allocate some memory from the host controller's memory pool
   which can be used to communicate with host controller.
@@ -112,11 +108,10 @@ UsbHcFreeMemPool (
 **/
 VOID *
 UsbHcAllocateMem (
-  IN  USBHC_MEM_POOL      *Pool,
-  IN  UINTN               Size
+  IN  USBHC_MEM_POOL  *Pool,
+  IN  UINTN           Size
   );
 
-
 /**
   Free the allocated memory back to the memory pool.
 
@@ -127,9 +122,9 @@ UsbHcAllocateMem (
 **/
 VOID
 UsbHcFreeMem (
-  IN USBHC_MEM_POOL       *Pool,
-  IN VOID                 *Mem,
-  IN UINTN                Size
+  IN USBHC_MEM_POOL  *Pool,
+  IN VOID            *Mem,
+  IN UINTN           Size
   );
 
 /**
@@ -143,9 +138,9 @@ UsbHcFreeMem (
 **/
 EFI_PHYSICAL_ADDRESS
 UsbHcGetPciAddressForHostMem (
-  IN USBHC_MEM_POOL       *Pool,
-  IN VOID                 *Mem,
-  IN UINTN                Size
+  IN USBHC_MEM_POOL  *Pool,
+  IN VOID            *Mem,
+  IN UINTN           Size
   );
 
 #endif

+ 47 - 42
MdeModulePkg/Bus/Pci/EhciPei/DmaMem.c

@@ -39,8 +39,8 @@ IoMmuMap (
   OUT VOID                  **Mapping
   )
 {
-  EFI_STATUS    Status;
-  UINT64        Attribute;
+  EFI_STATUS  Status;
+  UINT64      Attribute;
 
   if (IoMmu != NULL) {
     Status = IoMmu->Map (
@@ -54,23 +54,25 @@ IoMmuMap (
     if (EFI_ERROR (Status)) {
       return EFI_OUT_OF_RESOURCES;
     }
+
     switch (Operation) {
-    case EdkiiIoMmuOperationBusMasterRead:
-    case EdkiiIoMmuOperationBusMasterRead64:
-      Attribute = EDKII_IOMMU_ACCESS_READ;
-      break;
-    case EdkiiIoMmuOperationBusMasterWrite:
-    case EdkiiIoMmuOperationBusMasterWrite64:
-      Attribute = EDKII_IOMMU_ACCESS_WRITE;
-      break;
-    case EdkiiIoMmuOperationBusMasterCommonBuffer:
-    case EdkiiIoMmuOperationBusMasterCommonBuffer64:
-      Attribute = EDKII_IOMMU_ACCESS_READ | EDKII_IOMMU_ACCESS_WRITE;
-      break;
-    default:
-      ASSERT(FALSE);
-      return EFI_INVALID_PARAMETER;
+      case EdkiiIoMmuOperationBusMasterRead:
+      case EdkiiIoMmuOperationBusMasterRead64:
+        Attribute = EDKII_IOMMU_ACCESS_READ;
+        break;
+      case EdkiiIoMmuOperationBusMasterWrite:
+      case EdkiiIoMmuOperationBusMasterWrite64:
+        Attribute = EDKII_IOMMU_ACCESS_WRITE;
+        break;
+      case EdkiiIoMmuOperationBusMasterCommonBuffer:
+      case EdkiiIoMmuOperationBusMasterCommonBuffer64:
+        Attribute = EDKII_IOMMU_ACCESS_READ | EDKII_IOMMU_ACCESS_WRITE;
+        break;
+      default:
+        ASSERT (FALSE);
+        return EFI_INVALID_PARAMETER;
     }
+
     Status = IoMmu->SetAttribute (
                       IoMmu,
                       *Mapping,
@@ -82,10 +84,11 @@ IoMmuMap (
       return Status;
     }
   } else {
-    *DeviceAddress = (EFI_PHYSICAL_ADDRESS) (UINTN) HostAddress;
-    *Mapping = NULL;
-    Status = EFI_SUCCESS;
+    *DeviceAddress = (EFI_PHYSICAL_ADDRESS)(UINTN)HostAddress;
+    *Mapping       = NULL;
+    Status         = EFI_SUCCESS;
   }
+
   return Status;
 }
 
@@ -98,8 +101,8 @@ IoMmuMap (
 **/
 VOID
 IoMmuUnmap (
-  IN EDKII_IOMMU_PPI        *IoMmu,
-  IN VOID                  *Mapping
+  IN EDKII_IOMMU_PPI  *IoMmu,
+  IN VOID             *Mapping
   )
 {
   if (IoMmu != NULL) {
@@ -140,9 +143,9 @@ IoMmuAllocateBuffer (
   UINTN                 NumberOfBytes;
   EFI_PHYSICAL_ADDRESS  HostPhyAddress;
 
-  *HostAddress = NULL;
+  *HostAddress   = NULL;
   *DeviceAddress = 0;
-  *Mapping = NULL;
+  *Mapping       = NULL;
 
   if (IoMmu != NULL) {
     Status = IoMmu->AllocateBuffer (
@@ -157,19 +160,20 @@ IoMmuAllocateBuffer (
     }
 
     NumberOfBytes = EFI_PAGES_TO_SIZE (Pages);
-    Status = IoMmu->Map (
-                      IoMmu,
-                      EdkiiIoMmuOperationBusMasterCommonBuffer,
-                      *HostAddress,
-                      &NumberOfBytes,
-                      DeviceAddress,
-                      Mapping
-                      );
+    Status        = IoMmu->Map (
+                             IoMmu,
+                             EdkiiIoMmuOperationBusMasterCommonBuffer,
+                             *HostAddress,
+                             &NumberOfBytes,
+                             DeviceAddress,
+                             Mapping
+                             );
     if (EFI_ERROR (Status)) {
       IoMmu->FreeBuffer (IoMmu, Pages, *HostAddress);
       *HostAddress = NULL;
       return EFI_OUT_OF_RESOURCES;
     }
+
     Status = IoMmu->SetAttribute (
                       IoMmu,
                       *Mapping,
@@ -178,7 +182,7 @@ IoMmuAllocateBuffer (
     if (EFI_ERROR (Status)) {
       IoMmu->Unmap (IoMmu, *Mapping);
       IoMmu->FreeBuffer (IoMmu, Pages, *HostAddress);
-      *Mapping = NULL;
+      *Mapping     = NULL;
       *HostAddress = NULL;
       return Status;
     }
@@ -191,10 +195,12 @@ IoMmuAllocateBuffer (
     if (EFI_ERROR (Status)) {
       return EFI_OUT_OF_RESOURCES;
     }
-    *HostAddress = (VOID *) (UINTN) HostPhyAddress;
+
+    *HostAddress   = (VOID *)(UINTN)HostPhyAddress;
     *DeviceAddress = HostPhyAddress;
-    *Mapping = NULL;
+    *Mapping       = NULL;
   }
+
   return Status;
 }
 
@@ -209,10 +215,10 @@ IoMmuAllocateBuffer (
 **/
 VOID
 IoMmuFreeBuffer (
-  IN EDKII_IOMMU_PPI        *IoMmu,
-  IN UINTN                  Pages,
-  IN VOID                   *HostAddress,
-  IN VOID                   *Mapping
+  IN EDKII_IOMMU_PPI  *IoMmu,
+  IN UINTN            Pages,
+  IN VOID             *HostAddress,
+  IN VOID             *Mapping
   )
 {
   if (IoMmu != NULL) {
@@ -230,14 +236,13 @@ IoMmuFreeBuffer (
 **/
 VOID
 IoMmuInit (
-  OUT EDKII_IOMMU_PPI       **IoMmu
+  OUT EDKII_IOMMU_PPI  **IoMmu
   )
 {
   PeiServicesLocatePpi (
     &gEdkiiIoMmuPpiGuid,
     0,
     NULL,
-    (VOID **) IoMmu
+    (VOID **)IoMmu
     );
 }
-

File diff suppressed because it is too large
+ 294 - 291
MdeModulePkg/Bus/Pci/EhciPei/EhcPeim.c


+ 57 - 59
MdeModulePkg/Bus/Pci/EhciPei/EhcPeim.h

@@ -28,46 +28,44 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 
 typedef struct _PEI_USB2_HC_DEV PEI_USB2_HC_DEV;
 
-#define EFI_LIST_ENTRY LIST_ENTRY
+#define EFI_LIST_ENTRY  LIST_ENTRY
 
 #include "UsbHcMem.h"
 #include "EhciReg.h"
 #include "EhciUrb.h"
 #include "EhciSched.h"
 
-#define EFI_USB_SPEED_FULL 0x0000
-#define EFI_USB_SPEED_LOW  0x0001
-#define EFI_USB_SPEED_HIGH 0x0002
+#define EFI_USB_SPEED_FULL  0x0000
+#define EFI_USB_SPEED_LOW   0x0001
+#define EFI_USB_SPEED_HIGH  0x0002
 
-#define PAGESIZE           4096
+#define PAGESIZE  4096
 
-#define EHC_1_MICROSECOND            1
-#define EHC_1_MILLISECOND            (1000 * EHC_1_MICROSECOND)
-#define EHC_1_SECOND                 (1000 * EHC_1_MILLISECOND)
+#define EHC_1_MICROSECOND  1
+#define EHC_1_MILLISECOND  (1000 * EHC_1_MICROSECOND)
+#define EHC_1_SECOND       (1000 * EHC_1_MILLISECOND)
 
 //
 // EHCI register operation timeout, set by experience
 //
-#define EHC_RESET_TIMEOUT            (1 * EHC_1_SECOND)
-#define EHC_GENERIC_TIMEOUT          (10 * EHC_1_MILLISECOND)
-
+#define EHC_RESET_TIMEOUT    (1 * EHC_1_SECOND)
+#define EHC_GENERIC_TIMEOUT  (10 * EHC_1_MILLISECOND)
 
 //
 // Wait for roothub port power stable, refers to Spec[EHCI1.0-2.3.9]
 //
-#define EHC_ROOT_PORT_RECOVERY_STALL (20 * EHC_1_MILLISECOND)
+#define EHC_ROOT_PORT_RECOVERY_STALL  (20 * EHC_1_MILLISECOND)
 
 //
 // Sync transfer polling interval, set by experience.
 //
-#define EHC_SYNC_POLL_INTERVAL       (6 * EHC_1_MILLISECOND)
-
-#define EFI_LIST_CONTAINER(Entry, Type, Field) BASE_CR(Entry, Type, Field)
+#define EHC_SYNC_POLL_INTERVAL  (6 * EHC_1_MILLISECOND)
 
+#define EFI_LIST_CONTAINER(Entry, Type, Field)  BASE_CR(Entry, Type, Field)
 
-#define EHC_LOW_32BIT(Addr64)     ((UINT32)(((UINTN)(Addr64)) & 0XFFFFFFFF))
-#define EHC_HIGH_32BIT(Addr64)    ((UINT32)(RShiftU64((UINTN)(Addr64), 32) & 0XFFFFFFFF))
-#define EHC_BIT_IS_SET(Data, Bit) ((BOOLEAN)(((Data) & (Bit)) == (Bit)))
+#define EHC_LOW_32BIT(Addr64)      ((UINT32)(((UINTN)(Addr64)) & 0XFFFFFFFF))
+#define EHC_HIGH_32BIT(Addr64)     ((UINT32)(RShiftU64((UINTN)(Addr64), 32) & 0XFFFFFFFF))
+#define EHC_BIT_IS_SET(Data, Bit)  ((BOOLEAN)(((Data) & (Bit)) == (Bit)))
 
 #define EHC_REG_BIT_IS_SET(Ehc, Offset, Bit) \
           (EHC_BIT_IS_SET(EhcReadOpReg ((Ehc), (Offset)), (Bit)))
@@ -75,18 +73,18 @@ typedef struct _PEI_USB2_HC_DEV PEI_USB2_HC_DEV;
 #define USB2_HC_DEV_SIGNATURE  SIGNATURE_32 ('e', 'h', 'c', 'i')
 
 struct _PEI_USB2_HC_DEV {
-  UINTN                               Signature;
-  PEI_USB2_HOST_CONTROLLER_PPI        Usb2HostControllerPpi;
-  EDKII_IOMMU_PPI                     *IoMmu;
-  EFI_PEI_PPI_DESCRIPTOR              PpiDescriptor;
+  UINTN                           Signature;
+  PEI_USB2_HOST_CONTROLLER_PPI    Usb2HostControllerPpi;
+  EDKII_IOMMU_PPI                 *IoMmu;
+  EFI_PEI_PPI_DESCRIPTOR          PpiDescriptor;
   //
   // EndOfPei callback is used to stop the EHC DMA operation
   // after exit PEI phase.
   //
-  EFI_PEI_NOTIFY_DESCRIPTOR           EndOfPeiNotifyList;
-  UINT32                              UsbHostControllerBaseAddress;
-  PEI_URB                             *Urb;
-  USBHC_MEM_POOL                      *MemPool;
+  EFI_PEI_NOTIFY_DESCRIPTOR       EndOfPeiNotifyList;
+  UINT32                          UsbHostControllerBaseAddress;
+  PEI_URB                         *Urb;
+  USBHC_MEM_POOL                  *MemPool;
 
   //
   // Schedule data shared between asynchronous and periodic
@@ -97,36 +95,36 @@ struct _PEI_USB2_HC_DEV {
   // For control transfer, even the short read happens, try the
   // status stage.
   //
-  PEI_EHC_QTD                         *ShortReadStop;
-  EFI_EVENT                           PollTimer;
+  PEI_EHC_QTD       *ShortReadStop;
+  EFI_EVENT         PollTimer;
 
   //
   // Asynchronous(bulk and control) transfer schedule data:
   // ReclaimHead is used as the head of the asynchronous transfer
   // list. It acts as the reclamation header.
   //
-  PEI_EHC_QH                          *ReclaimHead;
+  PEI_EHC_QH        *ReclaimHead;
 
   //
   // Periodic (interrupt) transfer schedule data:
   //
-  VOID                                *PeriodFrame;     // Mapped as common buffer
-  VOID                                *PeriodFrameMap;
+  VOID              *PeriodFrame;                       // Mapped as common buffer
+  VOID              *PeriodFrameMap;
 
-  PEI_EHC_QH                          *PeriodOne;
-  EFI_LIST_ENTRY                      AsyncIntTransfers;
+  PEI_EHC_QH        *PeriodOne;
+  EFI_LIST_ENTRY    AsyncIntTransfers;
 
   //
   // EHCI configuration data
   //
-  UINT32                              HcStructParams; // Cache of HC structure parameter, EHC_HCSPARAMS_OFFSET
-  UINT32                              HcCapParams;    // Cache of HC capability parameter, HCCPARAMS
-  UINT32                              CapLen;         // Capability length
-  UINT32                              High32bitAddr;
+  UINT32            HcStructParams;                   // Cache of HC structure parameter, EHC_HCSPARAMS_OFFSET
+  UINT32            HcCapParams;                      // Cache of HC capability parameter, HCCPARAMS
+  UINT32            CapLen;                           // Capability length
+  UINT32            High32bitAddr;
 };
 
-#define PEI_RECOVERY_USB_EHC_DEV_FROM_EHCI_THIS(a)  CR (a, PEI_USB2_HC_DEV, Usb2HostControllerPpi, USB2_HC_DEV_SIGNATURE)
-#define PEI_RECOVERY_USB_EHC_DEV_FROM_THIS_NOTIFY(a) CR (a, PEI_USB2_HC_DEV, EndOfPeiNotifyList, USB2_HC_DEV_SIGNATURE)
+#define PEI_RECOVERY_USB_EHC_DEV_FROM_EHCI_THIS(a)    CR (a, PEI_USB2_HC_DEV, Usb2HostControllerPpi, USB2_HC_DEV_SIGNATURE)
+#define PEI_RECOVERY_USB_EHC_DEV_FROM_THIS_NOTIFY(a)  CR (a, PEI_USB2_HC_DEV, EndOfPeiNotifyList, USB2_HC_DEV_SIGNATURE)
 
 /**
   @param  EhcDev                 EHCI Device.
@@ -137,7 +135,7 @@ struct _PEI_USB2_HC_DEV {
 **/
 EFI_STATUS
 InitializeUsbHC (
-  IN PEI_USB2_HC_DEV      *EhcDev
+  IN PEI_USB2_HC_DEV  *EhcDev
   );
 
 /**
@@ -154,9 +152,9 @@ InitializeUsbHC (
 **/
 USBHC_MEM_POOL *
 UsbHcInitMemPool (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN BOOLEAN              Check4G,
-  IN UINT32               Which4G
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN BOOLEAN          Check4G,
+  IN UINT32           Which4G
   )
 ;
 
@@ -172,8 +170,8 @@ UsbHcInitMemPool (
 **/
 EFI_STATUS
 UsbHcFreeMemPool (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN USBHC_MEM_POOL       *Pool
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN USBHC_MEM_POOL   *Pool
   )
 ;
 
@@ -190,9 +188,9 @@ UsbHcFreeMemPool (
 **/
 VOID *
 UsbHcAllocateMem (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN  USBHC_MEM_POOL      *Pool,
-  IN  UINTN               Size
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN  USBHC_MEM_POOL  *Pool,
+  IN  UINTN           Size
   )
 ;
 
@@ -207,10 +205,10 @@ UsbHcAllocateMem (
 **/
 VOID
 UsbHcFreeMem (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN USBHC_MEM_POOL       *Pool,
-  IN VOID                 *Mem,
-  IN UINTN                Size
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN USBHC_MEM_POOL   *Pool,
+  IN VOID             *Mem,
+  IN UINTN            Size
   )
 ;
 
@@ -253,8 +251,8 @@ IoMmuMap (
 **/
 VOID
 IoMmuUnmap (
-  IN EDKII_IOMMU_PPI        *IoMmu,
-  IN VOID                  *Mapping
+  IN EDKII_IOMMU_PPI  *IoMmu,
+  IN VOID             *Mapping
   );
 
 /**
@@ -296,10 +294,10 @@ IoMmuAllocateBuffer (
 **/
 VOID
 IoMmuFreeBuffer (
-  IN EDKII_IOMMU_PPI        *IoMmu,
-  IN UINTN                  Pages,
-  IN VOID                   *HostAddress,
-  IN VOID                   *Mapping
+  IN EDKII_IOMMU_PPI  *IoMmu,
+  IN UINTN            Pages,
+  IN VOID             *HostAddress,
+  IN VOID             *Mapping
   );
 
 /**
@@ -310,7 +308,7 @@ IoMmuFreeBuffer (
 **/
 VOID
 IoMmuInit (
-  OUT EDKII_IOMMU_PPI       **IoMmu
+  OUT EDKII_IOMMU_PPI  **IoMmu
   );
 
 #endif

+ 62 - 65
MdeModulePkg/Bus/Pci/EhciPei/EhciReg.h

@@ -10,20 +10,18 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #ifndef _EFI_EHCI_REG_H_
 #define _EFI_EHCI_REG_H_
 
-
-
 //
 // Capability register offset
 //
-#define EHC_CAPLENGTH_OFFSET    0    // Capability register length offset
-#define EHC_HCSPARAMS_OFFSET    0x04 // Structural Parameters 04-07h
-#define EHC_HCCPARAMS_OFFSET    0x08 // Capability parameters offset
+#define EHC_CAPLENGTH_OFFSET  0      // Capability register length offset
+#define EHC_HCSPARAMS_OFFSET  0x04   // Structural Parameters 04-07h
+#define EHC_HCCPARAMS_OFFSET  0x08   // Capability parameters offset
 
 //
 // Capability register bit definition
 //
-#define HCSP_NPORTS             0x0F // Number of root hub port
-#define HCCP_64BIT              0x01 // 64-bit addressing capability
+#define HCSP_NPORTS  0x0F            // Number of root hub port
+#define HCCP_64BIT   0x01            // 64-bit addressing capability
 
 //
 // Operational register offset
@@ -38,61 +36,61 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #define EHC_CONFIG_FLAG_OFFSET  0x40 // Configure flag register offset
 #define EHC_PORT_STAT_OFFSET    0x44 // Port status/control offset
 
-#define EHC_FRAME_LEN           1024
+#define EHC_FRAME_LEN  1024
 
 //
 // Register bit definition
 //
-#define CONFIGFLAG_ROUTE_EHC    0x01 // Route port to EHC
-
-#define USBCMD_RUN              0x01   // Run/stop
-#define USBCMD_RESET            0x02   // Start the host controller reset
-#define USBCMD_ENABLE_PERIOD    0x10   // Enable periodic schedule
-#define USBCMD_ENABLE_ASYNC     0x20   // Enable asynchronous schedule
-#define USBCMD_IAAD             0x40   // Interrupt on async advance doorbell
-
-#define USBSTS_IAA              0x20   // Interrupt on async advance
-#define USBSTS_PERIOD_ENABLED   0x4000 // Periodic schedule status
-#define USBSTS_ASYNC_ENABLED    0x8000 // Asynchronous schedule status
-#define USBSTS_HALT             0x1000 // Host controller halted
-#define USBSTS_SYS_ERROR        0x10   // Host system error
-#define USBSTS_INTACK_MASK      0x003F // Mask for the interrupt ACK, the WC
+#define CONFIGFLAG_ROUTE_EHC  0x01   // Route port to EHC
+
+#define USBCMD_RUN            0x01     // Run/stop
+#define USBCMD_RESET          0x02     // Start the host controller reset
+#define USBCMD_ENABLE_PERIOD  0x10     // Enable periodic schedule
+#define USBCMD_ENABLE_ASYNC   0x20     // Enable asynchronous schedule
+#define USBCMD_IAAD           0x40     // Interrupt on async advance doorbell
+
+#define USBSTS_IAA             0x20    // Interrupt on async advance
+#define USBSTS_PERIOD_ENABLED  0x4000  // Periodic schedule status
+#define USBSTS_ASYNC_ENABLED   0x8000  // Asynchronous schedule status
+#define USBSTS_HALT            0x1000  // Host controller halted
+#define USBSTS_SYS_ERROR       0x10    // Host system error
+#define USBSTS_INTACK_MASK     0x003F  // Mask for the interrupt ACK, the WC
                                        // (write clean) bits in USBSTS register
 
-#define PORTSC_CONN             0x01   // Current Connect Status
-#define PORTSC_CONN_CHANGE      0x02   // Connect Status Change
-#define PORTSC_ENABLED          0x04   // Port Enable / Disable
-#define PORTSC_ENABLE_CHANGE    0x08   // Port Enable / Disable Change
-#define PORTSC_OVERCUR          0x10   // Over current Active
-#define PORTSC_OVERCUR_CHANGE   0x20   // Over current Change
-#define PORSTSC_RESUME          0x40   // Force Port Resume
-#define PORTSC_SUSPEND          0x80   // Port Suspend State
-#define PORTSC_RESET            0x100  // Port Reset
-#define PORTSC_LINESTATE_K      0x400  // Line Status K-state
-#define PORTSC_LINESTATE_J      0x800  // Line Status J-state
-#define PORTSC_POWER            0x1000 // Port Power
-#define PORTSC_OWNER            0x2000 // Port Owner
-#define PORTSC_CHANGE_MASK      0x2A   // Mask of the port change bits,
+#define PORTSC_CONN            0x01    // Current Connect Status
+#define PORTSC_CONN_CHANGE     0x02    // Connect Status Change
+#define PORTSC_ENABLED         0x04    // Port Enable / Disable
+#define PORTSC_ENABLE_CHANGE   0x08    // Port Enable / Disable Change
+#define PORTSC_OVERCUR         0x10    // Over current Active
+#define PORTSC_OVERCUR_CHANGE  0x20    // Over current Change
+#define PORSTSC_RESUME         0x40    // Force Port Resume
+#define PORTSC_SUSPEND         0x80    // Port Suspend State
+#define PORTSC_RESET           0x100   // Port Reset
+#define PORTSC_LINESTATE_K     0x400   // Line Status K-state
+#define PORTSC_LINESTATE_J     0x800   // Line Status J-state
+#define PORTSC_POWER           0x1000  // Port Power
+#define PORTSC_OWNER           0x2000  // Port Owner
+#define PORTSC_CHANGE_MASK     0x2A    // Mask of the port change bits,
                                        // they are WC (write clean)
 //
 // PCI Configuration Registers
 //
-#define EHC_BAR_INDEX           0      // how many bytes away from USB_BASE to 0x10
+#define EHC_BAR_INDEX  0               // how many bytes away from USB_BASE to 0x10
 
-#define EHC_LINK_TERMINATED(Link) (((Link) & 0x01) != 0)
+#define EHC_LINK_TERMINATED(Link)  (((Link) & 0x01) != 0)
 
 #define EHC_ADDR(High, QhHw32)   \
         ((VOID *) (UINTN) (LShiftU64 ((High), 32) | ((QhHw32) & 0xFFFFFFF0)))
 
-#define EHCI_IS_DATAIN(EndpointAddr) EHC_BIT_IS_SET((EndpointAddr), 0x80)
+#define EHCI_IS_DATAIN(EndpointAddr)  EHC_BIT_IS_SET((EndpointAddr), 0x80)
 
 //
 // Structure to map the hardware port states to the
 // UEFI's port states.
 //
 typedef struct {
-  UINT16                  HwState;
-  UINT16                  UefiState;
+  UINT16    HwState;
+  UINT16    UefiState;
 } USB_PORT_STATE_MAP;
 
 //
@@ -100,13 +98,12 @@ typedef struct {
 //
 #pragma pack(1)
 typedef struct {
-  UINT8                   Pi;
-  UINT8                   SubClassCode;
-  UINT8                   BaseCode;
+  UINT8    Pi;
+  UINT8    SubClassCode;
+  UINT8    BaseCode;
 } USB_CLASSC;
 #pragma pack()
 
-
 /**
   Read EHCI capability register.
 
@@ -118,8 +115,8 @@ typedef struct {
 **/
 UINT32
 EhcReadCapRegister (
-  IN  PEI_USB2_HC_DEV     *Ehc,
-  IN  UINT32              Offset
+  IN  PEI_USB2_HC_DEV  *Ehc,
+  IN  UINT32           Offset
   )
 ;
 
@@ -134,8 +131,8 @@ EhcReadCapRegister (
 **/
 UINT32
 EhcReadOpReg (
-  IN  PEI_USB2_HC_DEV     *Ehc,
-  IN  UINT32              Offset
+  IN  PEI_USB2_HC_DEV  *Ehc,
+  IN  UINT32           Offset
   )
 ;
 
@@ -149,9 +146,9 @@ EhcReadOpReg (
 **/
 VOID
 EhcWriteOpReg (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN UINT32               Offset,
-  IN UINT32               Data
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN UINT32           Offset,
+  IN UINT32           Data
   )
 ;
 
@@ -163,7 +160,7 @@ EhcWriteOpReg (
 **/
 VOID
 EhcClearLegacySupport (
-  IN PEI_USB2_HC_DEV      *Ehc
+  IN PEI_USB2_HC_DEV  *Ehc
   )
 ;
 
@@ -180,8 +177,8 @@ EhcClearLegacySupport (
 **/
 EFI_STATUS
 EhcSetAndWaitDoorBell (
-  IN  PEI_USB2_HC_DEV      *Ehc,
-  IN  UINT32               Timeout
+  IN  PEI_USB2_HC_DEV  *Ehc,
+  IN  UINT32           Timeout
   )
 ;
 
@@ -194,7 +191,7 @@ EhcSetAndWaitDoorBell (
 **/
 VOID
 EhcAckAllInterrupt (
-  IN  PEI_USB2_HC_DEV     *Ehc
+  IN  PEI_USB2_HC_DEV  *Ehc
   )
 ;
 
@@ -209,7 +206,7 @@ EhcAckAllInterrupt (
 **/
 BOOLEAN
 EhcIsHalt (
-  IN PEI_USB2_HC_DEV      *Ehc
+  IN PEI_USB2_HC_DEV  *Ehc
   )
 ;
 
@@ -224,7 +221,7 @@ EhcIsHalt (
 **/
 BOOLEAN
 EhcIsSysError (
-  IN PEI_USB2_HC_DEV      *Ehc
+  IN PEI_USB2_HC_DEV  *Ehc
   )
 ;
 
@@ -240,8 +237,8 @@ EhcIsSysError (
 **/
 EFI_STATUS
 EhcResetHC (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN UINT32               Timeout
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN UINT32           Timeout
   )
 ;
 
@@ -257,8 +254,8 @@ EhcResetHC (
 **/
 EFI_STATUS
 EhcHaltHC (
-  IN PEI_USB2_HC_DEV     *Ehc,
-  IN UINT32              Timeout
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN UINT32           Timeout
   )
 ;
 
@@ -274,8 +271,8 @@ EhcHaltHC (
 **/
 EFI_STATUS
 EhcRunHC (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN UINT32               Timeout
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN UINT32           Timeout
   )
 ;
 
@@ -296,7 +293,7 @@ EhcRunHC (
 **/
 EFI_STATUS
 EhcInitHC (
-  IN PEI_USB2_HC_DEV      *Ehc
+  IN PEI_USB2_HC_DEV  *Ehc
   )
 ;
 

+ 69 - 73
MdeModulePkg/Bus/Pci/EhciPei/EhciSched.c

@@ -22,13 +22,13 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 EFI_STATUS
 EhcCreateHelpQ (
-  IN PEI_USB2_HC_DEV      *Ehc
+  IN PEI_USB2_HC_DEV  *Ehc
   )
 {
-  USB_ENDPOINT            Ep;
-  PEI_EHC_QH              *Qh;
-  QH_HW                   *QhHw;
-  PEI_EHC_QTD             *Qtd;
+  USB_ENDPOINT  Ep;
+  PEI_EHC_QH    *Qh;
+  QH_HW         *QhHw;
+  PEI_EHC_QTD   *Qtd;
 
   //
   // Create an inactive Qtd to terminate the short packet read.
@@ -39,25 +39,25 @@ EhcCreateHelpQ (
     return EFI_OUT_OF_RESOURCES;
   }
 
-  Qtd->QtdHw.Status   = QTD_STAT_HALTED;
-  Ehc->ShortReadStop  = Qtd;
+  Qtd->QtdHw.Status  = QTD_STAT_HALTED;
+  Ehc->ShortReadStop = Qtd;
 
   //
   // Create a QH to act as the EHC reclamation header.
   // Set the header to loopback to itself.
   //
-  Ep.DevAddr    = 0;
-  Ep.EpAddr     = 1;
-  Ep.Direction  = EfiUsbDataIn;
-  Ep.DevSpeed   = EFI_USB_SPEED_HIGH;
-  Ep.MaxPacket  = 64;
-  Ep.HubAddr    = 0;
-  Ep.HubPort    = 0;
-  Ep.Toggle     = 0;
-  Ep.Type       = EHC_BULK_TRANSFER;
-  Ep.PollRate   = 1;
-
-  Qh            = EhcCreateQh (Ehc, &Ep);
+  Ep.DevAddr   = 0;
+  Ep.EpAddr    = 1;
+  Ep.Direction = EfiUsbDataIn;
+  Ep.DevSpeed  = EFI_USB_SPEED_HIGH;
+  Ep.MaxPacket = 64;
+  Ep.HubAddr   = 0;
+  Ep.HubPort   = 0;
+  Ep.Toggle    = 0;
+  Ep.Type      = EHC_BULK_TRANSFER;
+  Ep.PollRate  = 1;
+
+  Qh = EhcCreateQh (Ehc, &Ep);
 
   if (Qh == NULL) {
     return EFI_OUT_OF_RESOURCES;
@@ -72,10 +72,10 @@ EhcCreateHelpQ (
   //
   // Create a dummy QH to act as the terminator for periodical schedule
   //
-  Ep.EpAddr   = 2;
-  Ep.Type     = EHC_INT_TRANSFER_SYNC;
+  Ep.EpAddr = 2;
+  Ep.Type   = EHC_INT_TRANSFER_SYNC;
 
-  Qh          = EhcCreateQh (Ehc, &Ep);
+  Qh = EhcCreateQh (Ehc, &Ep);
 
   if (Qh == NULL) {
     return EFI_OUT_OF_RESOURCES;
@@ -98,7 +98,7 @@ EhcCreateHelpQ (
 **/
 EFI_STATUS
 EhcInitSched (
-  IN PEI_USB2_HC_DEV      *Ehc
+  IN PEI_USB2_HC_DEV  *Ehc
   )
 {
   VOID                  *Buf;
@@ -132,9 +132,9 @@ EhcInitSched (
     return EFI_OUT_OF_RESOURCES;
   }
 
-  Ehc->PeriodFrame      = Buf;
-  Ehc->PeriodFrameMap   = Map;
-  Ehc->High32bitAddr    = EHC_HIGH_32BIT (PhyAddr);
+  Ehc->PeriodFrame    = Buf;
+  Ehc->PeriodFrameMap = Map;
+  Ehc->High32bitAddr  = EHC_HIGH_32BIT (PhyAddr);
 
   //
   // Init memory pool management then create the helper
@@ -160,8 +160,8 @@ EhcInitSched (
   //
   // Initialize the frame list entries then set the registers
   //
-  Desc = (UINT32 *) Ehc->PeriodFrame;
-  PciAddr  = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Ehc->PeriodOne, sizeof (PEI_EHC_QH));
+  Desc    = (UINT32 *)Ehc->PeriodFrame;
+  PciAddr = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Ehc->PeriodOne, sizeof (PEI_EHC_QH));
   for (Index = 0; Index < EHC_FRAME_LEN; Index++) {
     Desc[Index] = QH_LINK (PciAddr, EHC_TYPE_QH, FALSE);
   }
@@ -173,7 +173,7 @@ EhcInitSched (
   // Only need to set the AsynListAddr register to
   // the reclamation header
   //
-  PciAddr  = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Ehc->ReclaimHead, sizeof (PEI_EHC_QH));
+  PciAddr = UsbHcGetPciAddressForHostMem (Ehc->MemPool, Ehc->ReclaimHead, sizeof (PEI_EHC_QH));
   EhcWriteOpReg (Ehc, EHC_ASYNC_HEAD_OFFSET, EHC_LOW_32BIT (PciAddr));
   return EFI_SUCCESS;
 }
@@ -186,7 +186,7 @@ EhcInitSched (
 **/
 VOID
 EhcFreeSched (
-  IN PEI_USB2_HC_DEV      *Ehc
+  IN PEI_USB2_HC_DEV  *Ehc
   )
 {
   EhcWriteOpReg (Ehc, EHC_FRAME_BASE_OFFSET, 0);
@@ -231,24 +231,24 @@ EhcFreeSched (
 **/
 VOID
 EhcLinkQhToAsync (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN PEI_EHC_QH           *Qh
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN PEI_EHC_QH       *Qh
   )
 {
-  PEI_EHC_QH               *Head;
+  PEI_EHC_QH  *Head;
 
   //
   // Append the queue head after the reclaim header, then
   // fix the hardware visiable parts (EHCI R1.0 page 72).
   // ReclaimHead is always linked to the EHCI's AsynListAddr.
   //
-  Head                    = Ehc->ReclaimHead;
+  Head = Ehc->ReclaimHead;
 
-  Qh->NextQh              = Head->NextQh;
-  Head->NextQh            = Qh;
+  Qh->NextQh   = Head->NextQh;
+  Head->NextQh = Qh;
 
-  Qh->QhHw.HorizonLink    = QH_LINK (Head, EHC_TYPE_QH, FALSE);;
-  Head->QhHw.HorizonLink  = QH_LINK (Qh, EHC_TYPE_QH, FALSE);
+  Qh->QhHw.HorizonLink   = QH_LINK (Head, EHC_TYPE_QH, FALSE);
+  Head->QhHw.HorizonLink = QH_LINK (Qh, EHC_TYPE_QH, FALSE);
 }
 
 /**
@@ -261,11 +261,11 @@ EhcLinkQhToAsync (
 **/
 VOID
 EhcUnlinkQhFromAsync (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN PEI_EHC_QH           *Qh
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN PEI_EHC_QH       *Qh
   )
 {
-  PEI_EHC_QH              *Head;
+  PEI_EHC_QH  *Head;
 
   ASSERT (Ehc->ReclaimHead->NextQh == Qh);
 
@@ -274,12 +274,12 @@ EhcUnlinkQhFromAsync (
   // visiable part: Only need to loopback the ReclaimHead. The Qh
   // is pointing to ReclaimHead (which is staill in the list).
   //
-  Head                    = Ehc->ReclaimHead;
+  Head = Ehc->ReclaimHead;
 
-  Head->NextQh            = Qh->NextQh;
-  Qh->NextQh              = NULL;
+  Head->NextQh = Qh->NextQh;
+  Qh->NextQh   = NULL;
 
-  Head->QhHw.HorizonLink  = QH_LINK (Head, EHC_TYPE_QH, FALSE);
+  Head->QhHw.HorizonLink = QH_LINK (Head, EHC_TYPE_QH, FALSE);
 
   //
   // Set and wait the door bell to synchronize with the hardware
@@ -302,22 +302,22 @@ EhcUnlinkQhFromAsync (
 **/
 BOOLEAN
 EhcCheckUrbResult (
-  IN  PEI_USB2_HC_DEV     *Ehc,
-  IN  PEI_URB             *Urb
+  IN  PEI_USB2_HC_DEV  *Ehc,
+  IN  PEI_URB          *Urb
   )
 {
-  EFI_LIST_ENTRY          *Entry;
-  PEI_EHC_QTD             *Qtd;
-  QTD_HW                  *QtdHw;
-  UINT8                   State;
-  BOOLEAN                 Finished;
+  EFI_LIST_ENTRY  *Entry;
+  PEI_EHC_QTD     *Qtd;
+  QTD_HW          *QtdHw;
+  UINT8           State;
+  BOOLEAN         Finished;
 
   ASSERT ((Ehc != NULL) && (Urb != NULL) && (Urb->Qh != NULL));
 
-  Finished        = TRUE;
-  Urb->Completed  = 0;
+  Finished       = TRUE;
+  Urb->Completed = 0;
 
-  Urb->Result     = EFI_USB_NOERROR;
+  Urb->Result = EFI_USB_NOERROR;
 
   if (EhcIsHalt (Ehc) || EhcIsSysError (Ehc)) {
     Urb->Result |= EFI_USB_ERR_SYSTEM;
@@ -327,7 +327,7 @@ EhcCheckUrbResult (
   BASE_LIST_FOR_EACH (Entry, &Urb->Qh->Qtds) {
     Qtd   = EFI_LIST_CONTAINER (Entry, PEI_EHC_QTD, QtdList);
     QtdHw = &Qtd->QtdHw;
-    State = (UINT8) QtdHw->Status;
+    State = (UINT8)QtdHw->Status;
 
     if (EHC_BIT_IS_SET (State, QTD_STAT_HALTED)) {
       //
@@ -352,7 +352,6 @@ EhcCheckUrbResult (
 
       Finished = TRUE;
       goto ON_EXIT;
-
     } else if (EHC_BIT_IS_SET (State, QTD_STAT_ACTIVE)) {
       //
       // The QTD is still active, no need to check furthur.
@@ -361,7 +360,6 @@ EhcCheckUrbResult (
 
       Finished = FALSE;
       goto ON_EXIT;
-
     } else {
       //
       // This QTD is finished OK or met short packet read. Update the
@@ -372,7 +370,7 @@ EhcCheckUrbResult (
       }
 
       if ((QtdHw->TotalBytes != 0) && (QtdHw->Pid == QTD_PID_INPUT)) {
-        //EHC_DUMP_QH ((Urb->Qh, "Short packet read", FALSE));
+        // EHC_DUMP_QH ((Urb->Qh, "Short packet read", FALSE));
 
         //
         // Short packet read condition. If it isn't a setup transfer,
@@ -381,7 +379,6 @@ EhcCheckUrbResult (
         // Status Stage of the setup transfer to get the finial result
         //
         if (QtdHw->AltNext == QTD_LINK (Ehc->ShortReadStop, FALSE)) {
-
           Finished = TRUE;
           goto ON_EXIT;
         }
@@ -399,7 +396,7 @@ ON_EXIT:
   // NOTICE: don't move DT update before the loop, otherwise there is
   // a race condition that DT is wrong.
   //
-  Urb->DataToggle = (UINT8) Urb->Qh->QhHw.DataToggle;
+  Urb->DataToggle = (UINT8)Urb->Qh->QhHw.DataToggle;
 
   return Finished;
 }
@@ -418,19 +415,19 @@ ON_EXIT:
 **/
 EFI_STATUS
 EhcExecTransfer (
-  IN  PEI_USB2_HC_DEV     *Ehc,
-  IN  PEI_URB             *Urb,
-  IN  UINTN               TimeOut
+  IN  PEI_USB2_HC_DEV  *Ehc,
+  IN  PEI_URB          *Urb,
+  IN  UINTN            TimeOut
   )
 {
-  EFI_STATUS              Status;
-  UINTN                   Index;
-  UINTN                   Loop;
-  BOOLEAN                 Finished;
-  BOOLEAN                 InfiniteLoop;
-
-  Status    = EFI_SUCCESS;
-  Loop      = TimeOut * EHC_1_MILLISECOND;
+  EFI_STATUS  Status;
+  UINTN       Index;
+  UINTN       Loop;
+  BOOLEAN     Finished;
+  BOOLEAN     InfiniteLoop;
+
+  Status       = EFI_SUCCESS;
+  Loop         = TimeOut * EHC_1_MILLISECOND;
   Finished     = FALSE;
   InfiniteLoop = FALSE;
 
@@ -460,4 +457,3 @@ EhcExecTransfer (
 
   return Status;
 }
-

+ 9 - 9
MdeModulePkg/Bus/Pci/EhciPei/EhciSched.h

@@ -21,7 +21,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 EFI_STATUS
 EhcInitSched (
-  IN PEI_USB2_HC_DEV          *Ehc
+  IN PEI_USB2_HC_DEV  *Ehc
   )
 ;
 
@@ -33,7 +33,7 @@ EhcInitSched (
 **/
 VOID
 EhcFreeSched (
-  IN PEI_USB2_HC_DEV          *Ehc
+  IN PEI_USB2_HC_DEV  *Ehc
   )
 ;
 
@@ -50,8 +50,8 @@ EhcFreeSched (
 **/
 VOID
 EhcLinkQhToAsync (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN PEI_EHC_QH           *Qh
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN PEI_EHC_QH       *Qh
   )
 ;
 
@@ -65,8 +65,8 @@ EhcLinkQhToAsync (
 **/
 VOID
 EhcUnlinkQhFromAsync (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN PEI_EHC_QH           *Qh
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN PEI_EHC_QH       *Qh
   )
 ;
 
@@ -84,9 +84,9 @@ EhcUnlinkQhFromAsync (
 **/
 EFI_STATUS
 EhcExecTransfer (
-  IN  PEI_USB2_HC_DEV     *Ehc,
-  IN  PEI_URB             *Urb,
-  IN  UINTN               TimeOut
+  IN  PEI_USB2_HC_DEV  *Ehc,
+  IN  PEI_URB          *Urb,
+  IN  UINTN            TimeOut
   )
 ;
 

+ 149 - 148
MdeModulePkg/Bus/Pci/EhciPei/EhciUrb.c

@@ -27,19 +27,19 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 PEI_EHC_QTD *
 EhcCreateQtd (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN UINT8                *Data,
-  IN UINTN                DataLen,
-  IN UINT8                PktId,
-  IN UINT8                Toggle,
-  IN UINTN                MaxPacket
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN UINT8            *Data,
+  IN UINTN            DataLen,
+  IN UINT8            PktId,
+  IN UINT8            Toggle,
+  IN UINTN            MaxPacket
   )
 {
-  PEI_EHC_QTD             *Qtd;
-  QTD_HW                  *QtdHw;
-  UINTN                   Index;
-  UINTN                   Len;
-  UINTN                   ThisBufLen;
+  PEI_EHC_QTD  *Qtd;
+  QTD_HW       *QtdHw;
+  UINTN        Index;
+  UINTN        Len;
+  UINTN        ThisBufLen;
 
   ASSERT (Ehc != NULL);
 
@@ -49,9 +49,9 @@ EhcCreateQtd (
     return NULL;
   }
 
-  Qtd->Signature    = EHC_QTD_SIG;
-  Qtd->Data         = Data;
-  Qtd->DataLen      = 0;
+  Qtd->Signature = EHC_QTD_SIG;
+  Qtd->Data      = Data;
+  Qtd->DataLen   = 0;
 
   InitializeListHead (&Qtd->QtdList);
 
@@ -77,17 +77,17 @@ EhcCreateQtd (
       // compute the offset and clear Reserved fields. This is already
       // done in the data point.
       //
-      QtdHw->Page[Index]      = EHC_LOW_32BIT (Data);
-      QtdHw->PageHigh[Index]  = EHC_HIGH_32BIT (Data);
+      QtdHw->Page[Index]     = EHC_LOW_32BIT (Data);
+      QtdHw->PageHigh[Index] = EHC_HIGH_32BIT (Data);
 
-      ThisBufLen              = QTD_BUF_LEN - (EHC_LOW_32BIT (Data) & QTD_BUF_MASK);
+      ThisBufLen = QTD_BUF_LEN - (EHC_LOW_32BIT (Data) & QTD_BUF_MASK);
 
       if (Len + ThisBufLen >= DataLen) {
         Len = DataLen;
         break;
       }
 
-      Len += ThisBufLen;
+      Len  += ThisBufLen;
       Data += ThisBufLen;
     }
 
@@ -101,7 +101,7 @@ EhcCreateQtd (
       Len = Len - Len % MaxPacket;
     }
 
-    QtdHw->TotalBytes = (UINT32) Len;
+    QtdHw->TotalBytes = (UINT32)Len;
     Qtd->DataLen      = Len;
   }
 
@@ -121,8 +121,8 @@ EhcCreateQtd (
 **/
 VOID
 EhcInitIntQh (
-  IN USB_ENDPOINT         *Ep,
-  IN QH_HW                *QhHw
+  IN USB_ENDPOINT  *Ep,
+  IN QH_HW         *QhHw
   )
 {
   //
@@ -134,7 +134,7 @@ EhcInitIntQh (
   //
   if (Ep->DevSpeed == EFI_USB_SPEED_HIGH) {
     QhHw->SMask = QH_MICROFRAME_0;
-    return ;
+    return;
   }
 
   //
@@ -163,12 +163,12 @@ EhcInitIntQh (
 **/
 PEI_EHC_QH *
 EhcCreateQh (
-  IN PEI_USB2_HC_DEV      *Ehci,
-  IN USB_ENDPOINT         *Ep
+  IN PEI_USB2_HC_DEV  *Ehci,
+  IN USB_ENDPOINT     *Ep
   )
 {
-  PEI_EHC_QH              *Qh;
-  QH_HW                   *QhHw;
+  PEI_EHC_QH  *Qh;
+  QH_HW       *QhHw;
 
   Qh = UsbHcAllocateMem (Ehci, Ehci->MemPool, sizeof (PEI_EHC_QH));
 
@@ -176,62 +176,63 @@ EhcCreateQh (
     return NULL;
   }
 
-  Qh->Signature       = EHC_QH_SIG;
-  Qh->NextQh          = NULL;
-  Qh->Interval        = Ep->PollRate;
+  Qh->Signature = EHC_QH_SIG;
+  Qh->NextQh    = NULL;
+  Qh->Interval  = Ep->PollRate;
 
   InitializeListHead (&Qh->Qtds);
 
-  QhHw                = &Qh->QhHw;
-  QhHw->HorizonLink   = QH_LINK (NULL, 0, TRUE);
-  QhHw->DeviceAddr    = Ep->DevAddr;
-  QhHw->Inactive      = 0;
-  QhHw->EpNum         = Ep->EpAddr;
-  QhHw->EpSpeed       = Ep->DevSpeed;
-  QhHw->DtCtrl        = 0;
-  QhHw->ReclaimHead   = 0;
-  QhHw->MaxPacketLen  = (UINT32) Ep->MaxPacket;
-  QhHw->CtrlEp        = 0;
-  QhHw->NakReload     = QH_NAK_RELOAD;
-  QhHw->HubAddr       = Ep->HubAddr;
-  QhHw->PortNum       = Ep->HubPort;
-  QhHw->Multiplier    = 1;
-  QhHw->DataToggle    = Ep->Toggle;
+  QhHw               = &Qh->QhHw;
+  QhHw->HorizonLink  = QH_LINK (NULL, 0, TRUE);
+  QhHw->DeviceAddr   = Ep->DevAddr;
+  QhHw->Inactive     = 0;
+  QhHw->EpNum        = Ep->EpAddr;
+  QhHw->EpSpeed      = Ep->DevSpeed;
+  QhHw->DtCtrl       = 0;
+  QhHw->ReclaimHead  = 0;
+  QhHw->MaxPacketLen = (UINT32)Ep->MaxPacket;
+  QhHw->CtrlEp       = 0;
+  QhHw->NakReload    = QH_NAK_RELOAD;
+  QhHw->HubAddr      = Ep->HubAddr;
+  QhHw->PortNum      = Ep->HubPort;
+  QhHw->Multiplier   = 1;
+  QhHw->DataToggle   = Ep->Toggle;
 
   if (Ep->DevSpeed != EFI_USB_SPEED_HIGH) {
     QhHw->Status |= QTD_STAT_DO_SS;
   }
 
   switch (Ep->Type) {
-  case EHC_CTRL_TRANSFER:
-    //
-    // Special initialization for the control transfer:
-    // 1. Control transfer initialize data toggle from each QTD
-    // 2. Set the Control Endpoint Flag (C) for low/full speed endpoint.
-    //
-    QhHw->DtCtrl = 1;
+    case EHC_CTRL_TRANSFER:
+      //
+      // Special initialization for the control transfer:
+      // 1. Control transfer initialize data toggle from each QTD
+      // 2. Set the Control Endpoint Flag (C) for low/full speed endpoint.
+      //
+      QhHw->DtCtrl = 1;
 
-    if (Ep->DevSpeed != EFI_USB_SPEED_HIGH) {
-      QhHw->CtrlEp = 1;
-    }
-    break;
+      if (Ep->DevSpeed != EFI_USB_SPEED_HIGH) {
+        QhHw->CtrlEp = 1;
+      }
 
-  case EHC_INT_TRANSFER_ASYNC:
-  case EHC_INT_TRANSFER_SYNC:
-    //
-    // Special initialization for the interrupt transfer
-    // to set the S-Mask and C-Mask
-    //
-    QhHw->NakReload = 0;
-    EhcInitIntQh (Ep, QhHw);
-    break;
+      break;
 
-  case EHC_BULK_TRANSFER:
-    if ((Ep->DevSpeed == EFI_USB_SPEED_HIGH) && (Ep->Direction == EfiUsbDataOut)) {
-      QhHw->Status |= QTD_STAT_DO_PING;
-    }
+    case EHC_INT_TRANSFER_ASYNC:
+    case EHC_INT_TRANSFER_SYNC:
+      //
+      // Special initialization for the interrupt transfer
+      // to set the S-Mask and C-Mask
+      //
+      QhHw->NakReload = 0;
+      EhcInitIntQh (Ep, QhHw);
+      break;
+
+    case EHC_BULK_TRANSFER:
+      if ((Ep->DevSpeed == EFI_USB_SPEED_HIGH) && (Ep->Direction == EfiUsbDataOut)) {
+        QhHw->Status |= QTD_STAT_DO_PING;
+      }
 
-    break;
+      break;
   }
 
   return Qh;
@@ -252,10 +253,10 @@ EhcCreateQh (
 **/
 UINTN
 EhcConvertPollRate (
-  IN  UINTN               Interval
+  IN  UINTN  Interval
   )
 {
-  UINTN                   BitCount;
+  UINTN  BitCount;
 
   if (Interval == 0) {
     return 1;
@@ -283,13 +284,13 @@ EhcConvertPollRate (
 **/
 VOID
 EhcFreeQtds (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN EFI_LIST_ENTRY       *Qtds
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN EFI_LIST_ENTRY   *Qtds
   )
 {
-  EFI_LIST_ENTRY          *Entry;
-  EFI_LIST_ENTRY          *Next;
-  PEI_EHC_QTD             *Qtd;
+  EFI_LIST_ENTRY  *Entry;
+  EFI_LIST_ENTRY  *Next;
+  PEI_EHC_QTD     *Qtd;
 
   BASE_LIST_FOR_EACH_SAFE (Entry, Next, Qtds) {
     Qtd = EFI_LIST_CONTAINER (Entry, PEI_EHC_QTD, QtdList);
@@ -308,8 +309,8 @@ EhcFreeQtds (
 **/
 VOID
 EhcFreeUrb (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN PEI_URB              *Urb
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN PEI_URB          *Urb
   )
 {
   if (Urb->RequestPhy != NULL) {
@@ -342,20 +343,20 @@ EhcFreeUrb (
 **/
 EFI_STATUS
 EhcCreateQtds (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN PEI_URB              *Urb
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN PEI_URB          *Urb
   )
 {
-  USB_ENDPOINT            *Ep;
-  PEI_EHC_QH              *Qh;
-  PEI_EHC_QTD             *Qtd;
-  PEI_EHC_QTD             *StatusQtd;
-  PEI_EHC_QTD             *NextQtd;
-  EFI_LIST_ENTRY          *Entry;
-  UINT32                  AlterNext;
-  UINT8                   Toggle;
-  UINTN                   Len;
-  UINT8                   Pid;
+  USB_ENDPOINT    *Ep;
+  PEI_EHC_QH      *Qh;
+  PEI_EHC_QTD     *Qtd;
+  PEI_EHC_QTD     *StatusQtd;
+  PEI_EHC_QTD     *NextQtd;
+  EFI_LIST_ENTRY  *Entry;
+  UINT32          AlterNext;
+  UINT8           Toggle;
+  UINTN           Len;
+  UINT8           Pid;
 
   ASSERT ((Urb != NULL) && (Urb->Qh != NULL));
 
@@ -428,7 +429,7 @@ EhcCreateQtds (
   while (Len < Urb->DataLen) {
     Qtd = EhcCreateQtd (
             Ehc,
-            (UINT8 *) Urb->DataPhy + Len,
+            (UINT8 *)Urb->DataPhy + Len,
             Urb->DataLen - Len,
             Pid,
             Toggle,
@@ -446,7 +447,7 @@ EhcCreateQtds (
     // Switch the Toggle bit if odd number of packets are included in the QTD.
     //
     if (((Qtd->DataLen + Ep->MaxPacket - 1) / Ep->MaxPacket) % 2) {
-      Toggle = (UINT8) (1 - Toggle);
+      Toggle = (UINT8)(1 - Toggle);
     }
 
     Len += Qtd->DataLen;
@@ -472,15 +473,15 @@ EhcCreateQtds (
       break;
     }
 
-    NextQtd             = EFI_LIST_CONTAINER (Entry->ForwardLink, PEI_EHC_QTD, QtdList);
-    Qtd->QtdHw.NextQtd  = QTD_LINK (NextQtd, FALSE);
+    NextQtd            = EFI_LIST_CONTAINER (Entry->ForwardLink, PEI_EHC_QTD, QtdList);
+    Qtd->QtdHw.NextQtd = QTD_LINK (NextQtd, FALSE);
   }
 
   //
   // Link the QTDs to the queue head
   //
-  NextQtd           = EFI_LIST_CONTAINER (Qh->Qtds.ForwardLink, PEI_EHC_QTD, QtdList);
-  Qh->QhHw.NextQtd  = QTD_LINK (NextQtd, FALSE);
+  NextQtd          = EFI_LIST_CONTAINER (Qh->Qtds.ForwardLink, PEI_EHC_QTD, QtdList);
+  Qh->QhHw.NextQtd = QTD_LINK (NextQtd, FALSE);
   return EFI_SUCCESS;
 
 ON_ERROR:
@@ -511,63 +512,63 @@ ON_ERROR:
 **/
 PEI_URB *
 EhcCreateUrb (
-  IN PEI_USB2_HC_DEV                    *Ehc,
-  IN UINT8                              DevAddr,
-  IN UINT8                              EpAddr,
-  IN UINT8                              DevSpeed,
-  IN UINT8                              Toggle,
-  IN UINTN                              MaxPacket,
-  IN EFI_USB2_HC_TRANSACTION_TRANSLATOR *Hub,
-  IN UINTN                              Type,
-  IN EFI_USB_DEVICE_REQUEST             *Request,
-  IN VOID                               *Data,
-  IN UINTN                              DataLen,
-  IN EFI_ASYNC_USB_TRANSFER_CALLBACK    Callback,
-  IN VOID                               *Context,
-  IN UINTN                              Interval
+  IN PEI_USB2_HC_DEV                     *Ehc,
+  IN UINT8                               DevAddr,
+  IN UINT8                               EpAddr,
+  IN UINT8                               DevSpeed,
+  IN UINT8                               Toggle,
+  IN UINTN                               MaxPacket,
+  IN EFI_USB2_HC_TRANSACTION_TRANSLATOR  *Hub,
+  IN UINTN                               Type,
+  IN EFI_USB_DEVICE_REQUEST              *Request,
+  IN VOID                                *Data,
+  IN UINTN                               DataLen,
+  IN EFI_ASYNC_USB_TRANSFER_CALLBACK     Callback,
+  IN VOID                                *Context,
+  IN UINTN                               Interval
   )
 {
-  USB_ENDPOINT                  *Ep;
-  EFI_PHYSICAL_ADDRESS          PhyAddr;
-  EDKII_IOMMU_OPERATION         MapOp;
-  EFI_STATUS                    Status;
-  UINTN                         Len;
-  PEI_URB                       *Urb;
-  VOID                          *Map;
+  USB_ENDPOINT           *Ep;
+  EFI_PHYSICAL_ADDRESS   PhyAddr;
+  EDKII_IOMMU_OPERATION  MapOp;
+  EFI_STATUS             Status;
+  UINTN                  Len;
+  PEI_URB                *Urb;
+  VOID                   *Map;
 
   Map = NULL;
 
-  Urb = Ehc->Urb;
-  Urb->Signature  = EHC_URB_SIG;
+  Urb            = Ehc->Urb;
+  Urb->Signature = EHC_URB_SIG;
   InitializeListHead (&Urb->UrbList);
 
-  Ep              = &Urb->Ep;
-  Ep->DevAddr     = DevAddr;
-  Ep->EpAddr      = (UINT8) (EpAddr & 0x0F);
-  Ep->Direction   = (((EpAddr & 0x80) != 0) ? EfiUsbDataIn : EfiUsbDataOut);
-  Ep->DevSpeed    = DevSpeed;
-  Ep->MaxPacket   = MaxPacket;
+  Ep            = &Urb->Ep;
+  Ep->DevAddr   = DevAddr;
+  Ep->EpAddr    = (UINT8)(EpAddr & 0x0F);
+  Ep->Direction = (((EpAddr & 0x80) != 0) ? EfiUsbDataIn : EfiUsbDataOut);
+  Ep->DevSpeed  = DevSpeed;
+  Ep->MaxPacket = MaxPacket;
 
-  Ep->HubAddr     = 0;
-  Ep->HubPort     = 0;
+  Ep->HubAddr = 0;
+  Ep->HubPort = 0;
 
   if (DevSpeed != EFI_USB_SPEED_HIGH) {
     ASSERT (Hub != NULL);
 
-    Ep->HubAddr   = Hub->TranslatorHubAddress;
-    Ep->HubPort   = Hub->TranslatorPortNumber;
+    Ep->HubAddr = Hub->TranslatorHubAddress;
+    Ep->HubPort = Hub->TranslatorPortNumber;
   }
 
-  Ep->Toggle      = Toggle;
-  Ep->Type        = Type;
-  Ep->PollRate    = EhcConvertPollRate (Interval);
+  Ep->Toggle   = Toggle;
+  Ep->Type     = Type;
+  Ep->PollRate = EhcConvertPollRate (Interval);
 
-  Urb->Request    = Request;
-  Urb->Data       = Data;
-  Urb->DataLen    = DataLen;
-  Urb->Callback   = Callback;
-  Urb->Context    = Context;
-  Urb->Qh         = EhcCreateQh (Ehc, &Urb->Ep);
+  Urb->Request  = Request;
+  Urb->Data     = Data;
+  Urb->DataLen  = DataLen;
+  Urb->Callback = Callback;
+  Urb->Context  = Context;
+  Urb->Qh       = EhcCreateQh (Ehc, &Urb->Ep);
 
   if (Urb->Qh == NULL) {
     goto ON_ERROR;
@@ -575,27 +576,27 @@ EhcCreateUrb (
 
   Urb->RequestPhy = NULL;
   Urb->RequestMap = NULL;
-  Urb->DataPhy  = NULL;
-  Urb->DataMap  = NULL;
+  Urb->DataPhy    = NULL;
+  Urb->DataMap    = NULL;
 
   //
   // Map the request and user data
   //
   if (Request != NULL) {
-    Len     = sizeof (EFI_USB_DEVICE_REQUEST);
-    MapOp   = EdkiiIoMmuOperationBusMasterRead;
-    Status  = IoMmuMap (Ehc->IoMmu, MapOp, Request, &Len, &PhyAddr, &Map);
+    Len    = sizeof (EFI_USB_DEVICE_REQUEST);
+    MapOp  = EdkiiIoMmuOperationBusMasterRead;
+    Status = IoMmuMap (Ehc->IoMmu, MapOp, Request, &Len, &PhyAddr, &Map);
 
     if (EFI_ERROR (Status) || (Len != sizeof (EFI_USB_DEVICE_REQUEST))) {
       goto ON_ERROR;
     }
 
-    Urb->RequestPhy = (VOID *) ((UINTN) PhyAddr);
+    Urb->RequestPhy = (VOID *)((UINTN)PhyAddr);
     Urb->RequestMap = Map;
   }
 
   if (Data != NULL) {
-    Len      = DataLen;
+    Len = DataLen;
 
     if (Ep->Direction == EfiUsbDataIn) {
       MapOp = EdkiiIoMmuOperationBusMasterWrite;
@@ -603,14 +604,14 @@ EhcCreateUrb (
       MapOp = EdkiiIoMmuOperationBusMasterRead;
     }
 
-    Status  = IoMmuMap (Ehc->IoMmu, MapOp, Data, &Len, &PhyAddr, &Map);
+    Status = IoMmuMap (Ehc->IoMmu, MapOp, Data, &Len, &PhyAddr, &Map);
 
     if (EFI_ERROR (Status) || (Len != DataLen)) {
       goto ON_ERROR;
     }
 
-    Urb->DataPhy  = (VOID *) ((UINTN) PhyAddr);
-    Urb->DataMap  = Map;
+    Urb->DataPhy = (VOID *)((UINTN)PhyAddr);
+    Urb->DataMap = Map;
   }
 
   Status = EhcCreateQtds (Ehc, Urb);

+ 149 - 151
MdeModulePkg/Bus/Pci/EhciPei/EhciUrb.h

@@ -10,60 +10,60 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #ifndef _EFI_EHCI_URB_H_
 #define _EFI_EHCI_URB_H_
 
-typedef struct _PEI_EHC_QTD PEI_EHC_QTD;
-typedef struct _PEI_EHC_QH  PEI_EHC_QH;
-typedef struct _PEI_URB     PEI_URB;
+typedef struct _PEI_EHC_QTD  PEI_EHC_QTD;
+typedef struct _PEI_EHC_QH   PEI_EHC_QH;
+typedef struct _PEI_URB      PEI_URB;
 
 #define EHC_CTRL_TRANSFER       0x01
 #define EHC_BULK_TRANSFER       0x02
 #define EHC_INT_TRANSFER_SYNC   0x04
 #define EHC_INT_TRANSFER_ASYNC  0x08
 
-#define EHC_QTD_SIG             SIGNATURE_32 ('U', 'S', 'B', 'T')
-#define EHC_QH_SIG              SIGNATURE_32 ('U', 'S', 'B', 'H')
-#define EHC_URB_SIG             SIGNATURE_32 ('U', 'S', 'B', 'R')
+#define EHC_QTD_SIG  SIGNATURE_32 ('U', 'S', 'B', 'T')
+#define EHC_QH_SIG   SIGNATURE_32 ('U', 'S', 'B', 'H')
+#define EHC_URB_SIG  SIGNATURE_32 ('U', 'S', 'B', 'R')
 
 //
 // Hardware related bit definitions
 //
-#define EHC_TYPE_ITD            0x00
-#define EHC_TYPE_QH             0x02
-#define EHC_TYPE_SITD           0x04
-#define EHC_TYPE_FSTN           0x06
-
-#define QH_NAK_RELOAD           3
-#define QH_HSHBW_MULTI          1
-
-#define QTD_MAX_ERR             3
-#define QTD_PID_OUTPUT          0x00
-#define QTD_PID_INPUT           0x01
-#define QTD_PID_SETUP           0x02
-
-#define QTD_STAT_DO_OUT         0
-#define QTD_STAT_DO_SS          0
-#define QTD_STAT_DO_PING        0x01
-#define QTD_STAT_DO_CS          0x02
-#define QTD_STAT_TRANS_ERR      0x08
-#define QTD_STAT_BABBLE_ERR     0x10
-#define QTD_STAT_BUFF_ERR       0x20
-#define QTD_STAT_HALTED         0x40
-#define QTD_STAT_ACTIVE         0x80
-#define QTD_STAT_ERR_MASK       (QTD_STAT_TRANS_ERR | QTD_STAT_BABBLE_ERR | QTD_STAT_BUFF_ERR)
-
-#define QTD_MAX_BUFFER          4
-#define QTD_BUF_LEN             4096
-#define QTD_BUF_MASK            0x0FFF
-
-#define QH_MICROFRAME_0         0x01
-#define QH_MICROFRAME_1         0x02
-#define QH_MICROFRAME_2         0x04
-#define QH_MICROFRAME_3         0x08
-#define QH_MICROFRAME_4         0x10
-#define QH_MICROFRAME_5         0x20
-#define QH_MICROFRAME_6         0x40
-#define QH_MICROFRAME_7         0x80
-
-#define USB_ERR_SHORT_PACKET    0x200
+#define EHC_TYPE_ITD   0x00
+#define EHC_TYPE_QH    0x02
+#define EHC_TYPE_SITD  0x04
+#define EHC_TYPE_FSTN  0x06
+
+#define QH_NAK_RELOAD   3
+#define QH_HSHBW_MULTI  1
+
+#define QTD_MAX_ERR     3
+#define QTD_PID_OUTPUT  0x00
+#define QTD_PID_INPUT   0x01
+#define QTD_PID_SETUP   0x02
+
+#define QTD_STAT_DO_OUT      0
+#define QTD_STAT_DO_SS       0
+#define QTD_STAT_DO_PING     0x01
+#define QTD_STAT_DO_CS       0x02
+#define QTD_STAT_TRANS_ERR   0x08
+#define QTD_STAT_BABBLE_ERR  0x10
+#define QTD_STAT_BUFF_ERR    0x20
+#define QTD_STAT_HALTED      0x40
+#define QTD_STAT_ACTIVE      0x80
+#define QTD_STAT_ERR_MASK    (QTD_STAT_TRANS_ERR | QTD_STAT_BABBLE_ERR | QTD_STAT_BUFF_ERR)
+
+#define QTD_MAX_BUFFER  4
+#define QTD_BUF_LEN     4096
+#define QTD_BUF_MASK    0x0FFF
+
+#define QH_MICROFRAME_0  0x01
+#define QH_MICROFRAME_1  0x02
+#define QH_MICROFRAME_2  0x04
+#define QH_MICROFRAME_3  0x08
+#define QH_MICROFRAME_4  0x10
+#define QH_MICROFRAME_5  0x20
+#define QH_MICROFRAME_6  0x40
+#define QH_MICROFRAME_7  0x80
+
+#define USB_ERR_SHORT_PACKET  0x200
 
 //
 // Fill in the hardware link point: pass in a EHC_QH/QH_HW
@@ -72,7 +72,7 @@ typedef struct _PEI_URB     PEI_URB;
 #define QH_LINK(Addr, Type, Term) \
           ((UINT32) ((EHC_LOW_32BIT (Addr) & 0xFFFFFFE0) | (Type) | ((Term) ? 1 : 0)))
 
-#define QTD_LINK(Addr, Term)      QH_LINK((Addr), 0, (Term))
+#define QTD_LINK(Addr, Term)  QH_LINK((Addr), 0, (Term))
 
 //
 // The defination of EHCI hardware used data structure for
@@ -82,77 +82,76 @@ typedef struct _PEI_URB     PEI_URB;
 //
 #pragma pack(1)
 typedef struct {
-  UINT32                  NextQtd;
-  UINT32                  AltNext;
-
-  UINT32                  Status       : 8;
-  UINT32                  Pid          : 2;
-  UINT32                  ErrCnt       : 2;
-  UINT32                  CurPage      : 3;
-  UINT32                  Ioc          : 1;
-  UINT32                  TotalBytes   : 15;
-  UINT32                  DataToggle   : 1;
-
-  UINT32                  Page[5];
-  UINT32                  PageHigh[5];
+  UINT32    NextQtd;
+  UINT32    AltNext;
+
+  UINT32    Status     : 8;
+  UINT32    Pid        : 2;
+  UINT32    ErrCnt     : 2;
+  UINT32    CurPage    : 3;
+  UINT32    Ioc        : 1;
+  UINT32    TotalBytes : 15;
+  UINT32    DataToggle : 1;
+
+  UINT32    Page[5];
+  UINT32    PageHigh[5];
 } QTD_HW;
 
 typedef struct {
-  UINT32                  HorizonLink;
+  UINT32    HorizonLink;
   //
   // Endpoint capabilities/Characteristics DWord 1 and DWord 2
   //
-  UINT32                  DeviceAddr   : 7;
-  UINT32                  Inactive     : 1;
-  UINT32                  EpNum        : 4;
-  UINT32                  EpSpeed      : 2;
-  UINT32                  DtCtrl       : 1;
-  UINT32                  ReclaimHead  : 1;
-  UINT32                  MaxPacketLen : 11;
-  UINT32                  CtrlEp       : 1;
-  UINT32                  NakReload    : 4;
-
-  UINT32                  SMask        : 8;
-  UINT32                  CMask        : 8;
-  UINT32                  HubAddr      : 7;
-  UINT32                  PortNum      : 7;
-  UINT32                  Multiplier   : 2;
+  UINT32    DeviceAddr   : 7;
+  UINT32    Inactive     : 1;
+  UINT32    EpNum        : 4;
+  UINT32    EpSpeed      : 2;
+  UINT32    DtCtrl       : 1;
+  UINT32    ReclaimHead  : 1;
+  UINT32    MaxPacketLen : 11;
+  UINT32    CtrlEp       : 1;
+  UINT32    NakReload    : 4;
+
+  UINT32    SMask        : 8;
+  UINT32    CMask        : 8;
+  UINT32    HubAddr      : 7;
+  UINT32    PortNum      : 7;
+  UINT32    Multiplier   : 2;
 
   //
   // Transaction execution overlay area
   //
-  UINT32                  CurQtd;
-  UINT32                  NextQtd;
-  UINT32                  AltQtd;
-
-  UINT32                  Status       : 8;
-  UINT32                  Pid          : 2;
-  UINT32                  ErrCnt       : 2;
-  UINT32                  CurPage      : 3;
-  UINT32                  Ioc          : 1;
-  UINT32                  TotalBytes   : 15;
-  UINT32                  DataToggle   : 1;
-
-  UINT32                  Page[5];
-  UINT32                  PageHigh[5];
+  UINT32    CurQtd;
+  UINT32    NextQtd;
+  UINT32    AltQtd;
+
+  UINT32    Status     : 8;
+  UINT32    Pid        : 2;
+  UINT32    ErrCnt     : 2;
+  UINT32    CurPage    : 3;
+  UINT32    Ioc        : 1;
+  UINT32    TotalBytes : 15;
+  UINT32    DataToggle : 1;
+
+  UINT32    Page[5];
+  UINT32    PageHigh[5];
 } QH_HW;
 #pragma pack()
 
-
 //
 // Endpoint address and its capabilities
 //
 typedef struct _USB_ENDPOINT {
-  UINT8                   DevAddr;
-  UINT8                   EpAddr;     // Endpoint address, no direction encoded in
-  EFI_USB_DATA_DIRECTION  Direction;
-  UINT8                   DevSpeed;
-  UINTN                   MaxPacket;
-  UINT8                   HubAddr;
-  UINT8                   HubPort;
-  UINT8                   Toggle;     // Data toggle, not used for control transfer
-  UINTN                   Type;
-  UINTN                   PollRate;   // Polling interval used by EHCI
+  UINT8                     DevAddr;
+  UINT8                     EpAddr;   // Endpoint address, no direction encoded in
+  EFI_USB_DATA_DIRECTION    Direction;
+  UINT8                     DevSpeed;
+  UINTN                     MaxPacket;
+  UINT8                     HubAddr;
+  UINT8                     HubPort;
+  UINT8                     Toggle;   // Data toggle, not used for control transfer
+  UINTN                     Type;
+  UINTN                     PollRate; // Polling interval used by EHCI
 } USB_ENDPOINT;
 
 //
@@ -160,15 +159,13 @@ typedef struct _USB_ENDPOINT {
 // QTD generated from a URB. Don't add fields before QtdHw.
 //
 struct _PEI_EHC_QTD {
-  QTD_HW                  QtdHw;
-  UINT32                  Signature;
-  EFI_LIST_ENTRY          QtdList;   // The list of QTDs to one end point
-  UINT8                   *Data;     // Buffer of the original data
-  UINTN                   DataLen;   // Original amount of data in this QTD
+  QTD_HW            QtdHw;
+  UINT32            Signature;
+  EFI_LIST_ENTRY    QtdList;         // The list of QTDs to one end point
+  UINT8             *Data;           // Buffer of the original data
+  UINTN             DataLen;         // Original amount of data in this QTD
 };
 
-
-
 //
 // Software QH structure. All three different transaction types
 // supported by UEFI USB, that is the control/bulk/interrupt
@@ -185,11 +182,11 @@ struct _PEI_EHC_QTD {
 // as the reclamation header. New transfer is inserted after this QH.
 //
 struct _PEI_EHC_QH {
-  QH_HW                   QhHw;
-  UINT32                  Signature;
-  PEI_EHC_QH              *NextQh;    // The queue head pointed to by horizontal link
-  EFI_LIST_ENTRY          Qtds;       // The list of QTDs to this queue head
-  UINTN                   Interval;
+  QH_HW             QhHw;
+  UINT32            Signature;
+  PEI_EHC_QH        *NextQh;          // The queue head pointed to by horizontal link
+  EFI_LIST_ENTRY    Qtds;             // The list of QTDs to this queue head
+  UINTN             Interval;
 };
 
 //
@@ -197,34 +194,34 @@ struct _PEI_EHC_QH {
 // usb requests.
 //
 struct _PEI_URB {
-  UINT32                          Signature;
-  EFI_LIST_ENTRY                  UrbList;
+  UINT32                             Signature;
+  EFI_LIST_ENTRY                     UrbList;
 
   //
   // Transaction information
   //
-  USB_ENDPOINT                    Ep;
-  EFI_USB_DEVICE_REQUEST          *Request;     // Control transfer only
-  VOID                            *RequestPhy;  // Address of the mapped request
-  VOID                            *RequestMap;
-  VOID                            *Data;
-  UINTN                           DataLen;
-  VOID                            *DataPhy;     // Address of the mapped user data
-  VOID                            *DataMap;
-  EFI_ASYNC_USB_TRANSFER_CALLBACK Callback;
-  VOID                            *Context;
+  USB_ENDPOINT                       Ep;
+  EFI_USB_DEVICE_REQUEST             *Request;    // Control transfer only
+  VOID                               *RequestPhy; // Address of the mapped request
+  VOID                               *RequestMap;
+  VOID                               *Data;
+  UINTN                              DataLen;
+  VOID                               *DataPhy;  // Address of the mapped user data
+  VOID                               *DataMap;
+  EFI_ASYNC_USB_TRANSFER_CALLBACK    Callback;
+  VOID                               *Context;
 
   //
   // Schedule data
   //
-  PEI_EHC_QH                      *Qh;
+  PEI_EHC_QH                         *Qh;
 
   //
   // Transaction result
   //
-  UINT32                          Result;
-  UINTN                           Completed;    // completed data length
-  UINT8                           DataToggle;
+  UINT32                             Result;
+  UINTN                              Completed; // completed data length
+  UINT8                              DataToggle;
 };
 
 /**
@@ -243,12 +240,12 @@ struct _PEI_URB {
 **/
 PEI_EHC_QTD *
 EhcCreateQtd (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN UINT8                *Data,
-  IN UINTN                DataLen,
-  IN UINT8                PktId,
-  IN UINT8                Toggle,
-  IN UINTN                MaxPacket
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN UINT8            *Data,
+  IN UINTN            DataLen,
+  IN UINT8            PktId,
+  IN UINT8            Toggle,
+  IN UINTN            MaxPacket
   )
 ;
 
@@ -263,8 +260,8 @@ EhcCreateQtd (
 **/
 PEI_EHC_QH *
 EhcCreateQh (
-  IN PEI_USB2_HC_DEV      *Ehci,
-  IN USB_ENDPOINT         *Ep
+  IN PEI_USB2_HC_DEV  *Ehci,
+  IN USB_ENDPOINT     *Ep
   )
 ;
 
@@ -277,8 +274,8 @@ EhcCreateQh (
 **/
 VOID
 EhcFreeUrb (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN PEI_URB              *Urb
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN PEI_URB          *Urb
   )
 ;
 
@@ -305,20 +302,21 @@ EhcFreeUrb (
 **/
 PEI_URB *
 EhcCreateUrb (
-  IN PEI_USB2_HC_DEV                    *Ehc,
-  IN UINT8                              DevAddr,
-  IN UINT8                              EpAddr,
-  IN UINT8                              DevSpeed,
-  IN UINT8                              Toggle,
-  IN UINTN                              MaxPacket,
-  IN EFI_USB2_HC_TRANSACTION_TRANSLATOR *Hub,
-  IN UINTN                              Type,
-  IN EFI_USB_DEVICE_REQUEST             *Request,
-  IN VOID                               *Data,
-  IN UINTN                              DataLen,
-  IN EFI_ASYNC_USB_TRANSFER_CALLBACK    Callback,
-  IN VOID                               *Context,
-  IN UINTN                              Interval
+  IN PEI_USB2_HC_DEV                     *Ehc,
+  IN UINT8                               DevAddr,
+  IN UINT8                               EpAddr,
+  IN UINT8                               DevSpeed,
+  IN UINT8                               Toggle,
+  IN UINTN                               MaxPacket,
+  IN EFI_USB2_HC_TRANSACTION_TRANSLATOR  *Hub,
+  IN UINTN                               Type,
+  IN EFI_USB_DEVICE_REQUEST              *Request,
+  IN VOID                                *Data,
+  IN UINTN                               DataLen,
+  IN EFI_ASYNC_USB_TRANSFER_CALLBACK     Callback,
+  IN VOID                                *Context,
+  IN UINTN                               Interval
   )
 ;
+
 #endif

+ 124 - 123
MdeModulePkg/Bus/Pci/EhciPei/UsbHcMem.c

@@ -22,30 +22,31 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 USBHC_MEM_BLOCK *
 UsbHcAllocMemBlock (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN  USBHC_MEM_POOL      *Pool,
-  IN  UINTN               Pages
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN  USBHC_MEM_POOL  *Pool,
+  IN  UINTN           Pages
   )
 {
-  USBHC_MEM_BLOCK         *Block;
-  VOID                    *BufHost;
-  VOID                    *Mapping;
-  EFI_PHYSICAL_ADDRESS    MappedAddr;
-  EFI_STATUS              Status;
-  UINTN               PageNumber;
-  EFI_PHYSICAL_ADDRESS        TempPtr;
-
-  Mapping = NULL;
-  PageNumber =  sizeof(USBHC_MEM_BLOCK)/PAGESIZE +1;
-  Status = PeiServicesAllocatePages (
-             EfiBootServicesCode,
-             PageNumber,
-             &TempPtr
-             );
+  USBHC_MEM_BLOCK       *Block;
+  VOID                  *BufHost;
+  VOID                  *Mapping;
+  EFI_PHYSICAL_ADDRESS  MappedAddr;
+  EFI_STATUS            Status;
+  UINTN                 PageNumber;
+  EFI_PHYSICAL_ADDRESS  TempPtr;
+
+  Mapping    = NULL;
+  PageNumber =  sizeof (USBHC_MEM_BLOCK)/PAGESIZE +1;
+  Status     = PeiServicesAllocatePages (
+                 EfiBootServicesCode,
+                 PageNumber,
+                 &TempPtr
+                 );
 
   if (EFI_ERROR (Status)) {
-      return NULL;
+    return NULL;
   }
+
   ZeroMem ((VOID   *)(UINTN)TempPtr, PageNumber*EFI_PAGE_SIZE);
 
   //
@@ -54,34 +55,36 @@ UsbHcAllocMemBlock (
   //
   ASSERT (USBHC_MEM_UNIT * 8 <= EFI_PAGE_SIZE);
 
-  Block = (USBHC_MEM_BLOCK*)(UINTN)TempPtr;
-  Block->BufLen   = EFI_PAGES_TO_SIZE (Pages);
-  Block->BitsLen  = Block->BufLen / (USBHC_MEM_UNIT * 8);
+  Block          = (USBHC_MEM_BLOCK *)(UINTN)TempPtr;
+  Block->BufLen  = EFI_PAGES_TO_SIZE (Pages);
+  Block->BitsLen = Block->BufLen / (USBHC_MEM_UNIT * 8);
 
   PageNumber =  (Block->BitsLen)/PAGESIZE +1;
-  Status = PeiServicesAllocatePages (
-             EfiBootServicesCode,
-             PageNumber,
-             &TempPtr
-             );
+  Status     = PeiServicesAllocatePages (
+                 EfiBootServicesCode,
+                 PageNumber,
+                 &TempPtr
+                 );
+
+  if (EFI_ERROR (Status)) {
+    return NULL;
+  }
 
-    if (EFI_ERROR (Status)) {
-      return NULL;
-    }
   ZeroMem ((VOID   *)(UINTN)TempPtr, PageNumber*EFI_PAGE_SIZE);
 
-  Block->Bits  = (UINT8 *)(UINTN)TempPtr;
+  Block->Bits = (UINT8 *)(UINTN)TempPtr;
 
   Status = IoMmuAllocateBuffer (
              Ehc->IoMmu,
              Pages,
-             (VOID **) &BufHost,
+             (VOID **)&BufHost,
              &MappedAddr,
              &Mapping
              );
   if (EFI_ERROR (Status)) {
     return NULL;
   }
+
   ZeroMem (BufHost, Pages*EFI_PAGE_SIZE);
 
   //
@@ -89,16 +92,15 @@ UsbHcAllocMemBlock (
   // should be restricted into the same 4G
   //
   if (Pool->Check4G && (Pool->Which4G != USB_HC_HIGH_32BIT (MappedAddr))) {
-      return NULL;
+    return NULL;
   }
 
-  Block->BufHost  = BufHost;
-  Block->Buf      = (UINT8 *) ((UINTN) MappedAddr);
-  Block->Mapping  = Mapping;
-  Block->Next      = NULL;
+  Block->BufHost = BufHost;
+  Block->Buf     = (UINT8 *)((UINTN)MappedAddr);
+  Block->Mapping = Mapping;
+  Block->Next    = NULL;
 
   return Block;
-
 }
 
 /**
@@ -111,9 +113,9 @@ UsbHcAllocMemBlock (
 **/
 VOID
 UsbHcFreeMemBlock (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN USBHC_MEM_POOL       *Pool,
-  IN USBHC_MEM_BLOCK      *Block
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN USBHC_MEM_POOL   *Pool,
+  IN USBHC_MEM_BLOCK  *Block
   )
 {
   ASSERT ((Pool != NULL) && (Block != NULL));
@@ -133,22 +135,22 @@ UsbHcFreeMemBlock (
 **/
 VOID *
 UsbHcAllocMemFromBlock (
-  IN  USBHC_MEM_BLOCK     *Block,
-  IN  UINTN               Units
+  IN  USBHC_MEM_BLOCK  *Block,
+  IN  UINTN            Units
   )
 {
-  UINTN                   Byte;
-  UINT8                   Bit;
-  UINTN                   StartByte;
-  UINT8                   StartBit;
-  UINTN                   Available;
-  UINTN                   Count;
+  UINTN  Byte;
+  UINT8  Bit;
+  UINTN  StartByte;
+  UINT8  StartBit;
+  UINTN  Available;
+  UINTN  Count;
 
   ASSERT ((Block != 0) && (Units != 0));
 
-  StartByte  = 0;
-  StartBit   = 0;
-  Available  = 0;
+  StartByte = 0;
+  StartBit  = 0;
+  Available = 0;
 
   for (Byte = 0, Bit = 0; Byte < Block->BitsLen;) {
     //
@@ -164,13 +166,12 @@ UsbHcAllocMemFromBlock (
       }
 
       NEXT_BIT (Byte, Bit);
-
     } else {
       NEXT_BIT (Byte, Bit);
 
-      Available  = 0;
-      StartByte  = Byte;
-      StartBit   = Bit;
+      Available = 0;
+      StartByte = Byte;
+      StartBit  = Bit;
     }
   }
 
@@ -181,13 +182,13 @@ UsbHcAllocMemFromBlock (
   //
   // Mark the memory as allocated
   //
-  Byte  = StartByte;
-  Bit   = StartBit;
+  Byte = StartByte;
+  Bit  = StartBit;
 
   for (Count = 0; Count < Units; Count++) {
     ASSERT (!USB_HC_BIT_IS_SET (Block->Bits[Byte], Bit));
 
-    Block->Bits[Byte] = (UINT8) (Block->Bits[Byte] | (UINT8) USB_HC_BIT (Bit));
+    Block->Bits[Byte] = (UINT8)(Block->Bits[Byte] | (UINT8)USB_HC_BIT (Bit));
     NEXT_BIT (Byte, Bit);
   }
 
@@ -205,16 +206,16 @@ UsbHcAllocMemFromBlock (
 **/
 EFI_PHYSICAL_ADDRESS
 UsbHcGetPciAddressForHostMem (
-  IN USBHC_MEM_POOL       *Pool,
-  IN VOID                 *Mem,
-  IN UINTN                Size
+  IN USBHC_MEM_POOL  *Pool,
+  IN VOID            *Mem,
+  IN UINTN           Size
   )
 {
-  USBHC_MEM_BLOCK         *Head;
-  USBHC_MEM_BLOCK         *Block;
-  UINTN                   AllocSize;
-  EFI_PHYSICAL_ADDRESS    PhyAddr;
-  UINTN                   Offset;
+  USBHC_MEM_BLOCK       *Head;
+  USBHC_MEM_BLOCK       *Block;
+  UINTN                 AllocSize;
+  EFI_PHYSICAL_ADDRESS  PhyAddr;
+  UINTN                 Offset;
 
   Head      = Pool->Head;
   AllocSize = USBHC_MEM_ROUND (Size);
@@ -228,7 +229,7 @@ UsbHcGetPciAddressForHostMem (
     // scan the memory block list for the memory block that
     // completely contains the allocated memory.
     //
-    if ((Block->BufHost <= (UINT8 *) Mem) && (((UINT8 *) Mem + AllocSize) <= (Block->BufHost + Block->BufLen))) {
+    if ((Block->BufHost <= (UINT8 *)Mem) && (((UINT8 *)Mem + AllocSize) <= (Block->BufHost + Block->BufLen))) {
       break;
     }
   }
@@ -237,8 +238,8 @@ UsbHcGetPciAddressForHostMem (
   //
   // calculate the pci memory address for host memory address.
   //
-  Offset = (UINT8 *)Mem - Block->BufHost;
-  PhyAddr = (EFI_PHYSICAL_ADDRESS)(UINTN) (Block->Buf + Offset);
+  Offset  = (UINT8 *)Mem - Block->BufHost;
+  PhyAddr = (EFI_PHYSICAL_ADDRESS)(UINTN)(Block->Buf + Offset);
   return PhyAddr;
 }
 
@@ -251,8 +252,8 @@ UsbHcGetPciAddressForHostMem (
 **/
 VOID
 UsbHcInsertMemBlockToPool (
-  IN USBHC_MEM_BLOCK      *Head,
-  IN USBHC_MEM_BLOCK      *Block
+  IN USBHC_MEM_BLOCK  *Head,
+  IN USBHC_MEM_BLOCK  *Block
   )
 {
   ASSERT ((Head != NULL) && (Block != NULL));
@@ -271,11 +272,10 @@ UsbHcInsertMemBlockToPool (
 **/
 BOOLEAN
 UsbHcIsMemBlockEmpty (
-  IN USBHC_MEM_BLOCK     *Block
+  IN USBHC_MEM_BLOCK  *Block
   )
 {
-  UINTN                   Index;
-
+  UINTN  Index;
 
   for (Index = 0; Index < Block->BitsLen; Index++) {
     if (Block->Bits[Index] != 0) {
@@ -286,7 +286,6 @@ UsbHcIsMemBlockEmpty (
   return TRUE;
 }
 
-
 /**
   Initialize the memory management pool for the host controller.
 
@@ -301,29 +300,30 @@ UsbHcIsMemBlockEmpty (
 **/
 USBHC_MEM_POOL *
 UsbHcInitMemPool (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN BOOLEAN              Check4G,
-  IN UINT32               Which4G
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN BOOLEAN          Check4G,
+  IN UINT32           Which4G
   )
 {
-  USBHC_MEM_POOL          *Pool;
-  UINTN               PageNumber;
-  EFI_STATUS              Status;
-  EFI_PHYSICAL_ADDRESS        TempPtr;
-
-  PageNumber =  sizeof(USBHC_MEM_POOL)/PAGESIZE +1;
-  Status = PeiServicesAllocatePages (
-             EfiBootServicesCode,
-             PageNumber,
-              &TempPtr
-             );
+  USBHC_MEM_POOL        *Pool;
+  UINTN                 PageNumber;
+  EFI_STATUS            Status;
+  EFI_PHYSICAL_ADDRESS  TempPtr;
+
+  PageNumber =  sizeof (USBHC_MEM_POOL)/PAGESIZE +1;
+  Status     = PeiServicesAllocatePages (
+                 EfiBootServicesCode,
+                 PageNumber,
+                 &TempPtr
+                 );
+
+  if (EFI_ERROR (Status)) {
+    return NULL;
+  }
 
-    if (EFI_ERROR (Status)) {
-      return NULL;
-    }
   ZeroMem ((VOID   *)(UINTN)TempPtr, PageNumber*EFI_PAGE_SIZE);
 
-  Pool = (USBHC_MEM_POOL *) ((UINTN) TempPtr);
+  Pool = (USBHC_MEM_POOL *)((UINTN)TempPtr);
 
   Pool->Check4G = Check4G;
   Pool->Which4G = Which4G;
@@ -348,11 +348,11 @@ UsbHcInitMemPool (
 **/
 EFI_STATUS
 UsbHcFreeMemPool (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN USBHC_MEM_POOL       *Pool
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN USBHC_MEM_POOL   *Pool
   )
 {
-  USBHC_MEM_BLOCK *Block;
+  USBHC_MEM_BLOCK  *Block;
 
   ASSERT (Pool->Head != NULL);
 
@@ -381,17 +381,17 @@ UsbHcFreeMemPool (
 **/
 VOID *
 UsbHcAllocateMem (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN  USBHC_MEM_POOL      *Pool,
-  IN  UINTN               Size
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN  USBHC_MEM_POOL  *Pool,
+  IN  UINTN           Size
   )
 {
-  USBHC_MEM_BLOCK         *Head;
-  USBHC_MEM_BLOCK         *Block;
-  USBHC_MEM_BLOCK         *NewBlock;
-  VOID                    *Mem;
-  UINTN                   AllocSize;
-  UINTN                   Pages;
+  USBHC_MEM_BLOCK  *Head;
+  USBHC_MEM_BLOCK  *Block;
+  USBHC_MEM_BLOCK  *NewBlock;
+  VOID             *Mem;
+  UINTN            AllocSize;
+  UINTN            Pages;
 
   Mem       = NULL;
   AllocSize = USBHC_MEM_ROUND (Size);
@@ -425,7 +425,8 @@ UsbHcAllocateMem (
   } else {
     Pages = USBHC_MEM_DEFAULT_PAGES;
   }
-  NewBlock = UsbHcAllocMemBlock (Ehc,Pool, Pages);
+
+  NewBlock = UsbHcAllocMemBlock (Ehc, Pool, Pages);
 
   if (NewBlock == NULL) {
     return NULL;
@@ -455,23 +456,23 @@ UsbHcAllocateMem (
 **/
 VOID
 UsbHcFreeMem (
-  IN PEI_USB2_HC_DEV      *Ehc,
-  IN USBHC_MEM_POOL       *Pool,
-  IN VOID                 *Mem,
-  IN UINTN                Size
+  IN PEI_USB2_HC_DEV  *Ehc,
+  IN USBHC_MEM_POOL   *Pool,
+  IN VOID             *Mem,
+  IN UINTN            Size
   )
 {
-  USBHC_MEM_BLOCK         *Head;
-  USBHC_MEM_BLOCK         *Block;
-  UINT8                   *ToFree;
-  UINTN                   AllocSize;
-  UINTN                   Byte;
-  UINTN                   Bit;
-  UINTN                   Count;
+  USBHC_MEM_BLOCK  *Head;
+  USBHC_MEM_BLOCK  *Block;
+  UINT8            *ToFree;
+  UINTN            AllocSize;
+  UINTN            Byte;
+  UINTN            Bit;
+  UINTN            Count;
 
   Head      = Pool->Head;
   AllocSize = USBHC_MEM_ROUND (Size);
-  ToFree    = (UINT8 *) Mem;
+  ToFree    = (UINT8 *)Mem;
 
   for (Block = Head; Block != NULL; Block = Block->Next) {
     //
@@ -482,8 +483,8 @@ UsbHcFreeMem (
       //
       // compute the start byte and bit in the bit array
       //
-      Byte  = ((ToFree - Block->Buf) / USBHC_MEM_UNIT) / 8;
-      Bit   = ((ToFree - Block->Buf) / USBHC_MEM_UNIT) % 8;
+      Byte = ((ToFree - Block->Buf) / USBHC_MEM_UNIT) / 8;
+      Bit  = ((ToFree - Block->Buf) / USBHC_MEM_UNIT) % 8;
 
       //
       // reset associated bits in bit array
@@ -491,7 +492,7 @@ UsbHcFreeMem (
       for (Count = 0; Count < (AllocSize / USBHC_MEM_UNIT); Count++) {
         ASSERT (USB_HC_BIT_IS_SET (Block->Bits[Byte], Bit));
 
-        Block->Bits[Byte] = (UINT8) (Block->Bits[Byte] ^ USB_HC_BIT (Bit));
+        Block->Bits[Byte] = (UINT8)(Block->Bits[Byte] ^ USB_HC_BIT (Bit));
         NEXT_BIT (Byte, Bit);
       }
 
@@ -513,5 +514,5 @@ UsbHcFreeMem (
     UsbHcFreeMemBlock (Ehc, Pool, Block);
   }
 
-  return ;
+  return;
 }

+ 15 - 16
MdeModulePkg/Bus/Pci/EhciPei/UsbHcMem.h

@@ -13,7 +13,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #include <Uefi.h>
 #include <IndustryStandard/Pci22.h>
 
-#define USB_HC_BIT(a)                  ((UINTN)(1 << (a)))
+#define USB_HC_BIT(a)  ((UINTN)(1 << (a)))
 
 #define USB_HC_BIT_IS_SET(Data, Bit)   \
           ((BOOLEAN)(((Data) & USB_HC_BIT(Bit)) == USB_HC_BIT(Bit)))
@@ -24,13 +24,13 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 typedef struct _USBHC_MEM_BLOCK USBHC_MEM_BLOCK;
 
 struct _USBHC_MEM_BLOCK {
-  UINT8                   *Bits;    // Bit array to record which unit is allocated
-  UINTN                   BitsLen;
-  UINT8                   *Buf;
-  UINT8                   *BufHost;
-  UINTN                   BufLen;   // Memory size in bytes
-  VOID                    *Mapping;
-  USBHC_MEM_BLOCK         *Next;
+  UINT8              *Bits;         // Bit array to record which unit is allocated
+  UINTN              BitsLen;
+  UINT8              *Buf;
+  UINT8              *BufHost;
+  UINTN              BufLen;        // Memory size in bytes
+  VOID               *Mapping;
+  USBHC_MEM_BLOCK    *Next;
 };
 
 //
@@ -39,15 +39,15 @@ struct _USBHC_MEM_BLOCK {
 // data to be on the same 4G memory.
 //
 typedef struct _USBHC_MEM_POOL {
-  BOOLEAN                 Check4G;
-  UINT32                  Which4G;
-  USBHC_MEM_BLOCK         *Head;
+  BOOLEAN            Check4G;
+  UINT32             Which4G;
+  USBHC_MEM_BLOCK    *Head;
 } USBHC_MEM_POOL;
 
 //
 // Memory allocation unit, must be 2^n, n>4
 //
-#define USBHC_MEM_UNIT           64
+#define USBHC_MEM_UNIT  64
 
 #define USBHC_MEM_UNIT_MASK      (USBHC_MEM_UNIT - 1)
 #define USBHC_MEM_DEFAULT_PAGES  16
@@ -66,7 +66,6 @@ typedef struct _USBHC_MEM_POOL {
             }                 \
           } while (0)
 
-
 /**
   Calculate the corresponding pci bus address according to the Mem parameter.
 
@@ -78,9 +77,9 @@ typedef struct _USBHC_MEM_POOL {
 **/
 EFI_PHYSICAL_ADDRESS
 UsbHcGetPciAddressForHostMem (
-  IN USBHC_MEM_POOL       *Pool,
-  IN VOID                 *Mem,
-  IN UINTN                Size
+  IN USBHC_MEM_POOL  *Pool,
+  IN VOID            *Mem,
+  IN UINTN           Size
   );
 
 #endif

File diff suppressed because it is too large
+ 219 - 215
MdeModulePkg/Bus/Pci/IdeBusPei/AtapiPeim.c


+ 103 - 107
MdeModulePkg/Bus/Pci/IdeBusPei/AtapiPeim.h

@@ -26,12 +26,11 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #include <Library/MemoryAllocationLib.h>
 #include <Library/PcdLib.h>
 
-
 #include <IndustryStandard/Atapi.h>
 
-#define MAX_SENSE_KEY_COUNT 6
-#define MAX_IDE_CHANNELS    4  // Ide and Sata Primary, Secondary Channel.
-#define MAX_IDE_DEVICES     8  // Ide, Sata Primary, Secondary and Master, Slave device.
+#define MAX_SENSE_KEY_COUNT  6
+#define MAX_IDE_CHANNELS     4 // Ide and Sata Primary, Secondary Channel.
+#define MAX_IDE_DEVICES      8 // Ide, Sata Primary, Secondary and Master, Slave device.
 
 typedef enum {
   IdePrimary    = 0,
@@ -40,72 +39,69 @@ typedef enum {
 } EFI_IDE_CHANNEL;
 
 typedef enum {
-  IdeMaster     = 0,
-  IdeSlave      = 1,
-  IdeMaxDevice  = 2
+  IdeMaster    = 0,
+  IdeSlave     = 1,
+  IdeMaxDevice = 2
 } EFI_IDE_DEVICE;
 
 //
 // IDE Registers
 //
 typedef union {
-  UINT16  Command;        /* when write */
-  UINT16  Status;         /* when read */
+  UINT16    Command;      /* when write */
+  UINT16    Status;       /* when read */
 } IDE_CMD_OR_STATUS;
 
 typedef union {
-  UINT16  Error;          /* when read */
-  UINT16  Feature;        /* when write */
+  UINT16    Error;        /* when read */
+  UINT16    Feature;      /* when write */
 } IDE_ERROR_OR_FEATURE;
 
 typedef union {
-  UINT16  AltStatus;      /* when read */
-  UINT16  DeviceControl;  /* when write */
+  UINT16    AltStatus;     /* when read */
+  UINT16    DeviceControl; /* when write */
 } IDE_ALTSTATUS_OR_DEVICECONTROL;
 
 //
 // IDE registers set
 //
 typedef struct {
-  UINT16                          Data;
-  IDE_ERROR_OR_FEATURE            Reg1;
-  UINT16                          SectorCount;
-  UINT16                          SectorNumber;
-  UINT16                          CylinderLsb;
-  UINT16                          CylinderMsb;
-  UINT16                          Head;
-  IDE_CMD_OR_STATUS               Reg;
-
-  IDE_ALTSTATUS_OR_DEVICECONTROL  Alt;
-  UINT16                          DriveAddress;
+  UINT16                            Data;
+  IDE_ERROR_OR_FEATURE              Reg1;
+  UINT16                            SectorCount;
+  UINT16                            SectorNumber;
+  UINT16                            CylinderLsb;
+  UINT16                            CylinderMsb;
+  UINT16                            Head;
+  IDE_CMD_OR_STATUS                 Reg;
+
+  IDE_ALTSTATUS_OR_DEVICECONTROL    Alt;
+  UINT16                            DriveAddress;
 } IDE_BASE_REGISTERS;
 
 typedef struct {
-
-  UINTN                   DevicePosition;
-  EFI_PEI_BLOCK_IO_MEDIA  MediaInfo;
-  EFI_PEI_BLOCK_IO2_MEDIA MediaInfo2;
-
+  UINTN                      DevicePosition;
+  EFI_PEI_BLOCK_IO_MEDIA     MediaInfo;
+  EFI_PEI_BLOCK_IO2_MEDIA    MediaInfo2;
 } PEI_ATAPI_DEVICE_INFO;
 
 #define ATAPI_BLK_IO_DEV_SIGNATURE  SIGNATURE_32 ('a', 'b', 'i', 'o')
 typedef struct {
-  UINTN                           Signature;
+  UINTN                             Signature;
 
-  EFI_PEI_RECOVERY_BLOCK_IO_PPI   AtapiBlkIo;
-  EFI_PEI_RECOVERY_BLOCK_IO2_PPI  AtapiBlkIo2;
-  EFI_PEI_PPI_DESCRIPTOR          PpiDescriptor;
-  EFI_PEI_PPI_DESCRIPTOR          PpiDescriptor2;
-  PEI_ATA_CONTROLLER_PPI          *AtaControllerPpi;
+  EFI_PEI_RECOVERY_BLOCK_IO_PPI     AtapiBlkIo;
+  EFI_PEI_RECOVERY_BLOCK_IO2_PPI    AtapiBlkIo2;
+  EFI_PEI_PPI_DESCRIPTOR            PpiDescriptor;
+  EFI_PEI_PPI_DESCRIPTOR            PpiDescriptor2;
+  PEI_ATA_CONTROLLER_PPI            *AtaControllerPpi;
 
-  UINTN                           DeviceCount;
-  PEI_ATAPI_DEVICE_INFO           DeviceInfo[MAX_IDE_DEVICES];   //for max 8 device
-  IDE_BASE_REGISTERS              IdeIoPortReg[MAX_IDE_CHANNELS]; //for max 4 channel.
+  UINTN                             DeviceCount;
+  PEI_ATAPI_DEVICE_INFO             DeviceInfo[MAX_IDE_DEVICES];    // for max 8 device
+  IDE_BASE_REGISTERS                IdeIoPortReg[MAX_IDE_CHANNELS]; // for max 4 channel.
 } ATAPI_BLK_IO_DEV;
 
-#define PEI_RECOVERY_ATAPI_FROM_BLKIO_THIS(a) CR (a, ATAPI_BLK_IO_DEV, AtapiBlkIo, ATAPI_BLK_IO_DEV_SIGNATURE)
-#define PEI_RECOVERY_ATAPI_FROM_BLKIO2_THIS(a) CR (a, ATAPI_BLK_IO_DEV, AtapiBlkIo2, ATAPI_BLK_IO_DEV_SIGNATURE)
-
+#define PEI_RECOVERY_ATAPI_FROM_BLKIO_THIS(a)   CR (a, ATAPI_BLK_IO_DEV, AtapiBlkIo, ATAPI_BLK_IO_DEV_SIGNATURE)
+#define PEI_RECOVERY_ATAPI_FROM_BLKIO2_THIS(a)  CR (a, ATAPI_BLK_IO_DEV, AtapiBlkIo2, ATAPI_BLK_IO_DEV_SIGNATURE)
 
 #define STALL_1_MILLI_SECOND  1000  // stall 1 ms
 #define STALL_1_SECONDS       1000 * STALL_1_MILLI_SECOND
@@ -152,9 +148,9 @@ typedef struct {
 EFI_STATUS
 EFIAPI
 AtapiGetNumberOfBlockDevices (
-  IN   EFI_PEI_SERVICES                  **PeiServices,
-  IN   EFI_PEI_RECOVERY_BLOCK_IO_PPI     *This,
-  OUT  UINTN                             *NumberBlockDevices
+  IN   EFI_PEI_SERVICES               **PeiServices,
+  IN   EFI_PEI_RECOVERY_BLOCK_IO_PPI  *This,
+  OUT  UINTN                          *NumberBlockDevices
   );
 
 /**
@@ -188,10 +184,10 @@ AtapiGetNumberOfBlockDevices (
 EFI_STATUS
 EFIAPI
 AtapiGetBlockDeviceMediaInfo (
-  IN   EFI_PEI_SERVICES                     **PeiServices,
-  IN   EFI_PEI_RECOVERY_BLOCK_IO_PPI        *This,
-  IN   UINTN                                DeviceIndex,
-  OUT  EFI_PEI_BLOCK_IO_MEDIA               *MediaInfo
+  IN   EFI_PEI_SERVICES               **PeiServices,
+  IN   EFI_PEI_RECOVERY_BLOCK_IO_PPI  *This,
+  IN   UINTN                          DeviceIndex,
+  OUT  EFI_PEI_BLOCK_IO_MEDIA         *MediaInfo
   );
 
 /**
@@ -231,12 +227,12 @@ AtapiGetBlockDeviceMediaInfo (
 EFI_STATUS
 EFIAPI
 AtapiReadBlocks (
-  IN   EFI_PEI_SERVICES                  **PeiServices,
-  IN   EFI_PEI_RECOVERY_BLOCK_IO_PPI     *This,
-  IN   UINTN                             DeviceIndex,
-  IN   EFI_PEI_LBA                       StartLBA,
-  IN   UINTN                             BufferSize,
-  OUT  VOID                              *Buffer
+  IN   EFI_PEI_SERVICES               **PeiServices,
+  IN   EFI_PEI_RECOVERY_BLOCK_IO_PPI  *This,
+  IN   UINTN                          DeviceIndex,
+  IN   EFI_PEI_LBA                    StartLBA,
+  IN   UINTN                          BufferSize,
+  OUT  VOID                           *Buffer
   );
 
 /**
@@ -261,9 +257,9 @@ AtapiReadBlocks (
 EFI_STATUS
 EFIAPI
 AtapiGetNumberOfBlockDevices2 (
-  IN   EFI_PEI_SERVICES                  **PeiServices,
-  IN   EFI_PEI_RECOVERY_BLOCK_IO2_PPI    *This,
-  OUT  UINTN                             *NumberBlockDevices
+  IN   EFI_PEI_SERVICES                **PeiServices,
+  IN   EFI_PEI_RECOVERY_BLOCK_IO2_PPI  *This,
+  OUT  UINTN                           *NumberBlockDevices
   );
 
 /**
@@ -297,10 +293,10 @@ AtapiGetNumberOfBlockDevices2 (
 EFI_STATUS
 EFIAPI
 AtapiGetBlockDeviceMediaInfo2 (
-  IN   EFI_PEI_SERVICES                     **PeiServices,
-  IN   EFI_PEI_RECOVERY_BLOCK_IO2_PPI       *This,
-  IN   UINTN                                DeviceIndex,
-  OUT  EFI_PEI_BLOCK_IO2_MEDIA              *MediaInfo
+  IN   EFI_PEI_SERVICES                **PeiServices,
+  IN   EFI_PEI_RECOVERY_BLOCK_IO2_PPI  *This,
+  IN   UINTN                           DeviceIndex,
+  OUT  EFI_PEI_BLOCK_IO2_MEDIA         *MediaInfo
   );
 
 /**
@@ -340,12 +336,12 @@ AtapiGetBlockDeviceMediaInfo2 (
 EFI_STATUS
 EFIAPI
 AtapiReadBlocks2 (
-  IN   EFI_PEI_SERVICES                  **PeiServices,
-  IN   EFI_PEI_RECOVERY_BLOCK_IO2_PPI    *This,
-  IN   UINTN                             DeviceIndex,
-  IN   EFI_PEI_LBA                       StartLBA,
-  IN   UINTN                             BufferSize,
-  OUT  VOID                              *Buffer
+  IN   EFI_PEI_SERVICES                **PeiServices,
+  IN   EFI_PEI_RECOVERY_BLOCK_IO2_PPI  *This,
+  IN   UINTN                           DeviceIndex,
+  IN   EFI_PEI_LBA                     StartLBA,
+  IN   UINTN                           BufferSize,
+  OUT  VOID                            *Buffer
   );
 
 //
@@ -379,10 +375,10 @@ AtapiEnumerateDevices (
 **/
 BOOLEAN
 DiscoverAtapiDevice (
-  IN  ATAPI_BLK_IO_DEV              *AtapiBlkIoDev,
-  IN  UINTN                         DevicePosition,
-  OUT EFI_PEI_BLOCK_IO_MEDIA        *MediaInfo,
-  OUT EFI_PEI_BLOCK_IO2_MEDIA       *MediaInfo2
+  IN  ATAPI_BLK_IO_DEV         *AtapiBlkIoDev,
+  IN  UINTN                    DevicePosition,
+  OUT EFI_PEI_BLOCK_IO_MEDIA   *MediaInfo,
+  OUT EFI_PEI_BLOCK_IO2_MEDIA  *MediaInfo2
   );
 
 /**
@@ -397,8 +393,8 @@ DiscoverAtapiDevice (
 **/
 BOOLEAN
 DetectIDEController (
-  IN  ATAPI_BLK_IO_DEV   *AtapiBlkIoDev,
-  IN  UINTN              DevicePosition
+  IN  ATAPI_BLK_IO_DEV  *AtapiBlkIoDev,
+  IN  UINTN             DevicePosition
   );
 
 /**
@@ -523,8 +519,8 @@ DRQReady2 (
 **/
 EFI_STATUS
 CheckErrorStatus (
-  IN  ATAPI_BLK_IO_DEV    *AtapiBlkIoDev,
-  IN  UINT16              StatusReg
+  IN  ATAPI_BLK_IO_DEV  *AtapiBlkIoDev,
+  IN  UINT16            StatusReg
   );
 
 /**
@@ -539,8 +535,8 @@ CheckErrorStatus (
 **/
 EFI_STATUS
 ATAPIIdentify (
-  IN  ATAPI_BLK_IO_DEV        *AtapiBlkIoDev,
-  IN  UINTN                   DevicePosition
+  IN  ATAPI_BLK_IO_DEV  *AtapiBlkIoDev,
+  IN  UINTN             DevicePosition
   );
 
 /**
@@ -556,9 +552,9 @@ ATAPIIdentify (
 **/
 EFI_STATUS
 TestUnitReady (
-  IN  ATAPI_BLK_IO_DEV    *AtapiBlkIoDev,
-  IN  UINTN               DevicePosition
-  ) ;
+  IN  ATAPI_BLK_IO_DEV  *AtapiBlkIoDev,
+  IN  UINTN             DevicePosition
+  );
 
 /**
   Send out ATAPI commands conforms to the Packet Command with PIO Data In Protocol.
@@ -600,10 +596,10 @@ AtapiPacketCommandIn (
 **/
 EFI_STATUS
 Inquiry (
-  IN  ATAPI_BLK_IO_DEV              *AtapiBlkIoDev,
-  IN  UINTN                         DevicePosition,
-  OUT EFI_PEI_BLOCK_IO_MEDIA        *MediaInfo,
-  OUT EFI_PEI_BLOCK_IO2_MEDIA       *MediaInfo2
+  IN  ATAPI_BLK_IO_DEV         *AtapiBlkIoDev,
+  IN  UINTN                    DevicePosition,
+  OUT EFI_PEI_BLOCK_IO_MEDIA   *MediaInfo,
+  OUT EFI_PEI_BLOCK_IO2_MEDIA  *MediaInfo2
   );
 
 /**
@@ -623,10 +619,10 @@ Inquiry (
 **/
 EFI_STATUS
 DetectMedia (
-  IN  ATAPI_BLK_IO_DEV              *AtapiBlkIoDev,
-  IN  UINTN                         DevicePosition,
-  IN OUT EFI_PEI_BLOCK_IO_MEDIA     *MediaInfo,
-  IN OUT EFI_PEI_BLOCK_IO2_MEDIA    *MediaInfo2
+  IN  ATAPI_BLK_IO_DEV            *AtapiBlkIoDev,
+  IN  UINTN                       DevicePosition,
+  IN OUT EFI_PEI_BLOCK_IO_MEDIA   *MediaInfo,
+  IN OUT EFI_PEI_BLOCK_IO2_MEDIA  *MediaInfo2
   );
 
 /**
@@ -683,10 +679,10 @@ RequestSense (
 **/
 EFI_STATUS
 ReadCapacity (
-  IN  ATAPI_BLK_IO_DEV              *AtapiBlkIoDev,
-  IN  UINTN                         DevicePosition,
-  IN OUT EFI_PEI_BLOCK_IO_MEDIA     *MediaInfo,
-  IN OUT EFI_PEI_BLOCK_IO2_MEDIA    *MediaInfo2
+  IN  ATAPI_BLK_IO_DEV            *AtapiBlkIoDev,
+  IN  UINTN                       DevicePosition,
+  IN OUT EFI_PEI_BLOCK_IO_MEDIA   *MediaInfo,
+  IN OUT EFI_PEI_BLOCK_IO2_MEDIA  *MediaInfo2
   );
 
 /**
@@ -705,12 +701,12 @@ ReadCapacity (
 **/
 EFI_STATUS
 ReadSectors (
-  IN  ATAPI_BLK_IO_DEV    *AtapiBlkIoDev,
-  IN  UINTN               DevicePosition,
-  IN  VOID                *Buffer,
-  IN  EFI_PEI_LBA         StartLba,
-  IN  UINTN               NumberOfBlocks,
-  IN  UINTN               BlockSize
+  IN  ATAPI_BLK_IO_DEV  *AtapiBlkIoDev,
+  IN  UINTN             DevicePosition,
+  IN  VOID              *Buffer,
+  IN  EFI_PEI_LBA       StartLba,
+  IN  UINTN             NumberOfBlocks,
+  IN  UINTN             BlockSize
   );
 
 /**
@@ -725,8 +721,8 @@ ReadSectors (
 **/
 BOOLEAN
 IsNoMedia (
-  IN  ATAPI_REQUEST_SENSE_DATA    *SenseData,
-  IN  UINTN                 SenseCounts
+  IN  ATAPI_REQUEST_SENSE_DATA  *SenseData,
+  IN  UINTN                     SenseCounts
   );
 
 /**
@@ -741,8 +737,8 @@ IsNoMedia (
 **/
 BOOLEAN
 IsDeviceStateUnclear (
-  IN  ATAPI_REQUEST_SENSE_DATA    *SenseData,
-  IN  UINTN                 SenseCounts
+  IN  ATAPI_REQUEST_SENSE_DATA  *SenseData,
+  IN  UINTN                     SenseCounts
   );
 
 /**
@@ -757,8 +753,8 @@ IsDeviceStateUnclear (
 **/
 BOOLEAN
 IsMediaError (
-  IN  ATAPI_REQUEST_SENSE_DATA    *SenseData,
-  IN  UINTN                 SenseCounts
+  IN  ATAPI_REQUEST_SENSE_DATA  *SenseData,
+  IN  UINTN                     SenseCounts
   );
 
 /**
@@ -774,9 +770,9 @@ IsMediaError (
 **/
 BOOLEAN
 IsDriveReady (
-  IN  ATAPI_REQUEST_SENSE_DATA    *SenseData,
-  IN  UINTN                 SenseCounts,
-  OUT BOOLEAN               *NeedRetry
+  IN  ATAPI_REQUEST_SENSE_DATA  *SenseData,
+  IN  UINTN                     SenseCounts,
+  OUT BOOLEAN                   *NeedRetry
   );
 
 #endif

+ 130 - 130
MdeModulePkg/Bus/Pci/IncompatiblePciDeviceSupportDxe/IncompatiblePciDeviceSupport.c

@@ -21,32 +21,32 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 #include <IndustryStandard/Acpi.h>
 
 typedef struct {
-  UINT64  VendorId;
-  UINT64  DeviceId;
-  UINT64  RevisionId;
-  UINT64  SubsystemVendorId;
-  UINT64  SubsystemDeviceId;
+  UINT64    VendorId;
+  UINT64    DeviceId;
+  UINT64    RevisionId;
+  UINT64    SubsystemVendorId;
+  UINT64    SubsystemDeviceId;
 } EFI_PCI_DEVICE_HEADER_INFO;
 
 typedef struct {
-  UINT64  ResType;
-  UINT64  GenFlag;
-  UINT64  SpecificFlag;
-  UINT64  AddrSpaceGranularity;
-  UINT64  AddrRangeMin;
-  UINT64  AddrRangeMax;
-  UINT64  AddrTranslationOffset;
-  UINT64  AddrLen;
+  UINT64    ResType;
+  UINT64    GenFlag;
+  UINT64    SpecificFlag;
+  UINT64    AddrSpaceGranularity;
+  UINT64    AddrRangeMin;
+  UINT64    AddrRangeMax;
+  UINT64    AddrTranslationOffset;
+  UINT64    AddrLen;
 } EFI_PCI_RESOUCE_DESCRIPTOR;
 
 #define PCI_DEVICE_ID(VendorId, DeviceId, Revision, SubVendorId, SubDeviceId) \
     VendorId, DeviceId, Revision, SubVendorId, SubDeviceId
 
-#define DEVICE_INF_TAG    0xFFF2
-#define DEVICE_RES_TAG    0xFFF1
-#define LIST_END_TAG      0x0000
+#define DEVICE_INF_TAG  0xFFF2
+#define DEVICE_RES_TAG  0xFFF1
+#define LIST_END_TAG    0x0000
 
-#define EVEN_ALIGN        0xFFFFFFFFFFFFFFFEULL
+#define EVEN_ALIGN  0xFFFFFFFFFFFFFFFEULL
 
 /**
   Returns a list of ACPI resource descriptors that detail the special
@@ -82,7 +82,7 @@ PCheckDevice (
 //
 // Handle onto which the Incompatible PCI Device List is installed
 //
-EFI_HANDLE                                    mIncompatiblePciDeviceSupportHandle = NULL;
+EFI_HANDLE  mIncompatiblePciDeviceSupportHandle = NULL;
 
 //
 // The Incompatible PCI Device Support Protocol instance produced by this driver
@@ -94,7 +94,7 @@ EFI_INCOMPATIBLE_PCI_DEVICE_SUPPORT_PROTOCOL  mIncompatiblePciDeviceSupport = {
 //
 // The incompatible PCI devices list template
 //
-GLOBAL_REMOVE_IF_UNREFERENCED UINT64 mIncompatiblePciDeviceList[] = {
+GLOBAL_REMOVE_IF_UNREFERENCED UINT64  mIncompatiblePciDeviceList[] = {
   //
   // DEVICE_INF_TAG,
   // PCI_DEVICE_ID (VendorID, DeviceID, Revision, SubVendorId, SubDeviceId),
@@ -106,7 +106,7 @@ GLOBAL_REMOVE_IF_UNREFERENCED UINT64 mIncompatiblePciDeviceList[] = {
   // Device Adaptec 9004
   //
   DEVICE_INF_TAG,
-  PCI_DEVICE_ID(0x9004, MAX_UINT64, MAX_UINT64, MAX_UINT64, MAX_UINT64),
+  PCI_DEVICE_ID (0x9004,     MAX_UINT64,  MAX_UINT64, MAX_UINT64, MAX_UINT64),
   DEVICE_RES_TAG,
   ACPI_ADDRESS_SPACE_TYPE_IO,
   0,
@@ -120,7 +120,7 @@ GLOBAL_REMOVE_IF_UNREFERENCED UINT64 mIncompatiblePciDeviceList[] = {
   // Device Adaptec 9005
   //
   DEVICE_INF_TAG,
-  PCI_DEVICE_ID(0x9005, MAX_UINT64, MAX_UINT64, MAX_UINT64, MAX_UINT64),
+  PCI_DEVICE_ID (0x9005,     MAX_UINT64,  MAX_UINT64, MAX_UINT64, MAX_UINT64),
   DEVICE_RES_TAG,
   ACPI_ADDRESS_SPACE_TYPE_IO,
   0,
@@ -134,7 +134,7 @@ GLOBAL_REMOVE_IF_UNREFERENCED UINT64 mIncompatiblePciDeviceList[] = {
   // Device QLogic  1007
   //
   DEVICE_INF_TAG,
-  PCI_DEVICE_ID(0x1077, MAX_UINT64, MAX_UINT64, MAX_UINT64, MAX_UINT64),
+  PCI_DEVICE_ID (0x1077,     MAX_UINT64,  MAX_UINT64, MAX_UINT64, MAX_UINT64),
   DEVICE_RES_TAG,
   ACPI_ADDRESS_SPACE_TYPE_IO,
   0,
@@ -148,7 +148,7 @@ GLOBAL_REMOVE_IF_UNREFERENCED UINT64 mIncompatiblePciDeviceList[] = {
   // Device Agilent 103C
   //
   DEVICE_INF_TAG,
-  PCI_DEVICE_ID(0x103C, MAX_UINT64, MAX_UINT64, MAX_UINT64, MAX_UINT64),
+  PCI_DEVICE_ID (0x103C,     MAX_UINT64,  MAX_UINT64, MAX_UINT64, MAX_UINT64),
   DEVICE_RES_TAG,
   ACPI_ADDRESS_SPACE_TYPE_IO,
   0,
@@ -162,7 +162,7 @@ GLOBAL_REMOVE_IF_UNREFERENCED UINT64 mIncompatiblePciDeviceList[] = {
   // Device Agilent 15BC
   //
   DEVICE_INF_TAG,
-  PCI_DEVICE_ID(0x15BC, MAX_UINT64, MAX_UINT64, MAX_UINT64, MAX_UINT64),
+  PCI_DEVICE_ID (0x15BC,     MAX_UINT64,  MAX_UINT64, MAX_UINT64, MAX_UINT64),
   DEVICE_RES_TAG,
   ACPI_ADDRESS_SPACE_TYPE_IO,
   0,
@@ -178,7 +178,6 @@ GLOBAL_REMOVE_IF_UNREFERENCED UINT64 mIncompatiblePciDeviceList[] = {
   LIST_END_TAG
 };
 
-
 /**
   Entry point of the incompatible pci device support code. Setup an incompatible device list template
   and install EFI Incompatible PCI Device Support protocol.
@@ -193,11 +192,11 @@ GLOBAL_REMOVE_IF_UNREFERENCED UINT64 mIncompatiblePciDeviceList[] = {
 EFI_STATUS
 EFIAPI
 IncompatiblePciDeviceSupportEntryPoint (
-  IN EFI_HANDLE                   ImageHandle,
-  IN EFI_SYSTEM_TABLE             *SystemTable
+  IN EFI_HANDLE        ImageHandle,
+  IN EFI_SYSTEM_TABLE  *SystemTable
   )
 {
-  EFI_STATUS                         Status;
+  EFI_STATUS  Status;
 
   //
   // Install EFI Incompatible PCI Device Support Protocol on a new handle
@@ -244,15 +243,15 @@ PCheckDevice (
   OUT VOID                                          **Configuration
   )
 {
-  UINT64                            Tag;
-  UINT64                            *ListPtr;
-  UINT64                            *TempListPtr;
-  EFI_PCI_DEVICE_HEADER_INFO        *Header;
-  EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR *AcpiPtr;
-  EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR *OldAcpiPtr;
-  EFI_PCI_RESOUCE_DESCRIPTOR        *Dsc;
-  EFI_ACPI_END_TAG_DESCRIPTOR       *PtrEnd;
-  UINTN                             Index;
+  UINT64                             Tag;
+  UINT64                             *ListPtr;
+  UINT64                             *TempListPtr;
+  EFI_PCI_DEVICE_HEADER_INFO         *Header;
+  EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR  *AcpiPtr;
+  EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR  *OldAcpiPtr;
+  EFI_PCI_RESOUCE_DESCRIPTOR         *Dsc;
+  EFI_ACPI_END_TAG_DESCRIPTOR        *PtrEnd;
+  UINTN                              Index;
 
   //
   // Validate the parameters
@@ -260,120 +259,121 @@ PCheckDevice (
   if (Configuration == NULL) {
     return EFI_INVALID_PARAMETER;
   }
+
   //
   // Initialize the return value to NULL
   //
-  * (VOID **) Configuration = NULL;
+  *(VOID **)Configuration = NULL;
 
-  ListPtr                   = mIncompatiblePciDeviceList;
+  ListPtr = mIncompatiblePciDeviceList;
   while (*ListPtr != LIST_END_TAG) {
-
     Tag = *ListPtr;
 
     switch (Tag) {
-    case DEVICE_INF_TAG:
-      Header  = (EFI_PCI_DEVICE_HEADER_INFO *) (ListPtr + 1);
-      ListPtr = ListPtr + 1 + sizeof (EFI_PCI_DEVICE_HEADER_INFO) / sizeof (UINT64);
-      //
-      // See if the Header matches the parameters passed in
-      //
-      if ((Header->VendorId != MAX_UINT64) && (VendorId != MAX_UINTN)) {
-        if (Header->VendorId != VendorId) {
-          continue;
+      case DEVICE_INF_TAG:
+        Header  = (EFI_PCI_DEVICE_HEADER_INFO *)(ListPtr + 1);
+        ListPtr = ListPtr + 1 + sizeof (EFI_PCI_DEVICE_HEADER_INFO) / sizeof (UINT64);
+        //
+        // See if the Header matches the parameters passed in
+        //
+        if ((Header->VendorId != MAX_UINT64) && (VendorId != MAX_UINTN)) {
+          if (Header->VendorId != VendorId) {
+            continue;
+          }
         }
-      }
 
-      if ((Header->DeviceId != MAX_UINT64) && (DeviceId != MAX_UINTN)) {
-        if (DeviceId != Header->DeviceId) {
-          continue;
+        if ((Header->DeviceId != MAX_UINT64) && (DeviceId != MAX_UINTN)) {
+          if (DeviceId != Header->DeviceId) {
+            continue;
+          }
         }
-      }
 
-      if ((Header->RevisionId != MAX_UINT64) && (RevisionId != MAX_UINTN)) {
-        if (RevisionId != Header->RevisionId) {
-          continue;
+        if ((Header->RevisionId != MAX_UINT64) && (RevisionId != MAX_UINTN)) {
+          if (RevisionId != Header->RevisionId) {
+            continue;
+          }
         }
-      }
 
-      if ((Header->SubsystemVendorId != MAX_UINT64) && (SubsystemVendorId != MAX_UINTN)) {
-        if (SubsystemVendorId != Header->SubsystemVendorId) {
-          continue;
+        if ((Header->SubsystemVendorId != MAX_UINT64) && (SubsystemVendorId != MAX_UINTN)) {
+          if (SubsystemVendorId != Header->SubsystemVendorId) {
+            continue;
+          }
         }
-      }
 
-      if ((Header->SubsystemDeviceId != MAX_UINT64) && (SubsystemDeviceId != MAX_UINTN)) {
-        if (SubsystemDeviceId != Header->SubsystemDeviceId) {
-          continue;
+        if ((Header->SubsystemDeviceId != MAX_UINT64) && (SubsystemDeviceId != MAX_UINTN)) {
+          if (SubsystemDeviceId != Header->SubsystemDeviceId) {
+            continue;
+          }
         }
-      }
-      //
-      // Matched an item, so construct the ACPI descriptor for the resource.
-      //
-      //
-      // Count the resource items so that to allocate space
-      //
-      for (Index = 0, TempListPtr = ListPtr; *TempListPtr == DEVICE_RES_TAG; Index++) {
-        TempListPtr = TempListPtr + 1 + ((sizeof (EFI_PCI_RESOUCE_DESCRIPTOR)) / sizeof (UINT64));
-      }
-      //
-      // If there is at least one type of resource request,
-      // allocate an acpi resource node
-      //
-      if (Index == 0) {
-        return EFI_UNSUPPORTED;
-      }
-
-      AcpiPtr = AllocateZeroPool (sizeof (EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR) * Index + sizeof (EFI_ACPI_END_TAG_DESCRIPTOR));
-      if (AcpiPtr == NULL) {
-        return EFI_OUT_OF_RESOURCES;
-      }
-
-      OldAcpiPtr = AcpiPtr;
-      //
-      // Fill the EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR structure
-      // according to the EFI_PCI_RESOUCE_DESCRIPTOR structure
-      //
-      for (; *ListPtr == DEVICE_RES_TAG;) {
-
-        Dsc = (EFI_PCI_RESOUCE_DESCRIPTOR *) (ListPtr + 1);
-
-        AcpiPtr->Desc = ACPI_ADDRESS_SPACE_DESCRIPTOR;
-        AcpiPtr->Len = (UINT16) sizeof (EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR) - 3;
-        AcpiPtr->ResType = (UINT8) Dsc->ResType;
-        AcpiPtr->GenFlag = (UINT8) Dsc->GenFlag;
-        AcpiPtr->SpecificFlag = (UINT8) Dsc->SpecificFlag;
-        AcpiPtr->AddrSpaceGranularity = Dsc->AddrSpaceGranularity;;
-        AcpiPtr->AddrRangeMin = Dsc->AddrRangeMin;
-        AcpiPtr->AddrRangeMax = Dsc->AddrRangeMax;
-        AcpiPtr->AddrTranslationOffset = Dsc->AddrTranslationOffset;
-        AcpiPtr->AddrLen = Dsc->AddrLen;
 
+        //
+        // Matched an item, so construct the ACPI descriptor for the resource.
+        //
+        //
+        // Count the resource items so that to allocate space
+        //
+        for (Index = 0, TempListPtr = ListPtr; *TempListPtr == DEVICE_RES_TAG; Index++) {
+          TempListPtr = TempListPtr + 1 + ((sizeof (EFI_PCI_RESOUCE_DESCRIPTOR)) / sizeof (UINT64));
+        }
+
+        //
+        // If there is at least one type of resource request,
+        // allocate an acpi resource node
+        //
+        if (Index == 0) {
+          return EFI_UNSUPPORTED;
+        }
+
+        AcpiPtr = AllocateZeroPool (sizeof (EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR) * Index + sizeof (EFI_ACPI_END_TAG_DESCRIPTOR));
+        if (AcpiPtr == NULL) {
+          return EFI_OUT_OF_RESOURCES;
+        }
+
+        OldAcpiPtr = AcpiPtr;
+        //
+        // Fill the EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR structure
+        // according to the EFI_PCI_RESOUCE_DESCRIPTOR structure
+        //
+        for ( ; *ListPtr == DEVICE_RES_TAG;) {
+          Dsc = (EFI_PCI_RESOUCE_DESCRIPTOR *)(ListPtr + 1);
+
+          AcpiPtr->Desc                  = ACPI_ADDRESS_SPACE_DESCRIPTOR;
+          AcpiPtr->Len                   = (UINT16)sizeof (EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR) - 3;
+          AcpiPtr->ResType               = (UINT8)Dsc->ResType;
+          AcpiPtr->GenFlag               = (UINT8)Dsc->GenFlag;
+          AcpiPtr->SpecificFlag          = (UINT8)Dsc->SpecificFlag;
+          AcpiPtr->AddrSpaceGranularity  = Dsc->AddrSpaceGranularity;
+          AcpiPtr->AddrRangeMin          = Dsc->AddrRangeMin;
+          AcpiPtr->AddrRangeMax          = Dsc->AddrRangeMax;
+          AcpiPtr->AddrTranslationOffset = Dsc->AddrTranslationOffset;
+          AcpiPtr->AddrLen               = Dsc->AddrLen;
+
+          ListPtr = ListPtr + 1 + ((sizeof (EFI_PCI_RESOUCE_DESCRIPTOR)) / sizeof (UINT64));
+          AcpiPtr++;
+        }
+
+        //
+        // Put the checksum
+        //
+        PtrEnd           = (EFI_ACPI_END_TAG_DESCRIPTOR *)(AcpiPtr);
+        PtrEnd->Desc     = ACPI_END_TAG_DESCRIPTOR;
+        PtrEnd->Checksum = 0;
+
+        *(VOID **)Configuration = OldAcpiPtr;
+
+        return EFI_SUCCESS;
+
+      case DEVICE_RES_TAG:
+        //
+        // Adjust the pointer to the next PCI resource descriptor item
+        //
         ListPtr = ListPtr + 1 + ((sizeof (EFI_PCI_RESOUCE_DESCRIPTOR)) / sizeof (UINT64));
-        AcpiPtr++;
-      }
-      //
-      // Put the checksum
-      //
-      PtrEnd                    = (EFI_ACPI_END_TAG_DESCRIPTOR *) (AcpiPtr);
-      PtrEnd->Desc              = ACPI_END_TAG_DESCRIPTOR;
-      PtrEnd->Checksum          = 0;
-
-      *(VOID **) Configuration  = OldAcpiPtr;
-
-      return EFI_SUCCESS;
-
-    case DEVICE_RES_TAG:
-      //
-      // Adjust the pointer to the next PCI resource descriptor item
-      //
-      ListPtr = ListPtr + 1 + ((sizeof (EFI_PCI_RESOUCE_DESCRIPTOR)) / sizeof (UINT64));
-      break;
-
-    default:
-      return EFI_UNSUPPORTED;
+        break;
+
+      default:
+        return EFI_UNSUPPORTED;
     }
   }
 
   return EFI_UNSUPPORTED;
 }
-

+ 15 - 15
MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/ComponentName.c

@@ -17,12 +17,12 @@
 //
 
 STATIC
-EFI_UNICODE_STRING_TABLE mDriverNameTable[] = {
+EFI_UNICODE_STRING_TABLE  mDriverNameTable[] = {
   { "eng;en", L"PCI I/O protocol emulation driver for non-discoverable devices" },
-  { NULL,     NULL                   }
+  { NULL,     NULL                                                              }
 };
 
-EFI_COMPONENT_NAME_PROTOCOL gComponentName;
+EFI_COMPONENT_NAME_PROTOCOL  gComponentName;
 
 /**
   Retrieves a Unicode string that is the user readable name of the UEFI Driver.
@@ -49,9 +49,9 @@ STATIC
 EFI_STATUS
 EFIAPI
 NonDiscoverablePciGetDriverName (
-  IN  EFI_COMPONENT_NAME_PROTOCOL *This,
-  IN  CHAR8                       *Language,
-  OUT CHAR16                      **DriverName
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **DriverName
   )
 {
   return LookupUnicodeString2 (
@@ -93,24 +93,24 @@ STATIC
 EFI_STATUS
 EFIAPI
 NonDiscoverablePciGetDeviceName (
-  IN  EFI_COMPONENT_NAME_PROTOCOL *This,
-  IN  EFI_HANDLE                  DeviceHandle,
-  IN  EFI_HANDLE                  ChildHandle,
-  IN  CHAR8                       *Language,
-  OUT CHAR16                      **ControllerName
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  EFI_HANDLE                   DeviceHandle,
+  IN  EFI_HANDLE                   ChildHandle,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **ControllerName
   )
 {
   return EFI_UNSUPPORTED;
 }
 
-EFI_COMPONENT_NAME_PROTOCOL gComponentName = {
+EFI_COMPONENT_NAME_PROTOCOL  gComponentName = {
   &NonDiscoverablePciGetDriverName,
   &NonDiscoverablePciGetDeviceName,
   "eng" // SupportedLanguages, ISO 639-2 language codes
 };
 
-EFI_COMPONENT_NAME2_PROTOCOL gComponentName2 = {
-  (EFI_COMPONENT_NAME2_GET_DRIVER_NAME)     &NonDiscoverablePciGetDriverName,
-  (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME) &NonDiscoverablePciGetDeviceName,
+EFI_COMPONENT_NAME2_PROTOCOL  gComponentName2 = {
+  (EFI_COMPONENT_NAME2_GET_DRIVER_NAME)&NonDiscoverablePciGetDriverName,
+  (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME)&NonDiscoverablePciGetDeviceName,
   "en" // SupportedLanguages, RFC 4646 language codes
 };

+ 88 - 55
MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceDxe.c

@@ -10,16 +10,16 @@
 
 #include <Protocol/DriverBinding.h>
 
-#define MAX_NON_DISCOVERABLE_PCI_DEVICE_ID   (32 * 256)
+#define MAX_NON_DISCOVERABLE_PCI_DEVICE_ID  (32 * 256)
 
-STATIC UINTN               mUniqueIdCounter = 0;
-EFI_CPU_ARCH_PROTOCOL      *mCpu;
+STATIC UINTN           mUniqueIdCounter = 0;
+EFI_CPU_ARCH_PROTOCOL  *mCpu;
 
 //
 // We only support the following device types
 //
 STATIC
-CONST EFI_GUID * CONST
+CONST EFI_GUID *CONST
 SupportedNonDiscoverableDevices[] = {
   &gEdkiiNonDiscoverableAhciDeviceGuid,
   &gEdkiiNonDiscoverableEhciDeviceGuid,
@@ -63,27 +63,31 @@ STATIC
 EFI_STATUS
 EFIAPI
 NonDiscoverablePciDeviceSupported (
-  IN EFI_DRIVER_BINDING_PROTOCOL *This,
-  IN EFI_HANDLE                  DeviceHandle,
-  IN EFI_DEVICE_PATH_PROTOCOL    *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   DeviceHandle,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   )
 {
-  NON_DISCOVERABLE_DEVICE             *Device;
-  EFI_STATUS                          Status;
-  EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR   *Desc;
-  INTN                                Idx;
-
-  Status = gBS->OpenProtocol (DeviceHandle,
-                  &gEdkiiNonDiscoverableDeviceProtocolGuid, (VOID **)&Device,
-                  This->DriverBindingHandle, DeviceHandle,
-                  EFI_OPEN_PROTOCOL_BY_DRIVER);
+  NON_DISCOVERABLE_DEVICE            *Device;
+  EFI_STATUS                         Status;
+  EFI_ACPI_ADDRESS_SPACE_DESCRIPTOR  *Desc;
+  INTN                               Idx;
+
+  Status = gBS->OpenProtocol (
+                  DeviceHandle,
+                  &gEdkiiNonDiscoverableDeviceProtocolGuid,
+                  (VOID **)&Device,
+                  This->DriverBindingHandle,
+                  DeviceHandle,
+                  EFI_OPEN_PROTOCOL_BY_DRIVER
+                  );
   if (EFI_ERROR (Status)) {
     return Status;
   }
 
   Status = EFI_UNSUPPORTED;
   for (Idx = 0; Idx < ARRAY_SIZE (SupportedNonDiscoverableDevices); Idx++) {
-    if (CompareGuid (Device->Type, SupportedNonDiscoverableDevices [Idx])) {
+    if (CompareGuid (Device->Type, SupportedNonDiscoverableDevices[Idx])) {
       Status = EFI_SUCCESS;
       break;
     }
@@ -98,17 +102,23 @@ NonDiscoverablePciDeviceSupported (
   // that they only describe things that we can handle
   //
   for (Desc = Device->Resources; Desc->Desc != ACPI_END_TAG_DESCRIPTOR;
-       Desc = (VOID *)((UINT8 *)Desc + Desc->Len + 3)) {
-    if (Desc->Desc != ACPI_ADDRESS_SPACE_DESCRIPTOR ||
-        Desc->ResType != ACPI_ADDRESS_SPACE_TYPE_MEM) {
+       Desc = (VOID *)((UINT8 *)Desc + Desc->Len + 3))
+  {
+    if ((Desc->Desc != ACPI_ADDRESS_SPACE_DESCRIPTOR) ||
+        (Desc->ResType != ACPI_ADDRESS_SPACE_TYPE_MEM))
+    {
       Status = EFI_UNSUPPORTED;
       break;
     }
   }
 
 CloseProtocol:
-  gBS->CloseProtocol (DeviceHandle, &gEdkiiNonDiscoverableDeviceProtocolGuid,
-         This->DriverBindingHandle, DeviceHandle);
+  gBS->CloseProtocol (
+         DeviceHandle,
+         &gEdkiiNonDiscoverableDeviceProtocolGuid,
+         This->DriverBindingHandle,
+         DeviceHandle
+         );
 
   return Status;
 }
@@ -130,13 +140,13 @@ STATIC
 EFI_STATUS
 EFIAPI
 NonDiscoverablePciDeviceStart (
-  IN EFI_DRIVER_BINDING_PROTOCOL *This,
-  IN EFI_HANDLE                  DeviceHandle,
-  IN EFI_DEVICE_PATH_PROTOCOL    *RemainingDevicePath
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   DeviceHandle,
+  IN EFI_DEVICE_PATH_PROTOCOL     *RemainingDevicePath
   )
 {
-  NON_DISCOVERABLE_PCI_DEVICE   *Dev;
-  EFI_STATUS                    Status;
+  NON_DISCOVERABLE_PCI_DEVICE  *Dev;
+  EFI_STATUS                   Status;
 
   ASSERT (mUniqueIdCounter < MAX_NON_DISCOVERABLE_PCI_DEVICE_ID);
   if (mUniqueIdCounter >= MAX_NON_DISCOVERABLE_PCI_DEVICE_ID) {
@@ -148,10 +158,14 @@ NonDiscoverablePciDeviceStart (
     return EFI_OUT_OF_RESOURCES;
   }
 
-  Status = gBS->OpenProtocol (DeviceHandle,
+  Status = gBS->OpenProtocol (
+                  DeviceHandle,
                   &gEdkiiNonDiscoverableDeviceProtocolGuid,
-                  (VOID **)&Dev->Device, This->DriverBindingHandle,
-                  DeviceHandle, EFI_OPEN_PROTOCOL_BY_DRIVER);
+                  (VOID **)&Dev->Device,
+                  This->DriverBindingHandle,
+                  DeviceHandle,
+                  EFI_OPEN_PROTOCOL_BY_DRIVER
+                  );
   if (EFI_ERROR (Status)) {
     goto FreeDev;
   }
@@ -163,8 +177,12 @@ NonDiscoverablePciDeviceStart (
   // EFI_PCI_IO_PROTOCOL interface.
   //
   Dev->Signature = NON_DISCOVERABLE_PCI_DEVICE_SIG;
-  Status = gBS->InstallProtocolInterface (&DeviceHandle, &gEfiPciIoProtocolGuid,
-                  EFI_NATIVE_INTERFACE, &Dev->PciIo);
+  Status         = gBS->InstallProtocolInterface (
+                          &DeviceHandle,
+                          &gEfiPciIoProtocolGuid,
+                          EFI_NATIVE_INTERFACE,
+                          &Dev->PciIo
+                          );
   if (EFI_ERROR (Status)) {
     goto CloseProtocol;
   }
@@ -174,8 +192,12 @@ NonDiscoverablePciDeviceStart (
   return EFI_SUCCESS;
 
 CloseProtocol:
-  gBS->CloseProtocol (DeviceHandle, &gEdkiiNonDiscoverableDeviceProtocolGuid,
-         This->DriverBindingHandle, DeviceHandle);
+  gBS->CloseProtocol (
+         DeviceHandle,
+         &gEdkiiNonDiscoverableDeviceProtocolGuid,
+         This->DriverBindingHandle,
+         DeviceHandle
+         );
 
 FreeDev:
   FreePool (Dev);
@@ -199,19 +221,24 @@ STATIC
 EFI_STATUS
 EFIAPI
 NonDiscoverablePciDeviceStop (
-  IN EFI_DRIVER_BINDING_PROTOCOL *This,
-  IN EFI_HANDLE                  DeviceHandle,
-  IN UINTN                       NumberOfChildren,
-  IN EFI_HANDLE                  *ChildHandleBuffer
+  IN EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN EFI_HANDLE                   DeviceHandle,
+  IN UINTN                        NumberOfChildren,
+  IN EFI_HANDLE                   *ChildHandleBuffer
   )
 {
-  EFI_STATUS                      Status;
-  EFI_PCI_IO_PROTOCOL             *PciIo;
-  NON_DISCOVERABLE_PCI_DEVICE     *Dev;
-
-  Status = gBS->OpenProtocol (DeviceHandle, &gEfiPciIoProtocolGuid,
-                  (VOID **)&PciIo, This->DriverBindingHandle, DeviceHandle,
-                  EFI_OPEN_PROTOCOL_GET_PROTOCOL);
+  EFI_STATUS                   Status;
+  EFI_PCI_IO_PROTOCOL          *PciIo;
+  NON_DISCOVERABLE_PCI_DEVICE  *Dev;
+
+  Status = gBS->OpenProtocol (
+                  DeviceHandle,
+                  &gEfiPciIoProtocolGuid,
+                  (VOID **)&PciIo,
+                  This->DriverBindingHandle,
+                  DeviceHandle,
+                  EFI_OPEN_PROTOCOL_GET_PROTOCOL
+                  );
   if (EFI_ERROR (Status)) {
     return Status;
   }
@@ -221,27 +248,33 @@ NonDiscoverablePciDeviceStop (
   //
   // Handle Stop() requests for in-use driver instances gracefully.
   //
-  Status = gBS->UninstallProtocolInterface (DeviceHandle,
-                  &gEfiPciIoProtocolGuid, &Dev->PciIo);
+  Status = gBS->UninstallProtocolInterface (
+                  DeviceHandle,
+                  &gEfiPciIoProtocolGuid,
+                  &Dev->PciIo
+                  );
   if (EFI_ERROR (Status)) {
     return Status;
   }
 
-  gBS->CloseProtocol (DeviceHandle, &gEdkiiNonDiscoverableDeviceProtocolGuid,
-         This->DriverBindingHandle, DeviceHandle);
+  gBS->CloseProtocol (
+         DeviceHandle,
+         &gEdkiiNonDiscoverableDeviceProtocolGuid,
+         This->DriverBindingHandle,
+         DeviceHandle
+         );
 
   FreePool (Dev);
 
   return EFI_SUCCESS;
 }
 
-
 //
 // The static object that groups the Supported() (ie. probe), Start() and
 // Stop() functions of the driver together. Refer to UEFI Spec 2.3.1 + Errata
 // C, 10.1 EFI Driver Binding Protocol.
 //
-STATIC EFI_DRIVER_BINDING_PROTOCOL gDriverBinding = {
+STATIC EFI_DRIVER_BINDING_PROTOCOL  gDriverBinding = {
   &NonDiscoverablePciDeviceSupported,
   &NonDiscoverablePciDeviceStart,
   &NonDiscoverablePciDeviceStop,
@@ -263,14 +296,14 @@ STATIC EFI_DRIVER_BINDING_PROTOCOL gDriverBinding = {
 EFI_STATUS
 EFIAPI
 NonDiscoverablePciDeviceDxeEntryPoint (
-  IN EFI_HANDLE       ImageHandle,
-  IN EFI_SYSTEM_TABLE *SystemTable
+  IN EFI_HANDLE        ImageHandle,
+  IN EFI_SYSTEM_TABLE  *SystemTable
   )
 {
-  EFI_STATUS      Status;
+  EFI_STATUS  Status;
 
   Status = gBS->LocateProtocol (&gEfiCpuArchProtocolGuid, NULL, (VOID **)&mCpu);
-  ASSERT_EFI_ERROR(Status);
+  ASSERT_EFI_ERROR (Status);
 
   return EfiLibInstallDriverBindingComponentName2 (
            ImageHandle,

File diff suppressed because it is too large
+ 341 - 296
MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceIo.c


+ 21 - 21
MdeModulePkg/Bus/Pci/NonDiscoverablePciDeviceDxe/NonDiscoverablePciDeviceIo.h

@@ -24,7 +24,7 @@
 #include <Protocol/Cpu.h>
 #include <Protocol/PciIo.h>
 
-#define NON_DISCOVERABLE_PCI_DEVICE_SIG SIGNATURE_32 ('P', 'P', 'I', 'D')
+#define NON_DISCOVERABLE_PCI_DEVICE_SIG  SIGNATURE_32 ('P', 'P', 'I', 'D')
 
 #define NON_DISCOVERABLE_PCI_DEVICE_FROM_PCI_IO(PciIoPointer) \
         CR (PciIoPointer, NON_DISCOVERABLE_PCI_DEVICE, PciIo, \
@@ -33,74 +33,74 @@
 #define DEV_SUPPORTED_ATTRIBUTES \
     (EFI_PCI_DEVICE_ENABLE | EFI_PCI_IO_ATTRIBUTE_DUAL_ADDRESS_CYCLE)
 
-#define PCI_ID_VENDOR_UNKNOWN         0xffff
-#define PCI_ID_DEVICE_DONTCARE        0x0000
+#define PCI_ID_VENDOR_UNKNOWN   0xffff
+#define PCI_ID_DEVICE_DONTCARE  0x0000
 
-extern EFI_CPU_ARCH_PROTOCOL      *mCpu;
+extern EFI_CPU_ARCH_PROTOCOL  *mCpu;
 
 typedef struct {
   //
   // The linked-list next pointer
   //
-  LIST_ENTRY          List;
+  LIST_ENTRY    List;
   //
   // The address of the uncached allocation
   //
-  VOID                *HostAddress;
+  VOID          *HostAddress;
   //
   // The number of pages in the allocation
   //
-  UINTN               NumPages;
+  UINTN         NumPages;
   //
   // The attributes of the allocation
   //
-  UINT64              Attributes;
+  UINT64        Attributes;
 } NON_DISCOVERABLE_DEVICE_UNCACHED_ALLOCATION;
 
 typedef struct {
-  UINT32                    Signature;
+  UINT32                     Signature;
   //
   // The bound non-discoverable device protocol instance
   //
-  NON_DISCOVERABLE_DEVICE   *Device;
+  NON_DISCOVERABLE_DEVICE    *Device;
   //
   // The exposed PCI I/O protocol instance.
   //
-  EFI_PCI_IO_PROTOCOL       PciIo;
+  EFI_PCI_IO_PROTOCOL        PciIo;
   //
   // The emulated PCI config space of the device. Only the minimally required
   // items are assigned.
   //
-  PCI_TYPE00                ConfigSpace;
+  PCI_TYPE00                 ConfigSpace;
   //
   // The first virtual BAR to assign based on the resources described
   // by the non-discoverable device.
   //
-  UINT32                    BarOffset;
+  UINT32                     BarOffset;
   //
   // The number of virtual BARs we expose based on the number of
   // resources
   //
-  UINT32                    BarCount;
+  UINT32                     BarCount;
   //
   // The PCI I/O attributes for this device
   //
-  UINT64                    Attributes;
+  UINT64                     Attributes;
   //
   // Whether this device has been enabled
   //
-  BOOLEAN                   Enabled;
+  BOOLEAN                    Enabled;
   //
   // Linked list to keep track of uncached allocations performed
   // on behalf of this device
   //
-  LIST_ENTRY                UncachedAllocationList;
+  LIST_ENTRY                 UncachedAllocationList;
   //
   // Unique ID for this device instance: needed so that we can report unique
   // segment/bus/device number for each device instance. Note that this number
   // may change when disconnecting/reconnecting the driver.
   //
-  UINTN                     UniqueId;
+  UINTN                      UniqueId;
 } NON_DISCOVERABLE_PCI_DEVICE;
 
 /**
@@ -111,10 +111,10 @@ typedef struct {
 **/
 VOID
 InitializePciIoProtocol (
-  NON_DISCOVERABLE_PCI_DEVICE     *Device
+  NON_DISCOVERABLE_PCI_DEVICE  *Device
   );
 
-extern EFI_COMPONENT_NAME_PROTOCOL gComponentName;
-extern EFI_COMPONENT_NAME2_PROTOCOL gComponentName2;
+extern EFI_COMPONENT_NAME_PROTOCOL   gComponentName;
+extern EFI_COMPONENT_NAME2_PROTOCOL  gComponentName2;
 
 #endif

+ 24 - 23
MdeModulePkg/Bus/Pci/NvmExpressDxe/ComponentName.c

@@ -12,7 +12,7 @@
 //
 // EFI Component Name Protocol
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME_PROTOCOL gNvmExpressComponentName = {
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME_PROTOCOL  gNvmExpressComponentName = {
   NvmExpressComponentNameGetDriverName,
   NvmExpressComponentNameGetControllerName,
   "eng"
@@ -21,20 +21,20 @@ GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME_PROTOCOL gNvmExpressComponentNa
 //
 // EFI Component Name 2 Protocol
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL gNvmExpressComponentName2 = {
-  (EFI_COMPONENT_NAME2_GET_DRIVER_NAME) NvmExpressComponentNameGetDriverName,
-  (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME) NvmExpressComponentNameGetControllerName,
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_COMPONENT_NAME2_PROTOCOL  gNvmExpressComponentName2 = {
+  (EFI_COMPONENT_NAME2_GET_DRIVER_NAME)NvmExpressComponentNameGetDriverName,
+  (EFI_COMPONENT_NAME2_GET_CONTROLLER_NAME)NvmExpressComponentNameGetControllerName,
   "en"
 };
 
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mNvmExpressDriverNameTable[] = {
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE  mNvmExpressDriverNameTable[] = {
   { "eng;en", L"NVM Express Driver" },
-  { NULL, NULL }
+  { NULL,     NULL                  }
 };
 
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mNvmExpressControllerNameTable[] = {
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE  mNvmExpressControllerNameTable[] = {
   { "eng;en", L"NVM Express Controller" },
-  { NULL, NULL }
+  { NULL,     NULL                      }
 };
 
 /**
@@ -79,9 +79,9 @@ GLOBAL_REMOVE_IF_UNREFERENCED EFI_UNICODE_STRING_TABLE mNvmExpressControllerName
 EFI_STATUS
 EFIAPI
 NvmExpressComponentNameGetDriverName (
-  IN  EFI_COMPONENT_NAME_PROTOCOL       *This,
-  IN  CHAR8                             *Language,
-  OUT CHAR16                            **DriverName
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **DriverName
   )
 {
   return LookupUnicodeString2 (
@@ -164,17 +164,17 @@ NvmExpressComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 NvmExpressComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  EFI_HANDLE                   ControllerHandle,
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **ControllerName
   )
 {
-  EFI_STATUS                          Status;
-  EFI_BLOCK_IO_PROTOCOL               *BlockIo;
-  NVME_DEVICE_PRIVATE_DATA            *Device;
-  EFI_UNICODE_STRING_TABLE            *ControllerNameTable;
+  EFI_STATUS                Status;
+  EFI_BLOCK_IO_PROTOCOL     *BlockIo;
+  NVME_DEVICE_PRIVATE_DATA  *Device;
+  EFI_UNICODE_STRING_TABLE  *ControllerNameTable;
 
   //
   // Make sure this driver is currently managing ControllHandle
@@ -198,13 +198,14 @@ NvmExpressComponentNameGetControllerName (
     if (EFI_ERROR (Status)) {
       return Status;
     }
+
     //
     // Get the child context
     //
     Status = gBS->OpenProtocol (
                     ChildHandle,
                     &gEfiBlockIoProtocolGuid,
-                    (VOID **) &BlockIo,
+                    (VOID **)&BlockIo,
                     gNvmExpressDriverBinding.DriverBindingHandle,
                     ChildHandle,
                     EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -212,7 +213,8 @@ NvmExpressComponentNameGetControllerName (
     if (EFI_ERROR (Status)) {
       return EFI_UNSUPPORTED;
     }
-    Device = NVME_DEVICE_PRIVATE_DATA_FROM_BLOCK_IO (BlockIo);
+
+    Device              = NVME_DEVICE_PRIVATE_DATA_FROM_BLOCK_IO (BlockIo);
     ControllerNameTable = Device->ControllerNameTable;
   }
 
@@ -223,5 +225,4 @@ NvmExpressComponentNameGetControllerName (
            ControllerName,
            (BOOLEAN)(This == &gNvmExpressComponentName)
            );
-
 }

+ 177 - 168
MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpress.c

@@ -12,7 +12,7 @@
 //
 // NVM Express Driver Binding Protocol Instance
 //
-EFI_DRIVER_BINDING_PROTOCOL gNvmExpressDriverBinding = {
+EFI_DRIVER_BINDING_PROTOCOL  gNvmExpressDriverBinding = {
   NvmExpressDriverBindingSupported,
   NvmExpressDriverBindingStart,
   NvmExpressDriverBindingStop,
@@ -24,7 +24,7 @@ EFI_DRIVER_BINDING_PROTOCOL gNvmExpressDriverBinding = {
 //
 // NVM Express EFI Driver Supported EFI Version Protocol Instance
 //
-EFI_DRIVER_SUPPORTED_EFI_VERSION_PROTOCOL gNvmExpressDriverSupportedEfiVersion = {
+EFI_DRIVER_SUPPORTED_EFI_VERSION_PROTOCOL  gNvmExpressDriverSupportedEfiVersion = {
   sizeof (EFI_DRIVER_SUPPORTED_EFI_VERSION_PROTOCOL), // Size of Protocol structure.
   0                                                   // Version number to be filled at start up.
 };
@@ -32,7 +32,7 @@ EFI_DRIVER_SUPPORTED_EFI_VERSION_PROTOCOL gNvmExpressDriverSupportedEfiVersion =
 //
 // Template for NVM Express Pass Thru Mode data structure.
 //
-GLOBAL_REMOVE_IF_UNREFERENCED EFI_NVM_EXPRESS_PASS_THRU_MODE gEfiNvmExpressPassThruMode = {
+GLOBAL_REMOVE_IF_UNREFERENCED EFI_NVM_EXPRESS_PASS_THRU_MODE  gEfiNvmExpressPassThruMode = {
   EFI_NVM_EXPRESS_PASS_THRU_ATTRIBUTES_PHYSICAL   |
   EFI_NVM_EXPRESS_PASS_THRU_ATTRIBUTES_LOGICAL    |
   EFI_NVM_EXPRESS_PASS_THRU_ATTRIBUTES_NONBLOCKIO |
@@ -56,24 +56,24 @@ GLOBAL_REMOVE_IF_UNREFERENCED EFI_NVM_EXPRESS_PASS_THRU_MODE gEfiNvmExpressPassT
 **/
 EFI_STATUS
 EnumerateNvmeDevNamespace (
-  IN NVME_CONTROLLER_PRIVATE_DATA       *Private,
-  UINT32                                NamespaceId
+  IN NVME_CONTROLLER_PRIVATE_DATA  *Private,
+  UINT32                           NamespaceId
   )
 {
-  NVME_ADMIN_NAMESPACE_DATA             *NamespaceData;
-  EFI_DEVICE_PATH_PROTOCOL              *NewDevicePathNode;
-  EFI_DEVICE_PATH_PROTOCOL              *DevicePath;
-  EFI_HANDLE                            DeviceHandle;
-  EFI_DEVICE_PATH_PROTOCOL              *ParentDevicePath;
-  EFI_DEVICE_PATH_PROTOCOL              *RemainingDevicePath;
-  NVME_DEVICE_PRIVATE_DATA              *Device;
-  EFI_STATUS                            Status;
-  UINT32                                Lbads;
-  UINT32                                Flbas;
-  UINT32                                LbaFmtIdx;
-  UINT8                                 Sn[21];
-  UINT8                                 Mn[41];
-  VOID                                  *DummyInterface;
+  NVME_ADMIN_NAMESPACE_DATA  *NamespaceData;
+  EFI_DEVICE_PATH_PROTOCOL   *NewDevicePathNode;
+  EFI_DEVICE_PATH_PROTOCOL   *DevicePath;
+  EFI_HANDLE                 DeviceHandle;
+  EFI_DEVICE_PATH_PROTOCOL   *ParentDevicePath;
+  EFI_DEVICE_PATH_PROTOCOL   *RemainingDevicePath;
+  NVME_DEVICE_PRIVATE_DATA   *Device;
+  EFI_STATUS                 Status;
+  UINT32                     Lbads;
+  UINT32                     Flbas;
+  UINT32                     LbaFmtIdx;
+  UINT8                      Sn[21];
+  UINT8                      Mn[41];
+  VOID                       *DummyInterface;
 
   NewDevicePathNode = NULL;
   DevicePath        = NULL;
@@ -82,8 +82,8 @@ EnumerateNvmeDevNamespace (
   //
   // Allocate a buffer for Identify Namespace data
   //
-  NamespaceData = AllocateZeroPool(sizeof (NVME_ADMIN_NAMESPACE_DATA));
-  if(NamespaceData == NULL) {
+  NamespaceData = AllocateZeroPool (sizeof (NVME_ADMIN_NAMESPACE_DATA));
+  if (NamespaceData == NULL) {
     return EFI_OUT_OF_RESOURCES;
   }
 
@@ -96,9 +96,10 @@ EnumerateNvmeDevNamespace (
              NamespaceId,
              (VOID *)NamespaceData
              );
-  if (EFI_ERROR(Status)) {
+  if (EFI_ERROR (Status)) {
     goto Exit;
   }
+
   //
   // Validate Namespace
   //
@@ -108,7 +109,7 @@ EnumerateNvmeDevNamespace (
     //
     // allocate device private data for each discovered namespace
     //
-    Device = AllocateZeroPool(sizeof(NVME_DEVICE_PRIVATE_DATA));
+    Device = AllocateZeroPool (sizeof (NVME_DEVICE_PRIVATE_DATA));
     if (Device == NULL) {
       Status = EFI_OUT_OF_RESOURCES;
       goto Exit;
@@ -117,9 +118,9 @@ EnumerateNvmeDevNamespace (
     //
     // Initialize SSD namespace instance data
     //
-    Device->Signature           = NVME_DEVICE_PRIVATE_DATA_SIGNATURE;
-    Device->NamespaceId         = NamespaceId;
-    Device->NamespaceUuid       = NamespaceData->Eui64;
+    Device->Signature     = NVME_DEVICE_PRIVATE_DATA_SIGNATURE;
+    Device->NamespaceId   = NamespaceId;
+    Device->NamespaceUuid = NamespaceData->Eui64;
 
     Device->ControllerHandle    = Private->ControllerHandle;
     Device->DriverBindingHandle = Private->DriverBindingHandle;
@@ -128,17 +129,17 @@ EnumerateNvmeDevNamespace (
     //
     // Build BlockIo media structure
     //
-    Device->Media.MediaId        = 0;
-    Device->Media.RemovableMedia = FALSE;
-    Device->Media.MediaPresent   = TRUE;
+    Device->Media.MediaId          = 0;
+    Device->Media.RemovableMedia   = FALSE;
+    Device->Media.MediaPresent     = TRUE;
     Device->Media.LogicalPartition = FALSE;
-    Device->Media.ReadOnly       = FALSE;
-    Device->Media.WriteCaching   = FALSE;
-    Device->Media.IoAlign        = Private->PassThruMode.IoAlign;
+    Device->Media.ReadOnly         = FALSE;
+    Device->Media.WriteCaching     = FALSE;
+    Device->Media.IoAlign          = Private->PassThruMode.IoAlign;
 
-    Flbas     = NamespaceData->Flbas;
-    LbaFmtIdx = Flbas & 0xF;
-    Lbads     = NamespaceData->LbaFormat[LbaFmtIdx].Lbads;
+    Flbas                   = NamespaceData->Flbas;
+    LbaFmtIdx               = Flbas & 0xF;
+    Lbads                   = NamespaceData->LbaFormat[LbaFmtIdx].Lbads;
     Device->Media.BlockSize = (UINT32)1 << Lbads;
 
     Device->Media.LastBlock                     = NamespaceData->Nsze - 1;
@@ -148,21 +149,21 @@ EnumerateNvmeDevNamespace (
     //
     // Create BlockIo Protocol instance
     //
-    Device->BlockIo.Revision     = EFI_BLOCK_IO_PROTOCOL_REVISION2;
-    Device->BlockIo.Media        = &Device->Media;
-    Device->BlockIo.Reset        = NvmeBlockIoReset;
-    Device->BlockIo.ReadBlocks   = NvmeBlockIoReadBlocks;
-    Device->BlockIo.WriteBlocks  = NvmeBlockIoWriteBlocks;
-    Device->BlockIo.FlushBlocks  = NvmeBlockIoFlushBlocks;
+    Device->BlockIo.Revision    = EFI_BLOCK_IO_PROTOCOL_REVISION2;
+    Device->BlockIo.Media       = &Device->Media;
+    Device->BlockIo.Reset       = NvmeBlockIoReset;
+    Device->BlockIo.ReadBlocks  = NvmeBlockIoReadBlocks;
+    Device->BlockIo.WriteBlocks = NvmeBlockIoWriteBlocks;
+    Device->BlockIo.FlushBlocks = NvmeBlockIoFlushBlocks;
 
     //
     // Create BlockIo2 Protocol instance
     //
-    Device->BlockIo2.Media          = &Device->Media;
-    Device->BlockIo2.Reset          = NvmeBlockIoResetEx;
-    Device->BlockIo2.ReadBlocksEx   = NvmeBlockIoReadBlocksEx;
-    Device->BlockIo2.WriteBlocksEx  = NvmeBlockIoWriteBlocksEx;
-    Device->BlockIo2.FlushBlocksEx  = NvmeBlockIoFlushBlocksEx;
+    Device->BlockIo2.Media         = &Device->Media;
+    Device->BlockIo2.Reset         = NvmeBlockIoResetEx;
+    Device->BlockIo2.ReadBlocksEx  = NvmeBlockIoReadBlocksEx;
+    Device->BlockIo2.WriteBlocksEx = NvmeBlockIoWriteBlocksEx;
+    Device->BlockIo2.FlushBlocksEx = NvmeBlockIoFlushBlocksEx;
     InitializeListHead (&Device->AsyncQueue);
 
     //
@@ -186,7 +187,7 @@ EnumerateNvmeDevNamespace (
                                  &NewDevicePathNode
                                  );
 
-    if (EFI_ERROR(Status)) {
+    if (EFI_ERROR (Status)) {
       goto Exit;
     }
 
@@ -199,10 +200,10 @@ EnumerateNvmeDevNamespace (
       goto Exit;
     }
 
-    DeviceHandle = NULL;
+    DeviceHandle        = NULL;
     RemainingDevicePath = DevicePath;
-    Status = gBS->LocateDevicePath (&gEfiDevicePathProtocolGuid, &RemainingDevicePath, &DeviceHandle);
-    if (!EFI_ERROR (Status) && (DeviceHandle != NULL) && IsDevicePathEnd(RemainingDevicePath)) {
+    Status              = gBS->LocateDevicePath (&gEfiDevicePathProtocolGuid, &RemainingDevicePath, &DeviceHandle);
+    if (!EFI_ERROR (Status) && (DeviceHandle != NULL) && IsDevicePathEnd (RemainingDevicePath)) {
       Status = EFI_ALREADY_STARTED;
       FreePool (DevicePath);
       goto Exit;
@@ -228,7 +229,7 @@ EnumerateNvmeDevNamespace (
                     NULL
                     );
 
-    if(EFI_ERROR(Status)) {
+    if (EFI_ERROR (Status)) {
       goto Exit;
     }
 
@@ -242,7 +243,7 @@ EnumerateNvmeDevNamespace (
                       EFI_NATIVE_INTERFACE,
                       &Device->StorageSecurity
                       );
-      if(EFI_ERROR(Status)) {
+      if (EFI_ERROR (Status)) {
         gBS->UninstallMultipleProtocolInterfaces (
                Device->DeviceHandle,
                &gEfiDevicePathProtocolGuid,
@@ -262,7 +263,7 @@ EnumerateNvmeDevNamespace (
     gBS->OpenProtocol (
            Private->ControllerHandle,
            &gEfiNvmExpressPassThruProtocolGuid,
-           (VOID **) &DummyInterface,
+           (VOID **)&DummyInterface,
            Private->DriverBindingHandle,
            Device->DeviceHandle,
            EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER
@@ -304,7 +305,7 @@ EnumerateNvmeDevNamespace (
   }
 
 Exit:
-  if(NamespaceData != NULL) {
+  if (NamespaceData != NULL) {
     FreePool (NamespaceData);
   }
 
@@ -312,12 +313,14 @@ Exit:
     FreePool (NewDevicePathNode);
   }
 
-  if(EFI_ERROR(Status) && (Device != NULL) && (Device->DevicePath != NULL)) {
+  if (EFI_ERROR (Status) && (Device != NULL) && (Device->DevicePath != NULL)) {
     FreePool (Device->DevicePath);
   }
-  if(EFI_ERROR(Status) && (Device != NULL)) {
+
+  if (EFI_ERROR (Status) && (Device != NULL)) {
     FreePool (Device);
   }
+
   return Status;
 }
 
@@ -333,15 +336,15 @@ Exit:
 **/
 EFI_STATUS
 DiscoverAllNamespaces (
-  IN NVME_CONTROLLER_PRIVATE_DATA       *Private
+  IN NVME_CONTROLLER_PRIVATE_DATA  *Private
   )
 {
-  EFI_STATUS                            Status;
-  UINT32                                NamespaceId;
-  EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL    *Passthru;
+  EFI_STATUS                          Status;
+  UINT32                              NamespaceId;
+  EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL  *Passthru;
 
-  NamespaceId   = 0xFFFFFFFF;
-  Passthru      = &Private->Passthru;
+  NamespaceId = 0xFFFFFFFF;
+  Passthru    = &Private->Passthru;
 
   while (TRUE) {
     Status = Passthru->GetNextNamespace (
@@ -358,7 +361,7 @@ DiscoverAllNamespaces (
                NamespaceId
                );
 
-    if (EFI_ERROR(Status)) {
+    if (EFI_ERROR (Status)) {
       continue;
     }
   }
@@ -382,25 +385,25 @@ DiscoverAllNamespaces (
 **/
 EFI_STATUS
 UnregisterNvmeNamespace (
-  IN  EFI_DRIVER_BINDING_PROTOCOL    *This,
-  IN  EFI_HANDLE                     Controller,
-  IN  EFI_HANDLE                     Handle
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN  EFI_HANDLE                   Controller,
+  IN  EFI_HANDLE                   Handle
   )
 {
-  EFI_STATUS                               Status;
-  EFI_BLOCK_IO_PROTOCOL                    *BlockIo;
-  NVME_DEVICE_PRIVATE_DATA                 *Device;
-  EFI_STORAGE_SECURITY_COMMAND_PROTOCOL    *StorageSecurity;
-  BOOLEAN                                  IsEmpty;
-  EFI_TPL                                  OldTpl;
-  VOID                                     *DummyInterface;
+  EFI_STATUS                             Status;
+  EFI_BLOCK_IO_PROTOCOL                  *BlockIo;
+  NVME_DEVICE_PRIVATE_DATA               *Device;
+  EFI_STORAGE_SECURITY_COMMAND_PROTOCOL  *StorageSecurity;
+  BOOLEAN                                IsEmpty;
+  EFI_TPL                                OldTpl;
+  VOID                                   *DummyInterface;
 
   BlockIo = NULL;
 
   Status = gBS->OpenProtocol (
                   Handle,
                   &gEfiBlockIoProtocolGuid,
-                  (VOID **) &BlockIo,
+                  (VOID **)&BlockIo,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -409,7 +412,7 @@ UnregisterNvmeNamespace (
     return Status;
   }
 
-  Device  = NVME_DEVICE_PRIVATE_DATA_FROM_BLOCK_IO (BlockIo);
+  Device = NVME_DEVICE_PRIVATE_DATA_FROM_BLOCK_IO (BlockIo);
 
   //
   // Wait for the device's asynchronous I/O queue to become empty.
@@ -457,7 +460,7 @@ UnregisterNvmeNamespace (
     gBS->OpenProtocol (
            Controller,
            &gEfiNvmExpressPassThruProtocolGuid,
-           (VOID **) &DummyInterface,
+           (VOID **)&DummyInterface,
            This->DriverBindingHandle,
            Handle,
            EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER
@@ -471,7 +474,7 @@ UnregisterNvmeNamespace (
   Status = gBS->OpenProtocol (
                   Handle,
                   &gEfiStorageSecurityCommandProtocolGuid,
-                  (VOID **) &StorageSecurity,
+                  (VOID **)&StorageSecurity,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -485,18 +488,18 @@ UnregisterNvmeNamespace (
                     );
     if (EFI_ERROR (Status)) {
       gBS->OpenProtocol (
-        Controller,
-        &gEfiNvmExpressPassThruProtocolGuid,
-        (VOID **) &DummyInterface,
-        This->DriverBindingHandle,
-        Handle,
-        EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER
-        );
+             Controller,
+             &gEfiNvmExpressPassThruProtocolGuid,
+             (VOID **)&DummyInterface,
+             This->DriverBindingHandle,
+             Handle,
+             EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER
+             );
       return Status;
     }
   }
 
-  if(Device->DevicePath != NULL) {
+  if (Device->DevicePath != NULL) {
     FreePool (Device->DevicePath);
   }
 
@@ -520,25 +523,25 @@ UnregisterNvmeNamespace (
 VOID
 EFIAPI
 ProcessAsyncTaskList (
-  IN EFI_EVENT                    Event,
-  IN VOID*                        Context
+  IN EFI_EVENT  Event,
+  IN VOID       *Context
   )
 {
-  NVME_CONTROLLER_PRIVATE_DATA         *Private;
-  EFI_PCI_IO_PROTOCOL                  *PciIo;
-  NVME_CQ                              *Cq;
-  UINT16                               QueueId;
-  UINT32                               Data;
-  LIST_ENTRY                           *Link;
-  LIST_ENTRY                           *NextLink;
-  NVME_PASS_THRU_ASYNC_REQ             *AsyncRequest;
-  NVME_BLKIO2_SUBTASK                  *Subtask;
-  NVME_BLKIO2_REQUEST                  *BlkIo2Request;
-  EFI_BLOCK_IO2_TOKEN                  *Token;
-  BOOLEAN                              HasNewItem;
-  EFI_STATUS                           Status;
-
-  Private    = (NVME_CONTROLLER_PRIVATE_DATA*)Context;
+  NVME_CONTROLLER_PRIVATE_DATA  *Private;
+  EFI_PCI_IO_PROTOCOL           *PciIo;
+  NVME_CQ                       *Cq;
+  UINT16                        QueueId;
+  UINT32                        Data;
+  LIST_ENTRY                    *Link;
+  LIST_ENTRY                    *NextLink;
+  NVME_PASS_THRU_ASYNC_REQ      *AsyncRequest;
+  NVME_BLKIO2_SUBTASK           *Subtask;
+  NVME_BLKIO2_REQUEST           *BlkIo2Request;
+  EFI_BLOCK_IO2_TOKEN           *Token;
+  BOOLEAN                       HasNewItem;
+  EFI_STATUS                    Status;
+
+  Private    = (NVME_CONTROLLER_PRIVATE_DATA *)Context;
   QueueId    = 2;
   Cq         = Private->CqBuffer[QueueId] + Private->CqHdbl[QueueId].Cqh;
   HasNewItem = FALSE;
@@ -549,7 +552,8 @@ ProcessAsyncTaskList (
   //
   for (Link = GetFirstNode (&Private->UnsubmittedSubtasks);
        !IsNull (&Private->UnsubmittedSubtasks, Link);
-       Link = NextLink) {
+       Link = NextLink)
+  {
     NextLink      = GetNextNode (&Private->UnsubmittedSubtasks, Link);
     Subtask       = NVME_BLKIO2_SUBTASK_FROM_LINK (Link);
     BlkIo2Request = Subtask->BlockIo2Request;
@@ -563,7 +567,8 @@ ProcessAsyncTaskList (
     if (Token->TransactionStatus != EFI_SUCCESS) {
       if (IsListEmpty (&BlkIo2Request->SubtasksQueue) &&
           BlkIo2Request->LastSubtaskSubmitted &&
-          (BlkIo2Request->UnsubmittedSubtaskNum == 0)) {
+          (BlkIo2Request->UnsubmittedSubtaskNum == 0))
+      {
         //
         // Remove the BlockIo2 request from the device asynchronous queue.
         //
@@ -594,7 +599,8 @@ ProcessAsyncTaskList (
       Token->TransactionStatus = EFI_DEVICE_ERROR;
 
       if (IsListEmpty (&BlkIo2Request->SubtasksQueue) &&
-          Subtask->IsLast) {
+          Subtask->IsLast)
+      {
         //
         // Remove the BlockIo2 request from the device asynchronous queue.
         //
@@ -625,8 +631,9 @@ ProcessAsyncTaskList (
     //
     for (Link = GetFirstNode (&Private->AsyncPassThruQueue);
          !IsNull (&Private->AsyncPassThruQueue, Link);
-         Link = NextLink) {
-      NextLink = GetNextNode (&Private->AsyncPassThruQueue, Link);
+         Link = NextLink)
+    {
+      NextLink     = GetNextNode (&Private->AsyncPassThruQueue, Link);
       AsyncRequest = NVME_PASS_THRU_ASYNC_REQ_FROM_THIS (Link);
       if (AsyncRequest->CommandId == Cq->Cid) {
         //
@@ -636,7 +643,7 @@ ProcessAsyncTaskList (
         CopyMem (
           AsyncRequest->Packet->NvmeCompletion,
           Cq,
-          sizeof(EFI_NVM_EXPRESS_COMPLETION)
+          sizeof (EFI_NVM_EXPRESS_COMPLETION)
           );
 
         //
@@ -645,12 +652,15 @@ ProcessAsyncTaskList (
         if (AsyncRequest->MapData != NULL) {
           PciIo->Unmap (PciIo, AsyncRequest->MapData);
         }
+
         if (AsyncRequest->MapMeta != NULL) {
           PciIo->Unmap (PciIo, AsyncRequest->MapMeta);
         }
+
         if (AsyncRequest->MapPrpList != NULL) {
           PciIo->Unmap (PciIo, AsyncRequest->MapPrpList);
         }
+
         if (AsyncRequest->PrpListHost != NULL) {
           PciIo->FreeBuffer (
                    PciIo,
@@ -674,19 +684,19 @@ ProcessAsyncTaskList (
     Private->CqHdbl[QueueId].Cqh++;
     if (Private->CqHdbl[QueueId].Cqh > MIN (NVME_ASYNC_CCQ_SIZE, Private->Cap.Mqes)) {
       Private->CqHdbl[QueueId].Cqh = 0;
-      Private->Pt[QueueId] ^= 1;
+      Private->Pt[QueueId]        ^= 1;
     }
 
     Cq = Private->CqBuffer[QueueId] + Private->CqHdbl[QueueId].Cqh;
   }
 
   if (HasNewItem) {
-    Data  = ReadUnaligned32 ((UINT32*)&Private->CqHdbl[QueueId]);
+    Data = ReadUnaligned32 ((UINT32 *)&Private->CqHdbl[QueueId]);
     PciIo->Mem.Write (
                  PciIo,
                  EfiPciIoWidthUint32,
                  NVME_BAR,
-                 NVME_CQHDBL_OFFSET(QueueId, Private->Cap.Dstrd),
+                 NVME_CQHDBL_OFFSET (QueueId, Private->Cap.Dstrd),
                  1,
                  &Data
                  );
@@ -766,8 +776,9 @@ NvmExpressDriverBindingSupported (
 
       if ((DevicePathNode.DevPath->Type    != MESSAGING_DEVICE_PATH) ||
           (DevicePathNode.DevPath->SubType != MSG_NVME_NAMESPACE_DP) ||
-          (DevicePathNodeLength(DevicePathNode.DevPath) != sizeof(NVME_NAMESPACE_DEVICE_PATH))) {
-         return EFI_UNSUPPORTED;
+          (DevicePathNodeLength (DevicePathNode.DevPath) != sizeof (NVME_NAMESPACE_DEVICE_PATH)))
+      {
+        return EFI_UNSUPPORTED;
       }
     }
   }
@@ -778,7 +789,7 @@ NvmExpressDriverBindingSupported (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiDevicePathProtocolGuid,
-                  (VOID **) &ParentDevicePath,
+                  (VOID **)&ParentDevicePath,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_BY_DRIVER
@@ -807,7 +818,7 @@ NvmExpressDriverBindingSupported (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiPciIoProtocolGuid,
-                  (VOID **) &PciIo,
+                  (VOID **)&PciIo,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_BY_DRIVER
@@ -853,7 +864,6 @@ Done:
   return Status;
 }
 
-
 /**
   Starts a device controller or a bus controller.
 
@@ -915,7 +925,7 @@ NvmExpressDriverBindingStart (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiDevicePathProtocolGuid,
-                  (VOID **) &ParentDevicePath,
+                  (VOID **)&ParentDevicePath,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_BY_DRIVER
@@ -927,7 +937,7 @@ NvmExpressDriverBindingStart (
   Status = gBS->OpenProtocol (
                   Controller,
                   &gEfiPciIoProtocolGuid,
-                  (VOID **) &PciIo,
+                  (VOID **)&PciIo,
                   This->DriverBindingHandle,
                   Controller,
                   EFI_OPEN_PROTOCOL_BY_DRIVER
@@ -965,14 +975,14 @@ NvmExpressDriverBindingStart (
                       AllocateAnyPages,
                       EfiBootServicesData,
                       6,
-                      (VOID**)&Private->Buffer,
+                      (VOID **)&Private->Buffer,
                       0
                       );
     if (EFI_ERROR (Status)) {
       goto Exit;
     }
 
-    Bytes = EFI_PAGES_TO_SIZE (6);
+    Bytes  = EFI_PAGES_TO_SIZE (6);
     Status = PciIo->Map (
                       PciIo,
                       EfiPciIoOperationBusMasterCommonBuffer,
@@ -988,7 +998,7 @@ NvmExpressDriverBindingStart (
 
     Private->BufferPciAddr = (UINT8 *)(UINTN)MappedAddr;
 
-    Private->Signature = NVME_CONTROLLER_PRIVATE_DATA_SIGNATURE;
+    Private->Signature                 = NVME_CONTROLLER_PRIVATE_DATA_SIGNATURE;
     Private->ControllerHandle          = Controller;
     Private->ImageHandle               = This->DriverBindingHandle;
     Private->DriverBindingHandle       = This->DriverBindingHandle;
@@ -1004,7 +1014,7 @@ NvmExpressDriverBindingStart (
     InitializeListHead (&Private->UnsubmittedSubtasks);
 
     Status = NvmeControllerInit (Private);
-    if (EFI_ERROR(Status)) {
+    if (EFI_ERROR (Status)) {
       goto Exit;
     }
 
@@ -1046,7 +1056,7 @@ NvmExpressDriverBindingStart (
     Status = gBS->OpenProtocol (
                     Controller,
                     &gEfiNvmExpressPassThruProtocolGuid,
-                    (VOID **) &Passthru,
+                    (VOID **)&Passthru,
                     This->DriverBindingHandle,
                     Controller,
                     EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -1065,7 +1075,6 @@ NvmExpressDriverBindingStart (
     Status = DiscoverAllNamespaces (
                Private
                );
-
   } else if (!IsDevicePathEnd (RemainingDevicePath)) {
     //
     // Enumerate the specified NVME namespace
@@ -1127,7 +1136,6 @@ Exit:
   return Status;
 }
 
-
 /**
   Stops a device controller or a bus controller.
 
@@ -1157,10 +1165,10 @@ Exit:
 EFI_STATUS
 EFIAPI
 NvmExpressDriverBindingStop (
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,
-  IN  EFI_HANDLE                      Controller,
-  IN  UINTN                           NumberOfChildren,
-  IN  EFI_HANDLE                      *ChildHandleBuffer
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN  EFI_HANDLE                   Controller,
+  IN  UINTN                        NumberOfChildren,
+  IN  EFI_HANDLE                   *ChildHandleBuffer
   )
 {
   EFI_STATUS                          Status;
@@ -1175,7 +1183,7 @@ NvmExpressDriverBindingStop (
     Status = gBS->OpenProtocol (
                     Controller,
                     &gEfiNvmExpressPassThruProtocolGuid,
-                    (VOID **) &PassThru,
+                    (VOID **)&PassThru,
                     This->DriverBindingHandle,
                     Controller,
                     EFI_OPEN_PROTOCOL_GET_PROTOCOL
@@ -1201,11 +1209,11 @@ NvmExpressDriverBindingStop (
       }
 
       gBS->UninstallMultipleProtocolInterfaces (
-            Controller,
-            &gEfiNvmExpressPassThruProtocolGuid,
-            PassThru,
-            NULL
-            );
+             Controller,
+             &gEfiNvmExpressPassThruProtocolGuid,
+             PassThru,
+             NULL
+             );
 
       if (Private->TimerEvent != NULL) {
         gBS->CloseEvent (Private->TimerEvent);
@@ -1224,17 +1232,17 @@ NvmExpressDriverBindingStop (
     }
 
     gBS->CloseProtocol (
-          Controller,
-          &gEfiPciIoProtocolGuid,
-          This->DriverBindingHandle,
-          Controller
-          );
+           Controller,
+           &gEfiPciIoProtocolGuid,
+           This->DriverBindingHandle,
+           Controller
+           );
     gBS->CloseProtocol (
-          Controller,
-          &gEfiDevicePathProtocolGuid,
-          This->DriverBindingHandle,
-          Controller
-          );
+           Controller,
+           &gEfiDevicePathProtocolGuid,
+           This->DriverBindingHandle,
+           Controller
+           );
 
     NvmeUnregisterShutdownNotification ();
 
@@ -1272,15 +1280,15 @@ NvmExpressDriverBindingStop (
 EFI_STATUS
 EFIAPI
 NvmExpressUnload (
-  IN EFI_HANDLE             ImageHandle
+  IN EFI_HANDLE  ImageHandle
   )
 {
-  EFI_STATUS                        Status;
-  EFI_HANDLE                        *DeviceHandleBuffer;
-  UINTN                             DeviceHandleCount;
-  UINTN                             Index;
-  EFI_COMPONENT_NAME_PROTOCOL       *ComponentName;
-  EFI_COMPONENT_NAME2_PROTOCOL      *ComponentName2;
+  EFI_STATUS                    Status;
+  EFI_HANDLE                    *DeviceHandleBuffer;
+  UINTN                         DeviceHandleCount;
+  UINTN                         Index;
+  EFI_COMPONENT_NAME_PROTOCOL   *ComponentName;
+  EFI_COMPONENT_NAME2_PROTOCOL  *ComponentName2;
 
   //
   // Get the list of the device handles managed by this driver.
@@ -1289,13 +1297,13 @@ NvmExpressUnload (
   // those protocols installed at image handle.
   //
   DeviceHandleBuffer = NULL;
-  Status = gBS->LocateHandleBuffer (
-                  ByProtocol,
-                  &gEfiNvmExpressPassThruProtocolGuid,
-                  NULL,
-                  &DeviceHandleCount,
-                  &DeviceHandleBuffer
-                  );
+  Status             = gBS->LocateHandleBuffer (
+                              ByProtocol,
+                              &gEfiNvmExpressPassThruProtocolGuid,
+                              NULL,
+                              &DeviceHandleCount,
+                              &DeviceHandleBuffer
+                              );
 
   if (!EFI_ERROR (Status)) {
     //
@@ -1342,7 +1350,7 @@ NvmExpressUnload (
   Status = gBS->HandleProtocol (
                   ImageHandle,
                   &gEfiComponentNameProtocolGuid,
-                  (VOID **) &ComponentName
+                  (VOID **)&ComponentName
                   );
   if (!EFI_ERROR (Status)) {
     gBS->UninstallProtocolInterface (
@@ -1355,7 +1363,7 @@ NvmExpressUnload (
   Status = gBS->HandleProtocol (
                   ImageHandle,
                   &gEfiComponentName2ProtocolGuid,
-                  (VOID **) &ComponentName2
+                  (VOID **)&ComponentName2
                   );
   if (!EFI_ERROR (Status)) {
     gBS->UninstallProtocolInterface (
@@ -1374,6 +1382,7 @@ EXIT:
   if (DeviceHandleBuffer != NULL) {
     gBS->FreePool (DeviceHandleBuffer);
   }
+
   return Status;
 }
 
@@ -1394,7 +1403,7 @@ NvmExpressDriverEntry (
   IN EFI_SYSTEM_TABLE  *SystemTable
   )
 {
-  EFI_STATUS              Status;
+  EFI_STATUS  Status;
 
   Status = EfiLibInstallDriverBindingComponentName2 (
              ImageHandle,
@@ -1411,12 +1420,12 @@ NvmExpressDriverEntry (
   // EFI drivers that are on PCI and other plug in cards.
   //
   gNvmExpressDriverSupportedEfiVersion.FirmwareVersion = 0x00020028;
-  Status = gBS->InstallMultipleProtocolInterfaces (
-                  &ImageHandle,
-                  &gEfiDriverSupportedEfiVersionProtocolGuid,
-                  &gNvmExpressDriverSupportedEfiVersion,
-                  NULL
-                  );
+  Status                                               = gBS->InstallMultipleProtocolInterfaces (
+                                                                &ImageHandle,
+                                                                &gEfiDriverSupportedEfiVersionProtocolGuid,
+                                                                &gNvmExpressDriverSupportedEfiVersion,
+                                                                NULL
+                                                                );
   ASSERT_EFI_ERROR (Status);
   return Status;
 }

+ 93 - 94
MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpress.h

@@ -41,8 +41,8 @@
 #include <Library/UefiDriverEntryPoint.h>
 #include <Library/ReportStatusCodeLib.h>
 
-typedef struct _NVME_CONTROLLER_PRIVATE_DATA NVME_CONTROLLER_PRIVATE_DATA;
-typedef struct _NVME_DEVICE_PRIVATE_DATA     NVME_DEVICE_PRIVATE_DATA;
+typedef struct _NVME_CONTROLLER_PRIVATE_DATA  NVME_CONTROLLER_PRIVATE_DATA;
+typedef struct _NVME_DEVICE_PRIVATE_DATA      NVME_DEVICE_PRIVATE_DATA;
 
 #include "NvmExpressBlockIo.h"
 #include "NvmExpressDiskInfo.h"
@@ -53,67 +53,67 @@ extern EFI_COMPONENT_NAME_PROTOCOL                gNvmExpressComponentName;
 extern EFI_COMPONENT_NAME2_PROTOCOL               gNvmExpressComponentName2;
 extern EFI_DRIVER_SUPPORTED_EFI_VERSION_PROTOCOL  gNvmExpressDriverSupportedEfiVersion;
 
-#define PCI_CLASS_MASS_STORAGE_NVM                0x08  // mass storage sub-class non-volatile memory.
-#define PCI_IF_NVMHCI                             0x02  // mass storage programming interface NVMHCI.
+#define PCI_CLASS_MASS_STORAGE_NVM  0x08                // mass storage sub-class non-volatile memory.
+#define PCI_IF_NVMHCI               0x02                // mass storage programming interface NVMHCI.
 
-#define NVME_ASQ_SIZE                             1     // Number of admin submission queue entries, which is 0-based
-#define NVME_ACQ_SIZE                             1     // Number of admin completion queue entries, which is 0-based
+#define NVME_ASQ_SIZE  1                                // Number of admin submission queue entries, which is 0-based
+#define NVME_ACQ_SIZE  1                                // Number of admin completion queue entries, which is 0-based
 
-#define NVME_CSQ_SIZE                             1     // Number of I/O submission queue entries, which is 0-based
-#define NVME_CCQ_SIZE                             1     // Number of I/O completion queue entries, which is 0-based
+#define NVME_CSQ_SIZE  1                                // Number of I/O submission queue entries, which is 0-based
+#define NVME_CCQ_SIZE  1                                // Number of I/O completion queue entries, which is 0-based
 
 //
 // Number of asynchronous I/O submission queue entries, which is 0-based.
 // The asynchronous I/O submission queue size is 4kB in total.
 //
-#define NVME_ASYNC_CSQ_SIZE                       63
+#define NVME_ASYNC_CSQ_SIZE  63
 //
 // Number of asynchronous I/O completion queue entries, which is 0-based.
 // The asynchronous I/O completion queue size is 4kB in total.
 //
-#define NVME_ASYNC_CCQ_SIZE                       255
+#define NVME_ASYNC_CCQ_SIZE  255
 
-#define NVME_MAX_QUEUES                           3     // Number of queues supported by the driver
+#define NVME_MAX_QUEUES  3                              // Number of queues supported by the driver
 
-#define NVME_CONTROLLER_ID                        0
+#define NVME_CONTROLLER_ID  0
 
 //
 // Time out value for Nvme transaction execution
 //
-#define NVME_GENERIC_TIMEOUT                      EFI_TIMER_PERIOD_SECONDS (5)
+#define NVME_GENERIC_TIMEOUT  EFI_TIMER_PERIOD_SECONDS (5)
 
 //
 // Nvme async transfer timer interval, set by experience.
 //
-#define NVME_HC_ASYNC_TIMER                       EFI_TIMER_PERIOD_MILLISECONDS (1)
+#define NVME_HC_ASYNC_TIMER  EFI_TIMER_PERIOD_MILLISECONDS (1)
 
 //
 // Unique signature for private data structure.
 //
-#define NVME_CONTROLLER_PRIVATE_DATA_SIGNATURE    SIGNATURE_32 ('N','V','M','E')
+#define NVME_CONTROLLER_PRIVATE_DATA_SIGNATURE  SIGNATURE_32 ('N','V','M','E')
 
 //
 // Nvme private data structure.
 //
 struct _NVME_CONTROLLER_PRIVATE_DATA {
-  UINT32                              Signature;
+  UINT32                                Signature;
 
-  EFI_HANDLE                          ControllerHandle;
-  EFI_HANDLE                          ImageHandle;
-  EFI_HANDLE                          DriverBindingHandle;
+  EFI_HANDLE                            ControllerHandle;
+  EFI_HANDLE                            ImageHandle;
+  EFI_HANDLE                            DriverBindingHandle;
 
-  EFI_PCI_IO_PROTOCOL                 *PciIo;
-  UINT64                              PciAttributes;
+  EFI_PCI_IO_PROTOCOL                   *PciIo;
+  UINT64                                PciAttributes;
 
-  EFI_DEVICE_PATH_PROTOCOL            *ParentDevicePath;
+  EFI_DEVICE_PATH_PROTOCOL              *ParentDevicePath;
 
-  EFI_NVM_EXPRESS_PASS_THRU_MODE      PassThruMode;
-  EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL  Passthru;
+  EFI_NVM_EXPRESS_PASS_THRU_MODE        PassThruMode;
+  EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL    Passthru;
 
   //
   // pointer to identify controller data
   //
-  NVME_ADMIN_CONTROLLER_DATA          *ControllerData;
+  NVME_ADMIN_CONTROLLER_DATA            *ControllerData;
 
   //
   // 6 x 4kB aligned buffers will be carved out of this buffer.
@@ -124,45 +124,45 @@ struct _NVME_CONTROLLER_PRIVATE_DATA {
   // 5th 4kB boundary is the start of I/O submission queue #2.
   // 6th 4kB boundary is the start of I/O completion queue #2.
   //
-  UINT8                               *Buffer;
-  UINT8                               *BufferPciAddr;
+  UINT8          *Buffer;
+  UINT8          *BufferPciAddr;
 
   //
   // Pointers to 4kB aligned submission & completion queues.
   //
-  NVME_SQ                             *SqBuffer[NVME_MAX_QUEUES];
-  NVME_CQ                             *CqBuffer[NVME_MAX_QUEUES];
-  NVME_SQ                             *SqBufferPciAddr[NVME_MAX_QUEUES];
-  NVME_CQ                             *CqBufferPciAddr[NVME_MAX_QUEUES];
+  NVME_SQ        *SqBuffer[NVME_MAX_QUEUES];
+  NVME_CQ        *CqBuffer[NVME_MAX_QUEUES];
+  NVME_SQ        *SqBufferPciAddr[NVME_MAX_QUEUES];
+  NVME_CQ        *CqBufferPciAddr[NVME_MAX_QUEUES];
 
   //
   // Submission and completion queue indices.
   //
-  NVME_SQTDBL                         SqTdbl[NVME_MAX_QUEUES];
-  NVME_CQHDBL                         CqHdbl[NVME_MAX_QUEUES];
-  UINT16                              AsyncSqHead;
+  NVME_SQTDBL    SqTdbl[NVME_MAX_QUEUES];
+  NVME_CQHDBL    CqHdbl[NVME_MAX_QUEUES];
+  UINT16         AsyncSqHead;
 
   //
   // Flag to indicate internal IO queue creation.
   //
-  BOOLEAN                             CreateIoQueue;
+  BOOLEAN        CreateIoQueue;
 
-  UINT8                               Pt[NVME_MAX_QUEUES];
-  UINT16                              Cid[NVME_MAX_QUEUES];
+  UINT8          Pt[NVME_MAX_QUEUES];
+  UINT16         Cid[NVME_MAX_QUEUES];
 
   //
   // Nvme controller capabilities
   //
-  NVME_CAP                            Cap;
+  NVME_CAP       Cap;
 
-  VOID                                *Mapping;
+  VOID           *Mapping;
 
   //
   // For Non-blocking operations.
   //
-  EFI_EVENT                           TimerEvent;
-  LIST_ENTRY                          AsyncPassThruQueue;
-  LIST_ENTRY                          UnsubmittedSubtasks;
+  EFI_EVENT      TimerEvent;
+  LIST_ENTRY     AsyncPassThruQueue;
+  LIST_ENTRY     UnsubmittedSubtasks;
 };
 
 #define NVME_CONTROLLER_PRIVATE_DATA_FROM_PASS_THRU(a) \
@@ -175,7 +175,7 @@ struct _NVME_CONTROLLER_PRIVATE_DATA {
 //
 // Unique signature for private data structure.
 //
-#define NVME_DEVICE_PRIVATE_DATA_SIGNATURE     SIGNATURE_32 ('X','S','S','D')
+#define NVME_DEVICE_PRIVATE_DATA_SIGNATURE  SIGNATURE_32 ('X','S','S','D')
 
 //
 // Nvme device private data structure
@@ -208,7 +208,6 @@ struct _NVME_DEVICE_PRIVATE_DATA {
   NVME_ADMIN_NAMESPACE_DATA                NamespaceData;
 
   NVME_CONTROLLER_PRIVATE_DATA             *Controller;
-
 };
 
 //
@@ -235,7 +234,7 @@ struct _NVME_DEVICE_PRIVATE_DATA {
       NVME_DEVICE_PRIVATE_DATA_SIGNATURE \
       )
 
-#define NVME_DEVICE_PRIVATE_DATA_FROM_STORAGE_SECURITY(a)\
+#define NVME_DEVICE_PRIVATE_DATA_FROM_STORAGE_SECURITY(a) \
   CR (a,                                                 \
       NVME_DEVICE_PRIVATE_DATA,                          \
       StorageSecurity,                                   \
@@ -245,38 +244,38 @@ struct _NVME_DEVICE_PRIVATE_DATA {
 //
 // Nvme block I/O 2 request.
 //
-#define NVME_BLKIO2_REQUEST_SIGNATURE      SIGNATURE_32 ('N', 'B', '2', 'R')
+#define NVME_BLKIO2_REQUEST_SIGNATURE  SIGNATURE_32 ('N', 'B', '2', 'R')
 
 typedef struct {
-  UINT32                                   Signature;
-  LIST_ENTRY                               Link;
+  UINT32                 Signature;
+  LIST_ENTRY             Link;
 
-  EFI_BLOCK_IO2_TOKEN                      *Token;
-  UINTN                                    UnsubmittedSubtaskNum;
-  BOOLEAN                                  LastSubtaskSubmitted;
+  EFI_BLOCK_IO2_TOKEN    *Token;
+  UINTN                  UnsubmittedSubtaskNum;
+  BOOLEAN                LastSubtaskSubmitted;
   //
   // The queue for Nvme read/write sub-tasks of a BlockIo2 request.
   //
-  LIST_ENTRY                               SubtasksQueue;
+  LIST_ENTRY             SubtasksQueue;
 } NVME_BLKIO2_REQUEST;
 
 #define NVME_BLKIO2_REQUEST_FROM_LINK(a) \
   CR (a, NVME_BLKIO2_REQUEST, Link, NVME_BLKIO2_REQUEST_SIGNATURE)
 
-#define NVME_BLKIO2_SUBTASK_SIGNATURE      SIGNATURE_32 ('N', 'B', '2', 'S')
+#define NVME_BLKIO2_SUBTASK_SIGNATURE  SIGNATURE_32 ('N', 'B', '2', 'S')
 
 typedef struct {
-  UINT32                                   Signature;
-  LIST_ENTRY                               Link;
+  UINT32                                      Signature;
+  LIST_ENTRY                                  Link;
 
-  BOOLEAN                                  IsLast;
-  UINT32                                   NamespaceId;
-  EFI_EVENT                                Event;
-  EFI_NVM_EXPRESS_PASS_THRU_COMMAND_PACKET *CommandPacket;
+  BOOLEAN                                     IsLast;
+  UINT32                                      NamespaceId;
+  EFI_EVENT                                   Event;
+  EFI_NVM_EXPRESS_PASS_THRU_COMMAND_PACKET    *CommandPacket;
   //
   // The BlockIo2 request this subtask belongs to
   //
-  NVME_BLKIO2_REQUEST                      *BlockIo2Request;
+  NVME_BLKIO2_REQUEST                         *BlockIo2Request;
 } NVME_BLKIO2_SUBTASK;
 
 #define NVME_BLKIO2_SUBTASK_FROM_LINK(a) \
@@ -285,20 +284,20 @@ typedef struct {
 //
 // Nvme asynchronous passthru request.
 //
-#define NVME_PASS_THRU_ASYNC_REQ_SIG       SIGNATURE_32 ('N', 'P', 'A', 'R')
+#define NVME_PASS_THRU_ASYNC_REQ_SIG  SIGNATURE_32 ('N', 'P', 'A', 'R')
 
 typedef struct {
-  UINT32                                   Signature;
-  LIST_ENTRY                               Link;
-
-  EFI_NVM_EXPRESS_PASS_THRU_COMMAND_PACKET *Packet;
-  UINT16                                   CommandId;
-  VOID                                     *MapPrpList;
-  UINTN                                    PrpListNo;
-  VOID                                     *PrpListHost;
-  VOID                                     *MapData;
-  VOID                                     *MapMeta;
-  EFI_EVENT                                CallerEvent;
+  UINT32                                      Signature;
+  LIST_ENTRY                                  Link;
+
+  EFI_NVM_EXPRESS_PASS_THRU_COMMAND_PACKET    *Packet;
+  UINT16                                      CommandId;
+  VOID                                        *MapPrpList;
+  UINTN                                       PrpListNo;
+  VOID                                        *PrpListHost;
+  VOID                                        *MapData;
+  VOID                                        *MapMeta;
+  EFI_EVENT                                   CallerEvent;
 } NVME_PASS_THRU_ASYNC_REQ;
 
 #define NVME_PASS_THRU_ASYNC_REQ_FROM_THIS(a) \
@@ -426,11 +425,11 @@ NvmExpressComponentNameGetDriverName (
 EFI_STATUS
 EFIAPI
 NvmExpressComponentNameGetControllerName (
-  IN  EFI_COMPONENT_NAME_PROTOCOL                     *This,
-  IN  EFI_HANDLE                                      ControllerHandle,
-  IN  EFI_HANDLE                                      ChildHandle        OPTIONAL,
-  IN  CHAR8                                           *Language,
-  OUT CHAR16                                          **ControllerName
+  IN  EFI_COMPONENT_NAME_PROTOCOL  *This,
+  IN  EFI_HANDLE                   ControllerHandle,
+  IN  EFI_HANDLE                   ChildHandle        OPTIONAL,
+  IN  CHAR8                        *Language,
+  OUT CHAR16                       **ControllerName
   );
 
 /**
@@ -555,10 +554,10 @@ NvmExpressDriverBindingStart (
 EFI_STATUS
 EFIAPI
 NvmExpressDriverBindingStop (
-  IN  EFI_DRIVER_BINDING_PROTOCOL     *This,
-  IN  EFI_HANDLE                      Controller,
-  IN  UINTN                           NumberOfChildren,
-  IN  EFI_HANDLE                      *ChildHandleBuffer
+  IN  EFI_DRIVER_BINDING_PROTOCOL  *This,
+  IN  EFI_HANDLE                   Controller,
+  IN  UINTN                        NumberOfChildren,
+  IN  EFI_HANDLE                   *ChildHandleBuffer
   );
 
 /**
@@ -594,10 +593,10 @@ NvmExpressDriverBindingStop (
 EFI_STATUS
 EFIAPI
 NvmExpressPassThru (
-  IN     EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL          *This,
-  IN     UINT32                                      NamespaceId,
-  IN OUT EFI_NVM_EXPRESS_PASS_THRU_COMMAND_PACKET    *Packet,
-  IN     EFI_EVENT                                   Event OPTIONAL
+  IN     EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL        *This,
+  IN     UINT32                                    NamespaceId,
+  IN OUT EFI_NVM_EXPRESS_PASS_THRU_COMMAND_PACKET  *Packet,
+  IN     EFI_EVENT                                 Event OPTIONAL
   );
 
 /**
@@ -636,8 +635,8 @@ NvmExpressPassThru (
 EFI_STATUS
 EFIAPI
 NvmExpressGetNextNamespace (
-  IN     EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL          *This,
-  IN OUT UINT32                                      *NamespaceId
+  IN     EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL  *This,
+  IN OUT UINT32                              *NamespaceId
   );
 
 /**
@@ -667,9 +666,9 @@ NvmExpressGetNextNamespace (
 EFI_STATUS
 EFIAPI
 NvmExpressGetNamespace (
-  IN     EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL          *This,
-  IN     EFI_DEVICE_PATH_PROTOCOL                    *DevicePath,
-     OUT UINT32                                      *NamespaceId
+  IN     EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL  *This,
+  IN     EFI_DEVICE_PATH_PROTOCOL            *DevicePath,
+  OUT UINT32                                 *NamespaceId
   );
 
 /**
@@ -706,9 +705,9 @@ NvmExpressGetNamespace (
 EFI_STATUS
 EFIAPI
 NvmExpressBuildDevicePath (
-  IN     EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL          *This,
-  IN     UINT32                                      NamespaceId,
-  IN OUT EFI_DEVICE_PATH_PROTOCOL                    **DevicePath
+  IN     EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL  *This,
+  IN     UINT32                              NamespaceId,
+  IN OUT EFI_DEVICE_PATH_PROTOCOL            **DevicePath
   );
 
 /**
@@ -719,7 +718,7 @@ NvmExpressBuildDevicePath (
 **/
 VOID
 NvmeDumpStatus (
-  IN NVME_CQ             *Cq
+  IN NVME_CQ  *Cq
   );
 
 /**

File diff suppressed because it is too large
+ 320 - 285
MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressBlockIo.c


+ 41 - 41
MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressBlockIo.h

@@ -23,8 +23,8 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 EFI_STATUS
 EFIAPI
 NvmeBlockIoReset (
-  IN  EFI_BLOCK_IO_PROTOCOL   *This,
-  IN  BOOLEAN                 ExtendedVerification
+  IN  EFI_BLOCK_IO_PROTOCOL  *This,
+  IN  BOOLEAN                ExtendedVerification
   );
 
 /**
@@ -49,11 +49,11 @@ NvmeBlockIoReset (
 EFI_STATUS
 EFIAPI
 NvmeBlockIoReadBlocks (
-  IN  EFI_BLOCK_IO_PROTOCOL   *This,
-  IN  UINT32                  MediaId,
-  IN  EFI_LBA                 Lba,
-  IN  UINTN                   BufferSize,
-  OUT VOID                    *Buffer
+  IN  EFI_BLOCK_IO_PROTOCOL  *This,
+  IN  UINT32                 MediaId,
+  IN  EFI_LBA                Lba,
+  IN  UINTN                  BufferSize,
+  OUT VOID                   *Buffer
   );
 
 /**
@@ -79,11 +79,11 @@ NvmeBlockIoReadBlocks (
 EFI_STATUS
 EFIAPI
 NvmeBlockIoWriteBlocks (
-  IN  EFI_BLOCK_IO_PROTOCOL   *This,
-  IN  UINT32                  MediaId,
-  IN  EFI_LBA                 Lba,
-  IN  UINTN                   BufferSize,
-  IN  VOID                    *Buffer
+  IN  EFI_BLOCK_IO_PROTOCOL  *This,
+  IN  UINT32                 MediaId,
+  IN  EFI_LBA                Lba,
+  IN  UINTN                  BufferSize,
+  IN  VOID                   *Buffer
   );
 
 /**
@@ -99,7 +99,7 @@ NvmeBlockIoWriteBlocks (
 EFI_STATUS
 EFIAPI
 NvmeBlockIoFlushBlocks (
-  IN  EFI_BLOCK_IO_PROTOCOL   *This
+  IN  EFI_BLOCK_IO_PROTOCOL  *This
   );
 
 /**
@@ -162,12 +162,12 @@ NvmeBlockIoResetEx (
 EFI_STATUS
 EFIAPI
 NvmeBlockIoReadBlocksEx (
-  IN     EFI_BLOCK_IO2_PROTOCOL *This,
-  IN     UINT32                 MediaId,
-  IN     EFI_LBA                Lba,
-  IN OUT EFI_BLOCK_IO2_TOKEN    *Token,
-  IN     UINTN                  BufferSize,
-     OUT VOID                  *Buffer
+  IN     EFI_BLOCK_IO2_PROTOCOL  *This,
+  IN     UINT32                  MediaId,
+  IN     EFI_LBA                 Lba,
+  IN OUT EFI_BLOCK_IO2_TOKEN     *Token,
+  IN     UINTN                   BufferSize,
+  OUT VOID                       *Buffer
   );
 
 /**
@@ -212,11 +212,11 @@ EFI_STATUS
 EFIAPI
 NvmeBlockIoWriteBlocksEx (
   IN     EFI_BLOCK_IO2_PROTOCOL  *This,
-  IN     UINT32                 MediaId,
-  IN     EFI_LBA                Lba,
-  IN OUT EFI_BLOCK_IO2_TOKEN    *Token,
-  IN     UINTN                  BufferSize,
-  IN     VOID                   *Buffer
+  IN     UINT32                  MediaId,
+  IN     EFI_LBA                 Lba,
+  IN OUT EFI_BLOCK_IO2_TOKEN     *Token,
+  IN     UINTN                   BufferSize,
+  IN     VOID                    *Buffer
   );
 
 /**
@@ -246,8 +246,8 @@ NvmeBlockIoWriteBlocksEx (
 EFI_STATUS
 EFIAPI
 NvmeBlockIoFlushBlocksEx (
-  IN     EFI_BLOCK_IO2_PROTOCOL   *This,
-  IN OUT EFI_BLOCK_IO2_TOKEN      *Token
+  IN     EFI_BLOCK_IO2_PROTOCOL  *This,
+  IN OUT EFI_BLOCK_IO2_TOKEN     *Token
   );
 
 /**
@@ -325,14 +325,14 @@ NvmeBlockIoFlushBlocksEx (
 EFI_STATUS
 EFIAPI
 NvmeStorageSecurityReceiveData (
-  IN  EFI_STORAGE_SECURITY_COMMAND_PROTOCOL   *This,
-  IN  UINT32                                  MediaId,
-  IN  UINT64                                  Timeout,
-  IN  UINT8                                   SecurityProtocolId,
-  IN  UINT16                                  SecurityProtocolSpecificData,
-  IN  UINTN                                   PayloadBufferSize,
-  OUT VOID                                    *PayloadBuffer,
-  OUT UINTN                                   *PayloadTransferSize
+  IN  EFI_STORAGE_SECURITY_COMMAND_PROTOCOL  *This,
+  IN  UINT32                                 MediaId,
+  IN  UINT64                                 Timeout,
+  IN  UINT8                                  SecurityProtocolId,
+  IN  UINT16                                 SecurityProtocolSpecificData,
+  IN  UINTN                                  PayloadBufferSize,
+  OUT VOID                                   *PayloadBuffer,
+  OUT UINTN                                  *PayloadTransferSize
   );
 
 /**
@@ -399,13 +399,13 @@ NvmeStorageSecurityReceiveData (
 EFI_STATUS
 EFIAPI
 NvmeStorageSecuritySendData (
-  IN EFI_STORAGE_SECURITY_COMMAND_PROTOCOL    *This,
-  IN UINT32                                   MediaId,
-  IN UINT64                                   Timeout,
-  IN UINT8                                    SecurityProtocolId,
-  IN UINT16                                   SecurityProtocolSpecificData,
-  IN UINTN                                    PayloadBufferSize,
-  IN VOID                                     *PayloadBuffer
+  IN EFI_STORAGE_SECURITY_COMMAND_PROTOCOL  *This,
+  IN UINT32                                 MediaId,
+  IN UINT64                                 Timeout,
+  IN UINT8                                  SecurityProtocolId,
+  IN UINT16                                 SecurityProtocolSpecificData,
+  IN UINTN                                  PayloadBufferSize,
+  IN VOID                                   *PayloadBuffer
   );
 
 #endif

+ 18 - 21
MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDiskInfo.c

@@ -8,7 +8,7 @@
 
 #include "NvmExpress.h"
 
-EFI_DISK_INFO_PROTOCOL gNvmExpressDiskInfoProtocolTemplate = {
+EFI_DISK_INFO_PROTOCOL  gNvmExpressDiskInfoProtocolTemplate = {
   EFI_DISK_INFO_NVME_INTERFACE_GUID,
   NvmExpressDiskInfoInquiry,
   NvmExpressDiskInfoIdentify,
@@ -27,13 +27,12 @@ EFI_DISK_INFO_PROTOCOL gNvmExpressDiskInfoProtocolTemplate = {
 **/
 VOID
 InitializeDiskInfo (
-  IN  NVME_DEVICE_PRIVATE_DATA    *Device
+  IN  NVME_DEVICE_PRIVATE_DATA  *Device
   )
 {
   CopyMem (&Device->DiskInfo, &gNvmExpressDiskInfoProtocolTemplate, sizeof (EFI_DISK_INFO_PROTOCOL));
 }
 
-
 /**
   Provides inquiry information for the controller type.
 
@@ -53,15 +52,14 @@ InitializeDiskInfo (
 EFI_STATUS
 EFIAPI
 NvmExpressDiskInfoInquiry (
-  IN     EFI_DISK_INFO_PROTOCOL   *This,
-  IN OUT VOID                     *InquiryData,
-  IN OUT UINT32                   *InquiryDataSize
+  IN     EFI_DISK_INFO_PROTOCOL  *This,
+  IN OUT VOID                    *InquiryData,
+  IN OUT UINT32                  *InquiryDataSize
   )
 {
   return EFI_NOT_FOUND;
 }
 
-
 /**
   Provides identify information for the controller type.
 
@@ -83,13 +81,13 @@ NvmExpressDiskInfoInquiry (
 EFI_STATUS
 EFIAPI
 NvmExpressDiskInfoIdentify (
-  IN     EFI_DISK_INFO_PROTOCOL   *This,
-  IN OUT VOID                     *IdentifyData,
-  IN OUT UINT32                   *IdentifyDataSize
+  IN     EFI_DISK_INFO_PROTOCOL  *This,
+  IN OUT VOID                    *IdentifyData,
+  IN OUT UINT32                  *IdentifyDataSize
   )
 {
-  EFI_STATUS                      Status;
-  NVME_DEVICE_PRIVATE_DATA        *Device;
+  EFI_STATUS                Status;
+  NVME_DEVICE_PRIVATE_DATA  *Device;
 
   Device = NVME_DEVICE_PRIVATE_DATA_FROM_DISK_INFO (This);
 
@@ -98,6 +96,7 @@ NvmExpressDiskInfoIdentify (
     Status = EFI_SUCCESS;
     CopyMem (IdentifyData, &Device->NamespaceData, sizeof (Device->NamespaceData));
   }
+
   *IdentifyDataSize = sizeof (Device->NamespaceData);
   return Status;
 }
@@ -122,16 +121,15 @@ NvmExpressDiskInfoIdentify (
 EFI_STATUS
 EFIAPI
 NvmExpressDiskInfoSenseData (
-  IN     EFI_DISK_INFO_PROTOCOL   *This,
-  IN OUT VOID                     *SenseData,
-  IN OUT UINT32                   *SenseDataSize,
-  OUT    UINT8                    *SenseDataNumber
+  IN     EFI_DISK_INFO_PROTOCOL  *This,
+  IN OUT VOID                    *SenseData,
+  IN OUT UINT32                  *SenseDataSize,
+  OUT    UINT8                   *SenseDataNumber
   )
 {
   return EFI_NOT_FOUND;
 }
 
-
 /**
   This function is used to get controller information.
 
@@ -146,11 +144,10 @@ NvmExpressDiskInfoSenseData (
 EFI_STATUS
 EFIAPI
 NvmExpressDiskInfoWhichIde (
-  IN  EFI_DISK_INFO_PROTOCOL   *This,
-  OUT UINT32                   *IdeChannel,
-  OUT UINT32                   *IdeDevice
+  IN  EFI_DISK_INFO_PROTOCOL  *This,
+  OUT UINT32                  *IdeChannel,
+  OUT UINT32                  *IdeDevice
   )
 {
   return EFI_UNSUPPORTED;
 }
-

+ 14 - 16
MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDiskInfo.h

@@ -20,10 +20,9 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 **/
 VOID
 InitializeDiskInfo (
-  IN  NVME_DEVICE_PRIVATE_DATA    *Device
+  IN  NVME_DEVICE_PRIVATE_DATA  *Device
   );
 
-
 /**
   Provides inquiry information for the controller type.
 
@@ -43,9 +42,9 @@ InitializeDiskInfo (
 EFI_STATUS
 EFIAPI
 NvmExpressDiskInfoInquiry (
-  IN     EFI_DISK_INFO_PROTOCOL   *This,
-  IN OUT VOID                     *InquiryData,
-  IN OUT UINT32                   *InquiryDataSize
+  IN     EFI_DISK_INFO_PROTOCOL  *This,
+  IN OUT VOID                    *InquiryData,
+  IN OUT UINT32                  *InquiryDataSize
   );
 
 /**
@@ -69,9 +68,9 @@ NvmExpressDiskInfoInquiry (
 EFI_STATUS
 EFIAPI
 NvmExpressDiskInfoIdentify (
-  IN     EFI_DISK_INFO_PROTOCOL   *This,
-  IN OUT VOID                     *IdentifyData,
-  IN OUT UINT32                   *IdentifyDataSize
+  IN     EFI_DISK_INFO_PROTOCOL  *This,
+  IN OUT VOID                    *IdentifyData,
+  IN OUT UINT32                  *IdentifyDataSize
   );
 
 /**
@@ -94,13 +93,12 @@ NvmExpressDiskInfoIdentify (
 EFI_STATUS
 EFIAPI
 NvmExpressDiskInfoSenseData (
-  IN     EFI_DISK_INFO_PROTOCOL   *This,
-  IN OUT VOID                     *SenseData,
-  IN OUT UINT32                   *SenseDataSize,
-  OUT    UINT8                    *SenseDataNumber
+  IN     EFI_DISK_INFO_PROTOCOL  *This,
+  IN OUT VOID                    *SenseData,
+  IN OUT UINT32                  *SenseDataSize,
+  OUT    UINT8                   *SenseDataNumber
   );
 
-
 /**
   This function is used to get controller information.
 
@@ -115,9 +113,9 @@ NvmExpressDiskInfoSenseData (
 EFI_STATUS
 EFIAPI
 NvmExpressDiskInfoWhichIde (
-  IN  EFI_DISK_INFO_PROTOCOL   *This,
-  OUT UINT32                   *IdeChannel,
-  OUT UINT32                   *IdeDevice
+  IN  EFI_DISK_INFO_PROTOCOL  *This,
+  OUT UINT32                  *IdeChannel,
+  OUT UINT32                  *IdeDevice
   );
 
 #endif

Some files were not shown because too many files changed in this diff