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