replace Mellanox with NVIDIA

NVIDIA acquired Mellanox Technologies in 2020.
The DPDK documentation and code might still include instances
of or references to Mellanox trademarks (like BlueField and ConnectX)
that are now NVIDIA trademarks.

The PCI IDs and copyrights are unchanged.

Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
Acked-by: Gal Cohen <galco@nvidia.com>
This commit is contained in:
Thomas Monjalon 2022-09-22 16:53:52 +02:00
parent 96798dcfc2
commit 0f91f952be
14 changed files with 150 additions and 97 deletions

View File

@ -815,7 +815,7 @@ F: drivers/net/octeon_ep/
F: doc/guides/nics/features/octeon_ep.ini F: doc/guides/nics/features/octeon_ep.ini
F: doc/guides/nics/octeon_ep.rst F: doc/guides/nics/octeon_ep.rst
Mellanox mlx4 NVIDIA mlx4
M: Matan Azrad <matan@nvidia.com> M: Matan Azrad <matan@nvidia.com>
M: Viacheslav Ovsiienko <viacheslavo@nvidia.com> M: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
T: git://dpdk.org/next/dpdk-next-net-mlx T: git://dpdk.org/next/dpdk-next-net-mlx
@ -823,7 +823,7 @@ F: drivers/net/mlx4/
F: doc/guides/nics/mlx4.rst F: doc/guides/nics/mlx4.rst
F: doc/guides/nics/features/mlx4.ini F: doc/guides/nics/features/mlx4.ini
Mellanox mlx5 NVIDIA mlx5
M: Matan Azrad <matan@nvidia.com> M: Matan Azrad <matan@nvidia.com>
M: Viacheslav Ovsiienko <viacheslavo@nvidia.com> M: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
T: git://dpdk.org/next/dpdk-next-net-mlx T: git://dpdk.org/next/dpdk-next-net-mlx
@ -1107,7 +1107,7 @@ F: drivers/crypto/nitrox/
F: doc/guides/cryptodevs/nitrox.rst F: doc/guides/cryptodevs/nitrox.rst
F: doc/guides/cryptodevs/features/nitrox.ini F: doc/guides/cryptodevs/features/nitrox.ini
Mellanox mlx5 NVIDIA mlx5
M: Matan Azrad <matan@nvidia.com> M: Matan Azrad <matan@nvidia.com>
F: drivers/crypto/mlx5/ F: drivers/crypto/mlx5/
F: doc/guides/cryptodevs/mlx5.rst F: doc/guides/cryptodevs/mlx5.rst
@ -1174,7 +1174,7 @@ F: drivers/compress/isal/
F: doc/guides/compressdevs/isal.rst F: doc/guides/compressdevs/isal.rst
F: doc/guides/compressdevs/features/isal.ini F: doc/guides/compressdevs/features/isal.ini
Mellanox mlx5 NVIDIA mlx5
M: Matan Azrad <matan@nvidia.com> M: Matan Azrad <matan@nvidia.com>
F: drivers/compress/mlx5/ F: drivers/compress/mlx5/
@ -1233,7 +1233,7 @@ F: drivers/regex/cn9k/
F: doc/guides/regexdevs/cn9k.rst F: doc/guides/regexdevs/cn9k.rst
F: doc/guides/regexdevs/features/cn9k.ini F: doc/guides/regexdevs/features/cn9k.ini
Mellanox mlx5 NVIDIA mlx5
M: Ori Kam <orika@nvidia.com> M: Ori Kam <orika@nvidia.com>
F: drivers/regex/mlx5/ F: drivers/regex/mlx5/
F: doc/guides/regexdevs/mlx5.rst F: doc/guides/regexdevs/mlx5.rst
@ -1250,7 +1250,7 @@ F: drivers/vdpa/ifc/
F: doc/guides/vdpadevs/ifc.rst F: doc/guides/vdpadevs/ifc.rst
F: doc/guides/vdpadevs/features/ifcvf.ini F: doc/guides/vdpadevs/features/ifcvf.ini
Mellanox mlx5 vDPA NVIDIA mlx5 vDPA
M: Matan Azrad <matan@nvidia.com> M: Matan Azrad <matan@nvidia.com>
M: Viacheslav Ovsiienko <viacheslavo@nvidia.com> M: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
F: drivers/vdpa/mlx5/ F: drivers/vdpa/mlx5/

View File

