From: "Ni, Ray" <ray.ni@intel.com>
To: "Jiang, Guomin" <guomin.jiang@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:56:00 +0000 [thread overview]
Message-ID: <MWHPR11MB1631A371293A4E1A3627015E8C8F9@MWHPR11MB1631.namprd11.prod.outlook.com> (raw)
In-Reply-To: <BL1PR11MB5953101433E8936BC537CE499D8F9@BL1PR11MB5953.namprd11.prod.outlook.com>
Thanks!
Reviewed-by: Ray Ni <ray.ni@intel.com>
> -----Original Message-----
> From: Jiang, Guomin <guomin.jiang@intel.com>
> Sent: Tuesday, July 19, 2022 8:54 AM
> To: Ni, Ray <ray.ni@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
>
> 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:56 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
2022-07-19 0:56 ` Ni, Ray [this message]
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=MWHPR11MB1631A371293A4E1A3627015E8C8F9@MWHPR11MB1631.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