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