Hi Nathan,
-----Original Message----- From: Nathan Chen <nathanc@nvidia.com> Sent: 17 February 2026 23:20 To: devel@lists.libvirt.org Cc: Shameer Kolothum Thodi <skolothumtho@nvidia.com>; Nicolin Chen <nicolinc@nvidia.com>; Nathan Chen <nathanc@nvidia.com>; Matt Ochs <mochs@nvidia.com> Subject: [RFC PATCH 0/3] qemu: Support vCMDQ
Hi,
This is a follow up to the previous RFC patchset [0] for supporting Tegra241 vCMDQ, separated out from the series for accelerated SMMUv3.
This patchset is tested with Shameer's v2 qemu series [1] for vCMDQ support. The accelerated SMMUv3 series for qemu and Libvirt [2] are pre-requisites for vCMDQ support, as accelerated SMMUv3 must be enabled alongside vCMDQ.
A new 'cmdqv' <iommu> driver attribute is introduced to toggle enabling vCMDQ support. An additional 'identifier' <iommu> driver attribute is introduced to specify an enumeration-independent SMMUv3 device identifier. This identifier is used so that both Tegra DSDT and SMMUv3 IORT use the same identifier.
Though QEMU SMMUv3 introduces an additional "identifier" property for ACPI tables to use, it is not intended for users or management layer to specify. QEMU internally populates these during SMMUv3 device instance realization. In short, libvirt doesn't have to set this. In case it needs an id for something, can always use the default QOM device "id" field. eg: -device arm-smmuv3,primary-bus=pcie.1,id=smmuv3.1-pxb1,.. Thanks, Shameer