From 6ecdda71fe9a3570ea4895fca497ee4ce07b7bd4 Mon Sep 17 00:00:00 2001 From: Sebastien Boeuf Date: Tue, 11 Jan 2022 20:31:27 +0800 Subject: OvmfPkg/CloudHv: Connect serial console Cloud Hypervisor doesn't emulate any LPC bridge, therefore we simply need to rely on the serial I/O port to be connected as a console. It reuses the code from Xen since it's very generic. Acked-by: Gerd Hoffmann Acked-by: Jiewen Yao Signed-off-by: Sebastien Boeuf --- OvmfPkg/CloudHv/CloudHvX64.dsc | 6 ++---- OvmfPkg/CloudHv/CloudHvX64.fdf | 6 +----- OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c | 8 +++++++- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/OvmfPkg/CloudHv/CloudHvX64.dsc b/OvmfPkg/CloudHv/CloudHvX64.dsc index 5e11942d08..d6d34a4677 100644 --- a/OvmfPkg/CloudHv/CloudHvX64.dsc +++ b/OvmfPkg/CloudHv/CloudHvX64.dsc @@ -828,11 +828,9 @@ OvmfPkg/VirtioGpuDxe/VirtioGpu.inf # - # ISA Support + # Serial Support # - OvmfPkg/SioBusDxe/SioBusDxe.inf - MdeModulePkg/Bus/Pci/PciSioSerialDxe/PciSioSerialDxe.inf - MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf + MdeModulePkg/Universal/SerialDxe/SerialDxe.inf # # SMBIOS Support diff --git a/OvmfPkg/CloudHv/CloudHvX64.fdf b/OvmfPkg/CloudHv/CloudHvX64.fdf index f35458551b..5ce3233bf7 100644 --- a/OvmfPkg/CloudHv/CloudHvX64.fdf +++ b/OvmfPkg/CloudHv/CloudHvX64.fdf @@ -290,11 +290,7 @@ INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf -INF OvmfPkg/SioBusDxe/SioBusDxe.inf -!if $(SOURCE_DEBUG_ENABLE) == FALSE -INF MdeModulePkg/Bus/Pci/PciSioSerialDxe/PciSioSerialDxe.inf -!endif -INF MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf +INF MdeModulePkg/Universal/SerialDxe/SerialDxe.inf INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf INF OvmfPkg/SmbiosPlatformDxe/SmbiosPlatformDxe.inf diff --git a/OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c b/OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c index 0918c35f1f..51016a5548 100644 --- a/OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c +++ b/OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c @@ -418,10 +418,16 @@ PlatformBootManagerBeforeConsole ( SaveS3BootScript (); } + // // We need to connect all trusted consoles for TCG PP. Here we treat all // consoles in OVMF to be trusted consoles. + // + // Cloud Hypervisor doesn't emulate any LPC bridge, which is why it must + // rely on the serial I/O port to be connected as a console. It reuses the + // definition from Xen as it is very generic. + // PlatformInitializeConsole ( - XenDetected () ? gXenPlatformConsole : gPlatformConsole + (XenDetected () || PcdGet16 (PcdOvmfHostBridgePciDevId) == CLOUDHV_DEVICE_ID) ? gXenPlatformConsole : gPlatformConsole ); // -- cgit v1.2.3