@ -3,8 +3,15 @@
.. include:: <isonum.txt> .. include:: <isonum.txt>
MLX5 Compress Driver NVIDIA MLX5 Compress Driver
==================== ===========================
.. note::
NVIDIA acquired Mellanox Technologies in 2020.
The DPDK documentation and code might still include instances
of or references to Mellanox trademarks (like BlueField and ConnectX)
that are now NVIDIA trademarks.
The mlx5 compress driver library The mlx5 compress driver library
(**librte_compress_mlx5**) provides support for **NVIDIA BlueField-2** (**librte_compress_mlx5**) provides support for **NVIDIA BlueField-2**
@ -80,5 +87,5 @@ Supported NICs
Prerequisites Prerequisites
------------- -------------
- Mellanox OFED version: **5.2** - NVIDIA MLNX_OFED version: **5.2**
See :ref:`mlx5 common prerequisites <mlx5_linux_prerequisites>` for more details. See :ref:`mlx5 common prerequisites <mlx5_linux_prerequisites>` for more details.

View File

@ -3,8 +3,15 @@
.. include:: <isonum.txt> .. include:: <isonum.txt>
MLX5 Crypto Driver NVIDIA MLX5 Crypto Driver
================== =========================
.. note::
NVIDIA acquired Mellanox Technologies in 2020.
The DPDK documentation and code might still include instances
of or references to Mellanox trademarks (like BlueField and ConnectX)
that are now NVIDIA trademarks.
The MLX5 crypto driver library The MLX5 crypto driver library
(**librte_crypto_mlx5**) provides support for **NVIDIA ConnectX-6** (**librte_crypto_mlx5**) provides support for **NVIDIA ConnectX-6**
@ -165,7 +172,7 @@ FW Prerequisites
Linux Prerequisites Linux Prerequisites
~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~
- Mellanox OFED version: **5.3**. - NVIDIA MLNX_OFED version: **5.3**.
- Compilation can be done also with rdma-core v15+. - Compilation can be done also with rdma-core v15+.
See :ref:`mlx5 common prerequisites <mlx5_linux_prerequisites>` for more details. See :ref:`mlx5 common prerequisites <mlx5_linux_prerequisites>` for more details.
@ -173,5 +180,5 @@ Linux Prerequisites
Windows Prerequisites Windows Prerequisites
~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~
- Mellanox WINOF-2 version: **2.60** or higher. - NVIDIA WINOF-2 version: **2.60** or higher.
See :ref:`mlx5 common prerequisites <mlx5_windows_prerequisites>` for more details. See :ref:`mlx5 common prerequisites <mlx5_windows_prerequisites>` for more details.

View File

@ -156,13 +156,13 @@ Minimal requirements to enable the CUDA driver library are:
- CUDA 11.4 Driver API or newer - CUDA 11.4 Driver API or newer
`GPUDirect RDMA Technology <https://docs.nvidia.com/cuda/gpudirect-rdma/index.html>`_ `GPUDirect RDMA Technology <https://docs.nvidia.com/cuda/gpudirect-rdma/index.html>`_
allows compatible network cards (e.g. Mellanox) to directly send and receive packets allows compatible network cards (e.g. ConnectX) to directly send and receive packets
using GPU memory instead of additional memory copies through the CPU system memory. using GPU memory instead of additional memory copies through the CPU system memory.
To enable this technology, system requirements are: To enable this technology, system requirements are:
- `nvidia-peermem <https://docs.nvidia.com/cuda/gpudirect-rdma/index.html#nvidia-peermem>`_ - `nvidia-peermem <https://docs.nvidia.com/cuda/gpudirect-rdma/index.html#nvidia-peermem>`_
module running on the system; module running on the system;
- Mellanox network card ConnectX-5 or newer (BlueField models included); - NVIDIA network card ConnectX-5 or newer (BlueField models included);
- DPDK mlx5 PMD enabled; - DPDK mlx5 PMD enabled;
- To reach the best performance, an additional PCIe switch between GPU and NIC is recommended. - To reach the best performance, an additional PCIe switch between GPU and NIC is recommended.

View File

