]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterGraphics.c
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / MdeModulePkg / Universal / Console / ConSplitterDxe / ConSplitterGraphics.c
index 9fcf3e91c30987f54a619a8d2010704fae3dbd3a..64ad567a6d7d80a66e5acc610c77b37719f3d0b2 100644 (file)
@@ -9,8 +9,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
 \r
 #include "ConSplitter.h"\r
 \r
-\r
-CHAR16 mCrLfString[3] = { CHAR_CARRIAGE_RETURN, CHAR_LINEFEED, CHAR_NULL };\r
+CHAR16  mCrLfString[3] = { CHAR_CARRIAGE_RETURN, CHAR_LINEFEED, CHAR_NULL };\r
 \r
 /**\r
   Returns information for an available graphics mode that the graphics device\r
@@ -42,7 +41,7 @@ ConSplitterGraphicsOutputQueryMode (
   EFI_STATUS                      Status;\r
   UINTN                           Index;\r
 \r
-  if (This == NULL || Info == NULL || SizeOfInfo == NULL || ModeNumber >= This->Mode->MaxMode) {\r
+  if ((This == NULL) || (Info == NULL) || (SizeOfInfo == NULL) || (ModeNumber >= This->Mode->MaxMode)) {\r
     return EFI_INVALID_PARAMETER;\r
   }\r
 \r
@@ -69,7 +68,7 @@ ConSplitterGraphicsOutputQueryMode (
     //\r
     // If only one physical GOP device exist, return its information.\r
     //\r
-    Status = GraphicsOutput->QueryMode (GraphicsOutput, (UINT32) ModeNumber, SizeOfInfo, Info);\r
+    Status = GraphicsOutput->QueryMode (GraphicsOutput, (UINT32)ModeNumber, SizeOfInfo, Info);\r
     return Status;\r
   } else {\r
     //\r
@@ -80,6 +79,7 @@ ConSplitterGraphicsOutputQueryMode (
     if (*Info == NULL) {\r
       return EFI_OUT_OF_RESOURCES;\r
     }\r
+\r
     *SizeOfInfo = sizeof (EFI_GRAPHICS_OUTPUT_MODE_INFORMATION);\r
     CopyMem (*Info, &Private->GraphicsOutputModeBuffer[ModeNumber], *SizeOfInfo);\r
   }\r
@@ -87,7 +87,6 @@ ConSplitterGraphicsOutputQueryMode (
   return EFI_SUCCESS;\r
 }\r
 \r
-\r
 /**\r
   Set the video device into the specified mode and clears the visible portions of\r
   the output display to black.\r
@@ -104,31 +103,31 @@ ConSplitterGraphicsOutputQueryMode (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterGraphicsOutputSetMode (\r
-  IN  EFI_GRAPHICS_OUTPUT_PROTOCOL This,\r
-  IN  UINT32                       ModeNumber\r
+  IN  EFI_GRAPHICS_OUTPUT_PROTOCOL  *This,\r
+  IN  UINT32                        ModeNumber\r
   )\r
 {\r
-  EFI_STATUS                             Status;\r
-  TEXT_OUT_SPLITTER_PRIVATE_DATA         *Private;\r
-  UINTN                                  Index;\r
-  EFI_STATUS                             ReturnStatus;\r
-  EFI_GRAPHICS_OUTPUT_MODE_INFORMATION   *Mode;\r
-  EFI_GRAPHICS_OUTPUT_PROTOCOL           *GraphicsOutput;\r
-  EFI_GRAPHICS_OUTPUT_PROTOCOL           *PhysicalGraphicsOutput;\r
-  UINTN                                  NumberIndex;\r
-  UINTN                                  SizeOfInfo;\r
-  EFI_GRAPHICS_OUTPUT_MODE_INFORMATION   *Info;\r
-  EFI_UGA_DRAW_PROTOCOL                  *UgaDraw;\r
+  EFI_STATUS                            Status;\r
+  TEXT_OUT_SPLITTER_PRIVATE_DATA        *Private;\r
+  UINTN                                 Index;\r
+  EFI_STATUS                            ReturnStatus;\r
+  EFI_GRAPHICS_OUTPUT_MODE_INFORMATION  *Mode;\r
+  EFI_GRAPHICS_OUTPUT_PROTOCOL          *GraphicsOutput;\r
+  EFI_GRAPHICS_OUTPUT_PROTOCOL          *PhysicalGraphicsOutput;\r
+  UINTN                                 NumberIndex;\r
+  UINTN                                 SizeOfInfo;\r
+  EFI_GRAPHICS_OUTPUT_MODE_INFORMATION  *Info;\r
+  EFI_UGA_DRAW_PROTOCOL                 *UgaDraw;\r
 \r
   if (ModeNumber >= This->Mode->MaxMode) {\r
     return EFI_UNSUPPORTED;\r
   }\r
 \r
   Private = GRAPHICS_OUTPUT_SPLITTER_PRIVATE_DATA_FROM_THIS (This);\r
-  Mode = &Private->GraphicsOutputModeBuffer[ModeNumber];\r
+  Mode    = &Private->GraphicsOutputModeBuffer[ModeNumber];\r
 \r
-  ReturnStatus = EFI_SUCCESS;\r
-  GraphicsOutput = NULL;\r
+  ReturnStatus           = EFI_SUCCESS;\r
+  GraphicsOutput         = NULL;\r
   PhysicalGraphicsOutput = NULL;\r
   //\r
   // return the worst status met\r
@@ -140,19 +139,21 @@ ConSplitterGraphicsOutputSetMode (
       //\r
       // Find corresponding ModeNumber of this GraphicsOutput instance\r
       //\r
-      for (NumberIndex = 0; NumberIndex < GraphicsOutput->Mode->MaxMode; NumberIndex ++) {\r
-        Status = GraphicsOutput->QueryMode (GraphicsOutput, (UINT32) NumberIndex, &SizeOfInfo, &Info);\r
+      for (NumberIndex = 0; NumberIndex < GraphicsOutput->Mode->MaxMode; NumberIndex++) {\r
+        Status = GraphicsOutput->QueryMode (GraphicsOutput, (UINT32)NumberIndex, &SizeOfInfo, &Info);\r
         if (EFI_ERROR (Status)) {\r
           return Status;\r
         }\r
+\r
         if ((Info->HorizontalResolution == Mode->HorizontalResolution) && (Info->VerticalResolution == Mode->VerticalResolution)) {\r
           FreePool (Info);\r
           break;\r
         }\r
+\r
         FreePool (Info);\r
       }\r
 \r
-      Status = GraphicsOutput->SetMode (GraphicsOutput, (UINT32) NumberIndex);\r
+      Status = GraphicsOutput->SetMode (GraphicsOutput, (UINT32)NumberIndex);\r
       if (EFI_ERROR (Status)) {\r
         ReturnStatus = Status;\r
       }\r
@@ -180,7 +181,7 @@ ConSplitterGraphicsOutputSetMode (
     // If only one physical GOP device exist, copy physical information to consplitter.\r
     //\r
     CopyMem (This->Mode->Info, PhysicalGraphicsOutput->Mode->Info, PhysicalGraphicsOutput->Mode->SizeOfInfo);\r
-    This->Mode->SizeOfInfo = PhysicalGraphicsOutput->Mode->SizeOfInfo;\r
+    This->Mode->SizeOfInfo      = PhysicalGraphicsOutput->Mode->SizeOfInfo;\r
     This->Mode->FrameBufferBase = PhysicalGraphicsOutput->Mode->FrameBufferBase;\r
     This->Mode->FrameBufferSize = PhysicalGraphicsOutput->Mode->FrameBufferSize;\r
   } else {\r
@@ -194,8 +195,6 @@ ConSplitterGraphicsOutputSetMode (
   return ReturnStatus;\r
 }\r
 \r
-\r
-\r
 /**\r
   The following table defines actions for BltOperations.\r
 \r
@@ -245,16 +244,16 @@ ConSplitterGraphicsOutputSetMode (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterGraphicsOutputBlt (\r
-  IN  EFI_GRAPHICS_OUTPUT_PROTOCOL                  *This,\r
-  IN  EFI_GRAPHICS_OUTPUT_BLT_PIXEL                 *BltBuffer  OPTIONAL,\r
-  IN  EFI_GRAPHICS_OUTPUT_BLT_OPERATION             BltOperation,\r
-  IN  UINTN                                         SourceX,\r
-  IN  UINTN                                         SourceY,\r
-  IN  UINTN                                         DestinationX,\r
-  IN  UINTN                                         DestinationY,\r
-  IN  UINTN                                         Width,\r
-  IN  UINTN                                         Height,\r
-  IN  UINTN                                         Delta         OPTIONAL\r
+  IN  EFI_GRAPHICS_OUTPUT_PROTOCOL       *This,\r
+  IN  EFI_GRAPHICS_OUTPUT_BLT_PIXEL      *BltBuffer  OPTIONAL,\r
+  IN  EFI_GRAPHICS_OUTPUT_BLT_OPERATION  BltOperation,\r
+  IN  UINTN                              SourceX,\r
+  IN  UINTN                              SourceY,\r
+  IN  UINTN                              DestinationX,\r
+  IN  UINTN                              DestinationY,\r
+  IN  UINTN                              Width,\r
+  IN  UINTN                              Height,\r
+  IN  UINTN                              Delta         OPTIONAL\r
   )\r
 {\r
   EFI_STATUS                      Status;\r
@@ -264,7 +263,7 @@ ConSplitterGraphicsOutputBlt (
   EFI_GRAPHICS_OUTPUT_PROTOCOL    *GraphicsOutput;\r
   EFI_UGA_DRAW_PROTOCOL           *UgaDraw;\r
 \r
-  if (This == NULL || ((UINTN) BltOperation) >= EfiGraphicsOutputBltOperationMax) {\r
+  if ((This == NULL) || (((UINTN)BltOperation) >= EfiGraphicsOutputBltOperationMax)) {\r
     return EFI_INVALID_PARAMETER;\r
   }\r
 \r
@@ -279,17 +278,17 @@ ConSplitterGraphicsOutputBlt (
     GraphicsOutput = Private->TextOutList[Index].GraphicsOutput;\r
     if (GraphicsOutput != NULL) {\r
       Status = GraphicsOutput->Blt (\r
-                              GraphicsOutput,\r
-                              BltBuffer,\r
-                              BltOperation,\r
-                              SourceX,\r
-                              SourceY,\r
-                              DestinationX,\r
-                              DestinationY,\r
-                              Width,\r
-                              Height,\r
-                              Delta\r
-                              );\r
+                                 GraphicsOutput,\r
+                                 BltBuffer,\r
+                                 BltOperation,\r
+                                 SourceX,\r
+                                 SourceY,\r
+                                 DestinationX,\r
+                                 DestinationY,\r
+                                 Width,\r
+                                 Height,\r
+                                 Delta\r
+                                 );\r
       if (EFI_ERROR (Status)) {\r
         ReturnStatus = Status;\r
       } else if (BltOperation == EfiBltVideoToBltBuffer) {\r
@@ -301,19 +300,19 @@ ConSplitterGraphicsOutputBlt (
     }\r
 \r
     UgaDraw = Private->TextOutList[Index].UgaDraw;\r
-    if (UgaDraw != NULL && FeaturePcdGet (PcdUgaConsumeSupport)) {\r
+    if ((UgaDraw != NULL) && FeaturePcdGet (PcdUgaConsumeSupport)) {\r
       Status = UgaDraw->Blt (\r
-                              UgaDraw,\r
-                              (EFI_UGA_PIXEL *) BltBuffer,\r
-                              (EFI_UGA_BLT_OPERATION) BltOperation,\r
-                              SourceX,\r
-                              SourceY,\r
-                              DestinationX,\r
-                              DestinationY,\r
-                              Width,\r
-                              Height,\r
-                              Delta\r
-                              );\r
+                          UgaDraw,\r
+                          (EFI_UGA_PIXEL *)BltBuffer,\r
+                          (EFI_UGA_BLT_OPERATION)BltOperation,\r
+                          SourceX,\r
+                          SourceY,\r
+                          DestinationX,\r
+                          DestinationY,\r
+                          Width,\r
+                          Height,\r
+                          Delta\r
+                          );\r
       if (EFI_ERROR (Status)) {\r
         ReturnStatus = Status;\r
       } else if (BltOperation == EfiBltVideoToBltBuffer) {\r
@@ -345,11 +344,11 @@ ConSplitterGraphicsOutputBlt (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterUgaDrawGetMode (\r
-  IN  EFI_UGA_DRAW_PROTOCOL           *This,\r
-  OUT UINT32                          *HorizontalResolution,\r
-  OUT UINT32                          *VerticalResolution,\r
-  OUT UINT32                          *ColorDepth,\r
-  OUT UINT32                          *RefreshRate\r
+  IN  EFI_UGA_DRAW_PROTOCOL  *This,\r
+  OUT UINT32                 *HorizontalResolution,\r
+  OUT UINT32                 *VerticalResolution,\r
+  OUT UINT32                 *ColorDepth,\r
+  OUT UINT32                 *RefreshRate\r
   )\r
 {\r
   TEXT_OUT_SPLITTER_PRIVATE_DATA  *Private;\r
@@ -357,13 +356,15 @@ ConSplitterUgaDrawGetMode (
   if ((HorizontalResolution == NULL) ||\r
       (VerticalResolution   == NULL) ||\r
       (RefreshRate          == NULL) ||\r
-      (ColorDepth           == NULL)) {\r
+      (ColorDepth           == NULL))\r
+  {\r
     return EFI_INVALID_PARAMETER;\r
   }\r
+\r
   //\r
   // retrieve private data\r
   //\r
-  Private               = UGA_DRAW_SPLITTER_PRIVATE_DATA_FROM_THIS (This);\r
+  Private = UGA_DRAW_SPLITTER_PRIVATE_DATA_FROM_THIS (This);\r
 \r
   *HorizontalResolution = Private->UgaHorizontalResolution;\r
   *VerticalResolution   = Private->UgaVerticalResolution;\r
@@ -373,7 +374,6 @@ ConSplitterUgaDrawGetMode (
   return EFI_SUCCESS;\r
 }\r
 \r
-\r
 /**\r
   Set the current video mode information.\r
 \r
@@ -391,22 +391,22 @@ ConSplitterUgaDrawGetMode (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterUgaDrawSetMode (\r
-  IN  EFI_UGA_DRAW_PROTOCOL           *This,\r
-  IN UINT32                           HorizontalResolution,\r
-  IN UINT32                           VerticalResolution,\r
-  IN UINT32                           ColorDepth,\r
-  IN UINT32                           RefreshRate\r
+  IN  EFI_UGA_DRAW_PROTOCOL  *This,\r
+  IN UINT32                  HorizontalResolution,\r
+  IN UINT32                  VerticalResolution,\r
+  IN UINT32                  ColorDepth,\r
+  IN UINT32                  RefreshRate\r
   )\r
 {\r
-  EFI_STATUS                             Status;\r
-  TEXT_OUT_SPLITTER_PRIVATE_DATA         *Private;\r
-  UINTN                                  Index;\r
-  EFI_STATUS                             ReturnStatus;\r
-  EFI_GRAPHICS_OUTPUT_PROTOCOL           *GraphicsOutput;\r
-  UINTN                                  NumberIndex;\r
-  UINTN                                  SizeOfInfo;\r
-  EFI_GRAPHICS_OUTPUT_MODE_INFORMATION   *Info;\r
-  EFI_UGA_DRAW_PROTOCOL                  *UgaDraw;\r
+  EFI_STATUS                            Status;\r
+  TEXT_OUT_SPLITTER_PRIVATE_DATA        *Private;\r
+  UINTN                                 Index;\r
+  EFI_STATUS                            ReturnStatus;\r
+  EFI_GRAPHICS_OUTPUT_PROTOCOL          *GraphicsOutput;\r
+  UINTN                                 NumberIndex;\r
+  UINTN                                 SizeOfInfo;\r
+  EFI_GRAPHICS_OUTPUT_MODE_INFORMATION  *Info;\r
+  EFI_UGA_DRAW_PROTOCOL                 *UgaDraw;\r
 \r
   Private = UGA_DRAW_SPLITTER_PRIVATE_DATA_FROM_THIS (This);\r
 \r
@@ -415,47 +415,48 @@ ConSplitterUgaDrawSetMode (
   //\r
   // Update the Mode data\r
   //\r
-  Private->UgaHorizontalResolution  = HorizontalResolution;\r
-  Private->UgaVerticalResolution    = VerticalResolution;\r
-  Private->UgaColorDepth            = ColorDepth;\r
-  Private->UgaRefreshRate           = RefreshRate;\r
+  Private->UgaHorizontalResolution = HorizontalResolution;\r
+  Private->UgaVerticalResolution   = VerticalResolution;\r
+  Private->UgaColorDepth           = ColorDepth;\r
+  Private->UgaRefreshRate          = RefreshRate;\r
 \r
   //\r
   // return the worst status met\r
   //\r
   for (Index = 0; Index < Private->CurrentNumberOfConsoles; Index++) {\r
-\r
     GraphicsOutput = Private->TextOutList[Index].GraphicsOutput;\r
     if (GraphicsOutput != NULL) {\r
       //\r
       // Find corresponding ModeNumber of this GraphicsOutput instance\r
       //\r
-      for (NumberIndex = 0; NumberIndex < GraphicsOutput->Mode->MaxMode; NumberIndex ++) {\r
-        Status = GraphicsOutput->QueryMode (GraphicsOutput, (UINT32) NumberIndex, &SizeOfInfo, &Info);\r
+      for (NumberIndex = 0; NumberIndex < GraphicsOutput->Mode->MaxMode; NumberIndex++) {\r
+        Status = GraphicsOutput->QueryMode (GraphicsOutput, (UINT32)NumberIndex, &SizeOfInfo, &Info);\r
         if (EFI_ERROR (Status)) {\r
           return Status;\r
         }\r
+\r
         if ((Info->HorizontalResolution == HorizontalResolution) && (Info->VerticalResolution == VerticalResolution)) {\r
           FreePool (Info);\r
           break;\r
         }\r
+\r
         FreePool (Info);\r
       }\r
 \r
-      Status = GraphicsOutput->SetMode (GraphicsOutput, (UINT32) NumberIndex);\r
+      Status = GraphicsOutput->SetMode (GraphicsOutput, (UINT32)NumberIndex);\r
       if (EFI_ERROR (Status)) {\r
         ReturnStatus = Status;\r
       }\r
-    } else if (FeaturePcdGet (PcdUgaConsumeSupport)){\r
+    } else if (FeaturePcdGet (PcdUgaConsumeSupport)) {\r
       UgaDraw = Private->TextOutList[Index].UgaDraw;\r
       if (UgaDraw != NULL) {\r
         Status = UgaDraw->SetMode (\r
-                          UgaDraw,\r
-                          HorizontalResolution,\r
-                          VerticalResolution,\r
-                          ColorDepth,\r
-                          RefreshRate\r
-                          );\r
+                            UgaDraw,\r
+                            HorizontalResolution,\r
+                            VerticalResolution,\r
+                            ColorDepth,\r
+                            RefreshRate\r
+                            );\r
         if (EFI_ERROR (Status)) {\r
           ReturnStatus = Status;\r
         }\r
@@ -466,7 +467,6 @@ ConSplitterUgaDrawSetMode (
   return ReturnStatus;\r
 }\r
 \r
-\r
 /**\r
   Blt a rectangle of pixels on the graphics screen.\r
 \r
@@ -519,16 +519,16 @@ ConSplitterUgaDrawSetMode (
 EFI_STATUS\r
 EFIAPI\r
 ConSplitterUgaDrawBlt (\r
-  IN  EFI_UGA_DRAW_PROTOCOL                         *This,\r
-  IN  EFI_UGA_PIXEL                                 *BltBuffer  OPTIONAL,\r
-  IN  EFI_UGA_BLT_OPERATION                         BltOperation,\r
-  IN  UINTN                                         SourceX,\r
-  IN  UINTN                                         SourceY,\r
-  IN  UINTN                                         DestinationX,\r
-  IN  UINTN                                         DestinationY,\r
-  IN  UINTN                                         Width,\r
-  IN  UINTN                                         Height,\r
-  IN  UINTN                                         Delta         OPTIONAL\r
+  IN  EFI_UGA_DRAW_PROTOCOL  *This,\r
+  IN  EFI_UGA_PIXEL          *BltBuffer  OPTIONAL,\r
+  IN  EFI_UGA_BLT_OPERATION  BltOperation,\r
+  IN  UINTN                  SourceX,\r
+  IN  UINTN                  SourceY,\r
+  IN  UINTN                  DestinationX,\r
+  IN  UINTN                  DestinationY,\r
+  IN  UINTN                  Width,\r
+  IN  UINTN                  Height,\r
+  IN  UINTN                  Delta         OPTIONAL\r
   )\r
 {\r
   EFI_STATUS                      Status;\r
@@ -547,17 +547,17 @@ ConSplitterUgaDrawBlt (
     GraphicsOutput = Private->TextOutList[Index].GraphicsOutput;\r
     if (GraphicsOutput != NULL) {\r
       Status = GraphicsOutput->Blt (\r
-                              GraphicsOutput,\r
-                              (EFI_GRAPHICS_OUTPUT_BLT_PIXEL *) BltBuffer,\r
-                              (EFI_GRAPHICS_OUTPUT_BLT_OPERATION) BltOperation,\r
-                              SourceX,\r
-                              SourceY,\r
-                              DestinationX,\r
-                              DestinationY,\r
-                              Width,\r
-                              Height,\r
-                              Delta\r
-                              );\r
+                                 GraphicsOutput,\r
+                                 (EFI_GRAPHICS_OUTPUT_BLT_PIXEL *)BltBuffer,\r
+                                 (EFI_GRAPHICS_OUTPUT_BLT_OPERATION)BltOperation,\r
+                                 SourceX,\r
+                                 SourceY,\r
+                                 DestinationX,\r
+                                 DestinationY,\r
+                                 Width,\r
+                                 Height,\r
+                                 Delta\r
+                                 );\r
       if (EFI_ERROR (Status)) {\r
         ReturnStatus = Status;\r
       } else if (BltOperation == EfiUgaVideoToBltBuffer) {\r
@@ -568,7 +568,7 @@ ConSplitterUgaDrawBlt (
       }\r
     }\r
 \r
-    if (Private->TextOutList[Index].UgaDraw != NULL && FeaturePcdGet (PcdUgaConsumeSupport)) {\r
+    if ((Private->TextOutList[Index].UgaDraw != NULL) && FeaturePcdGet (PcdUgaConsumeSupport)) {\r
       Status = Private->TextOutList[Index].UgaDraw->Blt (\r
                                                       Private->TextOutList[Index].UgaDraw,\r
                                                       BltBuffer,\r
@@ -613,7 +613,7 @@ TextOutSetMode (
   // been checked in ConSplitterTextOutSetCursorPosition. And (0, 0) should\r
   // always be supported.\r
   //\r
-  Private->TextOutMode.Mode          = (INT32) ModeNumber;\r
+  Private->TextOutMode.Mode          = (INT32)ModeNumber;\r
   Private->TextOutMode.CursorColumn  = 0;\r
   Private->TextOutMode.CursorRow     = 0;\r
   Private->TextOutMode.CursorVisible = TRUE;\r