blob: a503c1b2bfd9618b39c0e13303172b8ee2ec9444 [file] [log] [blame]
Jason Wang961e9c82020-03-26 22:01:21 +08001# SPDX-License-Identifier: GPL-2.0-only
Michael S. Tsirkin58ad1372020-04-12 04:36:55 -04002menuconfig VDPA
3 tristate "vDPA drivers"
Parav Pandit33b34752021-01-05 12:32:00 +02004 depends on NET
Jason Wang961e9c82020-03-26 22:01:21 +08005 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.
Jason Wang2c53d0f2020-03-26 22:01:24 +08009
Michael S. Tsirkin58ad1372020-04-12 04:36:55 -040010if VDPA
Jason Wang2c53d0f2020-03-26 22:01:24 +080011
12config VDPA_SIM
Max Gurtovoydb1e8bb2020-12-15 15:42:56 +010013 tristate "vDPA device simulator core"
Michael S. Tsirkin213e7722020-04-23 08:36:57 -040014 depends on RUNTIME_TESTING_MENU && HAS_DMA
Christoph Hellwig2f9237d2020-07-08 09:30:00 +020015 select DMA_OPS
Jason Wang2c53d0f2020-03-26 22:01:24 +080016 select VHOST_RING
Stefano Garzarella4080fc12021-03-15 17:34:37 +010017 select IOMMU_IOVA
Max Gurtovoydb1e8bb2020-12-15 15:42:56 +010018 help
19 Enable this module to support vDPA device simulators. These devices
20 are used for testing, prototyping and development of vDPA.
21
22config VDPA_SIM_NET
23 tristate "vDPA simulator for networking device"
24 depends on VDPA_SIM
Laurent Viviera312db62020-11-13 16:57:06 +010025 select GENERIC_NET_UTILS
Jason Wang2c53d0f2020-03-26 22:01:24 +080026 help
Max Gurtovoydb1e8bb2020-12-15 15:42:56 +010027 vDPA networking device simulator which loops TX traffic back to RX.
Jason Wang2c53d0f2020-03-26 22:01:24 +080028
Max Gurtovoy0c853c2c22021-03-15 17:34:47 +010029config 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
Zhu Lingshan5a2414b2020-03-26 22:01:25 +080036config IFCVF
Michael S. Tsirkin58ad1372020-04-12 04:36:55 -040037 tristate "Intel IFC VF vDPA driver"
Zhu Lingshan5a2414b2020-03-26 22:01:25 +080038 depends on PCI_MSI
Zhu Lingshan5a2414b2020-03-26 22:01:25 +080039 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
Eli Cohen29064bf2020-08-04 19:20:46 +030045config MLX5_VDPA
Eli Cohenaff90772020-10-07 09:40:11 +030046 bool
Randy Dunlap98701a22020-11-28 13:39:05 -080047 select VHOST_IOTLB
Eli Cohen29064bf2020-08-04 19:20:46 +030048 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
Eli Cohen1a86b372020-08-04 19:20:48 +030053config MLX5_VDPA_NET
54 tristate "vDPA driver for ConnectX devices"
Eli Cohenaff90772020-10-07 09:40:11 +030055 select MLX5_VDPA
56 depends on MLX5_CORE
Eli Cohen1a86b372020-08-04 19:20:48 +030057 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
Jason Wang64b9f642021-02-23 14:19:05 +080063config 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
Michael S. Tsirkin58ad1372020-04-12 04:36:55 -040070endif # VDPA