All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/8] hw/arm/smmuv3-accel: Support AUTO properties
@ 2026-03-12 21:03 Nathan Chen
  2026-03-12 21:03 ` [PATCH v2 1/8] hw/arm/smmuv3-accel: Check ATS compatibility between host and guest Nathan Chen
                   ` (8 more replies)
  0 siblings, 9 replies; 32+ messages in thread
From: Nathan Chen @ 2026-03-12 21:03 UTC (permalink / raw)
  To: qemu-devel, qemu-arm
  Cc: Eric Auger, Peter Maydell, Michael S . Tsirkin, Igor Mammedov,
	Ani Sinha, Shannon Zhao, Paolo Bonzini, Daniel P . Berrangé,
	Eduardo Habkost, Eric Blake, Markus Armbruster, Shameer Kolothum,
	Nicolin Chen, Matt Ochs, Nathan Chen

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



^ permalink raw reply	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2026-03-17 16:22 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-12 21:03 [PATCH v2 0/8] hw/arm/smmuv3-accel: Support AUTO properties Nathan Chen
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

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.