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)
	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"
