|  | config VFIO_IOMMU_TYPE1 | 
|  | tristate | 
|  | depends on VFIO | 
|  | default n | 
|  |  | 
|  | config VFIO_IOMMU_SPAPR_TCE | 
|  | tristate | 
|  | depends on VFIO && SPAPR_TCE_IOMMU | 
|  | default VFIO | 
|  |  | 
|  | config VFIO_SPAPR_EEH | 
|  | tristate | 
|  | depends on EEH && VFIO_IOMMU_SPAPR_TCE | 
|  | default VFIO | 
|  |  | 
|  | config VFIO_VIRQFD | 
|  | tristate | 
|  | depends on VFIO && EVENTFD | 
|  | default n | 
|  |  | 
|  | menuconfig VFIO | 
|  | tristate "VFIO Non-Privileged userspace driver framework" | 
|  | depends on IOMMU_API | 
|  | select VFIO_IOMMU_TYPE1 if (X86 || S390 || ARM_SMMU || ARM_SMMU_V3) | 
|  | help | 
|  | VFIO provides a framework for secure userspace device drivers. | 
|  | See Documentation/vfio.txt for more details. | 
|  |  | 
|  | If you don't know what to do here, say N. | 
|  |  | 
|  | menuconfig VFIO_NOIOMMU | 
|  | bool "VFIO No-IOMMU support" | 
|  | depends on VFIO | 
|  | help | 
|  | VFIO is built on the ability to isolate devices using the IOMMU. | 
|  | Only with an IOMMU can userspace access to DMA capable devices be | 
|  | considered secure.  VFIO No-IOMMU mode enables IOMMU groups for | 
|  | devices without IOMMU backing for the purpose of re-using the VFIO | 
|  | infrastructure in a non-secure mode.  Use of this mode will result | 
|  | in an unsupportable kernel and will therefore taint the kernel. | 
|  | Device assignment to virtual machines is also not possible with | 
|  | this mode since there is no IOMMU to provide DMA translation. | 
|  |  | 
|  | If you don't know what to do here, say N. | 
|  |  | 
|  | source "drivers/vfio/pci/Kconfig" | 
|  | source "drivers/vfio/platform/Kconfig" | 
|  | source "drivers/vfio/mdev/Kconfig" | 
|  | source "virt/lib/Kconfig" |