@ -44,10 +44,10 @@ module.
Flow Bifurcation Overview Flow Bifurcation Overview
Using Flow Bifurcation on Mellanox ConnectX Using Flow Bifurcation on NVIDIA ConnectX
------------------------------------------- -----------------------------------------
The Mellanox devices are :ref:`natively bifurcated <bifurcated_driver>`, The NVIDIA devices are :ref:`natively bifurcated <bifurcated_driver>`,
so there is no need to split into SR-IOV PF/VF so there is no need to split into SR-IOV PF/VF
in order to get the flow bifurcation mechanism. in order to get the flow bifurcation mechanism.
The full device is already shared with the kernel driver. The full device is already shared with the kernel driver.

View File

@ -318,8 +318,8 @@ Such model has the following benefits:
strictly what is received in DPDK. strictly what is received in DPDK.
More about the bifurcated driver can be found in More about the bifurcated driver can be found in
`Mellanox Bifurcated DPDK PMD NVIDIA `bifurcated PMD
<https://www.dpdk.org/wp-content/uploads/sites/35/2016/10/Day02-Session04-RonyEfraim-Userspace2016.pdf>`__. <https://www.dpdk.org/wp-content/uploads/sites/35/2016/10/Day02-Session04-RonyEfraim-Userspace2016.pdf>`_ presentation.
.. _uio: .. _uio:

View File

