From: Nathan Chen <nathanc@nvidia.com>
To: qemu-devel@nongnu.org, qemu-arm@nongnu.org
Cc: "Eric Auger" <eric.auger@redhat.com>,
"Peter Maydell" <peter.maydell@linaro.org>,
"Michael S . Tsirkin" <mst@redhat.com>,
"Igor Mammedov" <imammedo@redhat.com>,
"Ani Sinha" <anisinha@redhat.com>,
"Shannon Zhao" <shannon.zhaosl@gmail.com>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Daniel P . Berrangé" <berrange@redhat.com>,
"Eduardo Habkost" <eduardo@habkost.net>,
"Eric Blake" <eblake@redhat.com>,
"Markus Armbruster" <armbru@redhat.com>,
"Shameer Kolothum" <skolothumtho@nvidia.com>,
"Nicolin Chen" <nicolinc@nvidia.com>,
"Matt Ochs" <mochs@nvidia.com>,
"Nathan Chen" <nathanc@nvidia.com>
Subject: [PATCH v2 0/8] hw/arm/smmuv3-accel: Support AUTO properties
Date: Thu, 12 Mar 2026 14:03:19 -0700 [thread overview]
Message-ID: <20260312210328.2016191-1-nathanc@nvidia.com> (raw)
Hi,
This is a follow-up to the previous RFC series [0] that introduces
support for specifying 'auto' for arm-smmuv3 accelerated mode's ATS,
RIL, SSIDSIZE, and OAS feature properties. Based on feedback from the
previous mailing list discussion, this refresh only converts the
properties to the auto form, keeping the default values from
Shameer's HW-accel SMMUv3 series [1]. A future series will
introduce support for resolving the 'auto' values based on host
SMMUv3 IDR values, as well as setting per-device ATS capability.
When set to 'auto', RIL and OAS will use the defaults set from
smmuv3_init_id_regs() while ATS and SSIDSIZE will remain at the
initialized 0 value; i.e. RIL enabled, 44-bit OAS, ATS support
disabled, 0-bit SSIDSIZE.
A complete branch can be found here:
https://github.com/NathanChenNVIDIA/qemu/tree/smmuv3-accel-auto-v2
Please take a look and let me know your feedback.
Thanks,
Nathan
Changes from RFCv1:
- Remove changes that resolve the 'auto' values based on host SMMUv3
- Restore defaults values for RIL, OAS, SSIDSIZE, and ATS
- Update OasMode to accept all OAS sizes instead of only auto, 44, and
48
- Include comment in SsidSizeMode schema clarifying enum value
ordering
- Replace ats-enabled prop with a helper that accepts the dynamic
casted TYPE_ARM_SMMUV3 object
- Separate out guest vs. host ATS check in
smmuv3_accel_check_hw_compatible() to a different commit
- Document accel, RIL, OAS, SSIDSIZE, and ATS properties in
qemu-options.hx
Testing:
Basic sanity testing was performed on an NVIDIA Grace platform with GPU
device assignment and running CUDA test apps on the guest. Additional
testing and feedback are welcome.
[0] https://lore.kernel.org/qemu-devel/20260309192119.870186-1-nathanc@nvidia.com/
[1] https://lore.kernel.org/all/20260126104342.253965-1-skolothumtho@nvidia.com/
Nathan Chen (8):
hw/arm/smmuv3-accel: Check ATS compatibility between host and guest
hw/arm/smmuv3-accel: Change ATS property to OnOffAuto
hw/arm/smmuv3-accel: Change RIL property to OnOffAuto
qdev: Add a SsidSizeMode property
hw/arm/smmuv3-accel: Change SSIDSIZE property to SsidSizeMode
qdev: Add an OasMode property
hw/arm/smmuv3-accel: Change OAS property to OasMode
qemu-options.hx: Document arm-smmuv3 device's accel properties
hw/arm/smmuv3-accel.c | 42 ++++++++++++++++++----
hw/arm/smmuv3.c | 38 ++++++++++----------
hw/arm/virt-acpi-build.c | 2 +-
hw/core/qdev-properties-system.c | 27 +++++++++++++++
include/hw/arm/smmuv3.h | 11 +++---
include/hw/core/qdev-properties-system.h | 6 ++++
qapi/misc-arm.json | 44 ++++++++++++++++++++++++
qapi/pragma.json | 1 +
qemu-options.hx | 29 +++++++++++++++-
9 files changed, 169 insertions(+), 31 deletions(-)
--
2.43.0
next reply other threads:[~2026-03-12 21:04 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-12 21:03 Nathan Chen [this message]
2026-03-12 21:03 ` [PATCH v2 1/8] hw/arm/smmuv3-accel: Check ATS compatibility between host and guest Nathan Chen
2026-03-16 7:32 ` Eric Auger
2026-03-17 16:11 ` Nathan Chen
2026-03-12 21:03 ` [PATCH v2 2/8] hw/arm/smmuv3-accel: Change ATS property to OnOffAuto Nathan Chen
2026-03-16 7:38 ` Eric Auger
2026-03-17 16:12 ` Nathan Chen
2026-03-16 7:40 ` Eric Auger
2026-03-16 8:48 ` Shameer Kolothum Thodi
2026-03-17 16:18 ` Nathan Chen
2026-03-12 21:03 ` [PATCH v2 3/8] hw/arm/smmuv3-accel: Change RIL " Nathan Chen
2026-03-16 7:41 ` Eric Auger
2026-03-16 8:50 ` Shameer Kolothum Thodi
2026-03-17 16:18 ` Nathan Chen
2026-03-12 21:03 ` [PATCH v2 4/8] qdev: Add a SsidSizeMode property Nathan Chen
2026-03-16 7:46 ` Eric Auger
2026-03-12 21:03 ` [PATCH v2 5/8] hw/arm/smmuv3-accel: Change SSIDSIZE property to SsidSizeMode Nathan Chen
2026-03-16 7:50 ` Eric Auger
2026-03-17 16:15 ` Nathan Chen
2026-03-16 8:56 ` Shameer Kolothum Thodi
2026-03-17 16:20 ` Nathan Chen
2026-03-12 21:03 ` [PATCH v2 6/8] qdev: Add an OasMode property Nathan Chen
2026-03-16 7:52 ` Eric Auger
2026-03-12 21:03 ` [PATCH v2 7/8] hw/arm/smmuv3-accel: Change OAS property to OasMode Nathan Chen
2026-03-16 7:55 ` Eric Auger
2026-03-12 21:03 ` [PATCH v2 8/8] qemu-options.hx: Document arm-smmuv3 device's accel properties Nathan Chen
2026-03-16 8:00 ` Eric Auger
2026-03-16 8:27 ` Shameer Kolothum Thodi
2026-03-17 16:17 ` Nathan Chen
2026-03-16 8:08 ` [PATCH v2 0/8] hw/arm/smmuv3-accel: Support AUTO properties Eric Auger
2026-03-16 10:05 ` Peter Maydell
2026-03-17 16:21 ` Nathan Chen
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=20260312210328.2016191-1-nathanc@nvidia.com \
--to=nathanc@nvidia.com \
--cc=anisinha@redhat.com \
--cc=armbru@redhat.com \
--cc=berrange@redhat.com \
--cc=eblake@redhat.com \
--cc=eduardo@habkost.net \
--cc=eric.auger@redhat.com \
--cc=imammedo@redhat.com \
--cc=mochs@nvidia.com \
--cc=mst@redhat.com \
--cc=nicolinc@nvidia.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=shannon.zhaosl@gmail.com \
--cc=skolothumtho@nvidia.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.