edk2 icon indicating copy to clipboard operation
edk2 copied to clipboard

Remove UGA support

Open pierregondois opened this issue 5 months ago • 1 comments

Description

The Universal Graphics Adapter (UGA) is a graphic abstraction. The UGA I/O and Draw protocols are deprecated since UEFI 2.0 was introduced. Cf. the UEFI spec v2.9: "Appendix L - EFI 1.10 Protocol Changes and Deprecation List" section L.2 "Deprecated Protocols" UGA was replaced by the Graphics Output Protocol (GOP).

Guomin Jiang (@GuoMinJ) opened a ticket at https://github.com/tianocore/edk2/issues/9834 to remove the support. Patches were submitted, but were not applied ultimately. His patches seemed to have been reviewed and agreed. I pinged him and:

  • he doesn't plan to re-use these patches
  • he agreed for them to be re-used

His known mail addresses are:

++++++++++++

  • [ X] Breaking change?
    • Breaking change - Does this PR cause a break in build or boot behavior?
    • Examples: Does it add a new library class or move a module to a different repo.
  • [ ] Impacts security?
    • Security - Does this PR have a direct security impact?
    • Examples: Crypto algorithm change or buffer overflow fix.
  • [ ] Includes tests?
    • Tests - Does this PR include any explicit test code?
    • Examples: Unit tests or integration tests.

How This Was Tested

Build testing the following platforms in the edk2-platforms repository:

build -p Drivers/OptionRomPkg/OptionRomPkg.dsc -t GCC5 -a X64
build -p Drivers/OptionRomPkg/OptionRomPkg.dsc -t GCC5 -a IA32
build -p Drivers/OptionRomPkg/OptionRomPkg.dsc -t GCC5 -a AARCH64
build -p Platform/RaspberryPi/RPi4/RPi4.dsc -t GCC5 -a AARCH64
build -p Platform/Qemu/SbsaQemu/SbsaQemu.dsc -t GCC5 -a AARCH64
build -p Platform/RaspberryPi/RPi3/RPi3.dsc -t GCC5 -a AARCH64
build -p Platform/Ampere/JadePkg/JadeLinuxBoot.dsc -t GCC5 -a AARCH64 -D LINUXBOOT_FILE=old
build -p Platform/Marvell/Armada80x0Db/Armada80x0Db.dsc -t GCC5 -a AARCH64
build -p Platform/AMD/TurinBoard/Override/edk2/MdeModulePkg/MdeModulePkg.dsc -t GCC5 -a X64

Build and run the following platforms:

build -p OvmfPkg/OvmfPkgX64.dsc -t GCC5 -a X64
build -p OvmfPkg/OvmfPkgIa32.dsc -t GCC5 -a IA32
build -p EmulatorPkg/EmulatorPkg.dsc -t GCC5 -a X64

Integration Instructions

A matching Pull request is submitted to the edk2-platforms repository.

pierregondois avatar Jun 17 '25 09:06 pierregondois

WARNING: Cannot add some reviewers: A user specified as a reviewer for this PR is not a collaborator of the repository. Please add them as a collaborator to the repository so they can be requested in the future.

Non-collaborators requested:

  • @bibo-mao
  • @corvink
  • @lixianglai

Attn Admins:

  • @jljusten
  • @ardbiesheuvel
  • @lgao4
  • @mdkinney
  • @makubacki
  • @jkmathews
  • @miki-intel-work

Admin Instructions:

  • Add the non-collaborators as collaborators to the appropriate team(s) listed in teams
  • If they are no longer needed as reviewers, remove them from Maintainers.txt

If no more comment, I will merge this PR next week.

lgao4 avatar Jul 01 '25 01:07 lgao4

If there are no other comments, and as https://github.com/tianocore/edk2-platforms/pull/802 has been merged, I think it might be good to also merge this PR

pierregondois avatar Jul 08 '25 13:07 pierregondois