1fdab8f2eSThomas Monjalon.. SPDX-License-Identifier: BSD-3-Clause 2fdab8f2eSThomas Monjalon Copyright 2021 The DPDK contributors 3fdab8f2eSThomas Monjalon 4fdab8f2eSThomas Monjalon.. include:: <isonum.txt> 5fdab8f2eSThomas Monjalon 6fdab8f2eSThomas MonjalonDPDK Release 21.11 7fdab8f2eSThomas Monjalon================== 8fdab8f2eSThomas Monjalon 9fdab8f2eSThomas MonjalonNew Features 10fdab8f2eSThomas Monjalon------------ 11fdab8f2eSThomas Monjalon 12b344eb5dSXueming Li* **Enabled new devargs parser.** 13b344eb5dSXueming Li 148636e264SJohn McNamara * Enabled devargs syntax: 158636e264SJohn McNamara ``bus=X,paramX=x/class=Y,paramY=y/driver=Z,paramZ=z``. 16b344eb5dSXueming Li * Added bus-level parsing of the devargs syntax. 17b344eb5dSXueming Li * Kept compatibility with the legacy syntax as parsing fallback. 18b344eb5dSXueming Li 1924d5a1ceSJohn Levon* **Updated EAL hugetlbfs mount handling for Linux.** 2024d5a1ceSJohn Levon 218636e264SJohn McNamara * Modified EAL to allow ``--huge-dir`` option to specify a sub-directory 2224d5a1ceSJohn Levon within a hugetlbfs mountpoint. 2324d5a1ceSJohn Levon 24b36970f2SChengwen Feng* **Added dmadev library.** 25b36970f2SChengwen Feng 26b36970f2SChengwen Feng * Added a DMA device framework for management and provision of 27b36970f2SChengwen Feng hardware and software DMA devices. 28e0180db1SChengwen Feng * Added generic API which support a number of different DMA 29e0180db1SChengwen Feng operations. 302ece65f0SChengwen Feng * Added multi-process support. 31b36970f2SChengwen Feng 32a1b2558cSFerruh Yigit* **Updated default KNI behavior on net devices control callbacks.** 33a1b2558cSFerruh Yigit 34a1b2558cSFerruh Yigit Updated KNI net devices control callbacks to run with ``rtnl`` kernel lock 35a1b2558cSFerruh Yigit held by default. A newly added ``enable_bifurcated`` KNI kernel module 36a1b2558cSFerruh Yigit parameter can be used to run callbacks with ``rtnl`` lock released. 37a1b2558cSFerruh Yigit 384d0d4cf3SChengwen Feng* **Added HiSilicon DMA driver.** 394d0d4cf3SChengwen Feng 404d0d4cf3SChengwen Feng The HiSilicon DMA driver provides device drivers for the Kunpeng's DMA devices. 414d0d4cf3SChengwen Feng This device driver can be used through the generic dmadev API. 424d0d4cf3SChengwen Feng 43e33ad06eSKevin Laatz* **Added IDXD dmadev driver implementation.** 44e33ad06eSKevin Laatz 458636e264SJohn McNamara The IDXD dmadev driver provides device drivers for the Intel DSA devices. 46e33ad06eSKevin Laatz This device driver can be used through the generic dmadev API. 47e33ad06eSKevin Laatz 48866e46bcSConor Walsh* **Added IOAT dmadev driver implementation.** 49866e46bcSConor Walsh 50866e46bcSConor Walsh The Intel I/O Acceleration Technology (IOAT) dmadev driver provides a device 51866e46bcSConor Walsh driver for Intel IOAT devices such as Crystal Beach DMA (CBDMA) on Ice Lake, 52866e46bcSConor Walsh Skylake and Broadwell. This device driver can be used through the generic dmadev API. 53866e46bcSConor Walsh 5453f6d732SRadha Mohan Chintakuntla* **Added Marvell CNXK DMA driver.** 5553f6d732SRadha Mohan Chintakuntla 5653f6d732SRadha Mohan Chintakuntla Added dmadev driver for the DPI DMA hardware accelerator 5753f6d732SRadha Mohan Chintakuntla of Marvell OCTEONTX2 and OCTEONTX3 family of SoCs. 5853f6d732SRadha Mohan Chintakuntla 59583f3732SGagandeep Singh* **Added NXP DPAA DMA driver.** 60583f3732SGagandeep Singh 618636e264SJohn McNamara Added a new dmadev driver for the NXP DPAA platform. 62583f3732SGagandeep Singh 6327a300e6SKonstantin Ananyev* **Added support to get all MAC addresses of a device.** 6427a300e6SKonstantin Ananyev 658636e264SJohn McNamara Added ``rte_eth_macaddrs_get`` to allow a user to retrieve all Ethernet 668636e264SJohn McNamara addresses assigned to a given Ethernet port. 6727a300e6SKonstantin Ananyev 688636e264SJohn McNamara* **Introduced GPU device class.** 698b8036a6SElena Agostini 708636e264SJohn McNamara Introduced the GPU device class with initial features: 718636e264SJohn McNamara 728636e264SJohn McNamara * Device information. 738636e264SJohn McNamara * Memory management. 748636e264SJohn McNamara * Communication flag and list. 758b8036a6SElena Agostini 761306a73bSElena Agostini* **Added NVIDIA GPU driver implemented with CUDA library.** 771306a73bSElena Agostini 788636e264SJohn McNamara Added NVIDIA GPU driver implemented with CUDA library under the new 798636e264SJohn McNamara GPU device interface. 808636e264SJohn McNamara 8181b0fbb8SAlvin Zhang* **Added new RSS offload types for IPv4/L4 checksum in RSS flow.** 8281b0fbb8SAlvin Zhang 838636e264SJohn McNamara Added macros ``ETH_RSS_IPV4_CHKSUM`` and ``ETH_RSS_L4_CHKSUM``. The IPv4 and 848636e264SJohn McNamara TCP/UDP/SCTP header checksum field can now be used as input set for RSS. 8581b0fbb8SAlvin Zhang 863a929df1SJie Wang* **Added L2TPv2 and PPP protocol support in flow API.** 873a929df1SJie Wang 888636e264SJohn McNamara Added flow pattern items and header formats for the L2TPv2 and PPP protocols. 893a929df1SJie Wang 90dc4d860eSViacheslav Ovsiienko* **Added flow flex item.** 91dc4d860eSViacheslav Ovsiienko 92dc4d860eSViacheslav Ovsiienko The configurable flow flex item provides the capability to introduce 93dc4d860eSViacheslav Ovsiienko an arbitrary user-specified network protocol header, 94dc4d860eSViacheslav Ovsiienko configure the hardware accordingly, and perform match on this header 95dc4d860eSViacheslav Ovsiienko with desired patterns and masks. 96dc4d860eSViacheslav Ovsiienko 97f6d8a6d3SIvan Malov* **Added ethdev support to control delivery of Rx metadata from the HW to the PMD.** 98f6d8a6d3SIvan Malov 99f6d8a6d3SIvan Malov A new API, ``rte_eth_rx_metadata_negotiate()``, was added. 100f6d8a6d3SIvan Malov The following parts of Rx metadata were defined: 101f6d8a6d3SIvan Malov 102f6d8a6d3SIvan Malov * ``RTE_ETH_RX_METADATA_USER_FLAG`` 103f6d8a6d3SIvan Malov * ``RTE_ETH_RX_METADATA_USER_MARK`` 104f6d8a6d3SIvan Malov * ``RTE_ETH_RX_METADATA_TUNNEL_ID`` 105f6d8a6d3SIvan Malov 1061179f05cSIvan Malov* **Added an API to get a proxy port to manage "transfer" flows.** 1071179f05cSIvan Malov 1081179f05cSIvan Malov A new API, ``rte_flow_pick_transfer_proxy()``, was added. 1091179f05cSIvan Malov 110dd22740cSXueming Li* **Added ethdev shared Rx queue support.** 111dd22740cSXueming Li 112dd22740cSXueming Li * Added new device capability flag and Rx domain field to switch info. 113dd22740cSXueming Li * Added share group and share queue ID to Rx queue configuration. 1148636e264SJohn McNamara * Added testpmd support and dedicated forwarding engine. 115dd22740cSXueming Li 116d41d39bcSTudor Cornea* **Updated af_packet ethdev driver.** 117d41d39bcSTudor Cornea 1188636e264SJohn McNamara * The default VLAN strip behavior has changed. The VLAN tag won't be stripped 119d41d39bcSTudor Cornea unless ``DEV_RX_OFFLOAD_VLAN_STRIP`` offload is enabled. 120d41d39bcSTudor Cornea 121632be327SJie Wang* **Added API to get device configuration in ethdev.** 122632be327SJie Wang 123632be327SJie Wang Added an ethdev API which can help users get device configuration. 124632be327SJie Wang 1250668d829SCiara Loftus* **Updated AF_XDP PMD.** 1260668d829SCiara Loftus 1278636e264SJohn McNamara * Disabled secondary process support due to insufficient state shared 1288636e264SJohn McNamara between processes which causes a crash. This will be fixed/re-enabled 1298636e264SJohn McNamara in the next release. 1300668d829SCiara Loftus 131005064e5SMichal Krawczyk* **Updated Amazon ENA PMD.** 132005064e5SMichal Krawczyk 133005064e5SMichal Krawczyk Updated the Amazon ENA PMD. The new driver version (v2.5.0) introduced 134005064e5SMichal Krawczyk bug fixes and improvements, including: 135005064e5SMichal Krawczyk 1368636e264SJohn McNamara * Support for the ``tx_free_thresh`` and ``rx_free_thresh`` configuration parameters. 13708180833SMichal Krawczyk * NUMA aware allocations for the queue helper structures. 1388636e264SJohn McNamara * A Watchdog feature which is checking for missing Tx completions. 139005064e5SMichal Krawczyk 140dbd29c42SKishore Padmanabha* **Updated Broadcom bnxt PMD.** 141dbd29c42SKishore Padmanabha 142dbd29c42SKishore Padmanabha * Added flow offload support for Thor. 143d1bd2897SJay Ding * Added TruFlow and AFM SRAM partitioning support. 1448636e264SJohn McNamara * Implemented support for tunnel offload. 14534a7ff5aSKishore Padmanabha * Updated HWRM API to version 1.10.2.68. 1468636e264SJohn McNamara * Added NAT support for destination IP and port combination. 147be3af03fSKishore Padmanabha * Added support for socket redirection. 1480d0dd177SAjit Khaparde * Added wildcard match support for ingress flows. 14932580839SKishore Padmanabha * Added support for inner IP header for GRE tunnel flows. 1508636e264SJohn McNamara * Updated support for RSS action in flow rules. 1519ba1e167SKishore Padmanabha * Removed devargs option for stats accumulation. 152dbd29c42SKishore Padmanabha 153db79f2d5SJohn Daley* **Updated Cisco enic driver.** 154db79f2d5SJohn Daley 155db79f2d5SJohn Daley * Added rte_flow support for matching GTP, GTP-C and GTP-U headers. 156db79f2d5SJohn Daley 157d1c7029aSWilliam Tu* **Updated Intel e1000 emulated driver.** 158d1c7029aSWilliam Tu 159d1c7029aSWilliam Tu * Added Intel e1000 support on Windows. 160d1c7029aSWilliam Tu 1614feddcfcSPallavi Kadam* **Updated Intel iavf driver.** 1624feddcfcSPallavi Kadam 1634feddcfcSPallavi Kadam * Added Intel iavf support on Windows. 16402f68853SAlvin Zhang * Added IPv4 and L4 (TCP/UDP/SCTP) checksum hash support in RSS flow. 165f30157d9SJie Wang * Added PPPoL2TPv2oUDP RSS hash based on inner IP address and TCP/UDP port. 1666bc987ecSRadu Nicolau * Added Intel iavf inline crypto support. 1674feddcfcSPallavi Kadam 168437dbd2fSSimei Su* **Updated Intel ice driver.** 169437dbd2fSSimei Su 17025be39ccSJunfeng Guo * Added protocol agnostic flow offloading support in Flow Director. 1711b9c6812STing Xu * Added protocol agnostic flow offloading support in RSS hash. 1728636e264SJohn McNamara * Added 1PPS out support via devargs. 173e495e930SAlvin Zhang * Added IPv4 and L4 (TCP/UDP/SCTP) checksum hash support in RSS flow. 1748636e264SJohn McNamara * Added ``DEV_RX_OFFLOAD_TIMESTAMP`` support. 175646dcbe6SSimei Su * Added timesync API support under scalar path. 1764bd8098aSDapeng Yu * Added DCF reset API support. 177437dbd2fSSimei Su 1786be66901SWilliam Tu* **Updated Intel ixgbe driver.** 1796be66901SWilliam Tu 1806be66901SWilliam Tu * Added Intel ixgbe support on Windows. 1816be66901SWilliam Tu 1828ca851cdSSatheesh Paul* **Updated Marvell cnxk ethdev driver.** 1838ca851cdSSatheesh Paul 1848ca851cdSSatheesh Paul * Added rte_flow support for dual VLAN insert and strip actions. 1854435371bSSatha Rao * Added rte_tm support. 18669daa9e5SNithin Dabilpuram * Added support for Inline IPsec for CN9K event mode and CN10K 18769daa9e5SNithin Dabilpuram poll mode and event mode. 18858397fedSSunil Kumar Kori * Added support for ingress meter for CN10K platform. 1898ca851cdSSatheesh Paul 190fec28ca0SDmitry Kozlyuk* **Updated Mellanox mlx5 driver.** 191fec28ca0SDmitry Kozlyuk 192fec28ca0SDmitry Kozlyuk Updated the Mellanox mlx5 driver with new features and improvements, including: 193fec28ca0SDmitry Kozlyuk 194fec28ca0SDmitry Kozlyuk * Added implicit mempool registration to avoid data path hiccups (opt-out). 1958636e264SJohn McNamara * Added delay drop support for Rx queues. 196c8834a36STal Shnaiderman * Added NIC offloads for the PMD on Windows (TSO, VLAN strip, CRC keep). 1977299ab68SRongwei Liu * Added socket direct mode bonding support. 198fec28ca0SDmitry Kozlyuk 199fc0ec740SApeksha Gupta* **Added NXP ENETFEC PMD [EXPERIMENTAL].** 200fc0ec740SApeksha Gupta 201fc0ec740SApeksha Gupta Added the new ENETFEC driver for the NXP IMX8MMEVK platform. See the 202fc0ec740SApeksha Gupta :doc:`../nics/enetfec` NIC driver guide for more details on this new driver. 203fc0ec740SApeksha Gupta 204599e4e9aSViacheslav Galaktionov* **Updated Solarflare network PMD.** 205599e4e9aSViacheslav Galaktionov 206599e4e9aSViacheslav Galaktionov Updated the Solarflare ``sfc_efx`` driver with changes including: 207599e4e9aSViacheslav Galaktionov 208599e4e9aSViacheslav Galaktionov * Added port representors support on SN1000 SmartNICs 20926706314SViacheslav Galaktionov * Added flow API transfer proxy support 210b75d85b7SIgor Romanov * Added SN1000 virtual functions (VF) support 211ce1f72dcSViacheslav Galaktionov * Added support for flow counters without service cores 2123037e6cfSViacheslav Galaktionov * Added support for regioned DMA mapping required on SN1022 SoC 213599e4e9aSViacheslav Galaktionov 21434fd4373SMiao Li* **Added power monitor API in vhost library.** 21534fd4373SMiao Li 21634fd4373SMiao Li Added an API to support power monitor in vhost library. 21734fd4373SMiao Li 218327fcd2dSMiao Li* **Updated vhost PMD.** 219327fcd2dSMiao Li 220327fcd2dSMiao Li Add power monitor support in vhost PMD. 221327fcd2dSMiao Li 2220c9d6620SMaxime Coquelin* **Updated virtio PMD.** 2230c9d6620SMaxime Coquelin 2240c9d6620SMaxime Coquelin * Initial support for RSS receive mode has been added to the Virtio PMD, 2250c9d6620SMaxime Coquelin with the capability for the application to configure the hash key, 2260c9d6620SMaxime Coquelin the RETA and the hash types. 2270c9d6620SMaxime Coquelin Virtio hash reporting is yet to be added. 22864ac7e08SMiao Li * Added power monitor support in virtio PMD. 2290c9d6620SMaxime Coquelin 230f6aef1daSJiawen Wu* **Updated Wangxun ngbe driver.** 231f6aef1daSJiawen Wu 23279f3128dSJiawen Wu * Added offloads and packet type on RxTx. 233dee93977SJiawen Wu * Added VLAN and MAC filters. 2348b433d04SJiawen Wu * Added device basic statistics and extended stats. 2350779d7f6SJiawen Wu * Added multi-queue and RSS. 23660229dcfSJiawen Wu * Added SRIOV. 237f40e9f0eSJiawen Wu * Added flow control. 23824cd85f7SJiawen Wu * Added IEEE 1588. 239f6aef1daSJiawen Wu 2405e7596baSVijay Kumar Srivastava* **Added new vDPA PMD based on Xilinx devices.** 2415e7596baSVijay Kumar Srivastava 2425e7596baSVijay Kumar Srivastava Added a new Xilinx vDPA (``sfc_vdpa``) PMD. 2435e7596baSVijay Kumar Srivastava See the :doc:`../vdpadevs/sfc` guide for more details on this driver. 2445e7596baSVijay Kumar Srivastava 2458636e264SJohn McNamara* **Added telemetry callbacks to the cryptodev library.** 246d3d98f5cSRebecca Troy 247d3d98f5cSRebecca Troy Added telemetry callback functions which allow a list of crypto devices, 248d3d98f5cSRebecca Troy stats for a crypto device, and other device information to be queried. 2491c559ee8SGowrishankar Muthukrishnan Also added callback to get cryptodev capabilities. 250d3d98f5cSRebecca Troy 251259ca6d1SGowrishankar Muthukrishnan* **Added telemetry to security library.** 252259ca6d1SGowrishankar Muthukrishnan 253259ca6d1SGowrishankar Muthukrishnan Added telemetry callback functions to query security capabilities of 254259ca6d1SGowrishankar Muthukrishnan crypto device. 255259ca6d1SGowrishankar Muthukrishnan 2569b4a4cc0STejasree Kondoj* **Updated Marvell cnxk crypto PMD.** 2579b4a4cc0STejasree Kondoj 2589b4a4cc0STejasree Kondoj * Added AES-CBC SHA1-HMAC support in lookaside protocol (IPsec) for CN10K. 259d9bf3a41STejasree Kondoj * Added Transport mode support in lookaside protocol (IPsec) for CN10K. 260d9bf3a41STejasree Kondoj * Added UDP encapsulation support in lookaside protocol (IPsec) for CN10K. 261d38febb0SArchana Muniganti * Added support for lookaside protocol (IPsec) offload for CN9K. 26229742632SVidya Sagar Velumuri * Added support for ZUC algorithm with 256-bit key length for CN10K. 2637658d035STejasree Kondoj * Added support for CN98xx dual block. 26458245800SArchana Muniganti * Added inner checksum support in lookaside protocol (IPsec) for CN10K. 265fd1d6c95SAnoob Joseph * Added AES-CBC NULL auth support in lookaside protocol (IPsec) for CN10K. 266b00ae6f8SArchana Muniganti * Added ESN and anti-replay support in lookaside protocol (IPsec) for CN9K. 2679b4a4cc0STejasree Kondoj 268caf9ca47SShijith Thotton* **Added support for event crypto adapter on Marvell CN10K and CN9K.** 269caf9ca47SShijith Thotton 2708636e264SJohn McNamara * Added event crypto adapter ``OP_FORWARD`` mode support. 271caf9ca47SShijith Thotton 272b4a4fb7eSTal Shnaiderman* **Updated Mellanox mlx5 crypto driver.** 273b4a4fb7eSTal Shnaiderman 274b4a4fb7eSTal Shnaiderman * Added Windows support. 275*eb1dcc01SThomas Monjalon * Added support for BlueField-2 and ConnectX-6 Dx. 276b4a4fb7eSTal Shnaiderman 2773e4fbc6cSGagandeep Singh* **Updated NXP dpaa_sec crypto PMD.** 2783e4fbc6cSGagandeep Singh 2798636e264SJohn McNamara * Added DES-CBC, AES-XCBC-MAC, AES-CMAC and non-HMAC algorithm support. 28093e2661eSGagandeep Singh * Added PDCP short MAC-I support. 2819d5f73c2SGagandeep Singh * Added raw vector datapath API support. 2823e4fbc6cSGagandeep Singh 2833d1037e9SGagandeep Singh* **Updated NXP dpaa2_sec crypto PMD.** 2843d1037e9SGagandeep Singh 2853d1037e9SGagandeep Singh * Added PDCP short MAC-I support. 2864a81d34aSGagandeep Singh * Added raw vector datapath API support. 2873d1037e9SGagandeep Singh 288c75542aeSFan Zhang* **Added framework for consolidation of IPsec_MB dependent SW Crypto PMDs.** 289c75542aeSFan Zhang 290c75542aeSFan Zhang * The IPsec_MB framework was added to share common code between Intel 291c75542aeSFan Zhang SW Crypto PMDs that depend on the intel-ipsec-mb library. 2928636e264SJohn McNamara * Multiprocess support was added for the consolidated PMDs 29372a16927SCiara Power which requires v1.1 of the intel-ipsec-mb library. 2948636e264SJohn McNamara * The following PMDs were moved into a single source folder 2958636e264SJohn McNamara while their usage and EAL options remain unchanged. 296918fd2f1SPiotr Bronowski * AESNI_MB PMD. 297746825e5SPiotr Bronowski * AESNI_GCM PMD. 298bc9ef81cSPiotr Bronowski * KASUMI PMD. 2994f1cfda5SPiotr Bronowski * SNOW3G PMD. 300cde8df1bSPiotr Bronowski * ZUC PMD. 3018636e264SJohn McNamara * CHACHA20_POLY1305 - a new PMD. 302c75542aeSFan Zhang 3038c835018SPablo de Lara* **Updated the aesni_mb crypto PMD.** 3048c835018SPablo de Lara 3058c835018SPablo de Lara * Added support for ZUC-EEA3-256 and ZUC-EIA3-256. 3068c835018SPablo de Lara 3075208d68dSPiotr Bronowski* **Added digest appended ops support for Snow3G PMD.** 3085208d68dSPiotr Bronowski 3095208d68dSPiotr Bronowski * Added support for out-of-place auth-cipher operations that encrypt 3105208d68dSPiotr Bronowski the digest along with the rest of the raw data. 3115208d68dSPiotr Bronowski * Added support for partially encrypted digest when using auth-cipher 3125208d68dSPiotr Bronowski operations. 3135208d68dSPiotr Bronowski 314765f42f1SNicolas Chautru* **Updated the ACC100 bbdev PMD.** 315765f42f1SNicolas Chautru 316765f42f1SNicolas Chautru Added support for more comprehensive CRC options. 317765f42f1SNicolas Chautru 318a88352c3SNicolas Chautru* **Updated the turbo_sw bbdev PMD.** 319a88352c3SNicolas Chautru 320a88352c3SNicolas Chautru Added support for more comprehensive CRC options. 321a88352c3SNicolas Chautru 322b73d2f34SHemant Agrawal* **Added NXP LA12xx baseband PMD.** 323b73d2f34SHemant Agrawal 324f8dbaebbSSean Morrissey * Added a new baseband PMD for NXP LA12xx Software defined radio. 325b73d2f34SHemant Agrawal * See the :doc:`../bbdevs/la12xx` for more details. 326b73d2f34SHemant Agrawal 327350e25faSRaja Zidane* **Updated Mellanox compress driver.** 328350e25faSRaja Zidane 329350e25faSRaja Zidane * Added devargs option to allow manual setting of Huffman block size. 330350e25faSRaja Zidane 3319fa82d28SAdy Agbarih* **Updated Mellanox regex driver.** 3329fa82d28SAdy Agbarih 3339fa82d28SAdy Agbarih * Added support for new ROF file format. 3349fa82d28SAdy Agbarih 335c99d2619SRadu Nicolau* **Updated IPsec library.** 336c99d2619SRadu Nicolau 337c99d2619SRadu Nicolau * Added support for more AEAD algorithms AES_CCM, CHACHA20_POLY1305 338c99d2619SRadu Nicolau and AES_GMAC. 33901eef590SRadu Nicolau * Added support for NAT-T / UDP encapsulated ESP. 34068977baaSRadu Nicolau * Added support for SA telemetry. 3412ed40da8SRadu Nicolau * Added support for setting a non default starting ESN value. 342ff4a29d1SRadu Nicolau * Added support for TSO in inline crypto mode. 343c99d2619SRadu Nicolau 3444fd8c4cbSVladimir Medvedkin* **Added optimized Toeplitz hash implementation.** 3454fd8c4cbSVladimir Medvedkin 3464fd8c4cbSVladimir Medvedkin Added optimized Toeplitz hash implementation using Galois Fields New Instructions. 3474fd8c4cbSVladimir Medvedkin 348a550baf2SMin Hu (Connor)* **Added multi-process support for testpmd.** 349a550baf2SMin Hu (Connor) 350a550baf2SMin Hu (Connor) Added command-line options to specify total number of processes and 3518636e264SJohn McNamara current process ID. Each process owns a subset of Rx and Tx queues. 352a550baf2SMin Hu (Connor) 353ba588ce3SKiran Kumar K* **Updated test-crypto-perf application with new cases.** 354ba588ce3SKiran Kumar K 355ba588ce3SKiran Kumar K * Added support for asymmetric crypto throughput performance measurement. 356ba588ce3SKiran Kumar K Only modex is supported for now. 35728dde5daSAkhil Goyal * Added support for lookaside IPsec protocol offload throughput measurement. 358ba588ce3SKiran Kumar K 359474f1202SAnoob Joseph* **Added lookaside protocol (IPsec) tests in dpdk-test.** 360474f1202SAnoob Joseph 361474f1202SAnoob Joseph * Added known vector tests (AES-GCM 128, 192, 256). 3620f453190STejasree Kondoj * Added tests to verify error reporting with ICV corruption. 363cd928003STejasree Kondoj * Added tests to verify IV generation. 364c8234341STejasree Kondoj * Added tests to verify UDP encapsulation. 3659ec50a52STejasree Kondoj * Added tests to verify UDP encapsulation ports. 3664aa52f21SAnoob Joseph * Added tests to validate packets soft expiry. 3676978f51eSAnoob Joseph * Added tests to validate packets hard expiry. 368270470eeSTejasree Kondoj * Added tests to verify tunnel header verification in IPsec inbound. 36983243502SArchana Muniganti * Added tests to verify inner checksum. 370418c1a54SKai Ji * Added tests for CHACHA20_POLY1305 PMD, including a new testcase for SGL OOP. 371474f1202SAnoob Joseph 372cb94a679SPavan Nikhilesh* **Updated l3fwd sample application.** 373cb94a679SPavan Nikhilesh 3748636e264SJohn McNamara * Increased number of routes to 16 for all lookup modes (LPM, EM and FIB). 3758636e264SJohn McNamara This helps in validating SoC with many Ethernet devices. 376eab2ae4bSPavan Nikhilesh * Updated EM mode to use RFC2544 reserved IP address space with RFC863 377eab2ae4bSPavan Nikhilesh UDP discard protocol. 378cb94a679SPavan Nikhilesh 379a7f32947SRadu Nicolau* **Updated IPsec Security Gateway sample application with new features.** 380a7f32947SRadu Nicolau 381a7f32947SRadu Nicolau * Added support for TSO (only for inline crypto TCP packets). 3823e7b7dd8SRadu Nicolau * Added support for telemetry. 3839413c390SRadu Nicolau * Added support for more AEAD algorithms: AES-GMAC, AES_CTR, AES_XCBC_MAC, 3849413c390SRadu Nicolau AES_CCM, CHACHA20_POLY1305 38586738ebeSSrujana Challa * Added support for event vectors for inline protocol offload mode. 386a7f32947SRadu Nicolau 3878d23ce8fSStephen Hemminger* **Revised packet capture framework.** 3888d23ce8fSStephen Hemminger 389cbb44143SStephen Hemminger * New dpdk-dumpcap program that has most of the features 390cbb44143SStephen Hemminger of the wireshark dumpcap utility including: 391cbb44143SStephen Hemminger capture of multiple interfaces, filtering, 392cbb44143SStephen Hemminger and stopping after number of bytes, packets. 3938d23ce8fSStephen Hemminger * New library for writing pcapng packet capture files. 39410f726efSStephen Hemminger * Enhancements to the pdump library to support: 39510f726efSStephen Hemminger * Packet filter with BPF. 39610f726efSStephen Hemminger * Pcapng format with timestamps and meta-data. 39710f726efSStephen Hemminger * Fixes packet capture with stripped VLAN tags. 3988d23ce8fSStephen Hemminger 3996e029025SZhihong Peng* **Added ASan support.** 4006e029025SZhihong Peng 4018636e264SJohn McNamara Added ASan/AddressSanitizer support. `AddressSanitizer 4028636e264SJohn McNamara <https://github.com/google/sanitizers/wiki/AddressSanitizer>`_ 4036e029025SZhihong Peng is a widely-used debugging tool to detect memory access errors. 4046e029025SZhihong Peng It helps to detect issues like use-after-free, various kinds of buffer 4056e029025SZhihong Peng overruns in C/C++ programs, and other similar errors, as well as 4066e029025SZhihong Peng printing out detailed debug information whenever an error is detected. 4076e029025SZhihong Peng 408fdab8f2eSThomas Monjalon 409fdab8f2eSThomas MonjalonRemoved Items 410fdab8f2eSThomas Monjalon------------- 411fdab8f2eSThomas Monjalon 4127df485ebSStephen Hemminger* eal: Removed the deprecated function ``rte_get_master_lcore()`` 4137df485ebSStephen Hemminger and the iterator macro ``RTE_LCORE_FOREACH_SLAVE``. 4147df485ebSStephen Hemminger 4158636e264SJohn McNamara* eal: The old API arguments that were deprecated for 4167df485ebSStephen Hemminger blacklist/whitelist are removed. Users must use the new 4177df485ebSStephen Hemminger block/allow list arguments. 4187df485ebSStephen Hemminger 41974a74bf9SAndrew Rybchenko* mbuf: Removed offload flag ``PKT_RX_EIP_CKSUM_BAD``. 4208636e264SJohn McNamara The ``PKT_RX_OUTER_IP_CKSUM_BAD`` flag should be used as a replacement. 42174a74bf9SAndrew Rybchenko 422b225783dSAndrew Rybchenko* ethdev: Removed the port mirroring API. A more fine-grain flow API 423b225783dSAndrew Rybchenko action ``RTE_FLOW_ACTION_TYPE_SAMPLE`` should be used instead. 424b225783dSAndrew Rybchenko The structures ``rte_eth_mirror_conf`` and ``rte_eth_vlan_mirror`` and 425b225783dSAndrew Rybchenko the functions ``rte_eth_mirror_rule_set`` and 426b225783dSAndrew Rybchenko ``rte_eth_mirror_rule_reset`` along with the associated macros 427b225783dSAndrew Rybchenko ``ETH_MIRROR_*`` are removed. 428b225783dSAndrew Rybchenko 4298636e264SJohn McNamara* ethdev: Removed the ``rte_eth_rx_descriptor_done()`` API function and its 4306c31a8c2SAndrew Rybchenko driver callback. It is replaced by the more complete function 4318636e264SJohn McNamara ``rte_eth_rx_descriptor_status()``. 4326c31a8c2SAndrew Rybchenko 43392ef4b8fSAndrew Rybchenko* ethdev: Removed deprecated ``shared`` attribute of the 43492ef4b8fSAndrew Rybchenko ``struct rte_flow_action_count``. Shared counters should be managed 43592ef4b8fSAndrew Rybchenko using indirect actions API (``rte_flow_action_handle_create`` etc). 43692ef4b8fSAndrew Rybchenko 437fe2a571cSRobin Zhang* i40e: Removed i40evf driver. 438fe2a571cSRobin Zhang iavf already became the default VF driver for i40e devices, 439fe2a571cSRobin Zhang so there is no need to maintain i40evf. 440fe2a571cSRobin Zhang 441fdab8f2eSThomas Monjalon 442fdab8f2eSThomas MonjalonAPI Changes 443fdab8f2eSThomas Monjalon----------- 444fdab8f2eSThomas Monjalon 445f6c6c686SHonnappa Nagarahalli* eal: The lcore state ``FINISHED`` is removed from 446f6c6c686SHonnappa Nagarahalli the ``enum rte_lcore_state_t``. 447f6c6c686SHonnappa Nagarahalli The lcore state ``WAIT`` is enough to represent the same state. 448f6c6c686SHonnappa Nagarahalli 4495cee6f7dSHarman Kalra* eal: Made ``rte_intr_handle`` structure definition hidden. 4505cee6f7dSHarman Kalra 4516aebb942SOlivier Matz* kvargs: The experimental function ``rte_kvargs_strcmp()`` has been 4526aebb942SOlivier Matz removed. Its usages have been replaced by a new function 4536aebb942SOlivier Matz ``rte_kvargs_get_with_value()``. 4546aebb942SOlivier Matz 4556ad06203SZhihong Peng* cmdline: ``cmdline_stdin_exit()`` now frees the ``cmdline`` structure. 4566ad06203SZhihong Peng Calls to ``cmdline_free()`` after it need to be deleted from applications. 4576ad06203SZhihong Peng 458f43809d2SDmitry Kozlyuk* cmdline: Made ``cmdline`` structure definition hidden on Linux and FreeBSD. 459f43809d2SDmitry Kozlyuk 460f8f8dc28SDmitry Kozlyuk* cmdline: Made ``rdline`` structure definition hidden. Functions are added 461f8f8dc28SDmitry Kozlyuk to dynamically allocate and free it, and to access user data in callbacks. 462f8f8dc28SDmitry Kozlyuk 463c47d7b90SAndrew Rybchenko* mempool: Added ``RTE_MEMPOOL_F_NON_IO`` flag to give a hint to DPDK components 46411541c5cSDmitry Kozlyuk that objects from this pool will not be used for device IO (e.g. DMA). 46511541c5cSDmitry Kozlyuk 466c47d7b90SAndrew Rybchenko* mempool: The mempool flags ``MEMPOOL_F_*`` will be deprecated in the future. 467c47d7b90SAndrew Rybchenko Newly added flags with ``RTE_MEMPOOL_F_`` prefix should be used instead. 468c47d7b90SAndrew Rybchenko 469d7203661SAndrew Rybchenko* mempool: Helper macro ``MEMPOOL_HEADER_SIZE()`` is deprecated. 470d7203661SAndrew Rybchenko The replacement macro ``RTE_MEMPOOL_HEADER_SIZE()`` is internal only. 471d7203661SAndrew Rybchenko 472cb77b060SAndrew Rybchenko* mempool: Macro to register mempool driver ``MEMPOOL_REGISTER_OPS()`` is 473cb77b060SAndrew Rybchenko deprecated. Use replacement ``RTE_MEMPOOL_REGISTER_OPS()``. 474cb77b060SAndrew Rybchenko 475fb11ae88SAndrew Rybchenko* mempool: The mempool API macros ``MEMPOOL_PG_*`` are deprecated and 476fb11ae88SAndrew Rybchenko will be removed in DPDK 22.11. 477fb11ae88SAndrew Rybchenko 478daa02b5cSOlivier Matz* mbuf: The mbuf offload flags ``PKT_*`` are renamed as ``RTE_MBUF_F_*``. A 479daa02b5cSOlivier Matz compatibility layer will be kept until DPDK 22.11. 48004d43857SDmitry Kozlyuk* net: Renamed ``s_addr`` and ``d_addr`` fields of ``rte_ether_hdr`` structure 48104d43857SDmitry Kozlyuk to ``src_addr`` and ``dst_addr``, respectively. 48204d43857SDmitry Kozlyuk 48363f2bbfaSGregory Etelson* net: Added ``version`` and ``ihl`` bit-fields to ``struct rte_ipv4_hdr``. 48463f2bbfaSGregory Etelson Existing ``version_ihl`` field is kept for backward compatibility. 48563f2bbfaSGregory Etelson 48688caad25SIvan Malov* ethdev: Added items and actions ``PORT_REPRESENTOR``, ``REPRESENTED_PORT`` to 48788caad25SIvan Malov flow API. 488081e42daSIvan Malov 4895da44faaSIvan Malov* ethdev: Deprecated items and actions ``PF``, ``VF``, ``PHY_PORT``, ``PORT_ID``. 4905da44faaSIvan Malov Suggested items and actions ``PORT_REPRESENTOR``, ``REPRESENTED_PORT`` instead. 4915da44faaSIvan Malov 4929d2a349bSIvan Malov* ethdev: Deprecated the use of attributes ``ingress`` / ``egress`` combined 4939d2a349bSIvan Malov with ``transfer``. See items ``PORT_REPRESENTOR``, ``REPRESENTED_PORT``. 4949d2a349bSIvan Malov 49514fc81aeSViacheslav Ovsiienko* ethdev: ``rte_flow_action_modify_data`` structure updated, immediate data 49614fc81aeSViacheslav Ovsiienko array is extended, data pointer field is explicitly added to union, the 4978636e264SJohn McNamara action behavior is defined in a more strict fashion and documentation updated. 49814fc81aeSViacheslav Ovsiienko The immediate value behavior has been changed, the entire immediate field 49914fc81aeSViacheslav Ovsiienko should be provided, and offset for immediate source bitfield is assigned 5008636e264SJohn McNamara from the destination one. 50114fc81aeSViacheslav Ovsiienko 50294c16e89SMaxime Coquelin* vhost: ``rte_vdpa_register_device``, ``rte_vdpa_unregister_device``, 50394c16e89SMaxime Coquelin ``rte_vhost_host_notifier_ctrl`` and ``rte_vdpa_relay_vring_used`` vDPA 50494c16e89SMaxime Coquelin driver interface are marked as internal. 50594c16e89SMaxime Coquelin 5068636e264SJohn McNamara* cryptodev: The API ``rte_cryptodev_pmd_is_valid_dev()`` is modified to 5078636e264SJohn McNamara ``rte_cryptodev_is_valid_dev()`` as it can be used by the application as 5088636e264SJohn McNamara well as the PMD to check whether the device is valid or not. 509e74abd48SAkhil Goyal 5108636e264SJohn McNamara* cryptodev: The ``rte_cryptodev_pmd.*`` files are renamed to ``cryptodev_pmd.*`` 5118636e264SJohn McNamara since they are for drivers only and should be private to DPDK, and not 512af668035SAkhil Goyal installed for app use. 513af668035SAkhil Goyal 514ad7515a3SAnoob Joseph* cryptodev: A ``reserved`` byte from structure ``rte_crypto_op`` was 515ad7515a3SAnoob Joseph renamed to ``aux_flags`` to indicate warnings and other information from 516ad7515a3SAnoob Joseph the crypto/security operation. This field will be used to communicate 517ad7515a3SAnoob Joseph events such as soft expiry with IPsec in lookaside mode. 518ad7515a3SAnoob Joseph 519cab0c8f3SMatan Azrad* cryptodev: The field ``dataunit_len`` of the ``struct rte_crypto_cipher_xform`` 520cab0c8f3SMatan Azrad moved to the end of the structure and extended to ``uint32_t``. 521cab0c8f3SMatan Azrad 5226afd461fSGagandeep Singh* cryptodev: The structure ``rte_crypto_vec`` was updated to add ``tot_len`` 5236afd461fSGagandeep Singh field to support total buffer length to facilitate protocol offload case. 5246afd461fSGagandeep Singh 52568f5d3d3SHemant Agrawal* cryptodev: The structure ``rte_crypto_sym_vec`` was updated to add 52668f5d3d3SHemant Agrawal ``dest_sgl`` to support out of place processing. 52768f5d3d3SHemant Agrawal 528ab4e1909SNicolas Chautru* bbdev: Added device info related to data byte endianness processing. 529ab4e1909SNicolas Chautru 530f3f3a917SPavan Nikhilesh* eventdev: Moved memory used by timer adapters to hugepage. This will prevent 531f3f3a917SPavan Nikhilesh TLB misses if any and aligns to memory structure of other subsystems. 532f3f3a917SPavan Nikhilesh 53311c5b9b5SVladimir Medvedkin* fib: Added the ``rib_ext_sz`` field to ``rte_fib_conf`` and ``rte_fib6_conf`` 53411c5b9b5SVladimir Medvedkin so that user can specify the size of the RIB extension inside the FIB. 53511c5b9b5SVladimir Medvedkin 536b7fc82ecSKonstantin Ananyev* ip_frag: All macros updated to have ``RTE_IP_FRAG_`` prefix. 537b7fc82ecSKonstantin Ananyev Obsolete macros are kept for compatibility. 538b7fc82ecSKonstantin Ananyev DPDK components updated to use new names. 5398636e264SJohn McNamara Experimental function ``rte_frag_table_del_expired_entries()`` was renamed 5408636e264SJohn McNamara to ``rte_ip_frag_table_del_expired_entries()`` 541b7fc82ecSKonstantin Ananyev to comply with other public API naming convention. 542b7fc82ecSKonstantin Ananyev 543fdab8f2eSThomas Monjalon 544fdab8f2eSThomas MonjalonABI Changes 545fdab8f2eSThomas Monjalon----------- 546fdab8f2eSThomas Monjalon 5478636e264SJohn McNamara* ethdev: All enums and macros updated to have ``RTE_ETH`` prefix and structures 548295968d1SFerruh Yigit updated to have ``rte_eth`` prefix. DPDK components updated to use new names. 549295968d1SFerruh Yigit 5508636e264SJohn McNamara* ethdev: The input parameters for ``eth_rx_queue_count_t`` were changed. 5518636e264SJohn McNamara Instead of a pointer to ``rte_eth_dev`` and queue index, it now accepts a pointer 5528636e264SJohn McNamara to internal queue data as an input parameter. While this change is transparent 5538636e264SJohn McNamara to the user, it still counts as an ABI change, as ``eth_rx_queue_count_t`` 5548636e264SJohn McNamara is used by the public inline function ``rte_eth_rx_queue_count``. 5558d7d4fcdSKonstantin Ananyev 556f9bdee26SKonstantin Ananyev* ethdev: Made ``rte_eth_dev``, ``rte_eth_dev_data``, ``rte_eth_rxtx_callback`` 557f9bdee26SKonstantin Ananyev private data structures. ``rte_eth_devices[]`` can't be accessed directly 558f9bdee26SKonstantin Ananyev by user any more. While it is an ABI breakage, this change is intended 559f9bdee26SKonstantin Ananyev to be transparent for both users (no changes in user app is required) and 560f9bdee26SKonstantin Ananyev PMD developers (no changes in PMD is required). 561f9bdee26SKonstantin Ananyev 562ab4bb424SMaxime Coquelin* vhost: rename ``struct vhost_device_ops`` to ``struct rte_vhost_device_ops``. 563ab4bb424SMaxime Coquelin 56492cb1309SAkhil Goyal* cryptodev: Made ``rte_cryptodev``, ``rte_cryptodev_data`` private 56592cb1309SAkhil Goyal structures internal to DPDK. ``rte_cryptodevs`` can't be accessed directly 56692cb1309SAkhil Goyal by user any more. While it is an ABI breakage, this change is intended 56792cb1309SAkhil Goyal to be transparent for both users (no changes in user app is required) and 56892cb1309SAkhil Goyal PMD developers (no changes in PMD is required). 56992cb1309SAkhil Goyal 570d08dcd28SNithin Dabilpuram* security: ``rte_security_set_pkt_metadata`` and ``rte_security_get_userdata`` 571d08dcd28SNithin Dabilpuram routines used by inline outbound and inline inbound security processing were 572d08dcd28SNithin Dabilpuram made inline and enhanced to do simple 64-bit set/get for PMDs that do not 573d08dcd28SNithin Dabilpuram have much processing in PMD specific callbacks but just 64-bit set/get. 574d08dcd28SNithin Dabilpuram This avoids a per packet function pointer jump overhead for such PMDs. 575d08dcd28SNithin Dabilpuram 57663992166SAnoob Joseph* security: A new option ``iv_gen_disable`` was added in structure 57763992166SAnoob Joseph ``rte_security_ipsec_sa_options`` to disable IV generation inside PMD, 57863992166SAnoob Joseph so that application can provide its own IV and test known test vectors. 57963992166SAnoob Joseph 580f0b538a5STejasree Kondoj* security: A new option ``tunnel_hdr_verify`` was added in structure 581f0b538a5STejasree Kondoj ``rte_security_ipsec_sa_options`` to indicate whether outer header 582f0b538a5STejasree Kondoj verification need to be done as part of inbound IPsec processing. 583f0b538a5STejasree Kondoj 584f7e3aa69STejasree Kondoj* security: A new option ``udp_ports_verify`` was added in structure 585f7e3aa69STejasree Kondoj ``rte_security_ipsec_sa_options`` to indicate whether UDP ports 586f7e3aa69STejasree Kondoj verification need to be done as part of inbound IPsec processing. 587f7e3aa69STejasree Kondoj 588ad7515a3SAnoob Joseph* security: A new structure ``rte_security_ipsec_lifetime`` was added to 589ad7515a3SAnoob Joseph replace ``esn_soft_limit`` in IPsec configuration structure 590ad7515a3SAnoob Joseph ``rte_security_ipsec_xform`` to allow applications to configure SA soft 591ad7515a3SAnoob Joseph and hard expiry limits. Limits can be either in number of packets or bytes. 592ad7515a3SAnoob Joseph 59303ab51eaSArchana Muniganti* security: The new options ``ip_csum_enable`` and ``l4_csum_enable`` were added 59403ab51eaSArchana Muniganti in structure ``rte_security_ipsec_sa_options`` to indicate whether inner 59503ab51eaSArchana Muniganti packet IPv4 header checksum and L4 checksum need to be offloaded to 59603ab51eaSArchana Muniganti security device. 59703ab51eaSArchana Muniganti 598199fcba1SRadu Nicolau* security: A new structure ``esn`` was added in structure 599199fcba1SRadu Nicolau ``rte_security_ipsec_xform`` to set an initial ESN value. This permits 6008636e264SJohn McNamara applications to start from an arbitrary ESN value for debug and SA lifetime 601199fcba1SRadu Nicolau enforcement purposes. 602199fcba1SRadu Nicolau 60317344c02SRadu Nicolau* security: A new structure ``udp`` was added in structure 60417344c02SRadu Nicolau ``rte_security_ipsec_xform`` to allow setting the source and destination ports 60517344c02SRadu Nicolau for UDP encapsulated IPsec traffic. 60617344c02SRadu Nicolau 607cc360fd3SNicolas Chautru* bbdev: Added capability related to more comprehensive CRC options, 608cc360fd3SNicolas Chautru shifting values of the ``enum rte_bbdev_op_ldpcdec_flag_bitmasks``. 609cc360fd3SNicolas Chautru 610814d0170SGanapati Kundapura* eventdev: New variables ``rx_event_buf_count`` and ``rx_event_buf_size`` 611814d0170SGanapati Kundapura were added in structure ``rte_event_eth_rx_adapter_stats`` to get additional 612814d0170SGanapati Kundapura status. 613814d0170SGanapati Kundapura 614d35e6132SPavan Nikhilesh* eventdev: A new structure ``rte_event_fp_ops`` has been added which is now used 615d35e6132SPavan Nikhilesh by the fastpath inline functions. The structures ``rte_eventdev``, 616d35e6132SPavan Nikhilesh ``rte_eventdev_data`` have been made internal. ``rte_eventdevs[]`` can't be 617d35e6132SPavan Nikhilesh accessed directly by user any more. This change is transparent to both 618d35e6132SPavan Nikhilesh applications and PMDs. 619d35e6132SPavan Nikhilesh 6201dcd67baSPavan Nikhilesh* eventdev: Re-arranged fields in ``rte_event_timer`` to remove holes. 6211dcd67baSPavan Nikhilesh 622f8e0f8ceSKonstantin Ananyev* ip_frag: Increased default value for config parameter 623f8e0f8ceSKonstantin Ananyev ``RTE_LIBRTE_IP_FRAG_MAX_FRAG`` from ``4`` to ``8``. 624f8e0f8ceSKonstantin Ananyev This parameter controls maximum number of fragments per packet 625f8e0f8ceSKonstantin Ananyev in IP reassembly table. Increasing this value from ``4`` to ``8`` 6268636e264SJohn McNamara will allow covering the common case with jumbo packet size of ``9000B`` 627f8e0f8ceSKonstantin Ananyev and fragments with default frame size ``(1500B)``. 628f8e0f8ceSKonstantin Ananyev 629fdab8f2eSThomas Monjalon 630fdab8f2eSThomas MonjalonTested Platforms 631fdab8f2eSThomas Monjalon---------------- 632fdab8f2eSThomas Monjalon 633a69a1229SYan Xia* Intel\ |reg| platforms with Intel\ |reg| NICs combinations 634a69a1229SYan Xia 635a69a1229SYan Xia * CPU 636a69a1229SYan Xia 637a69a1229SYan Xia * Intel\ |reg| Atom\ |trade| CPU C3758 @ 2.20GHz 638a69a1229SYan Xia * Intel\ |reg| Xeon\ |reg| CPU E5-2680 v2 @ 2.80GHz 639a69a1229SYan Xia * Intel\ |reg| Xeon\ |reg| CPU E5-2699 v3 @ 2.30GHz 640a69a1229SYan Xia * Intel\ |reg| Xeon\ |reg| CPU E5-2699 v4 @ 2.20GHz 641a69a1229SYan Xia * Intel\ |reg| Xeon\ |reg| Gold 6140M CPU @ 2.30GHz 642a69a1229SYan Xia * Intel\ |reg| Xeon\ |reg| Gold 6139 CPU @ 2.30GHz 643a69a1229SYan Xia * Intel\ |reg| Xeon\ |reg| Gold 6252N CPU @ 2.30GHz 644a69a1229SYan Xia * Intel\ |reg| Xeon\ |reg| Gold 6348 CPU @ 2.60GHz 645a69a1229SYan Xia * Intel\ |reg| Xeon\ |reg| Platinum 8180M CPU @ 2.50GHz 646a69a1229SYan Xia * Intel\ |reg| Xeon\ |reg| Platinum 8280M CPU @ 2.70GHz 647a69a1229SYan Xia 648a69a1229SYan Xia * OS: 649a69a1229SYan Xia 650a69a1229SYan Xia * Fedora 34 651a69a1229SYan Xia * OpenWRT 21.02.0 652a69a1229SYan Xia * FreeBSD 13.0 653a69a1229SYan Xia * Red Hat Enterprise Linux Server release 8.4 654a69a1229SYan Xia * Suse 15 SP3 655a69a1229SYan Xia * Ubuntu 20.04.3 656a69a1229SYan Xia * Ubuntu 21.10 657a69a1229SYan Xia 658a69a1229SYan Xia * NICs: 659a69a1229SYan Xia 660a69a1229SYan Xia * Intel\ |reg| Ethernet Controller E810-C for SFP (4x25G) 661a69a1229SYan Xia 662a69a1229SYan Xia * Firmware version: 3.10 0x8000aa86 1.3100.0 663a69a1229SYan Xia * Device id (pf/vf): 8086:1593 / 8086:1889 664a69a1229SYan Xia * Driver version: 1.7.11_7_g444e5edb (ice) 665a69a1229SYan Xia * OS Default DDP: 1.3.27.0 666a69a1229SYan Xia * COMMS DDP: 1.3.31.0 667a69a1229SYan Xia * Wireless Edge DDP: 1.3.7.0 668a69a1229SYan Xia 669a69a1229SYan Xia * Intel\ |reg| Ethernet Controller E810-C for QSFP (2x100G) 670a69a1229SYan Xia 671a69a1229SYan Xia * Firmware version: 3.10 0x8000aa66 1.3100.0 672a69a1229SYan Xia * Device id (pf/vf): 8086:1592 / 8086:1889 673a69a1229SYan Xia * Driver version: 1.7.11_7_g444e5edb (ice) 674a69a1229SYan Xia * OS Default DDP: 1.3.27.0 675a69a1229SYan Xia * COMMS DDP: 1.3.31.0 676a69a1229SYan Xia * Wireless Edge DDP: 1.3.7.0 677a69a1229SYan Xia 678a69a1229SYan Xia * Intel\ |reg| 82599ES 10 Gigabit Ethernet Controller 679a69a1229SYan Xia 680a69a1229SYan Xia * Firmware version: 0x61bf0001 681a69a1229SYan Xia * Device id (pf/vf): 8086:10fb / 8086:10ed 682a69a1229SYan Xia * Driver version(in-tree): 5.1.0-k (ixgbe) 683a69a1229SYan Xia * Driver version(out-tree): 5.13.4 (ixgbe) 684a69a1229SYan Xia 685a69a1229SYan Xia * Intel\ |reg| Ethernet Converged Network Adapter X710-DA4 (4x10G) 686a69a1229SYan Xia 687a69a1229SYan Xia * PF Firmware version: 8.30 0x8000a49d 1.2926.0 688a69a1229SYan Xia * VF Firmware version: 8.50 0x8000b6d9 1.3082.0 689a69a1229SYan Xia * Device id (pf/vf): 8086:1572 / 8086:154c 690a69a1229SYan Xia * Driver version: 2.17.4 (i40e) 691a69a1229SYan Xia 692a69a1229SYan Xia * Intel\ |reg| Corporation Ethernet Connection X722 for 10GbE SFP+ (4x10G) 693a69a1229SYan Xia 694a69a1229SYan Xia * Firmware version: 5.30 0x80002a29 1.2926.0 695a69a1229SYan Xia * Device id (pf/vf): 8086:37d0 / 8086:37cd 696a69a1229SYan Xia * Driver version: 2.17.4 (i40e) 697a69a1229SYan Xia 698a69a1229SYan Xia * Intel\ |reg| Corporation Ethernet Connection X722 for 10GBASE-T (2x10G) 699a69a1229SYan Xia 700a69a1229SYan Xia * Firmware version: 5.40 0x80002e2f 1.2935.0 701a69a1229SYan Xia * Device id (pf/vf): 8086:37d2 / 8086:37cd 702a69a1229SYan Xia * Driver version: 2.17.4 (i40e) 703a69a1229SYan Xia 704a69a1229SYan Xia * Intel\ |reg| Ethernet Converged Network Adapter XXV710-DA2 (2x25G) 705a69a1229SYan Xia 706a69a1229SYan Xia * PF Firmware version: 8.30 0x8000a483 1.2926.0 707a69a1229SYan Xia * VF Firmware version: 8.50 0x8000b703 1.3082.0 708a69a1229SYan Xia * Device id (pf/vf): 8086:158b / 8086:154c 709a69a1229SYan Xia * Driver version: 2.17.4 (i40e) 710a69a1229SYan Xia 711a69a1229SYan Xia * Intel\ |reg| Ethernet Converged Network Adapter XL710-QDA2 (2X40G) 712a69a1229SYan Xia 713a69a1229SYan Xia * PF Firmware version: 8.30 0x8000a4ae 1.2926.0 714a69a1229SYan Xia * VF Firmware version: 8.50 0x8000b6c7 1.3082.0 715a69a1229SYan Xia * Device id (pf/vf): 8086:1583 / 8086:154c 716a69a1229SYan Xia * Driver version: 2.17.4 (i40e) 717a69a1229SYan Xia 718a69a1229SYan Xia * Intel\ |reg| Ethernet Converged Network Adapter X710-T2L 719a69a1229SYan Xia 720a69a1229SYan Xia * Firmware version: 8.30 0x8000a489 1.2879.0 721a69a1229SYan Xia * Device id (pf): 8086:15ff 722a69a1229SYan Xia * Driver version: 2.17.4 (i40e) 72332e06ccfSApeksha Gupta 724b34bf915SRaslan Darawsheh* Intel\ |reg| platforms with Mellanox\ |reg| NICs combinations 725b34bf915SRaslan Darawsheh 726b34bf915SRaslan Darawsheh * CPU: 727b34bf915SRaslan Darawsheh 728b34bf915SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| Gold 6154 CPU @ 3.00GHz 729b34bf915SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2697A v4 @ 2.60GHz 730b34bf915SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2697 v3 @ 2.60GHz 731b34bf915SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2680 v2 @ 2.80GHz 732b34bf915SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2670 0 @ 2.60GHz 733b34bf915SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2650 v4 @ 2.20GHz 734b34bf915SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2650 v3 @ 2.30GHz 735b34bf915SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2640 @ 2.50GHz 736b34bf915SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2650 0 @ 2.00GHz 737b34bf915SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2620 v4 @ 2.10GHz 738b34bf915SRaslan Darawsheh 739b34bf915SRaslan Darawsheh * OS: 740b34bf915SRaslan Darawsheh 741b34bf915SRaslan Darawsheh * Red Hat Enterprise Linux release 8.2 (Ootpa) 742b34bf915SRaslan Darawsheh * Red Hat Enterprise Linux Server release 7.8 (Maipo) 743b34bf915SRaslan Darawsheh * Red Hat Enterprise Linux Server release 7.6 (Maipo) 744b34bf915SRaslan Darawsheh * Red Hat Enterprise Linux Server release 7.5 (Maipo) 745b34bf915SRaslan Darawsheh * Red Hat Enterprise Linux Server release 7.4 (Maipo) 746b34bf915SRaslan Darawsheh * Red Hat Enterprise Linux Server release 7.3 (Maipo) 747b34bf915SRaslan Darawsheh * Red Hat Enterprise Linux Server release 7.2 (Maipo) 748b34bf915SRaslan Darawsheh * Ubuntu 20.04 749b34bf915SRaslan Darawsheh * Ubuntu 18.04 750b34bf915SRaslan Darawsheh * Ubuntu 16.04 751b34bf915SRaslan Darawsheh * SUSE Enterprise Linux 15 SP2 752b34bf915SRaslan Darawsheh * SUSE Enterprise Linux 12 SP4 753b34bf915SRaslan Darawsheh 754b34bf915SRaslan Darawsheh * OFED: 755b34bf915SRaslan Darawsheh 756b34bf915SRaslan Darawsheh * MLNX_OFED 5.5-0.5.9.0 and above 757b34bf915SRaslan Darawsheh * MLNX_OFED 5.4-3.1.0.0 758b34bf915SRaslan Darawsheh 759b34bf915SRaslan Darawsheh * upstream kernel: 760b34bf915SRaslan Darawsheh 761b34bf915SRaslan Darawsheh * Linux 5.16.0-rc2 and above 762b34bf915SRaslan Darawsheh 763b34bf915SRaslan Darawsheh * rdma-core: 764b34bf915SRaslan Darawsheh 765b34bf915SRaslan Darawsheh * rdma-core-37.1 and above 766b34bf915SRaslan Darawsheh 767b34bf915SRaslan Darawsheh * NICs: 768b34bf915SRaslan Darawsheh 769b34bf915SRaslan Darawsheh * Mellanox\ |reg| ConnectX\ |reg|-3 Pro 40G MCX354A-FCC_Ax (2x40G) 770b34bf915SRaslan Darawsheh 771b34bf915SRaslan Darawsheh * Host interface: PCI Express 3.0 x8 772b34bf915SRaslan Darawsheh * Device ID: 15b3:1007 773b34bf915SRaslan Darawsheh * Firmware version: 2.42.5000 774b34bf915SRaslan Darawsheh 775b34bf915SRaslan Darawsheh * Mellanox\ |reg| ConnectX\ |reg|-3 Pro 40G MCX354A-FCCT (2x40G) 776b34bf915SRaslan Darawsheh 777b34bf915SRaslan Darawsheh * Host interface: PCI Express 3.0 x8 778b34bf915SRaslan Darawsheh * Device ID: 15b3:1007 779b34bf915SRaslan Darawsheh * Firmware version: 2.42.5000 780b34bf915SRaslan Darawsheh 781b34bf915SRaslan Darawsheh * Mellanox\ |reg| ConnectX\ |reg|-4 Lx 25G MCX4121A-ACAT (2x25G) 782b34bf915SRaslan Darawsheh 783b34bf915SRaslan Darawsheh * Host interface: PCI Express 3.0 x8 784b34bf915SRaslan Darawsheh * Device ID: 15b3:1015 785b34bf915SRaslan Darawsheh * Firmware version: 14.32.0570 and above 786b34bf915SRaslan Darawsheh 787b34bf915SRaslan Darawsheh * Mellanox\ |reg| ConnectX\ |reg|-4 Lx 50G MCX4131A-GCAT (1x50G) 788b34bf915SRaslan Darawsheh 789b34bf915SRaslan Darawsheh * Host interface: PCI Express 3.0 x8 790b34bf915SRaslan Darawsheh * Device ID: 15b3:1015 791b34bf915SRaslan Darawsheh * Firmware version: 14.32.0570 and above 792b34bf915SRaslan Darawsheh 793b34bf915SRaslan Darawsheh * Mellanox\ |reg| ConnectX\ |reg|-5 100G MCX516A-CCAT (2x100G) 794b34bf915SRaslan Darawsheh 795b34bf915SRaslan Darawsheh * Host interface: PCI Express 3.0 x16 796b34bf915SRaslan Darawsheh * Device ID: 15b3:1017 797b34bf915SRaslan Darawsheh * Firmware version: 16.32.0570 and above 798b34bf915SRaslan Darawsheh 799b34bf915SRaslan Darawsheh * Mellanox\ |reg| ConnectX\ |reg|-5 100G MCX556A-ECAT (2x100G) 800b34bf915SRaslan Darawsheh 801b34bf915SRaslan Darawsheh * Host interface: PCI Express 3.0 x16 802b34bf915SRaslan Darawsheh * Device ID: 15b3:1017 803b34bf915SRaslan Darawsheh * Firmware version: 16.32.0570 and above 804b34bf915SRaslan Darawsheh 805b34bf915SRaslan Darawsheh * Mellanox\ |reg| ConnectX\ |reg|-5 100G MCX556A-EDAT (2x100G) 806b34bf915SRaslan Darawsheh 807b34bf915SRaslan Darawsheh * Host interface: PCI Express 3.0 x16 808b34bf915SRaslan Darawsheh * Device ID: 15b3:1017 809b34bf915SRaslan Darawsheh * Firmware version: 16.32.0570 and above 810b34bf915SRaslan Darawsheh 811b34bf915SRaslan Darawsheh * Mellanox\ |reg| ConnectX\ |reg|-5 Ex EN 100G MCX516A-CDAT (2x100G) 812b34bf915SRaslan Darawsheh 813b34bf915SRaslan Darawsheh * Host interface: PCI Express 4.0 x16 814b34bf915SRaslan Darawsheh * Device ID: 15b3:1019 815b34bf915SRaslan Darawsheh * Firmware version: 16.32.0570 and above 816b34bf915SRaslan Darawsheh 817b34bf915SRaslan Darawsheh * Mellanox\ |reg| ConnectX\ |reg|-6 Dx EN 100G MCX623106AN-CDAT (2x100G) 818b34bf915SRaslan Darawsheh 819b34bf915SRaslan Darawsheh * Host interface: PCI Express 4.0 x16 820b34bf915SRaslan Darawsheh * Device ID: 15b3:101d 821b34bf915SRaslan Darawsheh * Firmware version: 22.32.0570 and above 822b34bf915SRaslan Darawsheh 823b34bf915SRaslan Darawsheh * Mellanox\ |reg| ConnectX\ |reg|-6 Lx EN 25G MCX631102AN-ADAT (2x25G) 824b34bf915SRaslan Darawsheh 825b34bf915SRaslan Darawsheh * Host interface: PCI Express 4.0 x8 826b34bf915SRaslan Darawsheh * Device ID: 15b3:101f 827b34bf915SRaslan Darawsheh * Firmware version: 26.32.0570 and above 828b34bf915SRaslan Darawsheh 829b34bf915SRaslan Darawsheh* Mellanox\ |reg| BlueField\ |reg| SmartNIC 830b34bf915SRaslan Darawsheh 831*eb1dcc01SThomas Monjalon * Mellanox\ |reg| BlueField\ |reg|-2 SmartNIC MT41686 - MBF2H332A-AEEOT_A1 (2x25G) 832b34bf915SRaslan Darawsheh 833b34bf915SRaslan Darawsheh * Host interface: PCI Express 3.0 x16 834b34bf915SRaslan Darawsheh * Device ID: 15b3:a2d6 835b34bf915SRaslan Darawsheh * Firmware version: 24.32.0570 and above 836b34bf915SRaslan Darawsheh 837b34bf915SRaslan Darawsheh * Embedded software: 838b34bf915SRaslan Darawsheh 839b34bf915SRaslan Darawsheh * Ubuntu 20.04.3 840b34bf915SRaslan Darawsheh * MLNX_OFED 5.5-0.5.8 and above 841b34bf915SRaslan Darawsheh * DPDK application running on Arm cores 842b34bf915SRaslan Darawsheh 843b34bf915SRaslan Darawsheh* IBM Power 9 platforms with Mellanox\ |reg| NICs combinations 844b34bf915SRaslan Darawsheh 845b34bf915SRaslan Darawsheh * CPU: 846b34bf915SRaslan Darawsheh 847b34bf915SRaslan Darawsheh * POWER9 2.2 (pvr 004e 1202) 2300MHz 848b34bf915SRaslan Darawsheh 849b34bf915SRaslan Darawsheh * OS: 850b34bf915SRaslan Darawsheh 851b34bf915SRaslan Darawsheh * Red Hat Enterprise Linux Server release 7.6 852b34bf915SRaslan Darawsheh 853b34bf915SRaslan Darawsheh * NICs: 854b34bf915SRaslan Darawsheh 855b34bf915SRaslan Darawsheh * Mellanox\ |reg| ConnectX\ |reg|-5 100G MCX556A-ECAT (2x100G) 856b34bf915SRaslan Darawsheh 857b34bf915SRaslan Darawsheh * Host interface: PCI Express 4.0 x16 858b34bf915SRaslan Darawsheh * Device ID: 15b3:1017 859b34bf915SRaslan Darawsheh * Firmware version: 16.32.0560 860b34bf915SRaslan Darawsheh 861b34bf915SRaslan Darawsheh * Mellanox\ |reg| ConnectX\ |reg|-6 Dx 100G MCX623106AN-CDAT (2x100G) 862b34bf915SRaslan Darawsheh 863b34bf915SRaslan Darawsheh * Host interface: PCI Express 4.0 x16 864b34bf915SRaslan Darawsheh * Device ID: 15b3:101d 865b34bf915SRaslan Darawsheh * Firmware version: 22.32.0560 866b34bf915SRaslan Darawsheh 867b34bf915SRaslan Darawsheh * OFED: 868b34bf915SRaslan Darawsheh 869b34bf915SRaslan Darawsheh * MLNX_OFED 5.5-0.5.9.0 870b34bf915SRaslan Darawsheh 87132e06ccfSApeksha Gupta* NXP ARM SoCs (with integrated NICs) 87232e06ccfSApeksha Gupta 87332e06ccfSApeksha Gupta * SoC: 87432e06ccfSApeksha Gupta 87532e06ccfSApeksha Gupta * NXP i.MX 8M Mini with ARM Cortex A53, Cortex M4 87632e06ccfSApeksha Gupta 87732e06ccfSApeksha Gupta * OS (Based on NXP LF support packages): 87832e06ccfSApeksha Gupta 87932e06ccfSApeksha Gupta * Kernel version: 5.10 88032e06ccfSApeksha Gupta * Ubuntu 18.04 881