@ -2,17 +2,20 @@
Copyright 2012 6WIND S.A. Copyright 2012 6WIND S.A.
Copyright 2015 Mellanox Technologies, Ltd Copyright 2015 Mellanox Technologies, Ltd
MLX4 poll mode driver library NVIDIA MLX4 Ethernet Driver
============================= ===========================
.. note::
NVIDIA acquired Mellanox Technologies in 2020.
The DPDK documentation and code might still include instances
of or references to Mellanox trademarks (like BlueField and ConnectX)
that are now NVIDIA trademarks.
The MLX4 poll mode driver library (**librte_net_mlx4**) implements support The MLX4 poll mode driver library (**librte_net_mlx4**) implements support
for **Mellanox ConnectX-3** and **Mellanox ConnectX-3 Pro** 10/40 Gbps adapters for **NVIDIA ConnectX-3** and **NVIDIA ConnectX-3 Pro** 10/40 Gbps adapters
as well as their virtual functions (VF) in SR-IOV context. as well as their virtual functions (VF) in SR-IOV context.
Information and documentation about this family of adapters can be found on
the `Mellanox website <http://www.mellanox.com>`_. Help is also provided by
the `Mellanox community <http://community.mellanox.com/welcome>`_.
There is also a `section dedicated to this poll mode driver There is also a `section dedicated to this poll mode driver
<https://developer.nvidia.com/networking/dpdk>`_. <https://developer.nvidia.com/networking/dpdk>`_.
@ -20,7 +23,7 @@ There is also a `section dedicated to this poll mode driver
Implementation details Implementation details
---------------------- ----------------------
Most Mellanox ConnectX-3 devices provide two ports but expose a single PCI Most NVIDIA ConnectX-3 devices provide two ports but expose a single PCI
bus address, thus unlike most drivers, librte_net_mlx4 registers itself as a bus address, thus unlike most drivers, librte_net_mlx4 registers itself as a
PCI driver that allocates one Ethernet device per detected port. PCI driver that allocates one Ethernet device per detected port.
@ -161,7 +164,7 @@ DPDK and must be installed separately:
- **libmlx4** (provided by rdma-core package) - **libmlx4** (provided by rdma-core package)
Low-level user space driver library for Mellanox ConnectX-3 devices, Low-level user space driver library for NVIDIA ConnectX-3 devices,
it is automatically loaded by libibverbs. it is automatically loaded by libibverbs.
This library basically implements send/receive calls to the hardware This library basically implements send/receive calls to the hardware
@ -176,14 +179,14 @@ DPDK and must be installed separately:
Unlike most other PMDs, these modules must remain loaded and bound to Unlike most other PMDs, these modules must remain loaded and bound to
their devices: their devices:
- mlx4_core: hardware driver managing Mellanox ConnectX-3 devices. - mlx4_core: hardware driver managing NVIDIA ConnectX-3 devices.
- mlx4_en: Ethernet device driver that provides kernel network interfaces. - mlx4_en: Ethernet device driver that provides kernel network interfaces.
- mlx4_ib: InfiniBand device driver. - mlx4_ib: InfiniBand device driver.
- ib_uverbs: user space driver for verbs (entry point for libibverbs). - ib_uverbs: user space driver for verbs (entry point for libibverbs).
- **Firmware update** - **Firmware update**
Mellanox OFED releases include firmware updates for ConnectX-3 adapters. NVIDIA MLNX_OFED releases include firmware updates for ConnectX-3 adapters.
Because each release provides new features, these updates must be applied to Because each release provides new features, these updates must be applied to
match the kernel modules and libraries they come with. match the kernel modules and libraries they come with.
@ -194,7 +197,7 @@ DPDK and must be installed separately:
licensed. licensed.
Depending on system constraints and user preferences either RDMA core library Depending on system constraints and user preferences either RDMA core library
with a recent enough Linux kernel release (recommended) or Mellanox OFED, with a recent enough Linux kernel release (recommended) or NVIDIA MLNX_OFED,
which provides compatibility with older releases. which provides compatibility with older releases.
Current RDMA core package and Linux kernel (recommended) Current RDMA core package and Linux kernel (recommended)
@ -211,29 +214,29 @@ Current RDMA core package and Linux kernel (recommended)
.. _`RDMA core installation documentation`: https://raw.githubusercontent.com/linux-rdma/rdma-core/master/README.md .. _`RDMA core installation documentation`: https://raw.githubusercontent.com/linux-rdma/rdma-core/master/README.md
.. _Mellanox_OFED_as_a_fallback: .. _OFED_as_a_fallback:
Mellanox OFED as a fallback NVIDIA MLNX_OFED as a fallback
~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- `Mellanox OFED`_ version: **4.4, 4.5, 4.6**. - `NVIDIA MLNX_OFED`_ version: **4.4, 4.5, 4.6**.
- firmware version: **2.42.5000** and above. - firmware version: **2.42.5000** and above.
.. _`Mellanox OFED`: https://network.nvidia.com/products/infiniband-drivers/linux/mlnx_ofed/ .. _`NVIDIA MLNX_OFED`: https://network.nvidia.com/products/infiniband-drivers/linux/mlnx_ofed/
.. note:: .. note::
Several versions of Mellanox OFED are available. Installing the version Several versions of NVIDIA MLNX_OFED are available. Installing the version
this DPDK release was developed and tested against is strongly this DPDK release was developed and tested against is strongly
recommended. Please check the `prerequisites`_. recommended. Please check the `prerequisites`_.
Installing Mellanox OFED Installing NVIDIA MLNX_OFED
^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^
1. Download latest Mellanox OFED. 1. Download latest NVIDIA MLNX_OFED.
2. Install the required libraries and kernel modules either by installing 2. Install the required libraries and kernel modules either by installing
only the required set, or by installing the entire Mellanox OFED: only the required set, or by installing the entire NVIDIA MLNX_OFED:
For bare metal use:: For bare metal use::
@ -270,9 +273,9 @@ Quick Start Guide
.. note:: .. note::
If using Mellanox OFED one can permanently set the port link If using NVIDIA MLNX_OFED one can permanently set the port link
to Ethernet using connectx_port_config tool provided by it. to Ethernet using connectx_port_config tool provided by it.
:ref:`Mellanox_OFED_as_a_fallback`: :ref:`OFED_as_a_fallback`:
.. _QSG_2: .. _QSG_2:
@ -352,7 +355,7 @@ Performance tuning
Usage example Usage example
------------- -------------
This section demonstrates how to launch **testpmd** with Mellanox ConnectX-3 This section demonstrates how to launch **testpmd** with NVIDIA ConnectX-3
devices managed by librte_net_mlx4. devices managed by librte_net_mlx4.
#. Load the kernel modules:: #. Load the kernel modules::
@ -400,7 +403,7 @@ devices managed by librte_net_mlx4.
.. note:: .. note::
There are only two distinct PCI bus addresses because the Mellanox There are only two distinct PCI bus addresses because the NVIDIA
ConnectX-3 adapters installed on this system are dual port. ConnectX-3 adapters installed on this system are dual port.
#. Request huge pages:: #. Request huge pages::

View File

@ -4,8 +4,15 @@
.. include:: <isonum.txt> .. include:: <isonum.txt>
MLX5 Ethernet Poll Mode Driver NVIDIA MLX5 Ethernet Driver
============================== ===========================
.. note::
NVIDIA acquired Mellanox Technologies in 2020.
The DPDK documentation and code might still include instances
of or references to Mellanox trademarks (like BlueField and ConnectX)
that are now NVIDIA trademarks.
The mlx5 Ethernet poll mode driver library (**librte_net_mlx5**) provides support The mlx5 Ethernet poll mode driver library (**librte_net_mlx5**) provides support
for **NVIDIA ConnectX-4**, **NVIDIA ConnectX-4 Lx** , **NVIDIA ConnectX-5**, for **NVIDIA ConnectX-4**, **NVIDIA ConnectX-4 Lx** , **NVIDIA ConnectX-5**,
@ -29,7 +36,8 @@ This means legacy linux control tools (for example: ethtool, ifconfig and
more) can operate on the same network interfaces that owned by the DPDK more) can operate on the same network interfaces that owned by the DPDK
application. application.
See :doc:`../../platform/mlx5` guide for more design details. See :doc:`../../platform/mlx5` guide for more design details,
including prerequisites installation.
Features Features
-------- --------
@ -511,7 +519,7 @@ Limitations
- Bonding under socket direct mode - Bonding under socket direct mode
- Needs OFED 5.4+. - Needs MLNX_OFED 5.4+.
- Timestamps: - Timestamps:
@ -541,7 +549,7 @@ Limitations
- key - key
- sequence - sequence
Matching on checksum and sequence needs OFED 5.6+. Matching on checksum and sequence needs MLNX_OFED 5.6+.
- The NIC egress flow rules on representor port are not supported. - The NIC egress flow rules on representor port are not supported.
@ -636,7 +644,7 @@ for an additional list of options shared with other mlx5 drivers.
dropping a packet. Once the timer is expired, the delay drop will be dropping a packet. Once the timer is expired, the delay drop will be
deactivated for all the Rx queues with this feature enable. To re-activate deactivated for all the Rx queues with this feature enable. To re-activate
it, a rearming is needed and it is part of the kernel driver starting from it, a rearming is needed and it is part of the kernel driver starting from
OFED 5.5. MLNX_OFED 5.5.
To enable / disable the delay drop rearming, the private flag ``dropless_rq`` To enable / disable the delay drop rearming, the private flag ``dropless_rq``
can be set and queried via ethtool: can be set and queried via ethtool:
@ -1277,6 +1285,14 @@ There are multiple Rx burst functions with different advantages and limitations.
Supported hardware offloads Supported hardware offloads
--------------------------- ---------------------------
Below tables show offload support depending on hardware, firmware,
and Linux software support.
The :ref:`Linux prerequisites <mlx5_linux_prerequisites>`
are Linux kernel and rdma-core libraries.
These dependencies are also packaged in MLNX_OFED or MLNX_EN,
shortened below as "OFED".
.. table:: Minimal SW/HW versions for queue offloads .. table:: Minimal SW/HW versions for queue offloads
============== ===== ===== ========= ===== ========== ============= ============== ===== ===== ========= ===== ========== =============
@ -1744,7 +1760,7 @@ Dependency on mstflint package
In order to configure host shaper register, In order to configure host shaper register,
``librte_net_mlx5`` depends on ``libmtcr_ul`` ``librte_net_mlx5`` depends on ``libmtcr_ul``
which can be installed from OFED mstflint package. which can be installed from MLNX_OFED mstflint package.
Meson detects ``libmtcr_ul`` existence at configure stage. Meson detects ``libmtcr_ul`` existence at configure stage.
If the library is detected, the application must link with ``-lmtcr_ul``, If the library is detected, the application must link with ``-lmtcr_ul``,
as done by the pkg-config file libdpdk.pc. as done by the pkg-config file libdpdk.pc.

View File

@ -1,24 +1,24 @@
.. SPDX-License-Identifier: BSD-3-Clause .. SPDX-License-Identifier: BSD-3-Clause
Copyright 2019 Mellanox Technologies, Ltd Copyright 2019 Mellanox Technologies, Ltd
Mellanox BlueField Board Support Package NVIDIA BlueField Board Support Package
======================================== ======================================
This document has information about steps to setup Mellanox BlueField platform .. note::
and common offload HW drivers of **Mellanox BlueField** family SoC.
NVIDIA acquired Mellanox Technologies in 2020.
The DPDK documentation and code might still include instances
of or references to Mellanox trademarks (like BlueField and ConnectX)
that are now NVIDIA trademarks.
Supported BlueField family SoCs This document has information about steps to setup NVIDIA BlueField platform
------------------------------- and common offload HW drivers of **NVIDIA BlueField** family SoC.
- `BlueField <https://docs.mellanox.com/category/bluefieldsnic>`_
Supported BlueField Platforms Supported BlueField Platforms
----------------------------- -----------------------------
- `BlueField-1 <https://docs.mellanox.com/display/bluefieldsniceth/Introduction>`_ - `BlueField 2 <https://docs.nvidia.com/networking/display/BlueField2DPUENUG/Introduction>`_
- `BlueField-2 <https://docs.mellanox.com/display/BlueField2DPUENUG/Introduction>`_
Common Offload HW Drivers Common Offload HW Drivers
@ -26,7 +26,7 @@ Common Offload HW Drivers
1. **NIC Driver** 1. **NIC Driver**
See :doc:`../nics/mlx5` for Mellanox mlx5 NIC driver information. See :doc:`../nics/mlx5` for NVIDIA mlx5 NIC driver information.
2. **Cryptodev Driver** 2. **Cryptodev Driver**
@ -44,8 +44,7 @@ Steps To Setup Platform
Toolchains, OS and drivers can be downloaded and installed individually Toolchains, OS and drivers can be downloaded and installed individually
from the web, but it is recommended to follow instructions at: from the web, but it is recommended to follow instructions at:
- `Mellanox BlueField-1 Software Website <https://docs.mellanox.com/display/BlueFieldSWv31011424/SmartNIC+Bring-Up+and+Driver+Installation>`_ - `NVIDIA BlueField Software Website <https://docs.nvidia.com/networking/category/dpuos>`_
- `Mellanox BlueField-2 Software Website <https://docs.mellanox.com/display/NVIDIABlueField2DPUQSG#NVIDIABlueField2DPUSoftwareQuickStartGuide-Post-installationProcedurePost-installationProcedure>`_
Compile DPDK Compile DPDK
@ -57,7 +56,7 @@ an x86 based platform.
Native Compilation Native Compilation
~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~
Refer to :doc:`../nics/mlx5` for prerequisites. Either Mellanox OFED/EN or Refer to :doc:`../nics/mlx5` for prerequisites. Either NVIDIA MLNX_OFED/EN or
rdma-core library with corresponding kernel drivers is required. rdma-core library with corresponding kernel drivers is required.
.. code-block:: console .. code-block:: console

