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 108809f78cSBruce 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 298809f78cSBruce 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 38330a70b7SSuanming MouFeatures 39330a70b7SSuanming Mou-------- 40330a70b7SSuanming Mou 41330a70b7SSuanming Mou- Multi segments mbuf support. 42330a70b7SSuanming Mou 43cf9b3c36SYuval AvnerySupported NICs 44cf9b3c36SYuval Avnery-------------- 45cf9b3c36SYuval Avnery 46cf9b3c36SYuval Avnery* Mellanox\ |reg| BlueField 2 SmartNIC 47cf9b3c36SYuval Avnery 48cf9b3c36SYuval AvneryPrerequisites 49cf9b3c36SYuval Avnery------------- 50cf9b3c36SYuval Avnery 51cf9b3c36SYuval Avnery- BlueField 2 running Mellanox supported kernel. 52cf9b3c36SYuval Avnery- Enable the RegEx capabilities using system call from the BlueField 2. 53cf9b3c36SYuval Avnery- Official support is not yet released. 54cf9b3c36SYuval Avnery 550253af30SOri KamLimitations 560253af30SOri Kam----------- 570253af30SOri Kam 58*9fa82d28SAdy Agbarih- The firmware version must be greater than XX.31.0364 590253af30SOri Kam 60cf9b3c36SYuval AvneryRun-time configuration 61cf9b3c36SYuval Avnery~~~~~~~~~~~~~~~~~~~~~~ 62cf9b3c36SYuval Avnery 63cf9b3c36SYuval Avnery- **ethtool** operations on related kernel interfaces also affect the PMD. 64