From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id 315E1740053 for ; Tue, 28 Nov 2023 08:33:38 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=/LL6SiZZk06+uI7CjrrPuRB9Dgy5SdV5GVqPT5h02OY=; c=relaxed/simple; d=groups.io; h=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject:To:Cc:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Type; s=20140610; t=1701160416; v=1; b=C6MAWpaZzcFQRk/W6f+SMtTCI07g1MLFGV/o8tf9T8cAdNynCsWSw4vD6BSkEpwnxs5T+uC5 q85+I3rdIvwD+hsi45TV6Xwlks3WVwG9nW06KsguGO6Nh30k4LdxvTNKXN9TDGSKQ41cAhVf/XI neepCjzzQ2x9wbovk5v7BurE= X-Received: by 127.0.0.2 with SMTP id NL8VYY7687511xbv0Y4SZeXf; Tue, 28 Nov 2023 00:33:36 -0800 X-Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by mx.groups.io with SMTP id smtpd.web11.28426.1701160416071604021 for ; Tue, 28 Nov 2023 00:33:36 -0800 X-Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 82296612AF for ; Tue, 28 Nov 2023 08:33:35 +0000 (UTC) X-Received: by smtp.kernel.org (Postfix) with ESMTPSA id 31A63C433C8 for ; Tue, 28 Nov 2023 08:33:35 +0000 (UTC) X-Received: by mail-lj1-f176.google.com with SMTP id 38308e7fff4ca-2c997447ff9so36616751fa.0 for ; Tue, 28 Nov 2023 00:33:35 -0800 (PST) X-Gm-Message-State: gY4ETUtXRu3Ih86c7WpqLwXtx7686176AA= X-Google-Smtp-Source: AGHT+IG8++rOgTJtEXaA5nMpKVS6SmI20UzaW0puGIsqfPf5prKdWoPjXDfK2Vwd5DUln6E83XL1cINMerGrAXRNbOw= X-Received: by 2002:a05:651c:c85:b0:2c9:9376:1ae7 with SMTP id bz5-20020a05651c0c8500b002c993761ae7mr8511615ljb.28.1701160413356; Tue, 28 Nov 2023 00:33:33 -0800 (PST) MIME-Version: 1.0 References: <20231123150234.117835-1-kraxel@redhat.com> In-Reply-To: <20231123150234.117835-1-kraxel@redhat.com> From: "Ard Biesheuvel" Date: Tue, 28 Nov 2023 09:33:22 +0100 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [edk2-devel] [PATCH 0/7] Add VirtMmCommunication driver, enable for OVMF and ArmVirt. To: devel@edk2.groups.io, kraxel@redhat.com Cc: Oliver Steffen , =?UTF-8?B?TMOhc3psw7Mgw4lyc2Vr?= Precedence: Bulk 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,ardb@kernel.org List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: Content-Type: text/plain; charset="UTF-8" X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=C6MAWpaZ; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=kernel.org (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io On Thu, 23 Nov 2023 at 16:02, Gerd Hoffmann wrote: > > This is the edk2 side of the qemu patch series posted last week to > qemu-devel: > https://lists.gnu.org/archive/html/qemu-devel/2023-11/msg03714.html > > The driver forwards MM calls to the virtualization host instead of the > MM code running in SMM (x64) or el3 (arm) mode. The functionality > traditionally implemented by the SMM code is provided by qemu instead. > > This allows to provide persistent variable support without an > (virtual) flash device and it also allows to support secure > boot without depending on SMM or el3 emulation support in the > hypervisor. > I like this a lot - not only for QEMU + OVMF/ArmVirt, but also for other VM firmware projects (I am working on a minimal UEFI implementation in Rust for ArmVirt, and variable support is much easier to implement using this paravirt interface) > Gerd Hoffmann (7): > OvmfPkg: add IndustryStandard/QemuUefiVars.h > OvmfPkg: add new VirtMmCommunicationDxe driver > OvmfPkg/OvmfPkgX64: add QEMU_VARS option > OvmfPkg: add PcdQemuVarsRequire > OvmfPkg/VirtMmCommunicationDxe: stop on init failure > OvmfPkg/VirtMmCommunicationDxe: add arm support > ArmVirtPkg/ArmVirtQemu: add QEMU_VARS option > > OvmfPkg/OvmfPkg.dec | 3 + > ArmVirtPkg/ArmVirt.dsc.inc | 3 + > ArmVirtPkg/ArmVirtQemu.dsc | 11 + > ArmVirtPkg/ArmVirtQemuKernel.dsc | 11 + > OvmfPkg/OvmfPkgX64.dsc | 17 +- > OvmfPkg/OvmfPkgX64.fdf | 12 +- > OvmfPkg/PlatformPei/PlatformPei.inf | 1 + > .../VirtMmCommunication.inf | 67 +++ > .../Include/IndustryStandard/QemuUefiVars.h | 41 ++ > .../VirtMmCommunication.h | 37 ++ > OvmfPkg/PlatformPei/Platform.c | 4 + > OvmfPkg/VirtMmCommunicationDxe/QemuFdt.c | 208 ++++++++++ > OvmfPkg/VirtMmCommunicationDxe/QemuX64.c | 106 +++++ > .../VirtMmCommunication.c | 390 ++++++++++++++++++ > ArmVirtPkg/ArmVirtQemuFvMain.fdf.inc | 5 + > 15 files changed, 914 insertions(+), 2 deletions(-) > create mode 100644 OvmfPkg/VirtMmCommunicationDxe/VirtMmCommunication.inf > create mode 100644 OvmfPkg/Include/IndustryStandard/QemuUefiVars.h > create mode 100644 OvmfPkg/VirtMmCommunicationDxe/VirtMmCommunication.h > create mode 100644 OvmfPkg/VirtMmCommunicationDxe/QemuFdt.c > create mode 100644 OvmfPkg/VirtMmCommunicationDxe/QemuX64.c > create mode 100644 OvmfPkg/VirtMmCommunicationDxe/VirtMmCommunication.c > > -- > 2.42.0 > > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#111800): https://edk2.groups.io/g/devel/message/111800 Mute This Topic: https://groups.io/mt/102767943/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=-