View File

@ -4,8 +4,15 @@
.. include:: <isonum.txt> .. include:: <isonum.txt>
MLX5 Common Driver NVIDIA MLX5 Common Driver
================== =========================
.. note::
NVIDIA acquired Mellanox Technologies in 2020.
The DPDK documentation and code might still include instances
of or references to Mellanox trademarks (like BlueField and ConnectX)
that are now NVIDIA trademarks.
The mlx5 common driver library (**librte_common_mlx5**) provides support for The mlx5 common driver library (**librte_common_mlx5**) provides support for
**NVIDIA ConnectX-4**, **NVIDIA ConnectX-4 Lx**, **NVIDIA ConnectX-5**, **NVIDIA ConnectX-4**, **NVIDIA ConnectX-4 Lx**, **NVIDIA ConnectX-5**,
@ -16,8 +23,8 @@ The mlx5 common driver library (**librte_common_mlx5**) provides support for
Information and documentation for these adapters can be found on the Information and documentation for these adapters can be found on the
`NVIDIA website <https://www.nvidia.com/en-us/networking/>`_. `NVIDIA website <https://www.nvidia.com/en-us/networking/>`_.
Help is also provided by the Help is also provided by the
`Mellanox community <http://community.mellanox.com/welcome>`_. `NVIDIA Networking forum <https://forums.developer.nvidia.com/c/infrastructure/369/>`_.
In addition, there is a `web section dedicated to the Poll Mode Driver In addition, there is a `web section dedicated to DPDK
<https://developer.nvidia.com/networking/dpdk>`_. <https://developer.nvidia.com/networking/dpdk>`_.
@ -107,7 +114,7 @@ The following dependencies are not part of DPDK and must be installed separately
- **libmlx5** - **libmlx5**
Low-level user space driver library for Mellanox devices, Low-level user space driver library for NVIDIA devices,
it is automatically loaded by ``libibverbs``. it is automatically loaded by ``libibverbs``.
This library basically implements send/receive calls to the hardware queues. This library basically implements send/receive calls to the hardware queues.
@ -121,20 +128,20 @@ The following dependencies are not part of DPDK and must be installed separately
Unlike most other PMDs, these modules must remain loaded and bound to Unlike most other PMDs, these modules must remain loaded and bound to
their devices: their devices:
- ``mlx5_core``: hardware driver managing Mellanox devices - ``mlx5_core``: hardware driver managing NVIDIA devices
and related Ethernet kernel network devices. and related Ethernet kernel network devices.
- ``mlx5_ib``: InfiniBand device driver. - ``mlx5_ib``: InfiniBand device driver.
- ``ib_uverbs``: user space driver for Verbs (entry point for ``libibverbs``). - ``ib_uverbs``: user space driver for Verbs (entry point for ``libibverbs``).
- **Firmware update** - **Firmware update**
Mellanox OFED/EN releases include firmware updates. NVIDIA MLNX_OFED/EN releases include firmware updates.
Because each release provides new features, these updates must be applied to Because each release provides new features, these updates must be applied to
match the kernel modules and libraries they come with. match the kernel modules and libraries they come with.
Libraries and kernel modules can be provided either by the Linux distribution, Libraries and kernel modules can be provided either by the Linux distribution,
or by installing Mellanox OFED/EN which provides compatibility with older kernels. or by installing NVIDIA MLNX_OFED/EN which provides compatibility with older kernels.
Upstream Dependencies Upstream Dependencies
@ -159,15 +166,15 @@ It is possible to build rdma-core as static libraries starting with version 21::
ninja ninja
Mellanox OFED/EN NVIDIA MLNX_OFED/EN
^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^
The kernel modules and libraries are packaged with other tools The kernel modules and libraries are packaged with other tools
in Mellanox OFED or Mellanox EN. in NVIDIA MLNX_OFED or NVIDIA MLNX_EN.
The minimal supported versions are: The minimal supported versions are:
- Mellanox OFED version: **4.5** and above. - NVIDIA MLNX_OFED version: **4.5** and above.
- Mellanox EN version: **4.5** and above. - NVIDIA MLNX_EN version: **4.5** and above.
- Firmware version: - Firmware version:
- ConnectX-4: **12.21.1000** and above. - ConnectX-4: **12.21.1000** and above.
@ -182,13 +189,13 @@ The minimal supported versions are:
- BlueField-2: **24.28.1002** and above. - BlueField-2: **24.28.1002** and above.
The firmware, the libraries libibverbs, libmlx5, and mlnx-ofed-kernel modules The firmware, the libraries libibverbs, libmlx5, and mlnx-ofed-kernel modules
are packaged in `Mellanox OFED are packaged in `NVIDIA MLNX_OFED
<https://network.nvidia.com/products/infiniband-drivers/linux/mlnx_ofed/>`_. <https://network.nvidia.com/products/infiniband-drivers/linux/mlnx_ofed/>`_.
After downloading, it can be installed with this command:: After downloading, it can be installed with this command::
./mlnxofedinstall --dpdk ./mlnxofedinstall --dpdk
`Mellanox EN `NVIDIA MLNX_EN
<https://network.nvidia.com/products/ethernet-drivers/linux/mlnx_en/>`_ <https://network.nvidia.com/products/ethernet-drivers/linux/mlnx_en/>`_
is a smaller package including what is needed for DPDK. is a smaller package including what is needed for DPDK.
After downloading, it can be installed with this command:: After downloading, it can be installed with this command::
@ -201,7 +208,7 @@ After installing, the firmware version can be checked::
.. note:: .. note::
Several versions of Mellanox OFED/EN are available. Installing the version Several versions of NVIDIA MLNX_OFED/EN are available. Installing the version
this DPDK release was developed and tested against is strongly recommended. this DPDK release was developed and tested against is strongly recommended.
Please check the "Tested Platforms" section in the :doc:`../../rel_notes/index`. Please check the "Tested Platforms" section in the :doc:`../../rel_notes/index`.
@ -291,8 +298,8 @@ Some runtime behaviours may be configured through environment variables.
but it depends on CPU design. but it depends on CPU design.
Port Link with OFED/EN Port Link with MLNX_OFED/EN
^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^
Ports links must be set to Ethernet:: Ports links must be set to Ethernet::
@ -315,8 +322,8 @@ If link type was changed, firmware must be reset as well::
.. _mlx5_vf: .. _mlx5_vf:
SR-IOV Virtual Function with OFED/EN SR-IOV Virtual Function with MLNX_OFED/EN
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
SR-IOV must be enabled on the NIC. SR-IOV must be enabled on the NIC.
It can be checked in the following command:: It can be checked in the following command::
@ -344,8 +351,8 @@ Then the virtual functions can be instantiated::
.. _mlx5_sub_function: .. _mlx5_sub_function:
Sub-Function with OFED/EN Sub-Function with MLNX_OFED/EN
^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Sub-Function is a portion of the PCI device, Sub-Function is a portion of the PCI device,
it has its own dedicated queues. it has its own dedicated queues.
@ -353,7 +360,7 @@ An SF shares PCI-level resources with other SFs and/or with its parent PCI funct
0. Requirement:: 0. Requirement::
OFED version >= 5.4-0.3.3.0 MLNX_OFED version >= 5.4-0.3.3.0
1. Configure SF feature:: 1. Configure SF feature::

