^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) menuconfig VDPA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) tristate "vDPA drivers"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) Enable this module to support vDPA device that uses a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) datapath which complies with virtio specifications with
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) vendor specific control path.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) if VDPA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) config VDPA_SIM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) tristate "vDPA device simulator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) depends on RUNTIME_TESTING_MENU && HAS_DMA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) select DMA_OPS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) select VHOST_RING
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) select GENERIC_NET_UTILS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) default n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) vDPA networking device simulator which loop TX traffic back
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) to RX. This device is used for testing, prototyping and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) development of vDPA.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) config IFCVF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) tristate "Intel IFC VF vDPA driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) depends on PCI_MSI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) default n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) This kernel module can drive Intel IFC VF NIC to offload
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) virtio dataplane traffic to hardware.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) To compile this driver as a module, choose M here: the module will
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) be called ifcvf.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) config MLX5_VDPA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) select VHOST_IOTLB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) Support library for Mellanox VDPA drivers. Provides code that is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) common for all types of VDPA drivers. The following drivers are planned:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) net, block.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) config MLX5_VDPA_NET
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) tristate "vDPA driver for ConnectX devices"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) select MLX5_VDPA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) depends on MLX5_CORE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) default n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) VDPA network driver for ConnectX6 and newer. Provides offloading
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) of virtio net datapath such that descriptors put on the ring will
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) be executed by the hardware. It also supports a variety of stateless
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) offloads depending on the actual device used and firmware version.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) endif # VDPA