audk/ArmVirtPkg
Laszlo Ersek f945b72331 ArmVirtPkg: steer DebugLib output away from SerialPortLib+console traffic
For the RELEASE target, all ArmVirtPkg DSCs inherit BaseDebugLibNull from
"ArmVirt.dsc.inc"; keep that.

For NOOPT and DEBUG:

- switch the lib class resolution pair (BaseDebugLibSerialPort +
  FdtPL011SerialPortLib) that is set as the default for all module types
  in "ArmVirt.dsc.inc" to DebugLibFdtPL011UartRam;

- switch the lib class resolution pair (BaseDebugLibSerialPort +
  EarlyFdtPL011SerialPortLib) that is set as an override for SEC,
  PEI_CORE, PEIM modules in "ArmVirt.dsc.inc" to
  DebugLibFdtPL011UartFlash;

- switch the lib class resolution pair (DxeRuntimeDebugLibSerialPort +
  FdtPL011SerialPortLib) that is set as an override for DXE_RUNTIME_DRIVER
  modules in "ArmVirt.dsc.inc" to DxeRuntimeDebugLibFdtPL011Uart;

- mask all of the above DebugLib class resolution changes in
  "ArmVirtKvmTool.dsc", because "ArmVirtKvmTool.dsc" uses
  BaseSerialPortLib16550 rather than PL011 UARTs,

- mask all of the above DebugLib class resolution changes in
  "ArmVirtXen.dsc" too, because "ArmVirtXen.dsc" uses
  XenConsoleSerialPortLib rather than PL011 UARTs.

I regression-tested this change for "ArmVirtKvmTool.dsc" and
"ArmVirtXen.dsc" by building them for both DEBUG and RELEASE, both before
the patch and after, and comparing the edk2 build report files (focusing
on lib class resolutions). There are no changes.

Cc: Ard Biesheuvel <ardb+tianocore@kernel.org>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Julien Grall <julien@xen.org>
Cc: Leif Lindholm <quic_llindhol@quicinc.com>
Cc: Sami Mujawar <sami.mujawar@arm.com>
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Message-Id: <20231008153912.175941-10-lersek@redhat.com>
Acked-by: Ard Biesheuvel <ardb@kernel.org>
Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=4577
[lersek@redhat.com: add TianoCore BZ reference]
2023-10-26 18:55:43 +00:00
..
CloudHvAcpiPlatformDxe ArmVirtPkg: Update code to be more C11 compliant by using __func__ 2023-04-10 14:19:57 +00:00
CloudHvPlatformHasAcpiDtDxe ArmVirtPkg: can't find gUefiOvmfPkgTokenSpaceGuid 2023-03-28 16:27:06 +00:00
Include ArmVirtPkg: store separate console and debug PL011 addresses in GUID HOB 2023-10-26 18:55:43 +00:00
KvmtoolCfgMgrDxe ArmVirtPkg: Fix KVM Guest Firmware 2022-08-02 17:07:08 +00:00
KvmtoolPlatformDxe ArmVirtPkg: Dispatch variable service if variable emulation is enabled 2023-05-29 15:14:00 +00:00
Library ArmVirtPkg: introduce DebugLibFdtPL011Uart DXE Runtime instance 2023-10-26 18:55:43 +00:00
MemoryInitPei ArmVirtPkg/ArmVirtQemu: use first 128 MiB as permanent PEI memory 2022-10-26 17:28:39 +00:00
PlatformCI ArmVirtPkg: ArmVirtQemu: Add Graphics and Input 2023-09-06 09:35:59 +00:00
PrePi ArmVirtPkg/PrePi: Allocate separate stack for Dxe phase 2023-05-29 15:14:00 +00:00
XenAcpiPlatformDxe ArmVirtPkg: Update code to be more C11 compliant by using __func__ 2023-04-10 14:19:57 +00:00
XenPlatformHasAcpiDtDxe ArmVirtPkg: Apply uncrustify changes 2021-12-07 17:24:28 +00:00
XenioFdtDxe ArmVirtPkg: Update code to be more C11 compliant by using __func__ 2023-04-10 14:19:57 +00:00
ArmVirt.dsc.inc ArmVirtPkg: steer DebugLib output away from SerialPortLib+console traffic 2023-10-26 18:55:43 +00:00
ArmVirtCloudHv.dsc ArmVirtPkg: handle virtual EL2 timer in DT 2023-09-19 20:27:55 +00:00
ArmVirtCloudHv.fdf ArmVirtPkg: remove EbcDxe from all platforms 2022-10-24 14:30:33 +00:00
ArmVirtKvmTool.dsc ArmVirtPkg: steer DebugLib output away from SerialPortLib+console traffic 2023-10-26 18:55:43 +00:00
ArmVirtKvmTool.fdf ArmVirtPkg: Kvmtool: Add RNG support using Arm TRNG interface 2022-11-06 16:32:28 +00:00
ArmVirtPkg.ci.yaml ArmVirtPkg.ci.yaml: Add debug macro exception 2023-09-19 01:20:27 +00:00
ArmVirtPkg.dec ArmVirtPkg: introduce FdtSerialPortAddressLib 2023-10-26 18:55:43 +00:00
ArmVirtQemu.dsc ArmVirtPkg: handle virtual EL2 timer in DT 2023-09-19 20:27:55 +00:00
ArmVirtQemu.fdf ArmVirtPkg/ArmVirtQemu: omit PCD PEIM unless TPM support is enabled 2022-10-26 17:28:39 +00:00
ArmVirtQemuFvMain.fdf.inc ArmVirt: add VirtioSerialDxe to ArmVirtQemu builds 2023-06-01 12:48:45 +00:00
ArmVirtQemuKernel.dsc ArmVirtPkg: handle virtual EL2 timer in DT 2023-09-19 20:27:55 +00:00
ArmVirtQemuKernel.fdf ArmVirtPkg: add FDF rule for self-relocating PrePi 2020-06-12 22:17:46 +00:00
ArmVirtRules.fdf.inc ArmVirtPkg: add FDF rule for self-relocating PrePi 2020-06-12 22:17:46 +00:00
ArmVirtXen.dsc ArmVirtPkg: steer DebugLib output away from SerialPortLib+console traffic 2023-10-26 18:55:43 +00:00
ArmVirtXen.fdf ArmVirtPkg: remove EbcDxe from all platforms 2022-10-24 14:30:33 +00:00
VarStore.fdf.inc ArmVirtPkg: Replace BSD License with BSD+Patent License 2019-04-09 09:10:21 -07:00