From: "Guomin Jiang" <guomin.jiang@intel.com>
To: "Ni, Ray" <ray.ni@intel.com>,
"devel@edk2.groups.io" <devel@edk2.groups.io>
Cc: GuoMinJ <newexplorerj@gmail.com>, Andrew Fish <afish@apple.com>
Subject: Re: [Patch v2 04/11] EmulatorPkg: Remove All UGA Support
Date: Tue, 19 Jul 2022 00:54:15 +0000 [thread overview]
Message-ID: <BL1PR11MB5953101433E8936BC537CE499D8F9@BL1PR11MB5953.namprd11.prod.outlook.com> (raw)
In-Reply-To: <MWHPR11MB1631A2E05F9A243024A31E1C8C8B9@MWHPR11MB1631.namprd11.prod.outlook.com>
Hi Ray,
I tried it yesterday
It can boot normally in Win Emulator.
But I encounter issues mentioned in https://bugzilla.tianocore.org/show_bug.cgi?id=2639 in Unix. I think it is not related to this change.
Thanks
Guomin
> -----Original Message-----
> From: Ni, Ray <ray.ni@intel.com>
> Sent: Friday, July 15, 2022 10:23 AM
> To: Jiang, Guomin <guomin.jiang@intel.com>; devel@edk2.groups.io
> Cc: GuoMinJ <newexplorerj@gmail.com>; Andrew Fish <afish@apple.com>
> Subject: RE: [Patch v2 04/11] EmulatorPkg: Remove All UGA Support
>
> Guomin,
> Did you try booting the Emulator Win and Linux with this change?
>
> > -----Original Message-----
> > From: Jiang, Guomin <guomin.jiang@intel.com>
> > Sent: Friday, July 15, 2022 9:51 AM
> > To: devel@edk2.groups.io
> > Cc: GuoMinJ <newexplorerj@gmail.com>; Andrew Fish
> <afish@apple.com>;
> > Ni, Ray <ray.ni@intel.com>
> > Subject: [Patch v2 04/11] EmulatorPkg: Remove All UGA Support
> >
> > From: GuoMinJ <newexplorerj@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@intel.com>
> > Cc: Andrew Fish <afish@apple.com>
> > Cc: Ray Ni <ray.ni@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
next prev parent reply other threads:[~2022-07-19 0:54 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-15 1:50 [Patch v2 00/11] Remove all UGA support Guomin Jiang
2022-07-15 1:50 ` [Patch v2 01/11] UefiPayloadPkg: Remove All UGA Support Guomin Jiang
2022-07-15 2:21 ` Ni, Ray
2022-07-15 1:50 ` [Patch v2 02/11] ArmVirtPkg: " Guomin Jiang
2022-07-15 9:42 ` Sami Mujawar
2022-07-18 12:23 ` [edk2-devel] " Guomin Jiang
2022-07-18 16:42 ` Sami Mujawar
2022-07-15 1:50 ` [Patch v2 03/11] ArmPkg: " Guomin Jiang
2022-07-15 13:32 ` Sami Mujawar
2022-07-15 1:50 ` [Patch v2 04/11] EmulatorPkg: " Guomin Jiang
2022-07-15 2:23 ` Ni, Ray
2022-07-19 0:54 ` Guomin Jiang [this message]
2022-07-19 0:56 ` Ni, Ray
2022-07-15 1:51 ` [Patch v2 05/11] ShellPkg: " Guomin Jiang
2022-07-15 2:20 ` Ni, Ray
2022-07-15 1:51 ` [Patch v2 06/11] OvmfPkg: " Guomin Jiang
2022-07-15 1:51 ` [Patch v2 07/11] MdeModulePkg/ConSplitterDxe: " Guomin Jiang
2022-07-15 1:51 ` [Patch v2 08/11] MdeModulePkg/GraphicsConsoleDxe: " Guomin Jiang
2022-07-15 1:51 ` [Patch v2 09/11] MdeModulePkg: " Guomin Jiang
2022-07-15 1:51 ` [Patch v2 10/11] BaseTools: Remove all UGA support Guomin Jiang
2022-07-24 5:37 ` Bob Feng
2022-07-15 1:51 ` [Patch v2 11/11] MdePkg/UefiLib: " Guomin Jiang
2022-07-15 16:23 ` Michael D Kinney
2022-10-24 18:06 ` [edk2-devel] [Patch v2 00/11] " Michael D Kinney
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=BL1PR11MB5953101433E8936BC537CE499D8F9@BL1PR11MB5953.namprd11.prod.outlook.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox