From nobody Mon Feb 9 12:11:33 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+85527+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+85527+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1641896468; cv=none; d=zohomail.com; s=zohoarc; b=RUDYueCRr30E6lWJCKyVhgMzwXfqFQsIXPJTJJZviV0y3ZSlLnfHNJ0HBYhQ1pPmKUU38hiuoJqv1qAP7N32NKK9RXwY9Xpl0dBIz2vC0LrCduXcnny5q2gCxoImvoeBfVM3YprfKV25cAvOVn9WHIcjshoTm6h0+7QpQlwKxWI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1641896468; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=Lz2qciy/q9kFHgkINk/USmgNtjl9rFDpjSZAon0gwfs=; b=LHClI7Ag+mzo6f71tfEG/7O4Xl+ZcqMQuHGFpeKglNLh1OKwEbd/l6qdjg/gDHAFX28GlEjjHgmF5W434MhDh9GzqiYhOfc3Fxsodph7OCMk9J4YHLHNwxaJfV0FOhEhYpH9wwUP5VXY3gutg5eKYGBUCmukLtQsgNfVaVoswtc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+85527+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 164189646803280.74051846590578; Tue, 11 Jan 2022 02:21:08 -0800 (PST) Return-Path: X-Received: by 127.0.0.2 with SMTP id IMqGYY1788612xHPJiANIqCP; Tue, 11 Jan 2022 02:21:07 -0800 X-Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mx.groups.io with SMTP id smtpd.web08.5170.1641896461172387085 for ; Tue, 11 Jan 2022 02:21:07 -0800 X-IronPort-AV: E=McAfee;i="6200,9189,10223"; a="224148612" X-IronPort-AV: E=Sophos;i="5.88,279,1635231600"; d="scan'208";a="224148612" X-Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Jan 2022 02:21:06 -0800 X-IronPort-AV: E=Sophos;i="5.88,279,1635231600"; d="scan'208";a="472412668" X-Received: from ojocher-mobl1.ger.corp.intel.com (HELO sboeuf-mobl.home) ([10.252.28.2]) by orsmga003-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Jan 2022 02:21:04 -0800 From: "Boeuf, Sebastien" To: devel@edk2.groups.io Cc: jiewen.yao@intel.com, jordan.l.justen@intel.com, kraxel@redhat.com, sebastien.boeuf@intel.com Subject: [edk2-devel] [PATCH v3 03/11] OvmfPkg/CloudHv: Connect serial console Date: Tue, 11 Jan 2022 11:20:45 +0100 Message-Id: <7a8084c2484596459c4b554aeef1fda3b013bc11.1641894685.git.sebastien.boeuf@intel.com> In-Reply-To: References: MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,sebastien.boeuf@intel.com X-Gm-Message-State: bxYBYrAJNWVJhWM3a4bwOrQbx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1641896467; bh=KSf7Iv+KQ1psHHccN3f6uQPf2nCrJb5dkoKERy99vLs=; h=Cc:Content-Type:Date:From:Reply-To:Subject:To; b=co+hrQiMs4QkQpZHAcTJp35clyVQxvMnho9WsybhVaSfZX8qMJvaPJLOZKuakRR0GQx qiAPMKM3A8QsSIA716PeORe2rQk2YDQMpaoOw8R7FBU+guRQ1RPVJF1G07tM3WYLYD9Ya QjkMVuqqd78OGW93c0fWskw+xT/pxltQbx4= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1641896469216100002 Content-Type: text/plain; charset="utf-8" From: Sebastien Boeuf 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. Signed-off-by: Sebastien Boeuf Acked-by: Jiewen Yao --- 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 =20 # - # 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 =20 # # 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/SetupBrows= erDxe.inf INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe= .inf =20 -INF OvmfPkg/SioBusDxe/SioBusDxe.inf -!if $(SOURCE_DEBUG_ENABLE) =3D=3D FALSE -INF MdeModulePkg/Bus/Pci/PciSioSerialDxe/PciSioSerialDxe.inf -!endif -INF MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KeyboardDxe.inf +INF MdeModulePkg/Universal/SerialDxe/SerialDxe.inf =20 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 (); } =20 + // // 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 t= he + // definition from Xen as it is very generic. + // PlatformInitializeConsole ( - XenDetected () ? gXenPlatformConsole : gPlatformConsole + (XenDetected () || PcdGet16 (PcdOvmfHostBridgePciDevId) =3D=3D CLOUDHV= _DEVICE_ID) ? gXenPlatformConsole : gPlatformConsole ); =20 // --=20 2.30.2 --------------------------------------------------------------------- Intel Corporation SAS (French simplified joint stock company) Registered headquarters: "Les Montalets"- 2, rue de Paris,=20 92196 Meudon Cedex, France Registration Number: 302 456 199 R.C.S. NANTERRE Capital: 4,572,000 Euros This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies. -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#85527): https://edk2.groups.io/g/devel/message/85527 Mute This Topic: https://groups.io/mt/88345857/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-