Merge tag 'for-5.13-rc6-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave...
[platform/kernel/linux-rpi.git] / drivers / vdpa / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 menuconfig VDPA
3         tristate "vDPA drivers"
4         depends on NET
5         help
6           Enable this module to support vDPA device that uses a
7           datapath which complies with virtio specifications with
8           vendor specific control path.
9
10 if VDPA
11
12 config VDPA_SIM
13         tristate "vDPA device simulator core"
14         depends on RUNTIME_TESTING_MENU && HAS_DMA
15         select DMA_OPS
16         select VHOST_RING
17         select IOMMU_IOVA
18         help
19           Enable this module to support vDPA device simulators. These devices
20           are used for testing, prototyping and development of vDPA.
21
22 config VDPA_SIM_NET
23         tristate "vDPA simulator for networking device"
24         depends on VDPA_SIM
25         select GENERIC_NET_UTILS
26         help
27           vDPA networking device simulator which loops TX traffic back to RX.
28
29 config VDPA_SIM_BLOCK
30         tristate "vDPA simulator for block device"
31         depends on VDPA_SIM
32         help
33           vDPA block device simulator which terminates IO request in a
34           memory buffer.
35
36 config IFCVF
37         tristate "Intel IFC VF vDPA driver"
38         depends on PCI_MSI
39         help
40           This kernel module can drive Intel IFC VF NIC to offload
41           virtio dataplane traffic to hardware.
42           To compile this driver as a module, choose M here: the module will
43           be called ifcvf.
44
45 config MLX5_VDPA
46         bool
47         select VHOST_IOTLB
48         help
49           Support library for Mellanox VDPA drivers. Provides code that is
50           common for all types of VDPA drivers. The following drivers are planned:
51           net, block.
52
53 config MLX5_VDPA_NET
54         tristate "vDPA driver for ConnectX devices"
55         select MLX5_VDPA
56         depends on MLX5_CORE
57         help
58           VDPA network driver for ConnectX6 and newer. Provides offloading
59           of virtio net datapath such that descriptors put on the ring will
60           be executed by the hardware. It also supports a variety of stateless
61           offloads depending on the actual device used and firmware version.
62
63 config VP_VDPA
64         tristate "Virtio PCI bridge vDPA driver"
65         select VIRTIO_PCI_LIB
66         depends on PCI_MSI
67         help
68           This kernel module bridges virtio PCI device to vDPA bus.
69
70 endif # VDPA