| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144 |
- # SPDX-License-Identifier: GPL-2.0-only
- menuconfig VDPA
- tristate "vDPA drivers"
- depends on NET
- help
- Enable this module to support vDPA device that uses a
- datapath which complies with virtio specifications with
- vendor specific control path.
- if VDPA
- config VDPA_SIM
- tristate "vDPA device simulator core"
- depends on RUNTIME_TESTING_MENU
- select VHOST_RING
- select IOMMU_IOVA
- help
- Enable this module to support vDPA device simulators. These devices
- are used for testing, prototyping and development of vDPA.
- config VDPA_SIM_NET
- tristate "vDPA simulator for networking device"
- depends on VDPA_SIM
- select GENERIC_NET_UTILS
- help
- vDPA networking device simulator which loops TX traffic back to RX.
- config VDPA_SIM_BLOCK
- tristate "vDPA simulator for block device"
- depends on VDPA_SIM
- help
- vDPA block device simulator which terminates IO request in a
- memory buffer.
- config VDPA_USER
- tristate "VDUSE (vDPA Device in Userspace) support"
- depends on EVENTFD && MMU && HAS_DMA
- #
- # This driver incorrectly tries to override the dma_ops. It should
- # never have done that, but for now keep it working on architectures
- # that use dma ops
- #
- depends on ARCH_HAS_DMA_OPS
- select VHOST_IOTLB
- select IOMMU_IOVA
- help
- With VDUSE it is possible to emulate a vDPA Device
- in a userspace program.
- config IFCVF
- tristate "Intel IFC VF vDPA driver"
- depends on PCI_MSI
- help
- This kernel module can drive Intel IFC VF NIC to offload
- virtio dataplane traffic to hardware.
- To compile this driver as a module, choose M here: the module will
- be called ifcvf.
- config MLX5_VDPA
- bool
- select VHOST_IOTLB
- help
- Support library for Mellanox VDPA drivers. Provides code that is
- common for all types of VDPA drivers. The following drivers are planned:
- net, block.
- config MLX5_VDPA_NET
- tristate "vDPA driver for ConnectX devices"
- select MLX5_VDPA
- select VHOST_RING
- depends on MLX5_CORE
- help
- VDPA network driver for ConnectX6 and newer. Provides offloading
- of virtio net datapath such that descriptors put on the ring will
- be executed by the hardware. It also supports a variety of stateless
- offloads depending on the actual device used and firmware version.
- config MLX5_VDPA_STEERING_DEBUG
- bool "expose steering counters on debugfs"
- select MLX5_VDPA
- help
- Expose RX steering counters in debugfs to aid in debugging. For each VLAN
- or non VLAN interface, two hardware counters are added to the RX flow
- table: one for unicast and one for multicast.
- The counters counts the number of packets and bytes and exposes them in
- debugfs. Once can read the counters using, e.g.:
- cat /sys/kernel/debug/mlx5/mlx5_core.sf.1/vdpa-0/rx/untagged/ucast/packets
- cat /sys/kernel/debug/mlx5/mlx5_core.sf.1/vdpa-0/rx/untagged/mcast/bytes
- config VP_VDPA
- tristate "Virtio PCI bridge vDPA driver"
- select VIRTIO_PCI_LIB
- depends on PCI_MSI
- help
- This kernel module bridges virtio PCI device to vDPA bus.
- config ALIBABA_ENI_VDPA
- tristate "vDPA driver for Alibaba ENI"
- select VIRTIO_PCI_LIB_LEGACY
- depends on PCI_MSI && X86
- help
- VDPA driver for Alibaba ENI (Elastic Network Interface) which is built upon
- virtio 0.9.5 specification.
- config SNET_VDPA
- tristate "SolidRun's vDPA driver for SolidNET"
- depends on PCI_MSI && PCI_IOV && (HWMON || HWMON=n)
- # This driver MAY create a HWMON device.
- # Depending on (HWMON || HWMON=n) ensures that:
- # If HWMON=n the driver can be compiled either as a module or built-in.
- # If HWMON=y the driver can be compiled either as a module or built-in.
- # If HWMON=m the driver is forced to be compiled as a module.
- # By doing so, IS_ENABLED can be used instead of IS_REACHABLE
- help
- vDPA driver for SolidNET DPU.
- With this driver, the VirtIO dataplane can be
- offloaded to a SolidNET DPU.
- This driver includes a HW monitor device that
- reads health values from the DPU.
- config PDS_VDPA
- tristate "vDPA driver for AMD/Pensando DSC devices"
- select VIRTIO_PCI_LIB
- depends on PCI_MSI
- depends on PDS_CORE
- help
- vDPA network driver for AMD/Pensando's PDS Core devices.
- With this driver, the VirtIO dataplane can be
- offloaded to an AMD/Pensando DSC device.
- config OCTEONEP_VDPA
- tristate "vDPA driver for Octeon DPU devices"
- depends on m
- depends on PCI_MSI
- help
- This is a vDPA driver designed for Marvell's Octeon DPU devices.
- This driver enables the offloading of the VirtIO dataplane to an
- Octeon DPU device.
- Please note that this driver must be built as a module and it
- cannot be loaded until the Octeon emulation software is running.
- endif # VDPA
|