| |
| |
| config DMAR_TABLE |
| <------>bool |
| |
| config INTEL_IOMMU |
| <------>bool "Support for Intel IOMMU using DMA Remapping Devices" |
| <------>depends on PCI_MSI && ACPI && (X86 || IA64) |
| <------>select DMA_OPS |
| <------>select IOMMU_API |
| <------>select IOMMU_IOVA |
| <------>select NEED_DMA_MAP_STATE |
| <------>select DMAR_TABLE |
| <------>select SWIOTLB |
| <------>select IOASID |
| <------>help |
| <------> DMA remapping (DMAR) devices support enables independent address |
| <------> translations for Direct Memory Access (DMA) from devices. |
| <------> These DMA remapping devices are reported via ACPI tables |
| <------> and include PCI device scope covered by these DMA |
| <------> remapping devices. |
| |
| config INTEL_IOMMU_DEBUGFS |
| <------>bool "Export Intel IOMMU internals in Debugfs" |
| <------>depends on INTEL_IOMMU && IOMMU_DEBUGFS |
| <------>help |
| <------> !!!WARNING!!! |
| |
| <------> DO NOT ENABLE THIS OPTION UNLESS YOU REALLY KNOW WHAT YOU ARE DOING!!! |
| |
| <------> Expose Intel IOMMU internals in Debugfs. |
| |
| <------> This option is -NOT- intended for production environments, and should |
| <------> only be enabled for debugging Intel IOMMU. |
| |
| config INTEL_IOMMU_SVM |
| <------>bool "Support for Shared Virtual Memory with Intel IOMMU" |
| <------>depends on INTEL_IOMMU && X86_64 |
| <------>select PCI_PASID |
| <------>select PCI_PRI |
| <------>select MMU_NOTIFIER |
| <------>select IOASID |
| <------>help |
| <------> Shared Virtual Memory (SVM) provides a facility for devices |
| <------> to access DMA resources through process address space by |
| <------> means of a Process Address Space ID (PASID). |
| |
| config INTEL_IOMMU_DEFAULT_ON |
| <------>def_bool y |
| <------>prompt "Enable Intel DMA Remapping Devices by default" |
| <------>depends on INTEL_IOMMU |
| <------>help |
| <------> Selecting this option will enable a DMAR device at boot time if |
| <------> one is found. If this option is not selected, DMAR support can |
| <------> be enabled by passing intel_iommu=on to the kernel. |
| |
| config INTEL_IOMMU_BROKEN_GFX_WA |
| <------>bool "Workaround broken graphics drivers (going away soon)" |
| <------>depends on INTEL_IOMMU && BROKEN && X86 |
| <------>help |
| <------> Current Graphics drivers tend to use physical address |
| <------> for DMA and avoid using DMA APIs. Setting this config |
| <------> option permits the IOMMU driver to set a unity map for |
| <------> all the OS-visible memory. Hence the driver can continue |
| <------> to use physical addresses for DMA, at least until this |
| <------> option is removed in the 2.6.32 kernel. |
| |
| config INTEL_IOMMU_FLOPPY_WA |
| <------>def_bool y |
| <------>depends on INTEL_IOMMU && X86 |
| <------>help |
| <------> Floppy disk drivers are known to bypass DMA API calls |
| <------> thereby failing to work when IOMMU is enabled. This |
| <------> workaround will setup a 1:1 mapping for the first |
| <------> 16MiB to make floppy (an ISA device) work. |
| |
| config INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON |
| <------>bool "Enable Intel IOMMU scalable mode by default" |
| <------>depends on INTEL_IOMMU |
| <------>help |
| <------> Selecting this option will enable by default the scalable mode if |
| <------> hardware presents the capability. The scalable mode is defined in |
| <------> VT-d 3.0. The scalable mode capability could be checked by reading |
| <------> /sys/devices/virtual/iommu/dmar*/intel-iommu/ecap. If this option |
| <------> is not selected, scalable mode support could also be enabled by |
| <------> passing intel_iommu=sm_on to the kernel. If not sure, please use |
| <------> the default value. |
| |