regex/mlx5: introduce driver for BlueField 2
[dpdk.git] / doc / guides / regexdevs / mlx5.rst
1 .. SPDX-License-Identifier: BSD-3-Clause
2    Copyright 2020 Mellanox Technologies, Ltd
3
4 .. include:: <isonum.txt>
5
6 MLX5 RegEx driver
7 =================
8
9 The MLX5 RegEx (Regular Expression) driver library
10 (**librte_pmd_mlx5_regex**) provides support for **Mellanox BlueField 2**
11 families of 25/50/100/200 Gb/s adapters.
12
13 Design
14 ------
15
16 This PMD is configuring the RegEx HW engine.
17 For the PMD to work, the application must supply
18 a precompiled rule file in rof2 format.
19
20 The PMD uses libibverbs and libmlx5 to access the device firmware
21 or directly the hardware components.
22 There are different levels of objects and bypassing abilities
23 to get the best performances:
24
25 - Verbs is a complete high-level generic API
26 - Direct Verbs is a device-specific API
27 - DevX allows to access firmware objects
28
29 Enabling librte_pmd_mlx5_regex causes DPDK applications to be linked against
30 libibverbs.
31
32 Mellanox mlx5 pci device can be probed by number of different pci devices,
33 for example net / vDPA / RegEx. To select the RegEx PMD ``class=regex`` should
34 be specified as device parameter. The RegEx device can be probed and used with
35 other Mellanox devices, by adding more options in the class.
36 For example: ``class=net:regex`` will probe both the net PMD and the RegEx PMD.
37
38 Supported NICs
39 --------------
40
41 * Mellanox\ |reg| BlueField 2 SmartNIC
42
43 Prerequisites
44 -------------
45
46 - BlueField 2 running Mellanox supported kernel.
47 - Enable the RegEx capabilities using system call from the BlueField 2.
48 - Official support is not yet released.
49
50 Run-time configuration
51 ~~~~~~~~~~~~~~~~~~~~~~
52
53 - **ethtool** operations on related kernel interfaces also affect the PMD.