On Wed, Aug 05, 2026 at 03:12:58PM -0700, Nathan Chen via Devel wrote: > From: Nathan Chen <[email protected]> > > The arm-smmuv3 QOM type appears in qom-list-types on ARM QEMU as far > back as 8.2 because the type is used for machine-integrated IOMMU > (-machine virt,iommu=smmuv3). That reply does not indicate support > for a user-pluggable -device arm-smmuv3. > > User-pluggable SMMUv3 with the smmu_per_bus property was added in QEMU > 10.2.0. Probe that property via device-list-properties, gated on > QEMU_CAPS_DEVICE_SMMUV3, so the capability tracks pluggable device > support rather than mere QOM visibility. > > In qemu_validate.c, an IOMMU with pci_bus set requires > QEMU_CAPS_ARM_SMMUV3_SMMU_PER_BUS; machine-integrated SMMUv3 without > pci_bus keeps using QEMU_CAPS_MACHINE_VIRT_IOMMU. > > Update caps_8.2.0_aarch64, caps_9.2.0_aarch64, caps_10.0.0_aarch64, > caps_10.2.0_aarch64, caps_11.0.0_aarch64, caps_8.2.0_armv7l, and > caps_11.1.0_aarch64 .replies with the arm-smmuv3 device-list-properties > exchange. > > Signed-off-by: Nathan Chen <[email protected]> > --- > src/qemu/qemu_capabilities.c | 8 + > src/qemu/qemu_capabilities.h | 1 + > src/qemu/qemu_validate.c | 8 + > .../caps_10.0.0_aarch64.replies | 79 ++++++---- > .../caps_10.2.0_aarch64.replies | 89 +++++++---- > .../caps_10.2.0_aarch64.xml | 1 + > .../caps_11.0.0_aarch64.replies | 132 ++++++++++++---- > .../caps_11.0.0_aarch64.xml | 1 + > .../caps_11.1.0_aarch64.replies | 143 ++++++++++++++---- > .../caps_11.1.0_aarch64.xml | 1 + > .../caps_8.2.0_aarch64.replies | 79 ++++++---- > .../caps_8.2.0_armv7l.replies | 79 ++++++---- > .../caps_9.2.0_aarch64+hvf.replies | 75 ++++++--- > 13 files changed, 510 insertions(+), 186 deletions(-)
Reviewed-by: Pavel Hrdina <[email protected]>
