doc: split VFIO section in Linux guide
[dpdk.git] / doc / guides / vdpadevs / sfc.rst
1 ..  SPDX-License-Identifier: BSD-3-Clause
2     Copyright(c) 2021 Xilinx Corporation.
3
4 Xilinx vDPA driver
5 ==================
6
7 The Xilinx vDPA (vhost data path acceleration) driver (**librte_pmd_sfc_vdpa**)
8 provides support for the Xilinx SN1022 SmartNICs family of 10/25/40/50/100 Gbps
9 adapters that have support for latest Linux and FreeBSD operating systems.
10
11 More information can be found at Xilinx website https://www.xilinx.com.
12
13
14 Xilinx vDPA implementation
15 --------------------------
16
17 ef100 device can be configured in the net device or vDPA mode.
18 Adding "class=vdpa" parameter helps to specify that this
19 device is to be used in vDPA mode. If this parameter is not specified, device
20 will be probed by net/sfc driver and will used as a net device.
21
22 This PMD uses libefx (common/sfc_efx) code to access the device firmware.
23
24
25 Supported NICs
26 --------------
27
28 - Xilinx SN1022 SmartNICs
29
30
31 Features
32 --------
33
34 Features of the Xilinx vDPA driver are:
35
36 - Compatibility with virtio 0.95 and 1.0
37
38
39 Non-supported Features
40 ----------------------
41
42 - Control Queue
43 - Multi queue
44 - Live Migration
45
46
47 Prerequisites
48 -------------
49
50 Requires firmware version: v1.0.7.0 or higher
51
52 Visit `Xilinx Support Downloads <https://www.xilinx.com/support.html>`_
53 to get Xilinx Utilities with the latest firmware.
54 Follow instructions from Alveo SN1000 SmartNICs User Guide to
55 update firmware and configure the adapter.
56
57
58 Per-Device Parameters
59 ~~~~~~~~~~~~~~~~~~~~~
60
61 The following per-device parameters can be passed via EAL PCI device
62 allowlist option like "-a 02:00.0,arg1=value1,...".
63
64 Case-insensitive 1/y/yes/on or 0/n/no/off may be used to specify
65 boolean 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
79 Dynamic Logging Parameters
80 ~~~~~~~~~~~~~~~~~~~~~~~~~~
81
82 One may leverage EAL option "--log-level" to change default levels
83 for the log types supported by the driver. The option is used with
84 an argument typically consisting of two parts separated by a colon.
85
86 Level value is the last part which takes a symbolic name (or integer).
87 Log type is the former part which may shell match syntax.
88 Depending on the choice of the expression, the given log level may
89 be used either for some specific log type or for a subset of types.
90
91 SFC 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.