Options for x86 IOMMUs (VT-ds)

QNX SDP8.0SMMUMAN User's GuideAPIConfigurationUtilities

On x86 boards, IOMMU/SMMUs are known as VT-ds; configuration is needed only for non-standard VT-d variants.

The configurations described here are for use with the smmu-vtd.so and smmu-vtd-safety.so support libraries. These support libraries implement the code to communicate with x86 VT-ds, as specified in Intel Virtualization Technology for Directed I/O Architecture Specification, Intel, Nov. 2017 (D51397-009, Rev. 2.5).

To load the right support library, you must set the smmu option's smmu_type argument to the library's name:
  • smmu-vtd.so for non-safety systems
  • smmu-vtd-safety.so for safety-related systems

Options

The following list describes the options for a smmuman service using a smmu-vtd.so or smmu-vtd-safety.so support library for IOMMUs that use the x86 VT-d architecture.

smmu_type_param
On boards with Intel VT-d IOMMU hardware, the syntax for smmu_type_param is as follows:
require | ignore
require
The VT-d information must be present in the ACPI tables.
ignore
Ignore ACPI information.
CAUTION:
Use ignore only if the board firmware is incorrect for your board design and you need to manually input the VT-d unit and device information that would normally be found in these tables. Consult your board manufacturer's documentation. For example, see Intel Virtualization Technology for Directed I/O available from software.intel.com/en-us/articles/intel-sdm.
If neither required nor ignore is specified, the smmuman service doesn't require the ACPI tables, but uses them if they are present.
smmu_unit_param
On boards with Intel VT-d IOMMU hardware, the syntax for smmu_type_param is as follows:
vtd_paddr
vtd_paddr
The base physical address of the VT-d device registers for the unit.
smmu_use_param
On boards with Intel VT-d IOMMU hardware, no value is required or permitted for smmu_use_param.
Note:
The most common way to start smmuman for x86 systems is:
smmuman smmu vtd

This startup configures smmuman to use the default ACPI tables, and the default locations for VT-d.

Page updated: