From: Oliver Steffen <osteffen@redhat.com>
To: qemu-devel@nongnu.org
Cc: Paolo Bonzini <pbonzini@redhat.com>,
Joerg Roedel <joerg.roedel@amd.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
Gerd Hoffmann <kraxel@redhat.com>,
Marcel Apfelbaum <marcel.apfelbaum@gmail.com>,
Eduardo Habkost <eduardo@habkost.net>,
Stefano Garzarella <sgarzare@redhat.com>,
Richard Henderson <richard.henderson@linaro.org>,
Oliver Steffen <osteffen@redhat.com>
Subject: [RFC 0/2] Add SVSM virtio-mmio device slots (q35)
Date: Tue, 1 Jul 2025 14:18:13 +0200 [thread overview]
Message-ID: <20250701121815.523896-1-osteffen@redhat.com> (raw)
Coconut SVSM recently gained support for virtio-blk devices using the
virtio-mmio transport [1]. This series adds dedicated virtio-mmio device slots
to the q35 machine type, inteded for use by an SVSM.
The feature is disabled by default and enabled via the new
`-machine q35,x-svsm-virtio-mmio=on` option. The slots are mapped starting at
base address `0xfef00000`, with each slot on a separate page. IRQs are not
wired; the SVSM must use polling mode to drive the devices.
The SVSM discovers the slot base addresses through a
`HARDWARE_INFO_SIMPLE_DEVICE` entry in the `etc/hardware-info` fw_cfg file [2].
This uses a dedicated device ID previously registered in EDK2 [3].
This series depends on the IGVM support series from Roy Hopkins [4]. While
there is no direct code dependency, the IGVM support is required to launch the
SVSM, which is the sole consumer and the only practical means of testing this
feature.
The virtio-mmio transport was chosen for its implementation simplicity. This
approach minimally impacts the guest-visible hardware, reserving only a small
MMIO region.
Any feedback would be greatly appreciated.
- Oliver
[1] https://github.com/coconut-svsm/svsm/pull/635
[2] See commit 8d127aa866
[3] https://github.com/tianocore/edk2/pull/10850
[4] https://lists.gnu.org/archive/html/qemu-devel/2025-06/msg02324.html
Gerd Hoffmann (1):
q35: add virtio-mmio slots
Oliver Steffen (1):
hw/uefi: Add hardware-info ID for virtio mmio devices for SVSM
hw/i386/pc.c | 18 +++++++++++++++++-
hw/i386/pc_q35.c | 15 +++++++++++++++
include/hw/i386/pc.h | 1 +
include/hw/uefi/hardware-info.h | 1 +
4 files changed, 34 insertions(+), 1 deletion(-)
--
2.50.0
next reply other threads:[~2025-07-01 12:20 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-01 12:18 Oliver Steffen [this message]
2025-07-01 12:18 ` [RFC 1/2] hw/uefi: Add hardware-info ID for virtio mmio devices for SVSM Oliver Steffen
2025-08-01 13:29 ` Stefano Garzarella
2025-07-01 12:18 ` [RFC 2/2] q35: add virtio-mmio slots Oliver Steffen
2025-08-01 13:38 ` Stefano Garzarella
2025-08-01 13:55 ` Daniel P. Berrangé
2025-08-04 13:47 ` Gerd Hoffmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250701121815.523896-1-osteffen@redhat.com \
--to=osteffen@redhat.com \
--cc=eduardo@habkost.net \
--cc=joerg.roedel@amd.com \
--cc=kraxel@redhat.com \
--cc=marcel.apfelbaum@gmail.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
--cc=sgarzare@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.