config VFIO_IOMMU_TYPE1
	tristate
	depends on VFIO
	default n

config VFIO_IOMMU_SPAPR_TCE
	tristate
	depends on VFIO && SPAPR_TCE_IOMMU
	default n

config VFIO_SPAPR_EEH
	tristate
	depends on EEH && VFIO_IOMMU_SPAPR_TCE
	default n

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)
	select VFIO_IOMMU_SPAPR_TCE if (PPC_POWERNV || PPC_PSERIES)
	select VFIO_SPAPR_EEH if (PPC_POWERNV || PPC_PSERIES)
	select ANON_INODES
	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.

source "drivers/vfio/pci/Kconfig"
source "drivers/vfio/platform/Kconfig"
source "virt/lib/Kconfig"