1 # SPDX-License-Identifier: GPL-2.0-only
3 tristate "vDPA drivers"
6 Enable this module to support vDPA device that uses a
7 datapath which complies with virtio specifications with
8 vendor specific control path.
13 tristate "vDPA device simulator core"
14 depends on RUNTIME_TESTING_MENU && HAS_DMA
19 Enable this module to support vDPA device simulators. These devices
20 are used for testing, prototyping and development of vDPA.
23 tristate "vDPA simulator for networking device"
25 select GENERIC_NET_UTILS
27 vDPA networking device simulator which loops TX traffic back to RX.
30 tristate "vDPA simulator for block device"
33 vDPA block device simulator which terminates IO request in a
37 tristate "VDUSE (vDPA Device in Userspace) support"
38 depends on EVENTFD && MMU && HAS_DMA
43 With VDUSE it is possible to emulate a vDPA Device
44 in a userspace program.
47 tristate "Intel IFC VF vDPA driver"
50 This kernel module can drive Intel IFC VF NIC to offload
51 virtio dataplane traffic to hardware.
52 To compile this driver as a module, choose M here: the module will
59 Support library for Mellanox VDPA drivers. Provides code that is
60 common for all types of VDPA drivers. The following drivers are planned:
64 tristate "vDPA driver for ConnectX devices"
69 VDPA network driver for ConnectX6 and newer. Provides offloading
70 of virtio net datapath such that descriptors put on the ring will
71 be executed by the hardware. It also supports a variety of stateless
72 offloads depending on the actual device used and firmware version.
74 config MLX5_VDPA_STEERING_DEBUG
75 bool "expose steering counters on debugfs"
78 Expose RX steering counters in debugfs to aid in debugging. For each VLAN
79 or non VLAN interface, two hardware counters are added to the RX flow
80 table: one for unicast and one for multicast.
81 The counters counts the number of packets and bytes and exposes them in
82 debugfs. Once can read the counters using, e.g.:
83 cat /sys/kernel/debug/mlx5/mlx5_core.sf.1/vdpa-0/rx/untagged/ucast/packets
84 cat /sys/kernel/debug/mlx5/mlx5_core.sf.1/vdpa-0/rx/untagged/mcast/bytes
87 tristate "Virtio PCI bridge vDPA driver"
91 This kernel module bridges virtio PCI device to vDPA bus.
93 config ALIBABA_ENI_VDPA
94 tristate "vDPA driver for Alibaba ENI"
95 select VIRTIO_PCI_LIB_LEGACY
96 depends on PCI_MSI && X86
98 VDPA driver for Alibaba ENI (Elastic Network Interface) which is built upon
99 virtio 0.9.5 specification.
102 tristate "SolidRun's vDPA driver for SolidNET"
103 depends on PCI_MSI && PCI_IOV && (HWMON || HWMON=n)
105 # This driver MAY create a HWMON device.
106 # Depending on (HWMON || HWMON=n) ensures that:
107 # If HWMON=n the driver can be compiled either as a module or built-in.
108 # If HWMON=y the driver can be compiled either as a module or built-in.
109 # If HWMON=m the driver is forced to be compiled as a module.
110 # By doing so, IS_ENABLED can be used instead of IS_REACHABLE
113 vDPA driver for SolidNET DPU.
114 With this driver, the VirtIO dataplane can be
115 offloaded to a SolidNET DPU.
116 This driver includes a HW monitor device that
117 reads health values from the DPU.
120 tristate "vDPA driver for AMD/Pensando DSC devices"
121 select VIRTIO_PCI_LIB
125 vDPA network driver for AMD/Pensando's PDS Core devices.
126 With this driver, the VirtIO dataplane can be
127 offloaded to an AMD/Pensando DSC device.