86 lines · plain
1.. SPDX-License-Identifier: GPL-2.0+2.. note: can be edited and viewed with /usr/bin/formiko-vim3 4==========================================================5PCI vDPA driver for the AMD/Pensando(R) DSC adapter family6==========================================================7 8AMD/Pensando vDPA VF Device Driver9 10Copyright(c) 2023 Advanced Micro Devices, Inc11 12Overview13========14 15The ``pds_vdpa`` driver is an auxiliary bus driver that supplies16a vDPA device for use by the virtio network stack. It is used with17the Pensando Virtual Function devices that offer vDPA and virtio queue18services. It depends on the ``pds_core`` driver and hardware for the PF19and VF PCI handling as well as for device configuration services.20 21Using the device22================23 24The ``pds_vdpa`` device is enabled via multiple configuration steps and25depends on the ``pds_core`` driver to create and enable SR-IOV Virtual26Function devices. After the VFs are enabled, we enable the vDPA service27in the ``pds_core`` device to create the auxiliary devices used by pds_vdpa.28 29Example steps:30 31.. code-block:: bash32 33 #!/bin/bash34 35 modprobe pds_core36 modprobe vdpa37 modprobe pds_vdpa38 39 PF_BDF=`ls /sys/module/pds_core/drivers/pci\:pds_core/*/sriov_numvfs | awk -F / '{print $7}'`40 41 # Enable vDPA VF auxiliary device(s) in the PF42 devlink dev param set pci/$PF_BDF name enable_vnet cmode runtime value true43 44 # Create a VF for vDPA use45 echo 1 > /sys/bus/pci/drivers/pds_core/$PF_BDF/sriov_numvfs46 47 # Find the vDPA services/devices available48 PDS_VDPA_MGMT=`vdpa mgmtdev show | grep vDPA | head -1 | cut -d: -f1`49 50 # Create a vDPA device for use in virtio network configurations51 vdpa dev add name vdpa1 mgmtdev $PDS_VDPA_MGMT mac 00:11:22:33:44:5552 53 # Set up an ethernet interface on the vdpa device54 modprobe virtio_vdpa55 56 57 58Enabling the driver59===================60 61The driver is enabled via the standard kernel configuration system,62using the make command::63 64 make oldconfig/menuconfig/etc.65 66The driver is located in the menu structure at:67 68 -> Device Drivers69 -> Network device support (NETDEVICES [=y])70 -> Ethernet driver support71 -> Pensando devices72 -> Pensando Ethernet PDS_VDPA Support73 74Support75=======76 77For general Linux networking support, please use the netdev mailing78list, which is monitored by Pensando personnel::79 80 netdev@vger.kernel.org81 82For more specific support needs, please use the Pensando driver support83email::84 85 drivers@pensando.io86