xref: /dpdk/doc/guides/rel_notes/release_23_11.rst (revision 238778122af7838abba512f8813f46e7705921c5)
1.. SPDX-License-Identifier: BSD-3-Clause
2   Copyright 2023 The DPDK contributors
3
4.. include:: <isonum.txt>
5
6DPDK Release 23.11
7==================
8
9New Features
10------------
11
12* **Build requirements increased for C11.**
13
14  From DPDK 23.11 onwards,
15  building DPDK will require a C compiler which supports the C11 standard,
16  including support for C11 standard atomics.
17
18  More specifically, the requirements will be:
19
20  * Support for flag ``-std=c11`` (or similar)
21  * ``__STDC_NO_ATOMICS__`` is *not defined* when using c11 flag
22
23  Please note:
24
25  * C11, including standard atomics, is supported from GCC version 5 onwards,
26    and is the default language version in that release
27    (Ref: https://gcc.gnu.org/gcc-5/changes.html)
28  * C11 is the default compilation mode in Clang from version 3.6,
29    which also added support for standard atomics
30    (Ref: https://releases.llvm.org/3.6.0/tools/clang/docs/ReleaseNotes.html)
31
32* **Updated dependencies when linking against libarchive.**
33
34  When the libarchive development package is present on the system,
35  DPDK will use libarchive and register a dependency on it.
36  However, on a number of Linux distributions, including, for example, Fedora and Ubuntu,
37  installing the libarchive dev package does not cause all required dependencies for static linking to be automatically installed too.
38  These additional dev packages, such as ``liblz4-dev`` and ``libacl1-dev`` on Ubuntu,
39  will need to be installed manually (if not already present)
40  to prevent errors with linking against DPDK static libraries.
41
42* **Added new build options.**
43
44  * Enabling deprecated libraries is now done using
45    the new ``enable_deprecated_libraries`` build option.
46  * Optional libraries can now be selected with the new ``enable_libs``
47    build option similarly to the existing ``enable_drivers`` build option.
48
49* **Introduced a new API for atomic operations.**
50
51  This new API serves as a wrapper for transitioning
52  to standard atomic operations as described in the C11 standard.
53  This API implementation points at the compiler intrinsics by default.
54  The implementation using C11 standard atomic operations is enabled
55  via the ``enable_stdatomic`` build option.
56
57* **Added support for power intrinsics with AMD processors.**
58
59  Added AMD ``MONITORX``/``MWAITX`` instructions in EAL for power optimisation.
60
61* **Added support for allow/block list in vmbus bus driver.***
62
63  The ``vmbus`` bus driver now supports ``-a`` and ``-b`` EAL options
64  for selecting devices.
65
66* **Added mbuf recycling support.**
67
68  Added ``rte_eth_recycle_rx_queue_info_get`` and ``rte_eth_recycle_mbufs``
69  functions which allow the user to copy used mbufs from the Tx mbuf ring
70  into the Rx mbuf ring. This feature supports the case that the Rx Ethernet
71  device is different from the Tx Ethernet device with respective driver
72  callback functions in ``rte_eth_recycle_mbufs``.
73
74* **Added amd-pstate driver support to the power management library.**
75
76  Added support for amd-pstate driver which works on AMD EPYC processors.
77
78* **Added maximum Rx buffer size to report.**
79
80  Introduced the ``max_rx_bufsize`` field, representing
81  the maximum Rx buffer size per descriptor supported by the HW,
82  in the structure ``rte_eth_dev_info`` to avoid wasting mempool space.
83
84* **Improved support of RSS hash algorithm.**
85
86  * Added support to query RSS hash algorithm capability via ``rte_eth_dev_info_get()``,
87    and set RSS hash algorithm via ``rte_eth_dev_configure()``
88    or ``rte_eth_dev_rss_hash_update()``.
89
90  * Added new function ``rte_eth_dev_rss_algo_name``
91    to get name of RSS hash algorithm.
92
93* **Added packet type flow matching criteria.**
94
95  Added ``RTE_FLOW_ITEM_TYPE_PTYPE`` to allow matching on L2/L3/L4
96  and tunnel information as defined in mbuf packet type.
97
98* **Added a flow action type for P4-defined actions.**
99
100  For P4-programmable devices, hardware pipeline can be configured through
101  a new "PROG" action type and its associated custom arguments.
102  Such P4 pipelines, not using the standard blocks of the flow API,
103  can be managed with ``RTE_FLOW_ITEM_TYPE_FLEX`` and ``RTE_FLOW_ACTION_TYPE_PROG``.
104
105* **Added flow group set miss actions.**
106
107  Introduced ``rte_flow_group_set_miss_actions()`` API to explicitly set
108  a group's miss actions, which are the actions to be performed on packets
109  that didn't match any of the flow rules in the group.
110
111* **Updated Amazon ena (Elastic Network Adapter) net driver.**
112
113  * Upgraded ENA HAL to latest version.
114  * Added support for connection tracking allowance utilization metrics.
115  * Added support for reporting Rx overrun errors in xstats.
116  * Added support for ENA-express metrics.
117
118* **Added a new vDPA PMD for Corigine NFP devices.**
119
120  Added a new Corigine NFP vDPA (``nfp_vdpa``) PMD.
121  See the :doc:`../vdpadevs/nfp` guide for more details on this driver.
122
123* **Updated Corigine/Netronome nfp driver.**
124
125  * Added inline IPsec offload based on the security framework.
126
127* **Updated Intel cpfl driver.**
128
129  * Added support for port representor.
130  * Added support for flow offload (including P4-defined pipeline).
131
132* **Updated Intel iavf driver.**
133
134  * Added support for iavf auto-reset.
135
136* **Updated Intel i40e driver.**
137
138  * Added support for new X722 devices.
139
140* **Updated Marvell cnxk net driver.**
141
142  * Added support for ``RTE_FLOW_ITEM_TYPE_IPV6_ROUTING_EXT`` flow item.
143  * Added support for ``RTE_FLOW_ACTION_TYPE_AGE`` flow action.
144
145* **Updated NVIDIA mlx5 net driver.**
146
147  * Added support for multi-port E-Switch.
148  * Added support for Network Service Header (NSH) flow matching.
149  * Added support for ``RTE_FLOW_ITEM_TYPE_PTYPE`` flow item.
150  * Added support for ``RTE_FLOW_ACTION_TYPE_IPV6_EXT_PUSH`` flow action.
151  * Added support for ``RTE_FLOW_ACTION_TYPE_IPV6_EXT_REMOVE`` flow action.
152  * Added support for ``RTE_FLOW_ACTION_TYPE_PORT_REPRESENTOR`` flow action and mirror.
153  * Added support for ``RTE_FLOW_ACTION_TYPE_INDIRECT_LIST`` flow action.
154
155* **Updated Solarflare net driver.**
156
157  * Added support for transfer flow action ``INDIRECT`` with subtype ``VXLAN_ENCAP``.
158  * Supported packet replay (multi-count / multi-delivery) in transfer flows.
159
160* **Updated Wangxun ngbe driver.**
161
162  * Added 100M and auto-neg support in YT PHY fiber mode.
163
164* **Added support for TLS and DTLS record processing.**
165
166  Added TLS and DTLS record transform for security session
167  and added enhancements to ``rte_crypto_op`` fields
168  to handle all datapath requirements of TLS and DTLS.
169  The support was added for TLS 1.2, TLS 1.3 and DTLS 1.2.
170
171* **Added out of place processing support for inline ingress security session.**
172
173  Similar to out of place processing support for lookaside security session,
174  added the same support for inline ingress security session.
175
176* **Added security Rx inject API.**
177
178  Added Rx inject API to allow applications to submit packets
179  for protocol offload and have them injected back to ethdev Rx
180  so that further ethdev Rx actions (IP reassembly, packet parsing and flow lookups)
181  can happen based on the inner packet.
182
183  When using the API implemented by an ethdev the application would be able to process
184  packets that are received without/failed inline offload processing
185  (such as fragmented ESP packets with inline IPsec offload).
186  When using the API implemented by a cryptodev it can be used for injecting packets
187  to ethdev Rx after IPsec processing and take advantage of ethdev Rx actions
188  for the inner packet which cannot be accelerated in inline protocol offload mode.
189
190* **Updated cryptodev scheduler driver.**
191
192  * Added support for DOCSIS security protocol
193    through the ``rte_security`` API callbacks.
194
195* **Updated ipsec_mb crypto driver.**
196
197  * Added Intel IPsec MB v1.5 library support for x86 platform.
198  * Added support for digest encrypted to the AESNI_MB asynchronous crypto driver.
199
200* **Updated Intel QuickAssist Technology driver.**
201
202  * Enabled support for QAT 2.0c (4944) devices in QAT crypto driver.
203  * Added support for SM2 ECDSA algorithm.
204
205* **Updated Marvell cnxk crypto driver.**
206
207  * Added SM2 algorithm support in asymmetric crypto operations.
208  * Added asymmetric crypto ECDH support.
209
210* **Updated Marvell Nitrox symmetric crypto driver.**
211
212  * Added support for AES-CCM algorithm.
213
214* **Updated Intel vRAN Boost baseband driver.**
215
216  * Added support for the new Intel vRAN Boost v2 device variant (GNR-D)
217    within the unified driver.
218
219* **Added support for models with multiple I/O in mldev library.**
220
221  Added support in mldev library for models with multiple inputs and outputs.
222
223* **Updated Marvell cnxk mldev driver.**
224
225  * Added support for models compiled using TVM framework.
226
227* **Added new eventdev Ethernet Rx adapter create API.**
228
229  Added new function ``rte_event_eth_rx_adapter_create_ext_with_params()``
230  for creating Rx adapter instance for the applications desire to
231  control both the event port allocation and event buffer size.
232
233* **Added eventdev DMA adapter.**
234
235  * Added the Event DMA Adapter Library. This library extends the event-based
236    model by introducing APIs that allow applications to enqueue/dequeue DMA
237    operations to/from dmadev as events scheduled by an event device.
238
239* **Added eventdev support to link queues to port with link profile.**
240
241  Introduced event link profiles that can be used to associate links between
242  event queues and an event port with a unique identifier termed the "link profile".
243  The profile can be used to switch between the associated links in fast-path
244  without the additional overhead of linking/unlinking and waiting for unlinking.
245
246  * Added ``rte_event_port_profile_links_set``, ``rte_event_port_profile_unlink``
247    ``rte_event_port_profile_links_get`` and ``rte_event_port_profile_switch``
248    functions to enable this feature.
249
250* **Updated Marvell cnxk eventdev driver.**
251
252  * Added support for ``remaining_ticks_get`` timer adapter PMD callback
253    to get the remaining ticks to expire for a given event timer.
254  * Added link profiles support, up to two link profiles are supported.
255
256* **Updated Marvell cnxk dmadev driver.**
257
258  * Added support for source buffer auto free for memory to device DMA.
259
260* **Added dispatcher library.**
261
262  Added dispatcher library which purpose is to help decouple different
263  parts (modules) of an eventdev-based application.
264
265* **Added CLI based graph application.**
266
267  Added CLI based graph application which exercises different use cases.
268  The application provides a framework so that each use case can be added via a file.
269  Each CLI will further be translated into a graph representing the use case.
270
271* **Added layer 2 MACsec forwarding example application.**
272
273  Added a new example layer 2 forwarding application to benchmark
274  MACsec encryption/decryption using rte_security based inline sessions.
275
276
277Removed Items
278-------------
279
280* eal: Removed deprecated ``RTE_FUNC_PTR_OR_*`` macros.
281
282* ethdev: Removed deprecated macro ``RTE_ETH_DEV_BONDED_SLAVE``.
283
284* flow_classify: Removed flow classification library and examples.
285
286* kni: Removed the Kernel Network Interface (KNI) library and driver.
287
288* cryptodev: Removed the arrays of algorithm strings ``rte_crypto_cipher_algorithm_strings``,
289  ``rte_crypto_auth_algorithm_strings``, ``rte_crypto_aead_algorithm_strings`` and
290  ``rte_crypto_asym_xform_strings``.
291
292* cryptodev: Removed explicit SM2 xform parameter in asymmetric xform.
293
294* security: Removed deprecated field ``reserved_opts``
295  from struct ``rte_security_ipsec_sa_options``.
296
297* mldev: Removed functions ``rte_ml_io_input_size_get`` and ``rte_ml_io_output_size_get``.
298
299* cmdline: Removed broken and unused function ``cmdline_poll``.
300
301
302API Changes
303-----------
304
305* eal: The thread API has changed.
306  The function ``rte_thread_create_control()`` does not take attributes anymore.
307  The whole thread API was promoted to stable level,
308  except ``rte_thread_setname()`` and ``rte_ctrl_thread_create()`` which are
309  replaced with ``rte_thread_set_name()`` and ``rte_thread_create_control()``.
310
311* eal: Removed ``RTE_CPUFLAG_NUMFLAGS`` to avoid misusage and theoretical ABI
312  compatibility issue when adding new cpuflags.
313
314* power: Updated the x86 Uncore power management API so that it is vendor agnostic.
315
316* ethdev: When ``rte_eth_dev_configure`` or ``rte_eth_dev_rss_hash_update`` are called,
317  the ``rss_key_len`` of structure ``rte_eth_rss_conf`` should be provided
318  by the user for the case ``rss_key != NULL``,
319  it won't be taken as default 40 bytes anymore.
320
321* bonding: Replaced master/slave to main/member. The data structure
322  ``struct rte_eth_bond_8023ad_slave_info`` was renamed to
323  ``struct rte_eth_bond_8023ad_member_info`` in DPDK 23.11.
324  The following functions were removed in DPDK 23.11.
325  The old functions:
326  ``rte_eth_bond_8023ad_slave_info``,
327  ``rte_eth_bond_active_slaves_get``,
328  ``rte_eth_bond_slave_add``,
329  ``rte_eth_bond_slave_remove``, and
330  ``rte_eth_bond_slaves_get``
331  will be replaced by:
332  ``rte_eth_bond_8023ad_member_info``,
333  ``rte_eth_bond_active_members_get``,
334  ``rte_eth_bond_member_add``,
335  ``rte_eth_bond_member_remove``, and
336  ``rte_eth_bond_members_get``.
337
338* cryptodev: The elliptic curve asymmetric private and public keys can be maintained
339  per session. These keys are moved from per packet ``rte_crypto_ecdsa_op_param`` and
340  ``rte_crypto_sm2_op_param`` to generic EC xform ``rte_crypto_ec_xform``.
341
342* security: Structures ``rte_security_ops`` and ``rte_security_ctx`` were moved to
343  internal library headers not visible to application.
344
345* mldev: Updated the structure ``rte_ml_model_info`` to support input and output
346  with arbitrary shapes.
347  Updated ``rte_ml_op``, ``rte_ml_io_quantize`` and ``rte_ml_io_dequantize``
348  to support an array of ``rte_ml_buff_seg``.
349
350* pcapng: The time parameters were removed
351  from the functions ``rte_pcapng_copy`` and ``rte_pcapng_write_stats``.
352
353
354ABI Changes
355-----------
356
357* ethdev: Added ``recycle_tx_mbufs_reuse`` and ``recycle_rx_descriptors_refill``
358  fields to ``rte_eth_dev`` structure.
359
360* ethdev: Structure ``rte_eth_fp_ops`` was affected to add
361  ``recycle_tx_mbufs_reuse`` and ``recycle_rx_descriptors_refill``
362  fields, to move ``rxq`` and ``txq`` fields, to change the size of
363  ``reserved1`` and ``reserved2`` fields.
364
365* ethdev: Added ``algorithm`` field to ``rte_eth_rss_conf`` structure
366  for RSS hash algorithm.
367
368* ethdev: Added ``rss_algo_capa`` field to ``rte_eth_dev_info`` structure
369  for reporting RSS hash algorithm capability.
370
371* security: struct ``rte_security_ipsec_sa_options`` was updated
372  due to inline out-of-place feature addition.
373
374
375Tested Platforms
376----------------
377
378* Intel\ |reg| platforms with Intel\ |reg| NICs combinations
379
380  * CPU
381
382    * Intel Atom\ |reg| P5342 processor
383    * Intel\ |reg| Atom\ |trade| x74xxRE
384    * Intel\ |reg| Atom\ |trade| CPU C3758 @ 2.20GHz
385    * Intel\ |reg| Xeon\ |reg| CPU D-1553N @ 2.30GHz
386    * Intel\ |reg| Xeon\ |reg| CPU E5-2699 v4 @ 2.20GHz
387    * Intel\ |reg| Xeon\ |reg| D-1747NTE CPU @ 2.50GHz
388    * Intel\ |reg| Xeon\ |reg| D-2796NT CPU @ 2.00GHz
389    * Intel\ |reg| Xeon\ |reg| Gold 6139 CPU @ 2.30GHz
390    * Intel\ |reg| Xeon\ |reg| Gold 6140M CPU @ 2.30GHz
391    * Intel\ |reg| Xeon\ |reg| Gold 6252N CPU @ 2.30GHz
392    * Intel\ |reg| Xeon\ |reg| Gold 6348 CPU @ 2.60GHz
393    * Intel\ |reg| Xeon\ |reg| Platinum 8280M CPU @ 2.70GHz
394    * Intel\ |reg| Xeon\ |reg| Platinum 8380 CPU @ 2.30GHz
395    * Intel\ |reg| Xeon\ |reg| Platinum 8490H
396    * GENUINE INTEL\ |reg| XEON\ |reg|
397
398  * OS:
399
400    * CBL Mariner 2.0
401    * Fedora 38
402    * FreeBSD 13.2
403    * OpenAnolis OS 8.8
404    * Red Hat Enterprise Linux Server release 8.7
405    * Red Hat Enterprise Linux Server release 9.2
406    * SUSE Linux Enterprise Server 15 SP5
407    * Ubuntu 22.04.3
408
409  * NICs:
410
411    * Intel\ |reg| Ethernet Controller E810-C for SFP (4x25G)
412
413      * Firmware version: 4.40 0x8001c301 1.3492.0
414      * Device id (pf/vf): 8086:1593 / 8086:1889
415      * Driver version(out-tree): 1.13.1_1_g565e8ce94_dirty (ice)
416      * Driver version(in-tree): 5.15.0-82-generic (Ubuntu22.04.3)/ 5.14.0-284.11.1.rt14.296.el9_2.x86_64 (RHEL9.2)/ 5.15.129-rt67 (Ubuntu22.04.3)(ice)
417      * OS Default DDP: 1.3.36.0
418      * COMMS DDP: 1.3.46.0
419      * Wireless Edge DDP: 1.3.14.0
420
421    * Intel\ |reg| Ethernet Controller E810-C for QSFP (2x100G)
422
423      * Firmware version: 4.40 0x8001c2f1 1.3492.0
424      * Device id (pf/vf): 8086:1592 / 8086:1889
425      * Driver version(out-tree): 1.13.1_1_g565e8ce94_dirty (ice)
426      * Driver version(in-tree): 5.15.55.1-1.cm2-5464b22cac7+ (CBL Mariner 2.0) (ice)
427      * OS Default DDP: 1.3.36.0
428      * COMMS DDP: 1.3.46.0
429      * Wireless Edge DDP: 1.3.14.0
430
431    * Intel\ |reg| Ethernet Controller E810-XXV for SFP (2x25G)
432
433      * Firmware version: 4.40 0x8001c2f5 1.3492.0
434      * Device id (pf/vf): 8086:159b / 8086:1889
435      * Driver version: 1.13.1_1_g565e8ce94_dirty (ice)
436      * OS Default DDP: 1.3.36.0
437      * COMMS DDP: 1.3.46.0
438
439    * Intel\ |reg| Ethernet Connection E823-C for QSFP
440
441      * Firmware version: 3.33 0x8001b295 1.3443.0
442      * Device id (pf/vf): 8086:188b / 8086:1889
443      * Driver version: 1.13.1_1_g565e8ce94_dirty (ice)
444      * OS Default DDP: 1.3.36.0
445      * COMMS DDP: 1.3.46.0
446      * Wireless Edge DDP: 1.3.14.0
447
448    * Intel\ |reg| Ethernet Connection E823-L for QSFP
449
450      * Firmware version: 3.33 0x8001b4b0 1.3429.0
451      * Device id (pf/vf): 8086:124c / 8086:1889
452      * Driver version: 1.13.1_1_g565e8ce94_dirty (ice)
453      * OS Default DDP: 1.3.36.0
454      * COMMS DDP: 1.3.46.0
455      * Wireless Edge DDP: 1.3.14.0
456
457    * Intel\ |reg| Ethernet Connection E822-L for backplane
458
459      * Firmware version: 3.33 0x8001b4b6 1.3429.0
460      * Device id (pf/vf): 8086:1897 / 8086:1889
461      * Driver version: 1.13.1_1_g565e8ce94_dirty (ice)
462      * OS Default DDP: 1.3.36.0
463      * COMMS DDP: 1.3.46.0
464      * Wireless Edge DDP: 1.3.14.0
465
466    * Intel\ |reg| 82599ES 10 Gigabit Ethernet Controller
467
468      * Firmware version: 0x000161bf
469      * Device id (pf/vf): 8086:10fb / 8086:10ed
470      * Driver version(out-tree): 5.19.6 (ixgbe)
471      * Driver version(in-tree): 5.15.0-82-generic (Ubuntu22.04.3)/ 5.14.0-284.11.1.el9_2.x86_64 (RHEL9.2)(ixgbe)
472
473    * Intel\ |reg| Ethernet Converged Network Adapter X710-DA4 (4x10G)
474
475      * Firmware version: 9.30 0x8000e606 1.3429.0
476      * Device id (pf/vf): 8086:1572 / 8086:154c
477      * Driver version(out-tree): 2.23.17 (i40e)
478
479    * Intel\ |reg| Corporation Ethernet Connection X722 for 10GbE SFP+ (2x10G)
480
481      * Firmware version: 6.20 0x80003d82 1.3353.0
482      * Device id (pf/vf): 8086:37d0 / 8086:37cd
483      * Driver version(out-tree): 2.23.17 (i40e)
484      * Driver version(in-tree): 5.14.0-284.11.1.el9_2.x86_64 (RHEL9.2)(i40e)
485
486    * Intel\ |reg| Corporation Ethernet Connection X722 for 10GBASE-T
487
488      * Firmware version: 6.20 0x80003d3e 1.2935.0
489      * Device id (pf/vf): 8086:37d2 / 8086:37cd
490      * Driver version(out-tree): 2.23.17 (i40e)
491      * Driver version(in-tree): 5.14.0-284.11.1.el9_2.x86_64 (RHEL9.2) (i40e)
492
493    * Intel\ |reg| Ethernet Converged Network Adapter XXV710-DA2 (2x25G)
494
495      * Firmware version: 9.30 0x8000e5f5 1.3429.0
496      * Device id (pf/vf): 8086:158b / 8086:154c
497      * Driver version(out-tree): 2.23.17 (i40e)
498      * Driver version(in-tree): 5.15.0-82-generic (Ubuntu22.04.3)/5.14.0-284.11.1.el9_2.x86_64 (RHEL9.2)(i40e)
499
500    * Intel\ |reg| Ethernet Converged Network Adapter XL710-QDA2 (2X40G)
501
502      * Firmware version(PF): 9.30 0x8000e5ee 1.3429.0
503      * Device id (pf/vf): 8086:1583 / 8086:154c
504      * Driver version(out-tree): 2.23.17 (i40e)
505
506    * Intel\ |reg| Ethernet Controller I225-LM
507
508      * Firmware version: 1.3, 0x800000c9
509      * Device id (pf): 8086:15f2
510      * Driver version(in-tree): 5.15.0-82-generic (Ubuntu22.04.3)(igc)
511
512    * Intel\ |reg| Ethernet Controller I226-LM
513
514      * Firmware version: 2.14, 0x8000028c
515      * Device id (pf): 8086:125b
516      * Driver version(in-tree): 5.15.0-82-generic (Ubuntu22.04.3)(igc)
517
518    * Intel Corporation I350 Gigabit Network Connection
519
520      * Firmware version: 1.63, 0x80001001
521      * Device id (pf/vf): 8086:1521 / 8086:1520
522      * Driver version(in-tree): 5.15.0-60-generic (Ubuntu22.04.3)(igb)
523
524* Intel\ |reg| platforms with NVIDIA\ |reg| NICs combinations
525
526  * CPU:
527
528    * Intel\ |reg| Xeon\ |reg| Gold 6154 CPU @ 3.00GHz
529    * Intel\ |reg| Xeon\ |reg| CPU E5-2697A v4 @ 2.60GHz
530    * Intel\ |reg| Xeon\ |reg| CPU E5-2697 v3 @ 2.60GHz
531    * Intel\ |reg| Xeon\ |reg| CPU E5-2680 v2 @ 2.80GHz
532    * Intel\ |reg| Xeon\ |reg| CPU E5-2670 0 @ 2.60GHz
533    * Intel\ |reg| Xeon\ |reg| CPU E5-2650 v4 @ 2.20GHz
534    * Intel\ |reg| Xeon\ |reg| CPU E5-2650 v3 @ 2.30GHz
535    * Intel\ |reg| Xeon\ |reg| CPU E5-2640 @ 2.50GHz
536    * Intel\ |reg| Xeon\ |reg| CPU E5-2650 0 @ 2.00GHz
537    * Intel\ |reg| Xeon\ |reg| CPU E5-2620 v4 @ 2.10GHz
538
539  * OS:
540
541    * Red Hat Enterprise Linux release 9.1 (Plow)
542    * Red Hat Enterprise Linux release 8.6 (Ootpa)
543    * Red Hat Enterprise Linux release 8.4 (Ootpa)
544    * Red Hat Enterprise Linux Server release 7.9 (Maipo)
545    * Red Hat Enterprise Linux Server release 7.6 (Maipo)
546    * Ubuntu 22.04
547    * Ubuntu 20.04
548    * SUSE Enterprise Linux 15 SP2
549
550  * OFED:
551
552    * MLNX_OFED 23.07-0.5.1.2 and above
553
554  * upstream kernel:
555
556    * Linux 6.7.0-rc1 and above
557
558  * rdma-core:
559
560    * rdma-core-48.0 and above
561
562  * NICs
563
564    * NVIDIA\ |reg| ConnectX\ |reg|-4 Lx 25G MCX4121A-ACAT (2x25G)
565
566      * Host interface: PCI Express 3.0 x8
567      * Device ID: 15b3:1015
568      * Firmware version: 14.32.1010 and above
569
570    * NVIDIA\ |reg| ConnectX\ |reg|-4 Lx 50G MCX4131A-GCAT (1x50G)
571
572      * Host interface: PCI Express 3.0 x8
573      * Device ID: 15b3:1015
574      * Firmware version: 14.32.1010 and above
575
576    * NVIDIA\ |reg| ConnectX\ |reg|-5 100G MCX516A-CCAT (2x100G)
577
578      * Host interface: PCI Express 3.0 x16
579      * Device ID: 15b3:1017
580      * Firmware version: 16.35.2000 and above
581
582    * NVIDIA\ |reg| ConnectX\ |reg|-5 100G MCX516A-CCAT (2x100G)
583
584      * Host interface: PCI Express 3.0 x16
585      * Device ID: 15b3:1017
586      * Firmware version: 16.38.1900 and above
587
588    * NVIDIA\ |reg| ConnectX\ |reg|-5 100G MCX556A-ECAT (2x100G)
589
590      * Host interface: PCI Express 3.0 x16
591      * Device ID: 15b3:1017
592      * Firmware version: 16.38.1900 and above
593
594    * NVIDIA\ |reg| ConnectX\ |reg|-5 100G MCX556A-EDAT (2x100G)
595
596      * Host interface: PCI Express 3.0 x16
597      * Device ID: 15b3:1017
598      * Firmware version: 16.38.1900 and above
599
600    * NVIDIA\ |reg| ConnectX\ |reg|-5 Ex EN 100G MCX516A-CDAT (2x100G)
601
602      * Host interface: PCI Express 4.0 x16
603      * Device ID: 15b3:1019
604      * Firmware version: 16.38.1900 and above
605
606    * NVIDIA\ |reg| ConnectX\ |reg|-6 Dx EN 100G MCX623106AN-CDAT (2x100G)
607
608      * Host interface: PCI Express 4.0 x16
609      * Device ID: 15b3:101d
610      * Firmware version: 22.38.1900 and above
611
612    * NVIDIA\ |reg| ConnectX\ |reg|-6 Lx EN 25G MCX631102AN-ADAT (2x25G)
613
614      * Host interface: PCI Express 4.0 x8
615      * Device ID: 15b3:101f
616      * Firmware version: 26.38.1900 and above
617
618    * NVIDIA\ |reg| ConnectX\ |reg|-7 200G CX713106AE-HEA_QP1_Ax (2x200G)
619
620      * Host interface: PCI Express 5.0 x16
621      * Device ID: 15b3:1021
622      * Firmware version: 28.38.1900 and above
623
624* NVIDIA\ |reg| BlueField\ |reg| SmartNIC
625
626  * NVIDIA\ |reg| BlueField\ |reg|-2 SmartNIC MT41686 - MBF2H332A-AEEOT_A1 (2x25G)
627
628    * Host interface: PCI Express 3.0 x16
629    * Device ID: 15b3:a2d6
630    * Firmware version: 24.38.1002 and above
631
632  * NVIDIA\ |reg| BlueField\ |reg|-3 P-Series DPU MT41692 - 900-9D3B6-00CV-AAB (2x200G)
633
634    * Host interface: PCI Express 5.0 x16
635    * Device ID: 15b3:a2dc
636    * Firmware version: 32.38.1002 and above
637
638  * Embedded software:
639
640    * Ubuntu 22.04
641    * MLNX_OFED 23.07-0.5.0.0 and above
642    * DOCA_2.2.0_BSP_4.2.0_Ubuntu_22.04-2.23-07
643    * DPDK application running on ARM cores
644
645* IBM Power 9 platforms with NVIDIA\ |reg| NICs combinations
646
647  * CPU:
648
649    * POWER9 2.2 (pvr 004e 1202)
650
651  * OS:
652
653    * Ubuntu 20.04
654
655  * NICs:
656
657    * NVIDIA\ |reg| ConnectX\ |reg|-6 Dx 100G MCX623106AN-CDAT (2x100G)
658
659      * Host interface: PCI Express 4.0 x16
660      * Device ID: 15b3:101d
661      * Firmware version: 22.38.1900 and above
662
663    * NVIDIA\ |reg| ConnectX\ |reg|-7 200G CX713106AE-HEA_QP1_Ax (2x200G)
664
665      * Host interface: PCI Express 5.0 x16
666      * Device ID: 15b3:1021
667      * Firmware version: 28.38.1900 and above
668
669  * OFED:
670
671    * MLNX_OFED 23.07-0.5.1.2
672