pds_vdpa: pds_vdps.rst and Kconfig
Add the documentation and Kconfig entry for pds_vdpa driver. Signed-off-by: Shannon Nelson <shannon.nelson@amd.com> Acked-by: Jason Wang <jasowang@redhat.com> Message-Id: <20230519215632.12343-12-shannon.nelson@amd.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
67f27b8b3a
commit
9a8864d2a8
|
@ -0,0 +1,85 @@
|
||||||
|
.. SPDX-License-Identifier: GPL-2.0+
|
||||||
|
.. note: can be edited and viewed with /usr/bin/formiko-vim
|
||||||
|
|
||||||
|
==========================================================
|
||||||
|
PCI vDPA driver for the AMD/Pensando(R) DSC adapter family
|
||||||
|
==========================================================
|
||||||
|
|
||||||
|
AMD/Pensando vDPA VF Device Driver
|
||||||
|
|
||||||
|
Copyright(c) 2023 Advanced Micro Devices, Inc
|
||||||
|
|
||||||
|
Overview
|
||||||
|
========
|
||||||
|
|
||||||
|
The ``pds_vdpa`` driver is an auxiliary bus driver that supplies
|
||||||
|
a vDPA device for use by the virtio network stack. It is used with
|
||||||
|
the Pensando Virtual Function devices that offer vDPA and virtio queue
|
||||||
|
services. It depends on the ``pds_core`` driver and hardware for the PF
|
||||||
|
and VF PCI handling as well as for device configuration services.
|
||||||
|
|
||||||
|
Using the device
|
||||||
|
================
|
||||||
|
|
||||||
|
The ``pds_vdpa`` device is enabled via multiple configuration steps and
|
||||||
|
depends on the ``pds_core`` driver to create and enable SR-IOV Virtual
|
||||||
|
Function devices. After the VFs are enabled, we enable the vDPA service
|
||||||
|
in the ``pds_core`` device to create the auxiliary devices used by pds_vdpa.
|
||||||
|
|
||||||
|
Example steps:
|
||||||
|
|
||||||
|
.. code-block:: bash
|
||||||
|
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
modprobe pds_core
|
||||||
|
modprobe vdpa
|
||||||
|
modprobe pds_vdpa
|
||||||
|
|
||||||
|
PF_BDF=`ls /sys/module/pds_core/drivers/pci\:pds_core/*/sriov_numvfs | awk -F / '{print $7}'`
|
||||||
|
|
||||||
|
# Enable vDPA VF auxiliary device(s) in the PF
|
||||||
|
devlink dev param set pci/$PF_BDF name enable_vnet cmode runtime value true
|
||||||
|
|
||||||
|
# Create a VF for vDPA use
|
||||||
|
echo 1 > /sys/bus/pci/drivers/pds_core/$PF_BDF/sriov_numvfs
|
||||||
|
|
||||||
|
# Find the vDPA services/devices available
|
||||||
|
PDS_VDPA_MGMT=`vdpa mgmtdev show | grep vDPA | head -1 | cut -d: -f1`
|
||||||
|
|
||||||
|
# Create a vDPA device for use in virtio network configurations
|
||||||
|
vdpa dev add name vdpa1 mgmtdev $PDS_VDPA_MGMT mac 00:11:22:33:44:55
|
||||||
|
|
||||||
|
# Set up an ethernet interface on the vdpa device
|
||||||
|
modprobe virtio_vdpa
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Enabling the driver
|
||||||
|
===================
|
||||||
|
|
||||||
|
The driver is enabled via the standard kernel configuration system,
|
||||||
|
using the make command::
|
||||||
|
|
||||||
|
make oldconfig/menuconfig/etc.
|
||||||
|
|
||||||
|
The driver is located in the menu structure at:
|
||||||
|
|
||||||
|
-> Device Drivers
|
||||||
|
-> Network device support (NETDEVICES [=y])
|
||||||
|
-> Ethernet driver support
|
||||||
|
-> Pensando devices
|
||||||
|
-> Pensando Ethernet PDS_VDPA Support
|
||||||
|
|
||||||
|
Support
|
||||||
|
=======
|
||||||
|
|
||||||
|
For general Linux networking support, please use the netdev mailing
|
||||||
|
list, which is monitored by Pensando personnel::
|
||||||
|
|
||||||
|
netdev@vger.kernel.org
|
||||||
|
|
||||||
|
For more specific support needs, please use the Pensando driver support
|
||||||
|
email::
|
||||||
|
|
||||||
|
drivers@pensando.io
|
|
@ -15,6 +15,7 @@ Contents:
|
||||||
amazon/ena
|
amazon/ena
|
||||||
altera/altera_tse
|
altera/altera_tse
|
||||||
amd/pds_core
|
amd/pds_core
|
||||||
|
amd/pds_vdpa
|
||||||
aquantia/atlantic
|
aquantia/atlantic
|
||||||
chelsio/cxgb
|
chelsio/cxgb
|
||||||
cirrus/cs89x0
|
cirrus/cs89x0
|
||||||
|
|
|
@ -22325,6 +22325,10 @@ F: include/linux/vringh.h
|
||||||
F: include/uapi/linux/virtio_*.h
|
F: include/uapi/linux/virtio_*.h
|
||||||
F: tools/virtio/
|
F: tools/virtio/
|
||||||
|
|
||||||
|
PDS DSC VIRTIO DATA PATH ACCELERATOR
|
||||||
|
R: Shannon Nelson <shannon.nelson@amd.com>
|
||||||
|
F: drivers/vdpa/pds/
|
||||||
|
|
||||||
VIRTIO CRYPTO DRIVER
|
VIRTIO CRYPTO DRIVER
|
||||||
M: Gonglei <arei.gonglei@huawei.com>
|
M: Gonglei <arei.gonglei@huawei.com>
|
||||||
L: virtualization@lists.linux-foundation.org
|
L: virtualization@lists.linux-foundation.org
|
||||||
|
|
|
@ -116,4 +116,14 @@ config ALIBABA_ENI_VDPA
|
||||||
This driver includes a HW monitor device that
|
This driver includes a HW monitor device that
|
||||||
reads health values from the DPU.
|
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.
|
||||||
|
|
||||||
endif # VDPA
|
endif # VDPA
|
||||||
|
|
Loading…
Reference in New Issue