^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0-only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) config VFIO_PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) tristate "VFIO support for PCI devices"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) depends on VFIO && PCI && EVENTFD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) depends on MMU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) select VFIO_VIRQFD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) select IRQ_BYPASS_MANAGER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) Support for the PCI VFIO bus driver. This is required to make
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) use of PCI drivers using the VFIO framework.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) If you don't know what to do here, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) config VFIO_PCI_VGA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) bool "VFIO PCI support for VGA devices"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) depends on VFIO_PCI && X86 && VGA_ARB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) Support for VGA extension to VFIO PCI. This exposes an additional
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) region on VGA devices for accessing legacy VGA addresses used by
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) BIOS and generic video drivers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) If you don't know what to do here, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) config VFIO_PCI_MMAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) depends on VFIO_PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) def_bool y if !S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) config VFIO_PCI_INTX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) depends on VFIO_PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) def_bool y if !S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) config VFIO_PCI_IGD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) bool "VFIO PCI extensions for Intel graphics (GVT-d)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) depends on VFIO_PCI && X86
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) Support for Intel IGD specific extensions to enable direct
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) assignment to virtual machines. This includes exposing an IGD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) specific firmware table and read-only copies of the host bridge
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) and LPC bridge config space.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) To enable Intel IGD assignment through vfio-pci, say Y.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) config VFIO_PCI_NVLINK2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) def_bool y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) depends on VFIO_PCI && PPC_POWERNV && SPAPR_TCE_IOMMU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) VFIO PCI support for P9 Witherspoon machine with NVIDIA V100 GPUs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) config VFIO_PCI_ZDEV
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) bool "VFIO PCI ZPCI device CLP support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) depends on VFIO_PCI && S390
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) Enabling this option exposes VFIO capabilities containing hardware
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) configuration for zPCI devices. This enables userspace (e.g. QEMU)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) to supply proper configuration values instead of hard-coded defaults
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) for zPCI devices passed through via VFIO on s390.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) Say Y here.