[edk2-devel] [Patch v2 04/11] EmulatorPkg: Remove All UGA Support

Ni, Ray ray.ni at intel.com
Fri Jul 15 02:23:06 UTC 2022


Guomin,
Did you try booting the Emulator Win and Linux with this change?

> -----Original Message-----
> From: Jiang, Guomin <guomin.jiang at intel.com>
> Sent: Friday, July 15, 2022 9:51 AM
> To: devel at edk2.groups.io
> Cc: GuoMinJ <newexplorerj at gmail.com>; Andrew Fish <afish at apple.com>; Ni, Ray <ray.ni at intel.com>
> Subject: [Patch v2 04/11] EmulatorPkg: Remove All UGA Support
> 
> From: GuoMinJ <newexplorerj at gmail.com>
> 
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2368
> 
> Remove All UGA Support in EmulatorPkg.
> 
> Signed-off-by: Guomin Jiang <guomin.jiang at intel.com>
> Cc: Andrew Fish <afish at apple.com>
> Cc: Ray Ni <ray.ni at intel.com>
> ---
>  EmulatorPkg/EmuGopDxe/Gop.h                   | 10 +--
>  EmulatorPkg/EmuGopDxe/GopScreen.c             | 14 ++--
>  EmulatorPkg/Include/Protocol/EmuFileSystem.h  | 24 +++---
>  .../Include/Protocol/EmuGraphicsWindow.h      | 18 ++--
>  .../Library/PlatformBmLib/PlatformBm.h        |  4 +-
>  .../Library/PlatformBmLib/PlatformBmData.c    |  6 +-
>  EmulatorPkg/Unix/Host/Gasket.h                | 12 +--
>  EmulatorPkg/Unix/Host/Host.h                  |  3 +-
>  EmulatorPkg/Unix/Host/Ia32/Gasket.S           |  2 +-
>  EmulatorPkg/Unix/Host/X11GraphicsWindow.c     | 82 +++++++++----------
>  EmulatorPkg/Unix/Host/X64/Gasket.S            |  2 +-
>  EmulatorPkg/Win/Host/WinGopScreen.c           | 10 +--
>  12 files changed, 92 insertions(+), 95 deletions(-)
> 
> diff --git a/EmulatorPkg/EmuGopDxe/Gop.h b/EmulatorPkg/EmuGopDxe/Gop.h
> index 7f7dc4e8eb9f..59ebfda912eb 100644
> --- a/EmulatorPkg/EmuGopDxe/Gop.h
> +++ b/EmulatorPkg/EmuGopDxe/Gop.h
> @@ -1,13 +1,13 @@
>  /*++ @file
> 
> -Copyright (c) 2006 - 2008, Intel Corporation. All rights reserved.<BR>
> +Copyright (c) 2006 - 2022, Intel Corporation. All rights reserved.<BR>
>  Portions copyright (c) 2010,Apple Inc. All rights reserved.<BR>
>  SPDX-License-Identifier: BSD-2-Clause-Patent
> 
>  **/
> 
> -#ifndef __UGA_H_
> -#define __UGA_H_
> +#ifndef GOP_H_
> +#define GOP_H_
> 
>  #include <PiDxe.h>
> 
> @@ -60,8 +60,6 @@ typedef struct {
>  extern EFI_DRIVER_BINDING_PROTOCOL  gEmuGopDriverBinding;
>  extern EFI_COMPONENT_NAME_PROTOCOL  gEmuGopComponentName;
> 
> -#define EMU_UGA_CLASS_NAME  L"EmuGopWindow"
> -
>  #define GOP_PRIVATE_DATA_SIGNATURE  SIGNATURE_32 ('G', 'o', 'p', 'N')
>  typedef struct {
>    UINT64                               Signature;
> @@ -83,7 +81,7 @@ typedef struct {
>    GOP_MODE_DATA                        *ModeData;
> 
>    //
> -  // UGA Private Data knowing when to start hardware
> +  // Private Data knowing when to start hardware
>    //
>    BOOLEAN                              HardwareNeedsStarting;
> 
> diff --git a/EmulatorPkg/EmuGopDxe/GopScreen.c b/EmulatorPkg/EmuGopDxe/GopScreen.c
> index 88d95b88e162..113b496861b4 100644
> --- a/EmulatorPkg/EmuGopDxe/GopScreen.c
> +++ b/EmulatorPkg/EmuGopDxe/GopScreen.c
> @@ -10,7 +10,7 @@ Module Name:
> 
>  Abstract:
> 
> -  This file produces the graphics abstration of UGA. It is called by
> +  This file produces the graphics abstration of GOP. It is called by
>    EmuGopDriver.c file which deals with the EFI 1.1 driver model.
>    This file just does graphics.
> 
> @@ -209,7 +209,7 @@ EmuGopBlt (
>    // the number of bytes in each row can be computed.
>    //
>    if (Delta == 0) {
> -    Delta = Width * sizeof (EFI_UGA_PIXEL);
> +    Delta = Width * sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL);
>    }
> 
>    //
> @@ -220,8 +220,8 @@ EmuGopBlt (
>    OriginalTPL = gBS->RaiseTPL (TPL_NOTIFY);
> 
>    //
> -  // Pack UGA Draw protocol parameters to EMU_GRAPHICS_WINDOWS__BLT_ARGS structure to adapt to
> -  // GopBlt() API of Unix UGA IO protocol.
> +  // Pack GOP protocol parameters to EMU_GRAPHICS_WINDOWS__BLT_ARGS structure to adapt to
> +  // GopBlt() API of GOP protocol.
>    //
>    GopBltArgs.DestinationX = DestinationX;
>    GopBltArgs.DestinationY = DestinationY;
> @@ -232,8 +232,8 @@ EmuGopBlt (
>    GopBltArgs.Delta        = Delta;
>    Status                  = Private->EmuGraphicsWindow->Blt (
>                                                            Private->EmuGraphicsWindow,
> -                                                          (EFI_UGA_PIXEL *)BltBuffer,
> -                                                          (EFI_UGA_BLT_OPERATION)BltOperation,
> +                                                          BltBuffer,
> +                                                          BltOperation,
>                                                            &GopBltArgs
>                                                            );
> 
> @@ -384,7 +384,7 @@ ShutdownGopEvent (
> 
>  Routine Description:
> 
> -  This is the UGA screen's callback notification function for exit-boot-services.
> +  This is the screen's callback notification function for exit-boot-services.
>    All we do here is call EmuGopDestructor().
> 
>  Arguments:
> diff --git a/EmulatorPkg/Include/Protocol/EmuFileSystem.h b/EmulatorPkg/Include/Protocol/EmuFileSystem.h
> index 15de43ac022e..062508fafc9d 100644
> --- a/EmulatorPkg/Include/Protocol/EmuFileSystem.h
> +++ b/EmulatorPkg/Include/Protocol/EmuFileSystem.h
> @@ -7,19 +7,19 @@
> 
>    UEFI 2.0 can boot from any valid EFI image contained in a SimpleFileSystem.
> 
> -Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>
> +Copyright (c) 2006 - 2022, Intel Corporation. All rights reserved.<BR>
>  Portions copyright (c) 2011, Apple Inc. All rights reserved.
>  SPDX-License-Identifier: BSD-2-Clause-Patent
> 
>  **/
> 
> -#ifndef _EMU_UGA_IO_H_
> -#define _EMU_UGA_IO_H_
> +#ifndef EMU_GRAPHICS_WINDOW_H_
> +#define EMU_GRAPHICS_WINDOW_H_
> 
>  #include <Protocol/SimplePointer.h>
>  #include <Protocol/SimpleTextIn.h>
>  #include <Protocol/SimpleTextInEx.h>
> -#include <Protocol/UgaDraw.h>
> +#include <Protocol/GraphicsOutput.h>
> 
>  #define EMU_GRAPHICS_WINDOW_PROTOCOL_GUID \
>   { 0x30FD316A, 0x6728, 0x2E41, { 0xA6, 0x90, 0x0D, 0x13, 0x33, 0xD8, 0xCA, 0xC1 } }
> @@ -29,13 +29,13 @@ typedef struct _EMU_GRAPHICS_WINDOW_PROTOCOL EMU_GRAPHICS_WINDOW_PROTOCOL;
>  typedef
>  EFI_STATUS
>  (EFIAPI *EMU_GRAPHICS_WINDOWS_CLOSE)(
> -  EMU_GRAPHICS_WINDOW_PROTOCOL *Uga
> +  EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindows
>    );
> 
>  typedef
>  EFI_STATUS
>  (EFIAPI *EMU_GRAPHICS_WINDOWS_SIZE)(
> -  EMU_GRAPHICS_WINDOW_PROTOCOL  *Uga,
> +  EMU_GRAPHICS_WINDOW_PROTOCOL  *GraphicsWindows,
>    UINT32                        Width,
>    UINT32                        Height
>    );
> @@ -43,13 +43,13 @@ EFI_STATUS
>  typedef
>  EFI_STATUS
>  (EFIAPI *EMU_GRAPHICS_WINDOWS_CHECK_KEY)(
> -  EMU_GRAPHICS_WINDOW_PROTOCOL *Uga
> +  EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindows
>    );
> 
>  typedef
>  EFI_STATUS
>  (EFIAPI *EMU_GRAPHICS_WINDOWS_GET_KEY)(
> -  EMU_GRAPHICS_WINDOW_PROTOCOL  *Uga,
> +  EMU_GRAPHICS_WINDOW_PROTOCOL  *GraphicsWindows,
>    EFI_KEY_DATA                  *key
>    );
> 
> @@ -88,10 +88,10 @@ typedef struct {
>  typedef
>  EFI_STATUS
>  (EFIAPI *EMU_GRAPHICS_WINDOWS_BLT)(
> -  IN  EMU_GRAPHICS_WINDOW_PROTOCOL            *GraphicsWindows,
> -  IN  EFI_UGA_PIXEL                           *BltBuffer OPTIONAL,
> -  IN  EFI_UGA_BLT_OPERATION                   BltOperation,
> -  IN  EMU_GRAPHICS_WINDOWS__BLT_ARGS          *Args
> +  IN  EMU_GRAPHICS_WINDOW_PROTOCOL       *GraphicsWindows,
> +  IN  EFI_GRAPHICS_OUTPUT_BLT_PIXEL      *BltBuffer OPTIONAL,
> +  IN  EFI_GRAPHICS_OUTPUT_BLT_OPERATION  BltOperation,
> +  IN  EMU_GRAPHICS_WINDOWS__BLT_ARGS     *Args
>    );
> 
>  typedef
> diff --git a/EmulatorPkg/Include/Protocol/EmuGraphicsWindow.h
> b/EmulatorPkg/Include/Protocol/EmuGraphicsWindow.h
> index 7c495b25eb1b..ed7b71611f90 100644
> --- a/EmulatorPkg/Include/Protocol/EmuGraphicsWindow.h
> +++ b/EmulatorPkg/Include/Protocol/EmuGraphicsWindow.h
> @@ -6,13 +6,13 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
> 
>  **/
> 
> -#ifndef _EMU_UGA_IO_H_
> -#define _EMU_UGA_IO_H_
> +#ifndef EMU_GRAPHICS_WINDOW_H_
> +#define EMU_GRAPHICS_WINDOW_H_
> 
>  #include <Protocol/SimplePointer.h>
>  #include <Protocol/SimpleTextIn.h>
>  #include <Protocol/SimpleTextInEx.h>
> -#include <Protocol/UgaDraw.h>
> +#include <Protocol/GraphicsOutput.h>
> 
>  #define EMU_GRAPHICS_WINDOW_PROTOCOL_GUID \
>   { 0x30FD316A, 0x6728, 0x2E41, { 0xA6, 0x90, 0x0D, 0x13, 0x33, 0xD8, 0xCA, 0xC1 } }
> @@ -22,13 +22,13 @@ typedef struct _EMU_GRAPHICS_WINDOW_PROTOCOL EMU_GRAPHICS_WINDOW_PROTOCOL;
>  typedef
>  EFI_STATUS
>  (EFIAPI *EMU_GRAPHICS_WINDOWS_CLOSE)(
> -  EMU_GRAPHICS_WINDOW_PROTOCOL *Uga
> +  EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindow
>    );
> 
>  typedef
>  EFI_STATUS
>  (EFIAPI *EMU_GRAPHICS_WINDOWS_SIZE)(
> -  EMU_GRAPHICS_WINDOW_PROTOCOL  *Uga,
> +  EMU_GRAPHICS_WINDOW_PROTOCOL  *GraphicsWindow,
>    UINT32                        Width,
>    UINT32                        Height
>    );
> @@ -36,13 +36,13 @@ EFI_STATUS
>  typedef
>  EFI_STATUS
>  (EFIAPI *EMU_GRAPHICS_WINDOWS_CHECK_KEY)(
> -  EMU_GRAPHICS_WINDOW_PROTOCOL *Uga
> +  EMU_GRAPHICS_WINDOW_PROTOCOL *GraphicsWindow
>    );
> 
>  typedef
>  EFI_STATUS
>  (EFIAPI *EMU_GRAPHICS_WINDOWS_GET_KEY)(
> -  EMU_GRAPHICS_WINDOW_PROTOCOL  *Uga,
> +  EMU_GRAPHICS_WINDOW_PROTOCOL  *GraphicsWindow,
>    EFI_KEY_DATA                  *key
>    );
> 
> @@ -83,8 +83,8 @@ typedef
>  EFI_STATUS
>  (EFIAPI *EMU_GRAPHICS_WINDOWS_BLT)(
>    IN  EMU_GRAPHICS_WINDOW_PROTOCOL            *GraphicsWindows,
> -  IN  EFI_UGA_PIXEL                           *BltBuffer OPTIONAL,
> -  IN  EFI_UGA_BLT_OPERATION                   BltOperation,
> +  IN  EFI_GRAPHICS_OUTPUT_BLT_PIXEL           *BltBuffer OPTIONAL,
> +  IN  EFI_GRAPHICS_OUTPUT_BLT_OPERATION       BltOperation,
>    IN  EMU_GRAPHICS_WINDOWS__BLT_ARGS          *Args
>    );
> 
> diff --git a/EmulatorPkg/Library/PlatformBmLib/PlatformBm.h b/EmulatorPkg/Library/PlatformBmLib/PlatformBm.h
> index b89ffd77e4de..462049e2b048 100644
> --- a/EmulatorPkg/Library/PlatformBmLib/PlatformBm.h
> +++ b/EmulatorPkg/Library/PlatformBmLib/PlatformBm.h
> @@ -1,6 +1,6 @@
>  /*++ @file
> 
> -Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
> +Copyright (c) 2006 - 2022, Intel Corporation. All rights reserved.<BR>
>  Portions copyright (c) 2011, Apple Inc. All rights reserved.
>  SPDX-License-Identifier: BSD-2-Clause-Patent
> 
> @@ -60,7 +60,7 @@ typedef struct {
>    EMU_VENDOR_DEVICE_PATH_NODE    EmuBus;
>    EMU_VENDOR_DEVICE_PATH_NODE    EmuGraphicsWindow;
>    EFI_DEVICE_PATH_PROTOCOL       End;
> -} EMU_PLATFORM_UGA_DEVICE_PATH;
> +} EMU_PLATFORM_GRAPHICS_WINDOW_DEVICE_PATH;
> 
>  //
>  // Platform BDS Functions
> diff --git a/EmulatorPkg/Library/PlatformBmLib/PlatformBmData.c
> b/EmulatorPkg/Library/PlatformBmLib/PlatformBmData.c
> index efb03def37eb..b69c4728d1a7 100644
> --- a/EmulatorPkg/Library/PlatformBmLib/PlatformBmData.c
> +++ b/EmulatorPkg/Library/PlatformBmLib/PlatformBmData.c
> @@ -1,6 +1,6 @@
>  /*++ @file
> 
> -Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
> +Copyright (c) 2006 - 2022, Intel Corporation. All rights reserved.<BR>
>  Portions copyright (c) 2011, Apple Inc. All rights reserved.
>  SPDX-License-Identifier: BSD-2-Clause-Patent
> 
> @@ -8,7 +8,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
> 
>  #include "PlatformBm.h"
> 
> -EMU_PLATFORM_UGA_DEVICE_PATH  gGopDevicePath = {
> +EMU_PLATFORM_GRAPHICS_WINDOW_DEVICE_PATH  gGopDevicePath = {
>    {
>      {
>        {
> @@ -40,7 +40,7 @@ EMU_PLATFORM_UGA_DEVICE_PATH  gGopDevicePath = {
>    gEndEntire
>  };
> 
> -EMU_PLATFORM_UGA_DEVICE_PATH  gGopDevicePath2 = {
> +EMU_PLATFORM_GRAPHICS_WINDOW_DEVICE_PATH  gGopDevicePath2 = {
>    {
>      {
>        {
> diff --git a/EmulatorPkg/Unix/Host/Gasket.h b/EmulatorPkg/Unix/Host/Gasket.h
> index 6dafc903cfce..1ffdfb334524 100644
> --- a/EmulatorPkg/Unix/Host/Gasket.h
> +++ b/EmulatorPkg/Unix/Host/Gasket.h
> @@ -1,7 +1,7 @@
>  /** @file
> 
>    Copyright (c) 2008 - 2011, Apple Inc. All rights reserved.<BR>
> -  Copyright (c) 2011 - 2019, Intel Corporation. All rights reserved.<BR>
> +  Copyright (c) 2011 - 2022, Intel Corporation. All rights reserved.<BR>
> 
>    SPDX-License-Identifier: BSD-2-Clause-Patent
> 
> @@ -200,7 +200,7 @@ ReverseGasketUint64Uint64 (
>    );
> 
>  //
> -// Gasket functions for EFI_EMU_UGA_IO_PROTOCOL
> +// Gasket functions for EFI_EMU_GRAPHICS_WINDOW_PROTOCOL
>  //
> 
>  EFI_STATUS
> @@ -243,10 +243,10 @@ GasketX11RegisterKeyNotify (
>  EFI_STATUS
>  EFIAPI
>  GasketX11Blt (
> -  IN  EMU_GRAPHICS_WINDOW_PROTOCOL    *GraphicsWindows,
> -  IN  EFI_UGA_PIXEL                   *BltBuffer OPTIONAL,
> -  IN  EFI_UGA_BLT_OPERATION           BltOperation,
> -  IN  EMU_GRAPHICS_WINDOWS__BLT_ARGS  *Args
> +  IN  EMU_GRAPHICS_WINDOW_PROTOCOL       *GraphicsWindows,
> +  IN  EFI_GRAPHICS_OUTPUT_BLT_PIXEL      *BltBuffer OPTIONAL,
> +  IN  EFI_GRAPHICS_OUTPUT_BLT_OPERATION  BltOperation,
> +  IN  EMU_GRAPHICS_WINDOWS__BLT_ARGS     *Args
>    );
> 
>  EFI_STATUS
> diff --git a/EmulatorPkg/Unix/Host/Host.h b/EmulatorPkg/Unix/Host/Host.h
> index 0c81cdfc01f5..ff30f5dce567 100644
> --- a/EmulatorPkg/Unix/Host/Host.h
> +++ b/EmulatorPkg/Unix/Host/Host.h
> @@ -1,6 +1,6 @@
>  /*++ @file
> 
> -Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.<BR>
> +Copyright (c) 2006 - 2022, Intel Corporation. All rights reserved.<BR>
>  Portions copyright (c) 2008 - 2011, Apple Inc. All rights reserved.<BR>
> 
>  SPDX-License-Identifier: BSD-2-Clause-Patent
> @@ -106,7 +106,6 @@ SPDX-License-Identifier: BSD-2-Clause-Patent
>  #include <Protocol/SimplePointer.h>
>  #include <Protocol/SimpleTextIn.h>
>  #include <Protocol/SimpleTextInEx.h>
> -#include <Protocol/UgaDraw.h>
>  #include <Protocol/SimpleFileSystem.h>
> 
>  #include <Protocol/EmuThunk.h>
> diff --git a/EmulatorPkg/Unix/Host/Ia32/Gasket.S b/EmulatorPkg/Unix/Host/Ia32/Gasket.S
> index 36197ff26028..6fcdd265cf30 100644
> --- a/EmulatorPkg/Unix/Host/Ia32/Gasket.S
> +++ b/EmulatorPkg/Unix/Host/Ia32/Gasket.S
> @@ -371,7 +371,7 @@ ASM_PFX(GasketSecEmuThunkAddress):
>    ret
> 
>  //
> -// Gasket functions for EFI_EMU_UGA_IO_PROTOCOL
> +// Gasket functions for EFI_EMU_GRAPHICS_WINDOW_PROTOCOL
>  //
> 
>  ASM_GLOBAL ASM_PFX(GasketX11Size)
> diff --git a/EmulatorPkg/Unix/Host/X11GraphicsWindow.c b/EmulatorPkg/Unix/Host/X11GraphicsWindow.c
> index a30cc19dbe0a..b3880e198855 100644
> --- a/EmulatorPkg/Unix/Host/X11GraphicsWindow.c
> +++ b/EmulatorPkg/Unix/Host/X11GraphicsWindow.c
> @@ -1,6 +1,6 @@
>  /*++ @file
> 
> -Copyright (c) 2004 - 2019, Intel Corporation. All rights reserved.<BR>
> +Copyright (c) 2004 - 2022, Intel Corporation. All rights reserved.<BR>
>  Portions copyright (c) 2008 - 2011, Apple Inc. All rights reserved.<BR>
> 
>  SPDX-License-Identifier: BSD-2-Clause-Patent
> @@ -700,8 +700,8 @@ HandleEvents (
> 
>  unsigned long
>  X11PixelToColor (
> -  IN  GRAPHICS_IO_PRIVATE  *Drv,
> -  IN  EFI_UGA_PIXEL        pixel
> +  IN  GRAPHICS_IO_PRIVATE            *Drv,
> +  IN  EFI_GRAPHICS_OUTPUT_BLT_PIXEL  pixel
>    )
>  {
>    return ((pixel.Red   >> Drv->r.csize) << Drv->r.shift)
> @@ -709,15 +709,15 @@ X11PixelToColor (
>           | ((pixel.Blue  >> Drv->b.csize) << Drv->b.shift);
>  }
> 
> -EFI_UGA_PIXEL
> +EFI_GRAPHICS_OUTPUT_BLT_PIXEL
>  X11ColorToPixel (
>    IN  GRAPHICS_IO_PRIVATE  *Drv,
>    IN  unsigned long        val
>    )
>  {
> -  EFI_UGA_PIXEL  Pixel;
> +  EFI_GRAPHICS_OUTPUT_BLT_PIXEL  Pixel;
> 
> -  memset (&Pixel, 0, sizeof (EFI_UGA_PIXEL));
> +  memset (&Pixel, 0, sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL));
> 
>    // Truncation not an issue since X11 and EFI are both using 8 bits per color
>    Pixel.Red   =   (val >> Drv->r.shift) << Drv->r.csize;
> @@ -782,7 +782,7 @@ X11KeySetState (
>      if ((Drv->KeyState.KeyToggleState & EFI_CAPS_LOCK_ACTIVE) == 0) {
>        //
>        // We could create an XKeyEvent and send a XK_Caps_Lock to
> -      // the UGA/GOP Window
> +      // the GOP Window
>        //
>      }
>    }
> @@ -812,32 +812,32 @@ X11RegisterKeyNotify (
> 
>  EFI_STATUS
>  X11Blt (
> -  IN EMU_GRAPHICS_WINDOW_PROTOCOL     *GraphicsIo,
> -  IN  EFI_UGA_PIXEL                   *BltBuffer OPTIONAL,
> -  IN  EFI_UGA_BLT_OPERATION           BltOperation,
> -  IN  EMU_GRAPHICS_WINDOWS__BLT_ARGS  *Args
> +  IN  EMU_GRAPHICS_WINDOW_PROTOCOL       *GraphicsIo,
> +  IN  EFI_GRAPHICS_OUTPUT_BLT_PIXEL      *BltBuffer OPTIONAL,
> +  IN  EFI_GRAPHICS_OUTPUT_BLT_OPERATION  BltOperation,
> +  IN  EMU_GRAPHICS_WINDOWS__BLT_ARGS     *Args
>    )
>  {
> -  GRAPHICS_IO_PRIVATE  *Private;
> -  UINTN                DstY;
> -  UINTN                SrcY;
> -  UINTN                DstX;
> -  UINTN                SrcX;
> -  UINTN                Index;
> -  EFI_UGA_PIXEL        *Blt;
> -  UINT8                *Dst;
> -  UINT8                *Src;
> -  UINTN                Nbr;
> -  unsigned long        Color;
> -  XEvent               ev;
> +  GRAPHICS_IO_PRIVATE            *Private;
> +  UINTN                          DstY;
> +  UINTN                          SrcY;
> +  UINTN                          DstX;
> +  UINTN                          SrcX;
> +  UINTN                          Index;
> +  EFI_GRAPHICS_OUTPUT_BLT_PIXEL  *Blt;
> +  UINT8                          *Dst;
> +  UINT8                          *Src;
> +  UINTN                          Nbr;
> +  unsigned long                  Color;
> +  XEvent                         ev;
> 
>    Private = (GRAPHICS_IO_PRIVATE *)GraphicsIo;
> 
>    //
>    //  Check bounds
>    //
> -  if (  (BltOperation == EfiUgaVideoToBltBuffer)
> -     || (BltOperation == EfiUgaVideoToVideo))
> +  if (  (BltOperation == EfiBltVideoToBltBuffer)
> +     || (BltOperation == EfiBltVideoToVideo))
>    {
>      //
>      // Source is Video.
> @@ -851,9 +851,9 @@ X11Blt (
>      }
>    }
> 
> -  if (  (BltOperation == EfiUgaBltBufferToVideo)
> -     || (BltOperation == EfiUgaVideoToVideo)
> -     || (BltOperation == EfiUgaVideoFill))
> +  if (  (BltOperation == EfiBltBufferToVideo)
> +     || (BltOperation == EfiBltVideoToVideo)
> +     || (BltOperation == EfiBltVideoFill))
>    {
>      //
>      // Destination is Video
> @@ -868,32 +868,32 @@ X11Blt (
>    }
> 
>    switch (BltOperation) {
> -    case EfiUgaVideoToBltBuffer:
> -      Blt          = (EFI_UGA_PIXEL *)((UINT8 *)BltBuffer + (Args->DestinationY * Args->Delta) + Args->DestinationX * sizeof
> (EFI_UGA_PIXEL));
> -      Args->Delta -= Args->Width * sizeof (EFI_UGA_PIXEL);
> +    case EfiBltVideoToBltBuffer:
> +      Blt          = (EFI_GRAPHICS_OUTPUT_BLT_PIXEL *)((UINT8 *)BltBuffer + (Args->DestinationY * Args->Delta) + Args-
> >DestinationX * sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL));
> +      Args->Delta -= Args->Width * sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL);
>        for (SrcY = Args->SourceY; SrcY < (Args->Height + Args->SourceY); SrcY++) {
>          for (SrcX = Args->SourceX; SrcX < (Args->Width + Args->SourceX); SrcX++) {
>            *Blt++ = X11ColorToPixel (Private, XGetPixel (Private->image, SrcX, SrcY));
>          }
> 
> -        Blt = (EFI_UGA_PIXEL *)((UINT8 *)Blt + Args->Delta);
> +        Blt = (EFI_GRAPHICS_OUTPUT_BLT_PIXEL *)((UINT8 *)Blt + Args->Delta);
>        }
> 
>        break;
> -    case EfiUgaBltBufferToVideo:
> -      Blt          = (EFI_UGA_PIXEL *)((UINT8 *)BltBuffer + (Args->SourceY * Args->Delta) + Args->SourceX * sizeof
> (EFI_UGA_PIXEL));
> -      Args->Delta -= Args->Width * sizeof (EFI_UGA_PIXEL);
> +    case EfiBltBufferToVideo:
> +      Blt          = (EFI_GRAPHICS_OUTPUT_BLT_PIXEL *)((UINT8 *)BltBuffer + (Args->SourceY * Args->Delta) + Args-
> >SourceX * sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL));
> +      Args->Delta -= Args->Width * sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL);
>        for (DstY = Args->DestinationY; DstY < (Args->Height + Args->DestinationY); DstY++) {
>          for (DstX = Args->DestinationX; DstX < (Args->Width + Args->DestinationX); DstX++) {
>            XPutPixel (Private->image, DstX, DstY, X11PixelToColor (Private, *Blt));
>            Blt++;
>          }
> 
> -        Blt = (EFI_UGA_PIXEL *)((UINT8 *)Blt + Args->Delta);
> +        Blt = (EFI_GRAPHICS_OUTPUT_BLT_PIXEL *)((UINT8 *)Blt + Args->Delta);
>        }
> 
>        break;
> -    case EfiUgaVideoToVideo:
> +    case EfiBltVideoToVideo:
>        Dst = Private->image_data + (Args->DestinationX << Private->pixel_shift)
>              + Args->DestinationY * Private->line_bytes;
>        Src = Private->image_data + (Args->SourceX << Private->pixel_shift)
> @@ -920,7 +920,7 @@ X11Blt (
>        }
> 
>        break;
> -    case EfiUgaVideoFill:
> +    case EfiBltVideoFill:
>        Color = X11PixelToColor (Private, *BltBuffer);
>        for (DstY = Args->DestinationY; DstY < (Args->Height + Args->DestinationY); DstY++) {
>          for (DstX = Args->DestinationX; DstX < (Args->Width + Args->DestinationX); DstX++) {
> @@ -937,7 +937,7 @@ X11Blt (
>    //  Refresh screen.
>    //
>    switch (BltOperation) {
> -    case EfiUgaVideoToVideo:
> +    case EfiBltVideoToVideo:
>        XCopyArea (
>          Private->display,
>          Private->win,
> @@ -960,7 +960,7 @@ X11Blt (
>        }
> 
>        break;
> -    case EfiUgaVideoFill:
> +    case EfiBltVideoFill:
>        Color = X11PixelToColor (Private, *BltBuffer);
>        XSetForeground (Private->display, Private->gc, Color);
>        XFillRectangle (
> @@ -974,7 +974,7 @@ X11Blt (
>          );
>        XFlush (Private->display);
>        break;
> -    case EfiUgaBltBufferToVideo:
> +    case EfiBltBufferToVideo:
>        Redraw (Private, Args->DestinationX, Args->DestinationY, Args->Width, Args->Height);
>        break;
>      default:
> diff --git a/EmulatorPkg/Unix/Host/X64/Gasket.S b/EmulatorPkg/Unix/Host/X64/Gasket.S
> index 030faa8e4c36..1b4614ab618d 100644
> --- a/EmulatorPkg/Unix/Host/X64/Gasket.S
> +++ b/EmulatorPkg/Unix/Host/X64/Gasket.S
> @@ -427,7 +427,7 @@ ASM_PFX(GasketSecEmuThunkAddress):
>    ret
> 
>  //
> -// Gasket functions for EFI_EMU_UGA_IO_PROTOCOL
> +// Gasket functions for EFI_EMU_GRAPHICS_WINDOW_PROTOCOL
>  //
> 
>  ASM_GLOBAL ASM_PFX(GasketX11Size)
> diff --git a/EmulatorPkg/Win/Host/WinGopScreen.c b/EmulatorPkg/Win/Host/WinGopScreen.c
> index 661573d7771c..69abcfc79564 100644
> --- a/EmulatorPkg/Win/Host/WinGopScreen.c
> +++ b/EmulatorPkg/Win/Host/WinGopScreen.c
> @@ -1,6 +1,6 @@
>  /** @file
> 
> -Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>
> +Copyright (c) 2006 - 2022, Intel Corporation. All rights reserved.<BR>
>  SPDX-License-Identifier: BSD-2-Clause-Patent
> 
>  Module Name:
> @@ -396,10 +396,10 @@ WinNtWndSize (
>  // TODO:    Delta - add argument and description to function comment
>  EFI_STATUS
>  WinNtWndBlt (
> -  IN  EMU_GRAPHICS_WINDOW_PROTOCOL    *GraphicsIo,
> -  IN  EFI_UGA_PIXEL                   *BltBuffer OPTIONAL,
> -  IN  EFI_UGA_BLT_OPERATION           BltOperation,
> -  IN  EMU_GRAPHICS_WINDOWS__BLT_ARGS  *Args
> +  IN  EMU_GRAPHICS_WINDOW_PROTOCOL       *GraphicsIo,
> +  IN  EFI_GRAPHICS_OUTPUT_BLT_PIXEL      *BltBuffer OPTIONAL,
> +  IN  EFI_GRAPHICS_OUTPUT_BLT_OPERATION  BltOperation,
> +  IN  EMU_GRAPHICS_WINDOWS__BLT_ARGS     *Args
>    )
>  {
>    RETURN_STATUS          RStatus;
> --
> 2.26.2.windows.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#91405): https://edk2.groups.io/g/devel/message/91405
Mute This Topic: https://groups.io/mt/92393247/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-




More information about the edk2-devel-archive mailing list