xref: /dpdk/doc/guides/vdpadevs/sfc.rst (revision cfeed08a0b0c2e74a87f5300152c308e32d9db4f)
1..  SPDX-License-Identifier: BSD-3-Clause
2    Copyright(c) 2021 Xilinx Corporation.
3
4Xilinx vDPA driver
5==================
6
7The Xilinx vDPA (vhost data path acceleration) driver (**librte_pmd_sfc_vdpa**)
8provides support for the Xilinx SN1022 SmartNICs family of 10/25/40/50/100 Gbps
9adapters that have support for latest Linux and FreeBSD operating systems.
10
11More information can be found at Xilinx website https://www.xilinx.com.
12
13
14Xilinx vDPA implementation
15--------------------------
16
17ef100 device can be configured in the net device or vDPA mode.
18Adding "class=vdpa" parameter helps to specify that this
19device is to be used in vDPA mode. If this parameter is not specified, device
20will be probed by net/sfc driver and will used as a net device.
21
22This PMD uses libefx (common/sfc_efx) code to access the device firmware.
23
24
25Supported NICs
26--------------
27
28- Xilinx SN1022 SmartNICs
29
30
31Features
32--------
33
34Features of the Xilinx vDPA driver are:
35
36- Compatibility with virtio 0.95 and 1.0
37
38
39Non-supported Features
40----------------------
41
42- Control Queue
43- Multi queue
44- Live Migration
45
46
47Prerequisites
48-------------
49
50Requires firmware version: v1.0.7.0 or higher
51
52Visit `Xilinx Support Downloads <https://www.xilinx.com/support.html>`_
53to get Xilinx Utilities with the latest firmware.
54Follow instructions from Alveo SN1000 SmartNICs User Guide to
55update firmware and configure the adapter.
56
57
58Per-Device Parameters
59~~~~~~~~~~~~~~~~~~~~~
60
61The following per-device parameters can be passed via EAL PCI device
62allowlist option like "-a 02:00.0,arg1=value1,...".
63
64Case-insensitive 1/y/yes/on or 0/n/no/off may be used to specify
65boolean parameters value.
66
67- ``class`` [net|vdpa] (default **net**)
68
69  Choose the mode of operation of ef100 device.
70  **net** device will work as network device and will be probed by net/sfc driver.
71  **vdpa** device will work as vdpa device and will be probed by vdpa/sfc driver.
72  If this parameter is not specified then ef100 device will operate as network device.
73
74- ``mac`` [mac address]
75
76  Configures MAC address which would be used to setup MAC filters.
77
78
79Dynamic Logging Parameters
80~~~~~~~~~~~~~~~~~~~~~~~~~~
81
82One may leverage EAL option "--log-level" to change default levels
83for the log types supported by the driver. The option is used with
84an argument typically consisting of two parts separated by a colon.
85
86Level value is the last part which takes a symbolic name (or integer).
87Log type is the former part which may shell match syntax.
88Depending on the choice of the expression, the given log level may
89be used either for some specific log type or for a subset of types.
90
91SFC vDPA PMD provides the following log types available for control:
92
93- ``pmd.vdpa.sfc.driver`` (default level is **notice**)
94
95  Affects driver-wide messages unrelated to any particular devices.
96
97- ``pmd.vdpa.sfc.main`` (default level is **notice**)
98
99  Matches a subset of per-port log types registered during runtime.
100  A full name for a particular type may be obtained by appending a
101  dot and a PCI device identifier (``XXXX:XX:XX.X``) to the prefix.
102
103- ``pmd.vdpa.sfc.mcdi`` (default level is **notice**)
104
105  Extra logging of the communication with the NIC's management CPU.
106  The format of the log is consumed by the netlogdecode cross-platform
107  tool. May be managed per-port, as explained above.
108