View File

@ -12,7 +12,7 @@ By means of the generic GPU interface provided by this library,
it is possible to allocate a chunk of GPU memory and use it it is possible to allocate a chunk of GPU memory and use it
to create a DPDK mempool with external mbufs having the payload to create a DPDK mempool with external mbufs having the payload
on the GPU memory, enabling any network interface card on the GPU memory, enabling any network interface card
(which support this feature like Mellanox NIC) supporting this feature
to directly transmit and receive packets using GPU memory. to directly transmit and receive packets using GPU memory.
Additionally, this library provides a number of functions Additionally, this library provides a number of functions

View File

@ -3,8 +3,15 @@
.. include:: <isonum.txt> .. include:: <isonum.txt>
MLX5 RegEx Driver NVIDIA MLX5 RegEx Driver
================= ========================
.. note::
NVIDIA acquired Mellanox Technologies in 2020.
The DPDK documentation and code might still include instances
of or references to Mellanox trademarks (like BlueField and ConnectX)
that are now NVIDIA trademarks.
The mlx5 RegEx (Regular Expression) driver library The mlx5 RegEx (Regular Expression) driver library
(**librte_regex_mlx5**) provides support for **NVIDIA BlueField-2** (**librte_regex_mlx5**) provides support for **NVIDIA BlueField-2**

