Hi Nathan, On 5/12/26 9:35 PM, Nathan Chen wrote: > From: Nathan Chen <[email protected]> > > Update documentation now that "auto" is supported for accelerated SMMUv3 > properties. > > Signed-off-by: Nathan Chen <[email protected]> > --- > qemu-options.hx | 25 +++++++++++++++++++------ > 1 file changed, 19 insertions(+), 6 deletions(-) > > diff --git a/qemu-options.hx b/qemu-options.hx > index 96ae41f787..46b02a1bb3 100644 > --- a/qemu-options.hx > +++ b/qemu-options.hx > @@ -1291,30 +1291,43 @@ SRST > Enabling accel configures the host SMMUv3 in nested mode to support > vfio-pci passthrough. > > - The following options are available when accel=on. > - Note: 'auto' mode is not currently supported. > + The following options will be set to auto by default if not manually > + set. When accel=on and these properties are set to auto, the value is > + derived from the host SMMUv3 capabilities via IOMMU_GET_HW_INFO. With > + accel=on, this requires at least one cold-plugged vfio-pci device; if > + none is present at machine init, QEMU will abort. > > - ``ril=on|off`` (default: on) > + If accel=off, auto values resolve to the non-accel defaults given below. [*] > + > + ``ril=on|off|auto`` (default: auto) > Support for Range Invalidation, which allows the SMMUv3 driver to > invalidate TLB entries for a range of IOVAs at once instead of > issuing > separate commands to invalidate each page. Must match with host > SMMUv3 > Range Invalidation support. > + - With accel=on, auto means the value is automatically derived from > the host SMMU. instead of repeating that sentence for all props you mean put it in [*] > + - With accel=off, auto is resolved to 'on'. > > - ``ats=on|off`` (default: off) > + ``ats=on|off|auto`` (default: auto) > Support for Address Translation Services, which enables PCIe devices > to > cache address translations in their local TLB and reduce latency. > Host > SMMUv3 must support ATS in order to enable this feature for the > vIOMMU. > + - With accel=on, auto means the value is automatically derived from > the host SMMU. > + - With accel=off, auto is resolved to 'off'. > > - ``oas=val`` (supported values are 44 and 48. default: 44) > + ``oas=val|auto`` (supported values are 44 and 48. default: auto) > Sets the Output Address Size in bits. The value set here must be less > than or equal to the host SMMUv3's supported OAS, so that the > intermediate physical addresses (IPA) consumed by host SMMU for > stage-2 > translation do not exceed the host's max supported IPA size. > + - With accel=on, auto means the value is automatically derived from > the host SMMU. > + - With accel=off, auto is resolved to 44. > > - ``ssidsize=val`` (val between 0 and 20. default: 0) > + ``ssidsize=val|auto`` (val between 0 and 20. default: auto) > Sets the Substream ID size in bits. When set to a non-zero value, > PASID capability is advertised to the vIOMMU and accelerated use > cases > such as Shared Virtual Addressing (SVA) are supported. > + - With accel=on, auto means the value is automatically derived from > the host SMMU. > + - With accel=off, auto is resolved to 0. > > ``-device amd-iommu[,option=...]`` > Enables emulation of an AMD-Vi I/O Memory Management Unit (IOMMU). But either way, with formatting checked, Reviewed-by: Eric Auger <[email protected]>
Eric
