Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0-only
0002 menuconfig VDPA
0003         tristate "vDPA drivers"
0004         depends on NET
0005         help
0006           Enable this module to support vDPA device that uses a
0007           datapath which complies with virtio specifications with
0008           vendor specific control path.
0009 
0010 if VDPA
0011 
0012 config VDPA_SIM
0013         tristate "vDPA device simulator core"
0014         depends on RUNTIME_TESTING_MENU && HAS_DMA
0015         select DMA_OPS
0016         select VHOST_RING
0017         select IOMMU_IOVA
0018         help
0019           Enable this module to support vDPA device simulators. These devices
0020           are used for testing, prototyping and development of vDPA.
0021 
0022 config VDPA_SIM_NET
0023         tristate "vDPA simulator for networking device"
0024         depends on VDPA_SIM
0025         select GENERIC_NET_UTILS
0026         help
0027           vDPA networking device simulator which loops TX traffic back to RX.
0028 
0029 config VDPA_SIM_BLOCK
0030         tristate "vDPA simulator for block device"
0031         depends on VDPA_SIM
0032         help
0033           vDPA block device simulator which terminates IO request in a
0034           memory buffer.
0035 
0036 config VDPA_USER
0037         tristate "VDUSE (vDPA Device in Userspace) support"
0038         depends on EVENTFD && MMU && HAS_DMA
0039         select DMA_OPS
0040         select VHOST_IOTLB
0041         select IOMMU_IOVA
0042         help
0043           With VDUSE it is possible to emulate a vDPA Device
0044           in a userspace program.
0045 
0046 config IFCVF
0047         tristate "Intel IFC VF vDPA driver"
0048         depends on PCI_MSI
0049         help
0050           This kernel module can drive Intel IFC VF NIC to offload
0051           virtio dataplane traffic to hardware.
0052           To compile this driver as a module, choose M here: the module will
0053           be called ifcvf.
0054 
0055 config MLX5_VDPA
0056         bool
0057         select VHOST_IOTLB
0058         help
0059           Support library for Mellanox VDPA drivers. Provides code that is
0060           common for all types of VDPA drivers. The following drivers are planned:
0061           net, block.
0062 
0063 config MLX5_VDPA_NET
0064         tristate "vDPA driver for ConnectX devices"
0065         select MLX5_VDPA
0066         select VHOST_RING
0067         depends on MLX5_CORE
0068         help
0069           VDPA network driver for ConnectX6 and newer. Provides offloading
0070           of virtio net datapath such that descriptors put on the ring will
0071           be executed by the hardware. It also supports a variety of stateless
0072           offloads depending on the actual device used and firmware version.
0073 
0074 config VP_VDPA
0075         tristate "Virtio PCI bridge vDPA driver"
0076         select VIRTIO_PCI_LIB
0077         depends on PCI_MSI
0078         help
0079           This kernel module bridges virtio PCI device to vDPA bus.
0080 
0081 config ALIBABA_ENI_VDPA
0082         tristate "vDPA driver for Alibaba ENI"
0083         select VIRTIO_PCI_LIB_LEGACY
0084         depends on PCI_MSI && X86
0085         help
0086           VDPA driver for Alibaba ENI (Elastic Network Interface) which is built upon
0087           virtio 0.9.5 specification.
0088 
0089 endif # VDPA