View File

@ -3,8 +3,15 @@
.. include:: <isonum.txt> .. include:: <isonum.txt>
MLX5 vDPA Driver NVIDIA MLX5 vDPA Driver
================ =======================
.. note::
NVIDIA acquired Mellanox Technologies in 2020.
The DPDK documentation and code might still include instances
of or references to Mellanox trademarks (like BlueField and ConnectX)
that are now NVIDIA trademarks.
The mlx5 vDPA (vhost data path acceleration) driver library The mlx5 vDPA (vhost data path acceleration) driver library
(**librte_vdpa_mlx5**) provides support for **NVIDIA ConnectX-6**, (**librte_vdpa_mlx5**) provides support for **NVIDIA ConnectX-6**,
@ -36,7 +43,7 @@ Supported NICs
Prerequisites Prerequisites
------------- -------------
- Mellanox OFED version: **5.0** - NVIDIA MLNX_OFED version: **5.0**
See :ref:`mlx5 common prerequisites <mlx5_linux_prerequisites>` for more details. See :ref:`mlx5 common prerequisites <mlx5_linux_prerequisites>` for more details.
Run-time configuration Run-time configuration

View File

@ -25,7 +25,7 @@ option('examples', type: 'string', value: '', description:
option('flexran_sdk', type: 'string', value: '', description: option('flexran_sdk', type: 'string', value: '', description:
'Path to FlexRAN SDK optional Libraries for BBDEV device') 'Path to FlexRAN SDK optional Libraries for BBDEV device')
option('ibverbs_link', type: 'combo', choices : ['static', 'shared', 'dlopen'], value: 'shared', description: option('ibverbs_link', type: 'combo', choices : ['static', 'shared', 'dlopen'], value: 'shared', description:
'Linkage method (static/shared/dlopen) for Mellanox PMDs with ibverbs dependencies.') 'Linkage method (static/shared/dlopen) for NVIDIA PMDs with ibverbs dependencies.')
option('include_subdir_arch', type: 'string', value: '', description: option('include_subdir_arch', type: 'string', value: '', description:
'subdirectory where to install arch-dependent headers') 'subdirectory where to install arch-dependent headers')
option('kernel_dir', type: 'string', value: '', description: option('kernel_dir', type: 'string', value: '', description: