cryptodev: support ECPM
[dpdk.git] / doc / guides / rel_notes / release_19_11.rst
1 ..  SPDX-License-Identifier: BSD-3-Clause
2     Copyright 2019 The DPDK contributors
3
4 .. include:: <isonum.txt>
5
6 DPDK Release 19.11
7 ==================
8
9 .. **Read this first.**
10
11    The text in the sections below explains how to update the release notes.
12
13    Use proper spelling, capitalization and punctuation in all sections.
14
15    Variable and config names should be quoted as fixed width text:
16    ``LIKE_THIS``.
17
18    Build the docs and view the output file to ensure the changes are correct::
19
20       make doc-guides-html
21
22       xdg-open build/doc/html/guides/rel_notes/release_19_11.html
23
24
25 New Features
26 ------------
27
28 .. This section should contain new features added in this release.
29    Sample format:
30
31    * **Add a title in the past tense with a full stop.**
32
33      Add a short 1-2 sentence description in the past tense.
34      The description should be enough to allow someone scanning
35      the release notes to understand the new feature.
36
37      If the feature adds a lot of sub-features you can use a bullet list
38      like this:
39
40      * Added feature foo to do something.
41      * Enhanced feature bar to do something else.
42
43      Refer to the previous release notes for examples.
44
45      Suggested order in release notes items:
46      * Core libs (EAL, mempool, ring, mbuf, buses)
47      * Device abstraction libs and PMDs
48        - ethdev (lib, PMDs)
49        - cryptodev (lib, PMDs)
50        - eventdev (lib, PMDs)
51        - etc
52      * Other libs
53      * Apps, Examples, Tools (if significant)
54
55      This section is a comment. Do not overwrite or remove it.
56      Also, make sure to start the actual text at the margin.
57      =========================================================
58
59 * **Added support for --base-virtaddr EAL option to FreeBSD.**
60
61   The FreeBSD version of DPDK now also supports setting base virtual address
62   for mapping pages and resources into its address space.
63
64 * **Added Lock-free Stack for aarch64.**
65
66   Enabled the lock-free stack implementation for aarch64 platforms.
67
68 * **Extended pktmbuf mempool private structure.**
69
70   rte_pktmbuf_pool_private structure was extended to include flags field
71   for future compatibility.
72   As per 19.11 release this field is reserved and should be set to 0
73   by the user.
74
75 +* **Changed mempool allocation behavior.**
76
77   Changed the mempool allocation behaviour so that objects no longer cross
78   pages by default. Note, this may consume more memory when using small memory
79   pages.
80
81 * **Added support for dynamic fields and flags in mbuf.**
82
83   This new feature adds the ability to dynamically register some room
84   for a field or a flag in the mbuf structure. This is typically used
85   for specific offload features, where adding a static field or flag
86   in the mbuf is not justified.
87
88 * **Added support for hairpin queues.**
89
90   On supported NICs, we can now setup hairpin queues which will offload packets
91   from the wire, back to the wire.
92
93 * **Added flow tag in rte_flow.**
94
95   The ``SET_TAG`` action and ``TAG`` item have been added to support transient
96   flow tag.
97
98 * **Extended metadata support in rte_flow.**
99
100   Flow metadata has been extended to both Rx and Tx.
101
102   * Tx metadata can also be set by SET_META action of rte_flow.
103   * Rx metadata is delivered to the host via a dynamic field of ``rte_mbuf``
104     with ``PKT_RX_DYNF_METADATA``.
105
106 * **Added ethdev API to set supported packet types.**
107
108   * Added new API ``rte_eth_dev_set_ptypes`` which allows an application to
109     inform a PMD about a reduced range of packet types to handle.
110   * This scheme will allow PMDs to avoid lookup of internal ptype table on Rx
111     and thereby improve Rx performance if the application wishes to do so.
112
113 * **Added Rx offload flag to enable or disable RSS update.**
114
115   * Added new Rx offload flag ``DEV_RX_OFFLOAD_RSS_HASH`` which can be used to
116     enable/disable PMDs write to ``rte_mbuf::hash::rss``.
117   * PMDs notify the validity of ``rte_mbuf::hash:rss`` to the application
118     by enabling ``PKT_RX_RSS_HASH`` flag in ``rte_mbuf::ol_flags``.
119
120 * **Added Rx/Tx packet burst mode "get" API.**
121
122   Added two new functions ``rte_eth_rx_burst_mode_get`` and
123   ``rte_eth_tx_burst_mode_get`` that allow an application
124   to retrieve the mode information about Rx/Tx packet burst
125   such as Scalar or Vector, and Vector technology like AVX2.
126
127 * **Added Hisilicon hns3 PMD.**
128
129   Added the new ``hns3`` net driver for the inbuilt Hisilicon Network
130   Subsystem 3 (HNS3) network engine found in the Hisilicon Kunpeng 920 SoC.
131   See the :doc:`../nics/hns3` guide for more details on this new driver.
132
133 * **Added NXP PFE PMD.**
134
135   Added the new PFE driver for the NXP LS1012A platform. See the
136   :doc:`../nics/pfe` NIC driver guide for more details on this new driver.
137
138 * **Updated Broadcom bnxt driver.**
139
140   Updated Broadcom bnxt driver with new features and improvements, including:
141
142   * Added support for hot firmware upgrade.
143   * Added support for error recovery.
144   * Added support for querying and using COS classification in hardware.
145   * Added LRO support Thor devices.
146   * Update HWRM API to version 1.10.1.6
147
148 * **Updated the enic driver.**
149
150   * Added support for Geneve with options offload.
151   * Added flow API implementation based on VIC Flow Manager API.
152
153 * **Updated iavf PMD.**
154
155   Enable AVX2 data path for iavf PMD.
156
157 * **Updated the Intel e1000 driver.**
158
159   Added support for the ``RTE_ETH_DEV_CLOSE_REMOVE`` flag.
160
161 * **Updated the Intel ixgbe driver.**
162
163   Added support for the ``RTE_ETH_DEV_CLOSE_REMOVE`` flag.
164
165 * **Updated the Intel i40e driver.**
166
167   Added support for the ``RTE_ETH_DEV_CLOSE_REMOVE`` flag.
168
169 * **Updated the Intel fm10k driver.**
170
171   Added support for the ``RTE_ETH_DEV_CLOSE_REMOVE`` flag.
172
173 * **Updated the Intel ice driver.**
174
175   Updated the Intel ice driver with new features and improvements, including:
176
177   * Added support for device-specific DDP package loading.
178   * Added support for handling Receive Flex Descriptor.
179   * Added support for protocol extraction on per Rx queue.
180   * Added support for Flow Director filter based on generic filter framework.
181   * Added support for the ``RTE_ETH_DEV_CLOSE_REMOVE`` flag.
182   * Generic filter enhancement
183     - Supported pipeline mode.
184     - Supported new packet type like PPPoE for switch filter.
185   * Supported input set change and symmetric hash by rte_flow RSS action.
186   * Added support for GTP Tx checksum offload.
187   * Added new device IDs to support E810_XXV devices.
188
189 * **Updated the Huawei hinic driver.**
190
191   Updated the Huawei hinic driver with new features and improvements, including:
192
193   * Enabled SR-IOV - Partially supported at this point, VFIO only.
194   * Supported VLAN filter and VLAN offload.
195   * Supported Unicast MAC filter and Multicast MAC filter.
196   * Supported Flow API for LACP, VRRP, BGP and so on.
197   * Supported FW version get.
198
199 * **Updated Mellanox mlx5 driver.**
200
201   Updated Mellanox mlx5 driver with new features and improvements, including:
202
203   * Added support for VLAN pop flow offload command.
204   * Added support for VLAN push flow offload command.
205   * Added support for VLAN set PCP offload command.
206   * Added support for VLAN set VID offload command.
207   * Added support for matching on packets withe Geneve tunnel header.
208   * Added hairpin support.
209   * Added ConnectX6-DX support.
210   * Flow engine selected based on RDMA Core library version.
211     DV flow engine selected if version is rdma-core-24.0 or higher.
212     Verbs flow engine selected otherwise.
213
214 * **Updated the AF_XDP PMD.**
215
216   Updated the AF_XDP PMD. The new features include:
217
218   * Enabled zero copy between application mempools and UMEM by enabling the
219     ``XDP_UMEM_UNALIGNED_CHUNKS UMEM`` flag.
220
221 * **Added cryptodev asymmetric session-less operation.**
222
223   Added a session-less option to the cryptodev asymmetric structure. It works
224   the same way as symmetric crypto, and the corresponding transform is used
225   directly by the crypto operation.
226
227 * **Added Marvell NITROX symmetric crypto PMD.**
228
229   Added a symmetric crypto PMD for Marvell NITROX V security processor.
230   See the :doc:`../cryptodevs/nitrox` guide for more details on this new PMD.
231
232 * **Added asymmetric support to Marvell OCTEON TX crypto PMD.**
233
234   Added support for asymmetric operations to Marvell OCTEON TX crypto PMD.
235   Supports RSA and modexp operations.
236
237 * **Added Marvell OCTEON TX2 crypto PMD.**
238
239   Added a new PMD driver for hardware crypto offload block on ``OCTEON TX2``
240   SoC.
241
242   See :doc:`../cryptodevs/octeontx2` for more details
243
244 * **Updated NXP crypto PMDs for PDCP support.**
245
246   Added PDCP support to the DPAA_SEC and DPAA2_SEC PMDs using rte_security
247   APIs.  Support has been added for all sequence number sizes for control and
248   user plane.  Test and test-crypto-perf applications have been updated for
249   unit testing.
250
251 * **Updated the AESNI-MB PMD.**
252
253   * Added support for intel-ipsec-mb version 0.53.
254
255 * **Updated the AESNI-GCM PMD.**
256
257   * Added support for intel-ipsec-mb version 0.53.
258   * Added support for in-place chained mbufs with AES-GCM algorithm.
259
260 * **Enabled Single Pass GCM acceleration on QAT GEN3.**
261
262   Added support for Single Pass GCM, available on QAT GEN3 only (Intel
263   QuickAssist Technology C4xxx). It is automatically chosen instead of the
264   classic 2-pass mode when running on QAT GEN3, significantly improving
265   the performance of AES GCM operations.
266
267 * **Updated the Intel QuickAssist Technology (QAT) asymmetric crypto PMD.**
268
269   * Added support for asymmetric session-less operations.
270   * Added support for RSA algorithm with pair ``(n, d)`` private key
271     representation.
272   * Added support for RSA algorithm with quintuple private key representation.
273
274 * **Updated the Intel QuickAssist Technology (QAT) compression PMD.**
275
276   Added stateful decompression support in the Intel QuickAssist Technology PMD.
277   Please note that stateful compression is not supported.
278
279 * **Added external buffers support for dpdk-test-compress-perf tool.**
280
281   Added a command line option to the ``dpdk-test-compress-perf`` tool to
282   allocate and use memory zones as external buffers instead of keeping the
283   data directly in mbuf areas.
284
285 * **Updated the IPSec library.**
286
287   * Added Security Associations (SA) Database API to ``librte_ipsec``. A new
288     test-sad application has also been introduced to evaluate and perform
289     custom functional and performance tests for an IPsec SAD implementation.
290
291   * Support fragmented packets in inline crypto processing mode with fallback
292     ``lookaside-none`` session. Corresponding changes are also added in the
293     IPsec Security Gateway application.
294
295 * **Introduced FIFO for NTB PMD.**
296
297   Introduced FIFO for NTB (Non-transparent Bridge) PMD to support
298   packet based processing.
299
300 * **Added eBPF JIT support for arm64.**
301
302   Added eBPF JIT support for arm64 architecture to improve the eBPF program
303   performance.
304
305 * **Added RIB and FIB (Routing/Forwarding Information Base) libraries.**
306
307   Added Routing and Forwarding Information Base (RIB/FIB) libraries. RIB and
308   FIB can replace the LPM (Longest Prefix Match) library with better control
309   plane (RIB) performance. The data plane (FIB) can be extended with new
310   algorithms.
311
312 * **Updated testpmd with a command for ptypes.**
313
314   * Added a console command to testpmd app, ``show port (port_id) ptypes`` which
315     gives ability to print port supported ptypes in different protocol layers.
316   * Packet type detection disabled by default for the supported PMDs.
317
318 * **Added new l2fwd-event sample application.**
319
320   Added an example application ``l2fwd-event`` that adds event device support to
321   the traditional l2fwd example. It demonstrates usage of poll and event mode IO
322   mechanism under a single application.
323
324 * **Added build support for Link Time Optimization.**
325
326   LTO is an optimization technique used by the compiler to perform whole
327   program analysis and optimization at link time.  In order to do that
328   compilers store their internal representation of the source code that
329   the linker uses at the final stage of the compilation process.
330
331   See :doc:`../prog_guide/lto` for more information:
332
333 * **Added IOVA as VA support for KNI.**
334
335   * Added IOVA = VA support for KNI. KNI can operate in IOVA = VA mode when
336     ``iova-mode=va`` EAL option is passed to the application or when bus IOVA
337     scheme is selected as RTE_IOVA_VA. This mode only works on Linux Kernel
338     versions 4.10.0 and above.
339
340   * Due to IOVA to KVA address translations, based on the KNI use case there
341     can be a performance impact. For mitigation, forcing IOVA to PA via EAL
342     ``--iova-mode=pa`` option can be used, IOVA_DC bus iommu scheme can also
343     result in IOVA as PA.
344
345
346 Removed Items
347 -------------
348
349 .. This section should contain removed items in this release. Sample format:
350
351    * Add a short 1-2 sentence description of the removed item
352      in the past tense.
353
354    This section is a comment. Do not overwrite or remove it.
355    Also, make sure to start the actual text at the margin.
356    =========================================================
357
358 * Removed library-level ABI versions. These have been replaced with a single
359   project-level ABI version for non-experimental libraries and an ABI version of
360   ``0`` for experimental libraries. Review the :doc:`../contributing/abi_policy`
361   and :doc:`../contributing/abi_versioning` guides for more information.
362
363 * Removed duplicated set of commands for Rx offload configuration from testpmd::
364
365     port config all crc-strip|scatter|rx-cksum|rx-timestamp|
366                     hw-vlan|hw-vlan-filter|hw-vlan-strip|hw-vlan-extend on|off
367
368   The testpmd command set that can be used instead in order to enable or
369   disable Rx offloading on all Rx queues of a port is::
370
371     port config <port_id> rx_offload crc_strip|scatter|
372                                      ipv4_cksum|udp_cksum|tcp_cksum|timestamp|
373                                      vlan_strip|vlan_filter|vlan_extend on|off
374
375 * Removed AF_XDP pmd_zero copy vdev argument. Support is now auto-detected.
376
377 * The following sample applications have been removed in this release:
378
379   * Exception Path
380   * L3 Forwarding in a Virtualization Environment
381   * Load Balancer
382   * Netmap Compatibility
383   * Quota and Watermark
384   * vhost-scsi
385
386 * Removed arm64-dpaa2-* build config. arm64-dpaa-* can now build for both
387   dpaa and dpaa2 platforms.
388
389
390 API Changes
391 -----------
392
393 .. This section should contain API changes. Sample format:
394
395    * sample: Add a short 1-2 sentence description of the API change
396      which was announced in the previous releases and made in this release.
397      Start with a scope label like "ethdev:".
398      Use fixed width quotes for ``function_names`` or ``struct_names``.
399      Use the past tense.
400
401    This section is a comment. Do not overwrite or remove it.
402    Also, make sure to start the actual text at the margin.
403    =========================================================
404
405 * eal: made the ``lcore_config`` struct and global symbol private.
406
407 * eal: removed the ``rte_cpu_check_supported`` function, replaced by
408   ``rte_cpu_is_supported`` since dpdk v17.08.
409
410 * eal: removed the ``rte_malloc_virt2phy`` function, replaced by
411   ``rte_malloc_virt2iova`` since v17.11.
412
413 * eal: made the ``rte_config`` struct and ``rte_eal_get_configuration``
414   function private.
415
416 * mem: hid the internal ``malloc_heap`` structure and the
417   ``rte_malloc_heap.h`` header.
418
419 * vfio: removed ``rte_vfio_dma_map`` and ``rte_vfio_dma_unmap`` that have
420   been marked as deprecated in release 19.05.
421   ``rte_vfio_container_dma_map`` and ``rte_vfio_container_dma_unmap`` can
422   be used as substitutes.
423
424 * pci: removed the following functions deprecated since dpdk v17.11:
425
426   - ``eal_parse_pci_BDF`` replaced by ``rte_pci_addr_parse``
427   - ``eal_parse_pci_DomBDF`` replaced by ``rte_pci_addr_parse``
428   - ``rte_eal_compare_pci_addr`` replaced by ``rte_pci_addr_cmp``
429
430 * The network structure ``esp_tail`` has been prefixed by ``rte_``.
431
432 * The network definitions of PPPoE ethertypes have been prefixed by ``RTE_``.
433
434 * The network structure for MPLS has been prefixed by ``rte_``.
435
436 * ethdev: changed ``rte_eth_dev_infos_get`` return value from ``void`` to
437   ``int`` to provide a way to report various error conditions.
438
439 * ethdev: changed ``rte_eth_promiscuous_enable`` and
440   ``rte_eth_promiscuous_disable`` return value from ``void`` to ``int`` to
441   provide a way to report various error conditions.
442
443 * ethdev: changed ``rte_eth_allmulticast_enable`` and
444   ``rte_eth_allmulticast_disable`` return value from ``void`` to ``int`` to
445   provide a way to report various error conditions.
446
447 * ethdev: changed ``rte_eth_dev_xstats_reset`` return value from ``void`` to
448   ``int`` to provide a way to report various error conditions.
449
450 * ethdev: changed ``rte_eth_link_get`` and ``rte_eth_link_get_nowait``
451   return value from ``void`` to ``int`` to provide a way to report various
452   error conditions.
453
454 * ethdev: changed ``rte_eth_macaddr_get`` return value from ``void`` to
455   ``int`` to provide a way to report various error conditions.
456
457 * ethdev: changed ``rte_eth_dev_owner_delete`` return value from ``void`` to
458   ``int`` to provide a way to report various error conditions.
459
460 * ethdev: The deprecated function ``rte_eth_dev_count`` was removed.
461   The function ``rte_eth_dev_count_avail`` is a drop-in replacement.
462   If the intent is to iterate over ports, ``RTE_ETH_FOREACH_*`` macros
463   are better port iterators.
464
465 * ethdev: ``RTE_FLOW_ITEM_TYPE_META`` data endianness altered to host one.
466   Due to the new dynamic metadata field in mbuf is host-endian either, there
467   is a minor compatibility issue for applications in case of 32-bit values
468   supported.
469
470 * ethdev: the tx_metadata mbuf field is moved to dynamic one.
471   ``PKT_TX_METADATA`` flag is replaced with ``PKT_TX_DYNF_METADATA``.
472   ``DEV_TX_OFFLOAD_MATCH_METADATA`` offload flag is removed, now metadata
473   support in PMD is engaged on dynamic field registration.
474
475 * event: The function ``rte_event_eth_tx_adapter_enqueue`` takes an additional
476   input as ``flags``. Flag ``RTE_EVENT_ETH_TX_ADAPTER_ENQUEUE_SAME_DEST`` which
477   has been introduced in this release is used when used when all the packets
478   enqueued in the Tx adapter are destined for the same Ethernet port ans Tx
479   queue.
480
481 * sched: The pipe nodes configuration parameters such as number of pipes,
482   pipe queue sizes, pipe profiles, etc., are moved from port level structure
483   to subport level. This allows different subports of the same port to
484   have different configuration for the pipe nodes.
485
486
487 ABI Changes
488 -----------
489
490 .. This section should contain ABI changes. Sample format:
491
492    * sample: Add a short 1-2 sentence description of the ABI change
493      which was announced in the previous releases and made in this release.
494      Start with a scope label like "ethdev:".
495      Use fixed width quotes for ``function_names`` or ``struct_names``.
496      Use the past tense.
497
498    This section is a comment. Do not overwrite or remove it.
499    Also, make sure to start the actual text at the margin.
500    =========================================================
501
502 * policy: Please note the revisions to the :doc:`../contributing/abi_policy`
503   introducing major ABI versions, with DPDK 19.11 becoming the first major
504   version ``v20``. ABI changes to add new features continue to be permitted in
505   subsequent releases, with the condition that ABI compatibility with the major
506   ABI version is maintained.
507
508 * net: The Ethernet address and other header definitions have changed
509   attributes. They have been modified to be aligned on 2-byte boundaries.
510   These changes should not impact normal usage because drivers naturally
511   align the Ethernet header on receive and all known encapsulations
512   preserve the alignment of the header.
513
514 * security: The field ``replay_win_sz`` has been moved from the ipsec library
515   based ``rte_ipsec_sa_prm`` structure to security library based structure
516   ``rte_security_ipsec_xform``, which specify the anti-replay window size
517   to enable sequence replay attack handling.
518
519 * ipsec: The field ``replay_win_sz`` has been removed from the structure
520   ``rte_ipsec_sa_prm`` as it has been added to the security library.
521
522 * ethdev: Added 32-bit fields for maximum LRO aggregated packet size, in
523   struct ``rte_eth_dev_info`` for the port capability and in struct
524   ``rte_eth_rxmode`` for the port configuration.
525   Application should use the new field in struct ``rte_eth_rxmode`` to configure
526   the requested size.
527   PMD should use the new field in struct ``rte_eth_dev_info`` to report the
528   supported port capability.
529
530
531 Shared Library Versions
532 -----------------------
533
534 .. Update any library version updated in this release
535    and prepend with a ``+`` sign, like this:
536
537      libfoo.so.1
538    + libupdated.so.2
539      libbar.so.1
540
541    This section is a comment. Do not overwrite or remove it.
542    =========================================================
543
544 The libraries prepended with a plus sign were incremented in this version.
545
546 .. code-block:: diff
547
548      librte_acl.so.2
549      librte_bbdev.so.1
550      librte_bitratestats.so.2
551      librte_bpf.so.1
552      librte_bus_dpaa.so.2
553      librte_bus_fslmc.so.2
554      librte_bus_ifpga.so.2
555      librte_bus_pci.so.2
556      librte_bus_vdev.so.2
557      librte_bus_vmbus.so.2
558      librte_cfgfile.so.2
559      librte_cmdline.so.2
560      librte_compressdev.so.1
561      librte_cryptodev.so.8
562      librte_distributor.so.1
563    + librte_eal.so.12
564      librte_efd.so.1
565    + librte_ethdev.so.13
566    + librte_eventdev.so.8
567    + librte_fib.so.1
568      librte_flow_classify.so.1
569      librte_gro.so.1
570      librte_gso.so.1
571      librte_hash.so.2
572      librte_ip_frag.so.1
573    + librte_ipsec.so.2
574      librte_jobstats.so.1
575      librte_kni.so.2
576      librte_kvargs.so.1
577      librte_latencystats.so.1
578      librte_lpm.so.2
579      librte_mbuf.so.5
580      librte_member.so.1
581      librte_mempool.so.5
582      librte_meter.so.3
583      librte_metrics.so.1
584      librte_net.so.1
585    + librte_pci.so.2
586      librte_pdump.so.3
587      librte_pipeline.so.3
588      librte_pmd_bnxt.so.2
589      librte_pmd_bond.so.2
590      librte_pmd_i40e.so.2
591      librte_pmd_ixgbe.so.2
592      librte_pmd_dpaa2_qdma.so.1
593      librte_pmd_ring.so.2
594      librte_pmd_softnic.so.1
595      librte_pmd_vhost.so.2
596      librte_port.so.3
597      librte_power.so.1
598      librte_rawdev.so.1
599    + librte_rib.so.1
600      librte_rcu.so.1
601      librte_reorder.so.1
602      librte_ring.so.2
603    + librte_sched.so.4
604    + librte_security.so.3
605      librte_stack.so.1
606      librte_table.so.3
607      librte_timer.so.1
608      librte_vhost.so.4
609
610
611 Known Issues
612 ------------
613
614 .. This section should contain new known issues in this release. Sample format:
615
616    * **Add title in present tense with full stop.**
617
618      Add a short 1-2 sentence description of the known issue
619      in the present tense. Add information on any known workarounds.
620
621    This section is a comment. Do not overwrite or remove it.
622    Also, make sure to start the actual text at the margin.
623    =========================================================
624
625
626 Tested Platforms
627 ----------------
628
629 .. This section should contain a list of platforms that were tested
630    with this release.
631
632    The format is:
633
634    * <vendor> platform with <vendor> <type of devices> combinations
635
636      * List of CPU
637      * List of OS
638      * List of devices
639      * Other relevant details...
640
641    This section is a comment. Do not overwrite or remove it.
642    Also, make sure to start the actual text at the margin.
643    =========================================================
644
645 * Intel\ |reg| platforms with Intel\ |reg| NICs combinations
646
647   * CPU
648
649     * Intel\ |reg| Atom\ |trade| CPU C3758 @ 2.20GHz
650     * Intel\ |reg| Atom\ |trade| CPU C3858 @ 2.00GHz
651     * Intel\ |reg| Atom\ |trade| CPU C3958 @ 2.00GHz
652     * Intel\ |reg| Xeon\ |reg| CPU D-1541 @ 2.10GHz
653     * Intel\ |reg| Xeon\ |reg| CPU D-1553N @ 2.30GHz
654     * Intel\ |reg| Xeon\ |reg| CPU E5-2680 0 @ 2.70GHz
655     * Intel\ |reg| Xeon\ |reg| CPU E5-2680 v2 @ 2.80GHz
656     * Intel\ |reg| Xeon\ |reg| CPU E5-2699 v3 @ 2.30GHz
657     * Intel\ |reg| Xeon\ |reg| CPU E5-2699 v4 @ 2.20GHz
658     * Intel\ |reg| Xeon\ |reg| Gold 6139 CPU @ 2.30GHz
659     * Intel\ |reg| Xeon\ |reg| Gold 6252N CPU @ 2.30GHz
660     * Intel\ |reg| Xeon\ |reg| Platinum 8180 CPU @ 2.50GHz
661     * Intel\ |reg| Xeon\ |reg| Platinum 8280M CPU @ 2.70GHz
662
663   * OS:
664
665     * CentOS 7.6
666     * Fedora 30
667     * FreeBSD 12.0
668     * Red Hat Enterprise Linux Server release 8.0
669     * Red Hat Enterprise Linux Server release 7.6
670     * Suse12SP3
671     * Ubuntu 14.04
672     * Ubuntu 16.04
673     * Ubuntu 16.10
674     * Ubuntu 18.04
675     * Ubuntu 19.04
676
677   * NICs:
678
679     * Intel\ |reg| Corporation Ethernet Controller E810-C for SFP (2x25G)
680
681       * Firmware version: 1.02 0x80002084 1.2538.0/1.02 0x80002082 1.2538.0
682       * Device id (pf): 8086:1593
683       * Driver version: 0.12.25 (ice)
684
685     * Intel\ |reg| Corporation Ethernet Controller E810-C for SFP (2x100G)
686
687       * Firmware version: 1.02 0x80002081 1.2538.0
688       * Device id (pf): 8086:1592
689       * Driver version: 0.12.25 (ice)
690
691     * Intel\ |reg| 82599ES 10 Gigabit Ethernet Controller
692
693       * Firmware version: 0x61bf0001
694       * Device id (pf/vf): 8086:10fb / 8086:10ed
695       * Driver version: 5.6.1 (ixgbe)
696
697     * Intel\ |reg| Corporation Ethernet Connection X552/X557-AT 10GBASE-T
698
699       * Firmware version: 0x800003e7
700       * Device id (pf/vf): 8086:15ad / 8086:15a8
701       * Driver version: 5.1.0 (ixgbe)
702
703     * Intel\ |reg| Corporation Ethernet Controller 10G X550T
704
705       * Firmware version: 0x80000482
706       * Device id (pf): 8086:1563
707       * Driver version: 5.6.1 (ixgbe)
708
709     * Intel\ |reg| Ethernet Converged Network Adapter X710-DA4 (4x10G)
710
711       * Firmware version: 7.00 0x80004cdb
712       * Device id (pf/vf): 8086:1572 / 8086:154c
713       * Driver version: 2.9.21 (i40e)
714
715     * Intel\ |reg| Corporation Ethernet Connection X722 for 10GbE SFP+ (4x10G)
716
717       * Firmware version: 4.10 0x80001a3c
718       * Device id (pf/vf): 8086:37d0 / 8086:37cd
719       * Driver version: 2.9.21 (i40e)
720
721     * Intel\ |reg| Ethernet Converged Network Adapter XXV710-DA2 (2x25G)
722
723       * Firmware version: 7.00 0x80004cf8
724       * Device id (pf/vf): 8086:158b / 8086:154c
725       * Driver version: 2.9.21 (i40e)
726
727     * Intel\ |reg| Ethernet Converged Network Adapter XL710-QDA2 (2X40G)
728
729       * Firmware version: 7.00 0x80004c97
730       * Device id (pf/vf): 8086:1583 / 8086:154c
731       * Driver version: 2.9.21 (i40e)
732
733     * Intel\ |reg| Corporation I350 Gigabit Network Connection
734
735       * Firmware version: 1.63, 0x80000cbc
736       * Device id (pf/vf): 8086:1521 / 8086:1520
737       * Driver version: 5.4.0-k (igb)
738
739     * Intel\ |reg| Corporation I210 Gigabit Network Connection
740
741       * Firmware version: 3.25, 0x800006eb
742       * Device id (pf): 8086:1533
743       * Driver version: 5.4.0-k(igb)
744
745 * ARMv8 SoC combinations from Marvell (with integrated NICs)
746
747   * SoC:
748
749     * CN83xx, CN96xx, CN93xx
750
751   * OS (Based on Marvell OCTEON TX SDK-10.1.2.0):
752
753     * Arch Linux
754     * Buildroot 2018.11
755     * Ubuntu 16.04.1 LTS
756     * Ubuntu 16.10
757     * Ubuntu 18.04.1
758     * Ubuntu 19.04
759
760 * Intel\ |reg| platforms with Mellanox\ |reg| NICs combinations
761
762   * CPU:
763
764     * Intel\ |reg| Xeon\ |reg| Gold 6154 CPU @ 3.00GHz
765     * Intel\ |reg| Xeon\ |reg| CPU E5-2697A v4 @ 2.60GHz
766     * Intel\ |reg| Xeon\ |reg| CPU E5-2697 v3 @ 2.60GHz
767     * Intel\ |reg| Xeon\ |reg| CPU E5-2680 v2 @ 2.80GHz
768     * Intel\ |reg| Xeon\ |reg| CPU E5-2650 v4 @ 2.20GHz
769     * Intel\ |reg| Xeon\ |reg| CPU E5-2640 @ 2.50GHz
770     * Intel\ |reg| Xeon\ |reg| CPU E5-2620 v4 @ 2.10GHz
771
772   * OS:
773
774     * Red Hat Enterprise Linux Server release 8.0 (Maipo)
775     * Red Hat Enterprise Linux Server release 7.7 (Maipo)
776     * Red Hat Enterprise Linux Server release 7.6 (Maipo)
777     * Red Hat Enterprise Linux Server release 7.5 (Maipo)
778     * Red Hat Enterprise Linux Server release 7.4 (Maipo)
779     * Red Hat Enterprise Linux Server release 7.3 (Maipo)
780     * Red Hat Enterprise Linux Server release 7.2 (Maipo)
781     * Ubuntu 19.04
782     * Ubuntu 18.10
783     * Ubuntu 18.04
784     * Ubuntu 16.04
785     * SUSE Linux Enterprise Server 15
786
787   * OFED:
788
789     * MLNX_OFED 4.6-1.0.1.1
790     * MLNX_OFED 4.7-1.0.0.1
791     * MLNX_OFED 4.7-3.1.9.0 and above
792
793   * upstream kernel:
794
795     * Linux 5.3 and above
796
797   * rdma-core:
798
799     * rdma-core-24.1-1 and above
800
801   * NICs:
802
803     * Mellanox\ |reg| ConnectX\ |reg|-3 Pro 40G MCX354A-FCC_Ax (2x40G)
804
805       * Host interface: PCI Express 3.0 x8
806       * Device ID: 15b3:1007
807       * Firmware version: 2.42.5000
808
809     * Mellanox\ |reg| ConnectX\ |reg|-4 10G MCX4111A-XCAT (1x10G)
810
811       * Host interface: PCI Express 3.0 x8
812       * Device ID: 15b3:1013
813       * Firmware version: 12.26.2032 and above
814
815     * Mellanox\ |reg| ConnectX\ |reg|-4 10G MCX4121A-XCAT (2x10G)
816
817       * Host interface: PCI Express 3.0 x8
818       * Device ID: 15b3:1013
819       * Firmware version: 12.26.2032 and above
820
821     * Mellanox\ |reg| ConnectX\ |reg|-4 25G MCX4111A-ACAT (1x25G)
822
823       * Host interface: PCI Express 3.0 x8
824       * Device ID: 15b3:1013
825       * Firmware version: 12.26.2032 and above
826
827     * Mellanox\ |reg| ConnectX\ |reg|-4 25G MCX4121A-ACAT (2x25G)
828
829       * Host interface: PCI Express 3.0 x8
830       * Device ID: 15b3:1013
831       * Firmware version: 12.26.2032 and above
832
833     * Mellanox\ |reg| ConnectX\ |reg|-4 40G MCX4131A-BCAT/MCX413A-BCAT (1x40G)
834
835       * Host interface: PCI Express 3.0 x8
836       * Device ID: 15b3:1013
837       * Firmware version: 12.26.2032 and above
838
839     * Mellanox\ |reg| ConnectX\ |reg|-4 40G MCX415A-BCAT (1x40G)
840
841       * Host interface: PCI Express 3.0 x16
842       * Device ID: 15b3:1013
843       * Firmware version: 12.26.2032 and above
844
845     * Mellanox\ |reg| ConnectX\ |reg|-4 50G MCX4131A-GCAT/MCX413A-GCAT (1x50G)
846
847       * Host interface: PCI Express 3.0 x8
848       * Device ID: 15b3:1013
849       * Firmware version: 12.26.2032 and above
850
851     * Mellanox\ |reg| ConnectX\ |reg|-4 50G MCX414A-BCAT (2x50G)
852
853       * Host interface: PCI Express 3.0 x8
854       * Device ID: 15b3:1013
855       * Firmware version: 12.26.2032 and above
856
857     * Mellanox\ |reg| ConnectX\ |reg|-4 50G MCX415A-GCAT/MCX416A-BCAT/MCX416A-GCAT (2x50G)
858
859       * Host interface: PCI Express 3.0 x16
860       * Device ID: 15b3:1013
861       * Firmware version: 12.26.2032 and above
862       * Firmware version: 12.26.2032 and above
863
864     * Mellanox\ |reg| ConnectX\ |reg|-4 50G MCX415A-CCAT (1x100G)
865
866       * Host interface: PCI Express 3.0 x16
867       * Device ID: 15b3:1013
868       * Firmware version: 12.26.2032 and above
869
870     * Mellanox\ |reg| ConnectX\ |reg|-4 100G MCX416A-CCAT (2x100G)
871
872       * Host interface: PCI Express 3.0 x16
873       * Device ID: 15b3:1013
874       * Firmware version: 12.26.2032 and above
875
876     * Mellanox\ |reg| ConnectX\ |reg|-4 Lx 10G MCX4121A-XCAT (2x10G)
877
878       * Host interface: PCI Express 3.0 x8
879       * Device ID: 15b3:1015
880       * Firmware version: 14.26.2032 and above
881
882     * Mellanox\ |reg| ConnectX\ |reg|-4 Lx 25G MCX4121A-ACAT (2x25G)
883
884       * Host interface: PCI Express 3.0 x8
885       * Device ID: 15b3:1015
886       * Firmware version: 14.26.2032 and above
887
888     * Mellanox\ |reg| ConnectX\ |reg|-5 100G MCX556A-ECAT (2x100G)
889
890       * Host interface: PCI Express 3.0 x16
891       * Device ID: 15b3:1017
892       * Firmware version: 16.26.2032 and above
893
894     * Mellanox\ |reg| ConnectX\ |reg|-5 Ex EN 100G MCX516A-CDAT (2x100G)
895
896       * Host interface: PCI Express 4.0 x16
897       * Device ID: 15b3:1019
898       * Firmware version: 16.26.2032 and above
899
900 * IBM Power 9 platforms with Mellanox\ |reg| NICs combinations
901
902   * CPU:
903
904     * POWER9 2.2 (pvr 004e 1202) 2300MHz
905
906   * OS:
907
908     * Ubuntu 18.04.1 LTS (Bionic Beaver)
909
910   * NICs:
911
912     * Mellanox\ |reg| ConnectX\ |reg|-5 100G MCX556A-ECAT (2x100G)
913
914       * Host interface: PCI Express 3.0 x16
915       * Device ID: 15b3:1017
916       * Firmware version: 16.26.1040
917
918   * OFED:
919
920     * MLNX_OFED 4.7-1.0.0.2