172206323SDavid Marchand.. SPDX-License-Identifier: BSD-3-Clause 272206323SDavid Marchand Copyright 2022 The DPDK contributors 372206323SDavid Marchand 472206323SDavid Marchand.. include:: <isonum.txt> 572206323SDavid Marchand 672206323SDavid MarchandDPDK Release 22.11 772206323SDavid Marchand================== 872206323SDavid Marchand 972206323SDavid MarchandNew Features 1072206323SDavid Marchand------------ 1172206323SDavid Marchand 1229631ee5SMin Zhou* **Added initial LoongArch architecture support.** 1329631ee5SMin Zhou 1429631ee5SMin Zhou Added EAL implementation for LoongArch architecture. 1550b2a419SJohn McNamara The initial port was tested on Loongson 3A5000, 1629631ee5SMin Zhou Loongson 3C5000 and Loongson 3C5000L. 1729631ee5SMin Zhou In theory this implementation should work with any target based on 1829631ee5SMin Zhou ``LoongArch`` ISA. 1929631ee5SMin Zhou 20458485ebSHanumanth Pothula* **Added support for multiple mbuf pools per ethdev Rx queue.** 21458485ebSHanumanth Pothula 2250b2a419SJohn McNamara Added a capability which allows an application to provide many mempools 2350b2a419SJohn McNamara of different size, and PMDs and/or NICs to choose a memory pool 2450b2a419SJohn McNamara based on the packet's length and/or Rx buffer availability. 25458485ebSHanumanth Pothula 266b81dddbSJerin Jacob* **Added support for congestion management in ethdev.** 276b81dddbSJerin Jacob 286b81dddbSJerin Jacob Added new API functions ``rte_eth_cman_config_init()``, 2950b2a419SJohn McNamara ``rte_eth_cman_config_get()``, ``rte_eth_cman_config_set()`` 3050b2a419SJohn McNamara and ``rte_eth_cman_info_get()`` to support congestion management. 316b81dddbSJerin Jacob 32e4e6f4cbSYuan Wang* **Added protocol header based buffer split.** 33e4e6f4cbSYuan Wang 34e4e6f4cbSYuan Wang * Added ``rte_eth_buffer_split_get_supported_hdr_ptypes()`` to get supported 35e4e6f4cbSYuan Wang header protocols to split at. 3650b2a419SJohn McNamara * Added support for protocol-based buffer split using new ``proto_hdr`` 3750b2a419SJohn McNamara field in structure ``rte_eth_rxseg_split``. 38e4e6f4cbSYuan Wang 39eb0d471aSKalesh AP* **Added proactive error handling mode for ethdev.** 40eb0d471aSKalesh AP 41eb0d471aSKalesh AP Added proactive error handling mode for ethdev, 4250b2a419SJohn McNamara and introduced three new events: ``RTE_ETH_EVENT_ERR_RECOVERING`` 43eb0d471aSKalesh AP to report that the port is recovering from an error, 44eb0d471aSKalesh AP ``RTE_ETH_EVENT_RECOVER_SUCCESS`` and ``RTE_ETH_EVENT_RECOVER_FAILED``. 45eb0d471aSKalesh AP 46092b701fSDongdong Liu* **Added ethdev Rx/Tx descriptor dump API.** 47092b701fSDongdong Liu 48092b701fSDongdong Liu Added the ethdev Rx/Tx descriptor dump API which provides functions 49092b701fSDongdong Liu for querying descriptor from device. 50092b701fSDongdong Liu The descriptor information differs in different NICs. 51092b701fSDongdong Liu The information demonstrates I/O process which is important for debug. 52092b701fSDongdong Liu The dump format is vendor-specific. 53092b701fSDongdong Liu 54bc705061SDariusz Sosnowski* **Added ethdev hairpin memory configuration options.** 55bc705061SDariusz Sosnowski 56bc705061SDariusz Sosnowski Added new configuration flags for hairpin queues in ``rte_eth_hairpin_conf``: 57bc705061SDariusz Sosnowski 58bc705061SDariusz Sosnowski * ``use_locked_device_memory`` 59bc705061SDariusz Sosnowski * ``use_rte_memory`` 60bc705061SDariusz Sosnowski * ``force_memory`` 61bc705061SDariusz Sosnowski 62bc705061SDariusz Sosnowski Each flag has a corresponding capability flag 63bc705061SDariusz Sosnowski in ``struct rte_eth_hairpin_queue_cap``. 64bc705061SDariusz Sosnowski 6544ceeefcSMichael Baum* **Added strict queue to pre-configuration flow hints.** 6644ceeefcSMichael Baum 6744ceeefcSMichael Baum * Added flags option to ``rte_flow_configure`` and ``rte_flow_info_get``. 6844ceeefcSMichael Baum * Added ``RTE_FLOW_PORT_FLAG_STRICT_QUEUE`` flag to indicate all operations 6944ceeefcSMichael Baum for a given flow rule will strictly happen on the same flow queue. 7044ceeefcSMichael Baum 713d7c08e4SSuanming Mou* **Added configuration for asynchronous flow connection tracking.** 723d7c08e4SSuanming Mou 733d7c08e4SSuanming Mou Added connection tracking action number hint to ``rte_flow_configure`` 743d7c08e4SSuanming Mou and ``rte_flow_info_get``. 7550b2a419SJohn McNamara The PMD can prepare the connection tracking resources according to the hint. 763d7c08e4SSuanming Mou 77c9dc0384SSuanming Mou* **Added support for queue-based async query in flow API.** 78c9dc0384SSuanming Mou 7950b2a419SJohn McNamara Added new function ``rte_flow_async_action_handle_query()`` 80c9dc0384SSuanming Mou to query the action asynchronously. 81c9dc0384SSuanming Mou 823af7a4afSAlexander Kozyrev* **Extended metering and marking support in the flow API.** 833af7a4afSAlexander Kozyrev 8450b2a419SJohn McNamara * Added ``METER_COLOR`` item to match color marker set by a meter. 85443401d0SAlexander Kozyrev * Added ability to set color marker via modify field flow API. 8650b2a419SJohn McNamara * Added meter API to get a pointer to the profile/policy by their ID. 8750b2a419SJohn McNamara * Added ``METER_MARK`` action for metering with lockless profile/policy access. 883af7a4afSAlexander Kozyrev 896838dd4bSMichael Savisko* **Added flow offload action to route packets to kernel.** 906838dd4bSMichael Savisko 9150b2a419SJohn McNamara Added new flow action which allows an application to re-route packets 926838dd4bSMichael Savisko directly to the kernel without software involvement. 936838dd4bSMichael Savisko 941eb1846bSCiara Loftus* **Updated AF_XDP driver.** 951eb1846bSCiara Loftus 9650b2a419SJohn McNamara * Updated AF_XDP driver to make it compatible with libbpf v0.8.0 9750b2a419SJohn McNamara (when used with libxdp). 981eb1846bSCiara Loftus 99a5205992SAndrew Boyer* **Updated AMD Pensando ionic driver.** 100a5205992SAndrew Boyer 10150b2a419SJohn McNamara * Updated ionic driver to reflect that Pensando has been acquired by AMD. 1027b20fc2fSAndrew Boyer * Enhanced data path to provide substantial performance improvements. 1039ac234eeSAndrew Boyer * Added support for mbuf fast free. 104b5b56afdSAndrew Boyer * Added support for advertising packet types. 1050983a74aSAndrew Boyer * Added support for descriptor status functions. 1069de21005SAndrew Boyer * Added Q-in-CMB feature controlled by device option ``ionic_cmb``. 107e86a6fccSAndrew Boyer * Added optimized handlers for non-scattered Rx and Tx. 108a5205992SAndrew Boyer 10950b2a419SJohn McNamara* **Added GVE net PMD.** 110457967cdSJunfeng Guo 111457967cdSJunfeng Guo * Added the new ``gve`` net driver for Google Virtual Ethernet devices. 112457967cdSJunfeng Guo * See the :doc:`../nics/gve` NIC guide for more details on this new driver. 113457967cdSJunfeng Guo 114fe10f040SJie Wang* **Updated Intel iavf driver.** 115fe10f040SJie Wang 116fe10f040SJie Wang * Added flow subscription support. 117fe10f040SJie Wang 118629dad3eSYuan Wang* **Updated Intel ice driver.** 119629dad3eSYuan Wang 120629dad3eSYuan Wang * Added protocol based buffer split support in scalar path. 121629dad3eSYuan Wang 122549343c2SJunfeng Guo* **Added Intel idpf driver.** 123549343c2SJunfeng Guo 124549343c2SJunfeng Guo Added the new ``idpf`` net driver 12507854386SBeilei Xing for Intel\ |reg| Infrastructure Processing Unit (Intel\ |reg| IPU) E2100. 126549343c2SJunfeng Guo See the :doc:`../nics/idpf` NIC guide for more details on this new driver. 127549343c2SJunfeng Guo 128a05a8e40SIvan Malov* **Updated Marvell cnxk driver.** 129a05a8e40SIvan Malov 13050b2a419SJohn McNamara * Added support for flow action ``REPRESENTED_PORT``. 131b7d3a0feSSunil Kumar Kori * Added support for congestion management. 132a05a8e40SIvan Malov 133517ed6e2SLong Li* **Added Microsoft mana driver.** 134517ed6e2SLong Li 13550b2a419SJohn McNamara The driver has been disabled by default because of a, currently, missing dependency. 136578e3790SFerruh Yigit 137b1880421SChaoyong He* **Updated Netronome nfp driver.** 138b1880421SChaoyong He 1398ad9ffa2SChaoyong He Added flow API support: 140b1880421SChaoyong He 14150b2a419SJohn McNamara * Added support for the flower firmware. 142b1880421SChaoyong He * Added the flower service infrastructure. 143a36634e8SChaoyong He * Added the control message interactive channels between PMD and firmware. 14450b2a419SJohn McNamara * Added support for a representor port. 145b1880421SChaoyong He 14622681deeSAlex Vesker* **Updated NVIDIA mlx5 driver.** 14722681deeSAlex Vesker 14850b2a419SJohn McNamara * Added full support for queue-based async hardware steering. 14952771547SMichael Baum 150ddb68e47SBing Zhao - Support of FDB. 1519fa7c1cdSDariusz Sosnowski - Support of control flow and isolate mode. 152463170a7SSuanming Mou - Support of conntrack. 1534d368e1dSXiaoyu Min - Support of counter. 15489f6da90SMichael Baum - Support of aging. 15524865366SAlexander Kozyrev - Support of meter. 1560f4aa72bSSuanming Mou - Support of modify fields. 15722681deeSAlex Vesker 158b1e15294SIvan Malov* **Updated NXP dpaa2 driver.** 159b1e15294SIvan Malov 16050b2a419SJohn McNamara * Added support for flow action ``REPRESENTED_PORT``. 161b1e15294SIvan Malov 162abea8974SJiawen Wu* **Updated Wangxun ngbe driver.** 163abea8974SJiawen Wu 164abea8974SJiawen Wu * Added support to set device link down/up. 165abea8974SJiawen Wu 166e8c3d496SXuan Ding* **Added DMA vChannel unconfiguration for async vhost.** 167e8c3d496SXuan Ding 168e8c3d496SXuan Ding Added support to unconfigure DMA vChannel that is no longer used 169e8c3d496SXuan Ding by the vhost library. 170e8c3d496SXuan Ding 171830f7e79SChangpeng Liu* **Added non-blocking notify API to vhost library.** 172830f7e79SChangpeng Liu 173830f7e79SChangpeng Liu Added ``rte_vhost_vring_call_nonblock`` API to notify the guest that 17450b2a419SJohn McNamara used descriptors have been added to the vring in n aon-blocking way. 17550b2a419SJohn McNamara The user should check the return value of this API and try again if needed. 176830f7e79SChangpeng Liu 177bbbe6c59SAkhil Goyal* **Added support for MACsec in rte_security.** 178bbbe6c59SAkhil Goyal 179bbbe6c59SAkhil Goyal Added MACsec transform for rte_security session and added new API 180bbbe6c59SAkhil Goyal to configure security associations (SA) and secure channels (SC). 181bbbe6c59SAkhil Goyal 182515cd4a4SArek Kusztal* **Added new algorithms to cryptodev.** 183515cd4a4SArek Kusztal 18435ffc5b0SArek Kusztal * Added symmetric hash algorithm ShangMi 3 (SM3). 185515cd4a4SArek Kusztal * Added symmetric cipher algorithm ShangMi 4 (SM4) in ECB, CBC and CTR modes. 186515cd4a4SArek Kusztal 187305e1f85SArek Kusztal* **Updated Intel QuickAssist Technology (QAT) crypto driver.** 18892522c84SArek Kusztal 18975fd4bbcSArek Kusztal * Added support for SM3 hash algorithm. 19092522c84SArek Kusztal * Added support for SM4 encryption algorithm in ECB, CBC and CTR modes. 191305e1f85SArek Kusztal * Added support for ECDH key exchange algorithm. 19292522c84SArek Kusztal 193246dea7eSArchana Muniganti* **Updated Marvell cnxk crypto driver.** 194246dea7eSArchana Muniganti 19550b2a419SJohn McNamara * Added AES-CCM support in lookaside protocol (IPsec) for CN9K and CN10K. 19687d39616SVolodymyr Fialko * Added AES & DES DOCSIS algorithm support in lookaside crypto for CN9K. 197246dea7eSArchana Muniganti 1987babda43SPablo de Lara* **Updated aesni_mb crypto driver.** 1997babda43SPablo de Lara 2007babda43SPablo de Lara * Added support for 8-byte and 16-byte tags for ZUC-EIA3-256. 201f9dfb59eSCiara Power * Added support for in-place SGL, out-of-place SGL in SGL out, 202f9dfb59eSCiara Power out-of-place LB in SGL out, and out-of-place SGL in LB out. 2037babda43SPablo de Lara 20430808227SRuifeng Wang* **Updated ipsec_mb crypto driver.** 20530808227SRuifeng Wang 206f272ea5bSPablo de Lara * Added SNOW-3G and ZUC support for ARM platform. 207f272ea5bSPablo de Lara * Added Intel IPsec MB v1.3 library support for x86 platform. 20830808227SRuifeng Wang 2098799d66eSZhangfei Gao* **Added UADK crypto driver.** 2108799d66eSZhangfei Gao 2118799d66eSZhangfei Gao Added a new crypto driver for the UADK library. See the 2128799d66eSZhangfei Gao :doc:`../cryptodevs/uadk` guide for more details on this new driver. 2138799d66eSZhangfei Gao 2149d393325SNicolas Chautru* **Added bbdev operation for FFT processing.** 2159d393325SNicolas Chautru 2169d393325SNicolas Chautru Added a new operation type in bbdev for FFT processing with new functions 21750b2a419SJohn McNamara ``rte_bbdev_enqueue_fft_ops`` and ``rte_bbdev_dequeue_fft_ops``, 2189d393325SNicolas Chautru and related structures. 2199d393325SNicolas Chautru 220c2d93488SNicolas Chautru* **Added Intel ACC200 bbdev driver.** 221c2d93488SNicolas Chautru 222c2d93488SNicolas Chautru Added a new ``acc200`` bbdev driver for the Intel\ |reg| ACC200 accelerator 223*e4792a81SDavid Marchand integrated on SPR-EE. See the ``bbdevs/acc200`` guide for more details 224*e4792a81SDavid Marchand on this new driver. 225c2d93488SNicolas Chautru 226a1793ee8SGanapati Kundapura* **Added eventdev adapter instance get API.** 227a1793ee8SGanapati Kundapura 228a1793ee8SGanapati Kundapura * Added ``rte_event_eth_rx_adapter_instance_get`` to get Rx adapter 229a1793ee8SGanapati Kundapura instance ID for specified ethernet device ID and Rx queue index. 230a1793ee8SGanapati Kundapura 231b2963cbdSGanapati Kundapura * Added ``rte_event_eth_tx_adapter_instance_get`` to get Tx adapter 232b2963cbdSGanapati Kundapura instance ID for specified ethernet device ID and Tx queue index. 233b2963cbdSGanapati Kundapura 2343c3328aeSNaga Harish K S V* **Added eventdev Tx adapter queue start/stop API.** 2353c3328aeSNaga Harish K S V 2363c3328aeSNaga Harish K S V * Added ``rte_event_eth_tx_adapter_queue_start`` to start 2373c3328aeSNaga Harish K S V enqueueing packets to the Tx queue by Tx adapter. 2383c3328aeSNaga Harish K S V * Added ``rte_event_eth_tx_adapter_queue_stop`` to stop the Tx Adapter 2393c3328aeSNaga Harish K S V from enqueueing any packets to the Tx queue. 2403c3328aeSNaga Harish K S V 241c1749bc5SVolodymyr Fialko* **Added event crypto adapter vectorization support.** 242c1749bc5SVolodymyr Fialko 24350b2a419SJohn McNamara Added support for aggregating crypto operations processed by event crypto adapter 24450b2a419SJohn McNamara into a single event containing ``rte_event_vector`` 245c1749bc5SVolodymyr Fialko whose event type is ``RTE_EVENT_TYPE_CRYPTODEV_VECTOR``. 246c1749bc5SVolodymyr Fialko 247db354bd2SLeyi Rong* **Added NitroSketch in membership library.** 248db354bd2SLeyi Rong 24950b2a419SJohn McNamara Added a new data structure called sketch into the membership library, 250db354bd2SLeyi Rong to profile the traffic efficiently. 251db354bd2SLeyi Rong NitroSketch provides high-fidelity approximate measurements 252db354bd2SLeyi Rong and appears as a promising alternative to traditional approaches 253db354bd2SLeyi Rong such as packet sampling. 254db354bd2SLeyi Rong 25560b8a661STadhg Kearney* **Added Intel uncore frequency control API to the power library.** 25660b8a661STadhg Kearney 25760b8a661STadhg Kearney Added API to allow uncore frequency adjustment. 25860b8a661STadhg Kearney This is done through manipulating related uncore frequency control 25960b8a661STadhg Kearney sysfs entries to adjust the minimum and maximum uncore frequency values, 26060b8a661STadhg Kearney which works on Linux with Intel hardware only. 26160b8a661STadhg Kearney 2621f5cfe96SAnoob Joseph* **Added security performance test application.** 2631f5cfe96SAnoob Joseph 2641f5cfe96SAnoob Joseph Added new application to test ``rte_security`` session create/destroy 2651f5cfe96SAnoob Joseph performance. 2661f5cfe96SAnoob Joseph See the :doc:`../tools/securityperf` for more details. 2671f5cfe96SAnoob Joseph 2686938fc92SVolodymyr Fialko* **Updated IPsec sample application.** 2696938fc92SVolodymyr Fialko 2706938fc92SVolodymyr Fialko Added support for lookaside sessions in event mode. 2716938fc92SVolodymyr Fialko See the :doc:`../sample_app_ug/ipsec_secgw` for more details. 2726938fc92SVolodymyr Fialko 27336128a67SGowrishankar Muthukrishnan* **Updated FIPS validation sample application.** 27436128a67SGowrishankar Muthukrishnan 27536128a67SGowrishankar Muthukrishnan Added support for asymmetric crypto algorithms. 27636128a67SGowrishankar Muthukrishnan See the :doc:`../sample_app_ug/fips_validation` for more details. 27736128a67SGowrishankar Muthukrishnan 27850b2a419SJohn McNamara* **Rewrote pmdinfo script.** 2790ce3cf4aSRobin Jarry 2800ce3cf4aSRobin Jarry The ``dpdk-pmdinfo.py`` script was rewritten to produce valid JSON only. 2810ce3cf4aSRobin Jarry PCI-IDs parsing has been removed. 2820ce3cf4aSRobin Jarry To get a similar output to the (now removed) ``-r/--raw`` flag, 2830ce3cf4aSRobin Jarry the following command may be used: 2840ce3cf4aSRobin Jarry 2850ce3cf4aSRobin Jarry .. code-block:: sh 2860ce3cf4aSRobin Jarry 2870ce3cf4aSRobin Jarry strings $dpdk_binary_or_driver | sed -n 's/^PMD_INFO_STRING= //p' 2880ce3cf4aSRobin Jarry 28972206323SDavid Marchand 29072206323SDavid MarchandRemoved Items 29172206323SDavid Marchand------------- 29272206323SDavid Marchand 2936277523cSDavid Marchand* mem: Removed not implemented and deprecated ``rte_malloc_set_limit``. 2946277523cSDavid Marchand 29513f8de92SIvan Malov* ethdev: removed ``RTE_FLOW_ITEM_TYPE_PF``; 29650b2a419SJohn McNamara use ``RTE_FLOW_ITEM_TYPE_REPRESENTED_PORT`` instead. 29713f8de92SIvan Malov 2985c45fde3SIvan Malov* ethdev: removed ``RTE_FLOW_ITEM_TYPE_VF``; 29950b2a419SJohn McNamara use ``RTE_FLOW_ITEM_TYPE_REPRESENTED_PORT`` instead. 3005c45fde3SIvan Malov 3015e3779b7SIvan Malov* ethdev: removed ``RTE_FLOW_ITEM_TYPE_PHY_PORT``; 30250b2a419SJohn McNamara use ``RTE_FLOW_ITEM_TYPE_REPRESENTED_PORT`` instead. 3035e3779b7SIvan Malov 304235558feSIvan Malov* ethdev: removed ``RTE_FLOW_ACTION_TYPE_PHY_PORT``; 30550b2a419SJohn McNamara use ``RTE_FLOW_ACTION_TYPE_REPRESENTED_PORT`` instead. 306235558feSIvan Malov 3078ff9bb8aSAndrew Rybchenko* ethdev: removed ``OF_SET_MPLS_TTL``, ``OF_DEC_MPLS_TTL``, 3088ff9bb8aSAndrew Rybchenko ``OF_SET_NW_TTL``, ``OF_COPY_TTL_OUT`` and ``OF_COPY_TTL_IN`` 3098ff9bb8aSAndrew Rybchenko which are not actually supported by any PMD. 310e7b571a9SAndrew Rybchenko ``MODIFY_FIELD`` action should be used to do packet edits via flow API. 311e7b571a9SAndrew Rybchenko 3125b546fa7SDavid Marchand* vhost: Removed deprecated ``rte_vhost_gpa_to_vva`` and 3135b546fa7SDavid Marchand ``rte_vhost_get_queue_num`` helpers. 3145b546fa7SDavid Marchand 31572206323SDavid Marchand 31672206323SDavid MarchandAPI Changes 31772206323SDavid Marchand----------- 31872206323SDavid Marchand 31950b2a419SJohn McNamara* eal: ``RTE_FUNC_PTR_OR_*`` macros have been marked deprecated and will be removed 3208f1d23ecSDavid Marchand in the future. Applications can use ``devtools/cocci/func_or_ret.cocci`` 3218f1d23ecSDavid Marchand to update their code. 3228f1d23ecSDavid Marchand 32350b2a419SJohn McNamara* eal: Updated ``rte_eal_remote_launch`` so it returns ``-EPIPE`` in case of 3249856af40SBruce Richardson a read or write error on the pipe, instead of calling ``rte_panic``. 3259856af40SBruce Richardson 32650b2a419SJohn McNamara* eal: Updated return types for ``rte_{bsf,fls}`` inline functions 3274b81c145STyler Retzlaff to be consistently ``uint32_t``. 3284b81c145STyler Retzlaff 32950b2a419SJohn McNamara* mempool: Deprecated helper macro ``MEMPOOL_HEADER_SIZE()`` has been removed. 330b0831090SAndrew Rybchenko The replacement macro ``RTE_MEMPOOL_HEADER_SIZE()`` is internal only. 331b0831090SAndrew Rybchenko 3326efe9ff2SAndrew Rybchenko* mempool: Deprecated macro to register mempool driver 33350b2a419SJohn McNamara ``MEMPOOL_REGISTER_OPS()`` has been removed. Use replacement macro 3346efe9ff2SAndrew Rybchenko ``RTE_MEMPOOL_REGISTER_OPS()`` instead. 3356efe9ff2SAndrew Rybchenko 336f51abd43SAndrew Rybchenko* mempool: Deprecated macros ``MEMPOOL_PG_NUM_DEFAULT`` and 33750b2a419SJohn McNamara ``MEMPOOL_PG_SHIFT_MAX`` have been removed. These macros are not used and 338f51abd43SAndrew Rybchenko not required any more. 339f51abd43SAndrew Rybchenko 340b9b50924SAndrew Rybchenko* mbuf: Removed deprecated ``PKT_*`` flags. 341b9b50924SAndrew Rybchenko Use corresponding flags with ``RTE_MBUF_F_`` prefix instead. 34250b2a419SJohn McNamara Applications can use ``devtools/cocci/prefix_mbuf_offload_flags.cocci`` 343b9b50924SAndrew Rybchenko to replace all occurrences of old mbuf flags in C code. 344b9b50924SAndrew Rybchenko 3457dcd73e3SOlivier Matz* bus: Changed the device numa node to -1 when NUMA information is unavailable. 3467dcd73e3SOlivier Matz The ``dev->device.numa_node`` field is set by each bus driver for 3477dcd73e3SOlivier Matz every device it manages to indicate on which NUMA node this device lies. 3487dcd73e3SOlivier Matz When this information is unknown, the assigned value was not consistent 3497dcd73e3SOlivier Matz across the bus drivers. This similarly impacts ``rte_eth_dev_socket_id()``. 3507dcd73e3SOlivier Matz 351a04322f6SDavid Marchand* bus: Registering a bus has been marked as an internal API. 352a04322f6SDavid Marchand External users may still register their bus using the ``bus_driver.h`` 353a04322f6SDavid Marchand driver header (see ``enable_driver_sdk`` meson option). 354a04322f6SDavid Marchand The ``rte_bus`` object is now opaque and must be manipulated through added 355a04322f6SDavid Marchand accessors. 356a04322f6SDavid Marchand 3574851ef2bSDavid Marchand* drivers: Registering a driver on the ``auxiliary``, ``ifpga``, ``pci``, 35884aaf06dSDavid Marchand ``vdev``, ``vmbus`` buses has been marked as an internal API. 359b3f89090SDavid Marchand External users may still register their driver using the associated driver 360b3f89090SDavid Marchand headers (see ``enable_driver_sdk`` meson option). 361fbd59c8eSDavid Marchand The ``rte_driver`` and ``rte_device`` objects are now opaque and must be 362fbd59c8eSDavid Marchand manipulated through added accessors. 363b3f89090SDavid Marchand 364667c74deSAndrew Rybchenko* ethdev: Removed deprecated macros. Applications can use ``devtools/cocci/namespace_ethdev.cocci`` 365667c74deSAndrew Rybchenko to update their code. 366667c74deSAndrew Rybchenko 367667c74deSAndrew Rybchenko * Removed deprecated ``ETH_LINK_SPEED_*``, ``ETH_SPEED_NUM_*`` and ``ETH_LINK_*`` 368667c74deSAndrew Rybchenko (duplex-related) defines. Use corresponding defines with ``RTE_`` prefix 369667c74deSAndrew Rybchenko instead. 370667c74deSAndrew Rybchenko 3710593c208SAndrew Rybchenko * Removed deprecated ``ETH_MQ_RX_*`` and ``ETH_MQ_TX_*`` defines. 3720593c208SAndrew Rybchenko Use corresponding defines with ``RTE_`` prefix instead. 3730593c208SAndrew Rybchenko 374683f93efSAndrew Rybchenko * Removed deprecated ``ETH_RSS_*`` defines for hash function and 375683f93efSAndrew Rybchenko RETA size specification. Use corresponding defines with ``RTE_`` prefix 376683f93efSAndrew Rybchenko instead. 377683f93efSAndrew Rybchenko 3783be1c233SAndrew Rybchenko * Removed deprecated ``DEV_RX_OFFLOAD_*`` and ``DEV_TX_OFFLOAD_`` 3793be1c233SAndrew Rybchenko defines. Use corresponding defines with ``RTE_ETH_RX_OFFLOAD_`` and 3803be1c233SAndrew Rybchenko ``RTE_ETH_TX_OFFLOAD_`` prefix instead. 3813be1c233SAndrew Rybchenko 382935b9a43SAndrew Rybchenko * Removed deprecated ``ETH_DCB_*``, ``ETH_VMDQ_``, ``ETH_*_TCS``, 383935b9a43SAndrew Rybchenko ``ETH_*_POOLS`` and ``ETH_MAX_VMDQ_POOL`` defines. Use corresponding 384935b9a43SAndrew Rybchenko defines with ``RTE_`` prefix instead. 385935b9a43SAndrew Rybchenko 38625b77b60SAndrew Rybchenko * Removed deprecated ``RTE_TUNNEL_*`` defines. Use corresponding 38725b77b60SAndrew Rybchenko defines with ``RTE_ETH_TUNNEL_`` prefix instead. 38825b77b60SAndrew Rybchenko 38925def33dSAndrew Rybchenko * Removed deprecated ``RTE_FC_*`` defines. Use corresponding 39025def33dSAndrew Rybchenko defines with ``RTE_ETH_FC_`` prefix instead. 39125def33dSAndrew Rybchenko 392ab870119SAndrew Rybchenko * Removed deprecated ``ETH_VLAN_*`` and ``ETH_QINQ_`` defines. 393ab870119SAndrew Rybchenko Use corresponding defines with ``RTE_`` prefix instead. 394ab870119SAndrew Rybchenko 39516acf7b1SAndrew Rybchenko * Removed deprecated ``ETH_NUM_RECEIVE_MAC_ADDR`` define. 39616acf7b1SAndrew Rybchenko Use corresponding define with ``RTE_`` prefix instead. 39716acf7b1SAndrew Rybchenko 39836eccf7bSAndrew Rybchenko * Removed deprecated ``PKT_{R,T}X_DYNF_METADATA`` defines. 39936eccf7bSAndrew Rybchenko Use corresponding defines ``RTE_MBUF_DYNFLAG_{R,T}X_METADATA`` instead. 40036eccf7bSAndrew Rybchenko 4015007ac13SAndrew Rybchenko* ethdev: Removed deprecated Flow Director configuration from device 4025007ac13SAndrew Rybchenko configuration (``dev_conf.fdir_conf``). Moved corresponding structures 4035007ac13SAndrew Rybchenko to internal API since some drivers still use it internally. 4045007ac13SAndrew Rybchenko 4058d54b1ecSXuan Ding* ethdev: Removed the Rx offload flag ``RTE_ETH_RX_OFFLOAD_HEADER_SPLIT`` 4068d54b1ecSXuan Ding and field ``split_hdr_size`` from the structure ``rte_eth_rxmode`` 4078d54b1ecSXuan Ding used to configure header split. 4088d54b1ecSXuan Ding Instead, user can still use ``RTE_ETH_RX_OFFLOAD_BUFFER_SPLIT`` 4098d54b1ecSXuan Ding for per-queue packet split offload, 4108d54b1ecSXuan Ding which is configured by ``rte_eth_rxseg_split``. 4118d54b1ecSXuan Ding 412605975b8SYuan Wang* ethdev: The ``reserved`` field in the ``rte_eth_rxseg_split`` structure is 413605975b8SYuan Wang replaced with ``proto_hdr`` to support protocol header based buffer split. 414605975b8SYuan Wang User can choose length or protocol header to configure buffer split 415605975b8SYuan Wang according to NIC's capability. 416605975b8SYuan Wang 4173a26e41eSSatha Rao* ethdev: Changed the type of the parameter ``rate`` of the function 4183a26e41eSSatha Rao ``rte_eth_set_queue_rate_limit()`` from ``uint16_t`` to ``uint32_t`` 4193a26e41eSSatha Rao to support more than 64 Gbps. 4203a26e41eSSatha Rao Changed the type of the parameter ``tx_rate`` of the functions 4213a26e41eSSatha Rao ``rte_pmd_bnxt_set_vf_rate_limit()`` and 4223a26e41eSSatha Rao ``rte_pmd_ixgbe_set_vf_rate_limit()`` in the same way for consistency. 4233a26e41eSSatha Rao 424fc0a9293SIvan Malov* ethdev: Promoted ``rte_eth_rx_metadata_negotiate()`` 425fc0a9293SIvan Malov from experimental to stable. 426fc0a9293SIvan Malov 42741b7de35SIvan Malov* ethdev: Promoted the following flow primitives 42841b7de35SIvan Malov from experimental to stable: 42941b7de35SIvan Malov 43041b7de35SIvan Malov - ``RTE_FLOW_ACTION_TYPE_PORT_REPRESENTOR`` 43141b7de35SIvan Malov - ``RTE_FLOW_ACTION_TYPE_REPRESENTED_PORT`` 43241b7de35SIvan Malov - ``RTE_FLOW_ITEM_TYPE_PORT_REPRESENTOR`` 43341b7de35SIvan Malov - ``RTE_FLOW_ITEM_TYPE_REPRESENTED_PORT`` 43441b7de35SIvan Malov 43550a239faSIvan Malov* ethdev: Promoted ``rte_flow_pick_transfer_proxy()`` 43650a239faSIvan Malov from experimental to stable. 43750a239faSIvan Malov 438bd2a4d4bSIvan Malov* ethdev: Banned the use of attributes ``ingress``/``egress`` in "transfer" 43950b2a419SJohn McNamara flows, as the final step of the deprecation process that had been started 440bd2a4d4bSIvan Malov in DPDK 21.11. See items ``PORT_REPRESENTOR``, ``REPRESENTED_PORT``. 441bd2a4d4bSIvan Malov 442755a8eafSMaxime Coquelin* vhost: Promoted ``rte_vhost_vring_stats_get()``, 443755a8eafSMaxime Coquelin ``rte_vhost_vring_stats_get_names()`` and ``rte_vhost_vring_stats_reset()`` 444755a8eafSMaxime Coquelin from experimental to stable. 445755a8eafSMaxime Coquelin 4462a440d6aSAkhil Goyal* cryptodev: The structure ``rte_cryptodev_sym_session`` was made internal. 4472a440d6aSAkhil Goyal The API ``rte_cryptodev_sym_session_init`` and ``rte_cryptodev_sym_session_clear`` 4482a440d6aSAkhil Goyal were removed and user would only need to call ``rte_cryptodev_sym_session_create`` 4492a440d6aSAkhil Goyal and ``rte_cryptodev_sym_session_free`` to create/destroy sessions. 4502a440d6aSAkhil Goyal The API ``rte_cryptodev_sym_session_create`` was updated to take a single mempool 4512a440d6aSAkhil Goyal with element size big enough to hold session data and session private data. 4522a440d6aSAkhil Goyal All sample applications were updated to attach an opaque pointer for the session 4532a440d6aSAkhil Goyal to the ``rte_crypto_op`` while enqueuing. 4542a440d6aSAkhil Goyal 4552973dbf9SAkhil Goyal* security: The structure ``rte_security_session`` was made internal 4562973dbf9SAkhil Goyal and corresponding functions were updated to take/return an opaque session pointer. 4572973dbf9SAkhil Goyal The API ``rte_security_session_create`` was updated to take only one mempool 4582973dbf9SAkhil Goyal which has enough space to hold session and driver private data. 4592973dbf9SAkhil Goyal 46050b2a419SJohn McNamara* security: MACsec support has been added which resulted in updates 461bbbe6c59SAkhil Goyal to structures ``rte_security_macsec_xform``, ``rte_security_macsec_stats`` 462bbbe6c59SAkhil Goyal and security capability structure ``rte_security_capability`` 463bbbe6c59SAkhil Goyal to accommodate MACsec capabilities. 464bbbe6c59SAkhil Goyal 46568d25915SSrujana Challa* security: The experimental API ``rte_security_get_userdata`` was being unused 46668d25915SSrujana Challa by most of the drivers and it was retrieving userdata from mbuf dynamic field. 46768d25915SSrujana Challa The API is now removed and the application can directly get the userdata from 46868d25915SSrujana Challa mbuf dynamic field. 46968d25915SSrujana Challa 470c1749bc5SVolodymyr Fialko* eventdev: The function ``rte_event_crypto_adapter_queue_pair_add`` was updated 471c1749bc5SVolodymyr Fialko to accept configuration of type ``rte_event_crypto_adapter_queue_conf`` 472c1749bc5SVolodymyr Fialko instead of ``rte_event``, 473c1749bc5SVolodymyr Fialko similar to ``rte_event_eth_rx_adapter_queue_add`` signature. 474c1749bc5SVolodymyr Fialko Event will be one of the configuration fields, 475c1749bc5SVolodymyr Fialko together with additional vector parameters. 476c1749bc5SVolodymyr Fialko 477922e71b5SPavan Nikhilesh* eventdev: The function pointer definition ``eventdev_stop_flush_t`` 478922e71b5SPavan Nikhilesh is renamed to ``rte_eventdev_stop_flush_t`` 479922e71b5SPavan Nikhilesh to avoid conflicts with application symbols. 480922e71b5SPavan Nikhilesh 4811bdfe4d7SPavan Nikhilesh* eventdev: The data type of the ID parameter in the functions 4821bdfe4d7SPavan Nikhilesh ``rte_event_dev_xstats_names_get``, ``rte_event_dev_xstats_get``, 4831bdfe4d7SPavan Nikhilesh ``rte_event_dev_xstats_by_name_get`` and ``rte_event_dev_xstats_reset`` 4841bdfe4d7SPavan Nikhilesh is changed to ``uint64_t`` from ``unsigned int`` and ``uint32_t``. 4851bdfe4d7SPavan Nikhilesh 4866d03ef60SBruce Richardson* metrics: Updated ``rte_metrics_init`` so it returns an error code instead 4876d03ef60SBruce Richardson of calling ``rte_exit``. 4886d03ef60SBruce Richardson 489b64b2a6cSBruce Richardson* telemetry: The allowed characters in names for dictionary values 490b64b2a6cSBruce Richardson are now limited to alphanumeric characters and a small subset of additional 491b64b2a6cSBruce Richardson printable characters. 492b64b2a6cSBruce Richardson This will ensure that all dictionary parameter names can be output 493b64b2a6cSBruce Richardson without escaping in JSON - or in any future output format used. 494b64b2a6cSBruce Richardson Names for the telemetry commands are now similarly limited. 495b64b2a6cSBruce Richardson The parameters for telemetry commands are unaffected by this change. 496b64b2a6cSBruce Richardson 4979c1b4ae5SDavid Marchand* raw/ifgpa: The function ``rte_pmd_ifpga_get_pci_bus`` has been removed. 4989c1b4ae5SDavid Marchand 49972206323SDavid Marchand 50072206323SDavid MarchandABI Changes 50172206323SDavid Marchand----------- 50272206323SDavid Marchand 5038ae94697SAbdullah Ömer Yamaç* eal: Updated EAL thread names from ``lcore-worker-<lcore_id>`` to 5048ae94697SAbdullah Ömer Yamaç ``rte-worker-<lcore_id>`` so that DPDK can accommodate lcores higher than 99. 5058ae94697SAbdullah Ömer Yamaç 5065812b327SShijith Thotton* mbuf: Replaced ``buf_iova`` field with ``next`` field and added a new field 5075812b327SShijith Thotton ``dynfield2`` at its place in second cacheline if ``RTE_IOVA_AS_PA`` is 0. 5085812b327SShijith Thotton 50913f8de92SIvan Malov* ethdev: enum ``RTE_FLOW_ITEM`` was affected by deprecation procedure. 51013f8de92SIvan Malov 511235558feSIvan Malov* ethdev: enum ``RTE_FLOW_ACTION`` was affected by deprecation procedure. 512235558feSIvan Malov 513e70212ccSNicolas Chautru* bbdev: enum ``rte_bbdev_op_type`` was affected to remove ``RTE_BBDEV_OP_TYPE_COUNT`` 514e70212ccSNicolas Chautru and to allow for futureproof enum insertion a padded ``RTE_BBDEV_OP_TYPE_SIZE_MAX`` 515e70212ccSNicolas Chautru macro is added. 516e70212ccSNicolas Chautru 5171be86f2eSNicolas Chautru* bbdev: Structure ``rte_bbdev_driver_info`` was updated to add new parameters 51853115a4eSNicolas Chautru for queue topology, device status using ``rte_bbdev_device_status``. 5191be86f2eSNicolas Chautru 5204f08028cSNicolas Chautru* bbdev: Structure ``rte_bbdev_queue_data`` was updated to add new parameter 5214f08028cSNicolas Chautru for enqueue status using ``rte_bbdev_enqueue_status``. 5224f08028cSNicolas Chautru 5233d9d8adfSNaga Harish K S V* eventdev: Added ``evtim_drop_count`` field 5243d9d8adfSNaga Harish K S V to ``rte_event_timer_adapter_stats`` structure. 5253d9d8adfSNaga Harish K S V 5262f279a1bSShijith Thotton* eventdev: Added ``weight`` and ``affinity`` fields 5272f279a1bSShijith Thotton to ``rte_event_queue_conf`` structure. 5282f279a1bSShijith Thotton 529922e71b5SPavan Nikhilesh* eventdev: The field ``*u64s`` in the structure ``rte_event_vector`` is replaced 53050b2a419SJohn McNamara with ``u64s`` as the field is supposed to hold an array of ``uint64_t`` values. 531922e71b5SPavan Nikhilesh 532922e71b5SPavan Nikhilesh* eventdev: The structure ``rte_event_vector`` was updated to include a new bit 533922e71b5SPavan Nikhilesh field ``elem_offset:12``. The bits are taken from the bitfield ``rsvd:15``. 534922e71b5SPavan Nikhilesh 53572206323SDavid Marchand 53672206323SDavid MarchandTested Platforms 53772206323SDavid Marchand---------------- 53872206323SDavid Marchand 53967cb9cbeSLingli Chen* Intel\ |reg| platforms with Intel\ |reg| NICs combinations 54067cb9cbeSLingli Chen 54167cb9cbeSLingli Chen * CPU 54267cb9cbeSLingli Chen 54367cb9cbeSLingli Chen * Intel\ |reg| Atom\ |trade| CPU C3758 @ 2.20GHz 54467cb9cbeSLingli Chen * Intel\ |reg| Xeon\ |reg| CPU D-1553N @ 2.30GHz 54567cb9cbeSLingli Chen * Intel\ |reg| Xeon\ |reg| CPU E5-2680 v2 @ 2.80GHz 54667cb9cbeSLingli Chen * Intel\ |reg| Xeon\ |reg| CPU E5-2699 v3 @ 2.30GHz 54767cb9cbeSLingli Chen * Intel\ |reg| Xeon\ |reg| CPU E5-2699 v4 @ 2.20GHz 54867cb9cbeSLingli Chen * Intel\ |reg| Xeon\ |reg| D-2796NT CPU @ 2.00GHz 54967cb9cbeSLingli Chen * Intel\ |reg| Xeon\ |reg| Gold 6139 CPU @ 2.30GHz 55067cb9cbeSLingli Chen * Intel\ |reg| Xeon\ |reg| Gold 6140M CPU @ 2.30GHz 55167cb9cbeSLingli Chen * Intel\ |reg| Xeon\ |reg| Gold 6252N CPU @ 2.30GHz 55267cb9cbeSLingli Chen * Intel\ |reg| Xeon\ |reg| Gold 6348 CPU @ 2.60GHz 55367cb9cbeSLingli Chen * Intel\ |reg| Xeon\ |reg| Platinum 8180M CPU @ 2.50GHz 55467cb9cbeSLingli Chen * Intel\ |reg| Xeon\ |reg| Platinum 8280M CPU @ 2.70GHz 55567cb9cbeSLingli Chen * Intel\ |reg| Xeon\ |reg| Platinum 8380 CPU @ 2.30GHz 55667cb9cbeSLingli Chen 55767cb9cbeSLingli Chen * OS: 55867cb9cbeSLingli Chen 55967cb9cbeSLingli Chen * Fedora 36 56067cb9cbeSLingli Chen * FreeBSD 13.1 56167cb9cbeSLingli Chen * Red Hat Enterprise Linux Server release 8.6 56267cb9cbeSLingli Chen * Red Hat Enterprise Linux Server release 9 56367cb9cbeSLingli Chen * CentOS 7.9 56467cb9cbeSLingli Chen * Ubuntu 20.04.5 56567cb9cbeSLingli Chen * Ubuntu 22.04.1 56667cb9cbeSLingli Chen * Ubuntu 22.10 56767cb9cbeSLingli Chen * SUSE Linux Enterprise Server 15 SP4 56867cb9cbeSLingli Chen 56967cb9cbeSLingli Chen * NICs: 57067cb9cbeSLingli Chen 57167cb9cbeSLingli Chen * Intel\ |reg| Ethernet Controller E810-C for SFP (4x25G) 57267cb9cbeSLingli Chen 57367cb9cbeSLingli Chen * Firmware version: 4.10 0x800151d8 1.3310.0 57467cb9cbeSLingli Chen * Device id (pf/vf): 8086:1593 / 8086:1889 57567cb9cbeSLingli Chen * Driver version(out-tree): 1.10.6 (ice) 57667cb9cbeSLingli Chen * Driver version(in-tree): 5.15.0-46-generic / 4.18.0-372.9.1.rt7.166.el8.x86_64 (ice) 57767cb9cbeSLingli Chen * OS Default DDP: 1.3.30.0 57867cb9cbeSLingli Chen * COMMS DDP: 1.3.37.0 57967cb9cbeSLingli Chen * Wireless Edge DDP: 1.3.10.0 58067cb9cbeSLingli Chen 58167cb9cbeSLingli Chen * Intel\ |reg| Ethernet Controller E810-C for QSFP (2x100G) 58267cb9cbeSLingli Chen 58367cb9cbeSLingli Chen * Firmware version: 4.10 0x8001518e 1.3310.0 58467cb9cbeSLingli Chen * Device id (pf/vf): 8086:1592 / 8086:1889 58567cb9cbeSLingli Chen * Driver version: 1.10.6 (ice) 58667cb9cbeSLingli Chen * OS Default DDP: 1.3.30.0 58767cb9cbeSLingli Chen * COMMS DDP: 1.3.37.0 58867cb9cbeSLingli Chen * Wireless Edge DDP: 1.3.10.0 58967cb9cbeSLingli Chen 59067cb9cbeSLingli Chen * Intel\ |reg| Ethernet Controller E810-XXV for SFP (2x25G) 59167cb9cbeSLingli Chen 59267cb9cbeSLingli Chen * Firmware version: 4.10 0x80015188 1.3310.0 59367cb9cbeSLingli Chen * Device id (pf/vf): 8086:159b / 8086:1889 59467cb9cbeSLingli Chen * Driver version: 1.10.6 (ice) 59567cb9cbeSLingli Chen * OS Default DDP: 1.3.30.0 59667cb9cbeSLingli Chen * COMMS DDP: 1.3.37.0 59767cb9cbeSLingli Chen 59867cb9cbeSLingli Chen * Intel\ |reg| 82599ES 10 Gigabit Ethernet Controller 59967cb9cbeSLingli Chen 60067cb9cbeSLingli Chen * Firmware version: 0x61bf0001 60167cb9cbeSLingli Chen * Device id (pf/vf): 8086:10fb / 8086:10ed 60267cb9cbeSLingli Chen * Driver version(out-tree): 5.16.5 (ixgbe) 60367cb9cbeSLingli Chen * Driver version(in-tree): 5.15.0-46-generic (ixgbe) 60467cb9cbeSLingli Chen 60567cb9cbeSLingli Chen * Intel\ |reg| Ethernet Converged Network Adapter X710-DA4 (4x10G) 60667cb9cbeSLingli Chen 60767cb9cbeSLingli Chen * Firmware version: 9.00 0x8000cead 1.3179.0 60867cb9cbeSLingli Chen * Device id (pf/vf): 8086:1572 / 8086:154c 60967cb9cbeSLingli Chen * Driver version(out-tree): 2.20.12 (i40e) 61067cb9cbeSLingli Chen * Driver version(in-tree): 5.15.0-46-generic (i40e) 61167cb9cbeSLingli Chen 61267cb9cbeSLingli Chen * Intel\ |reg| Corporation Ethernet Connection X722 for 10GbE SFP+ (2x10G) 61367cb9cbeSLingli Chen 61467cb9cbeSLingli Chen * Firmware version: 6.00 0x800039ec 1.3179.0 61567cb9cbeSLingli Chen * Device id (pf/vf): 8086:37d0 / 8086:37cd 61667cb9cbeSLingli Chen * Driver version(out-tree): 2.20.12 (i40e) 61767cb9cbeSLingli Chen * Driver version(in-tree): 5.15.0-46-generic (i40e) 61867cb9cbeSLingli Chen 61967cb9cbeSLingli Chen * Intel\ |reg| Corporation Ethernet Connection X722 for 10GBASE-T 62067cb9cbeSLingli Chen 62167cb9cbeSLingli Chen * Firmware version: 6.00 0x800039aa 1.2935.0 62267cb9cbeSLingli Chen * Device id (pf/vf): 8086:37d2 / 8086:37cd 62367cb9cbeSLingli Chen * Driver version(out-tree): 2.20.12 (i40e) 62467cb9cbeSLingli Chen * Driver version(in-tree): 5.15.0-46-generic (i40e) 62567cb9cbeSLingli Chen 62667cb9cbeSLingli Chen * Intel\ |reg| Ethernet Converged Network Adapter XXV710-DA2 (2x25G) 62767cb9cbeSLingli Chen 62867cb9cbeSLingli Chen * Firmware version: 9.00 0x8000ce90 1.3179.0 62967cb9cbeSLingli Chen * Device id (pf/vf): 8086:158b / 8086:154c 63067cb9cbeSLingli Chen * Driver version(out-tree): 2.20.12 (i40e) 63167cb9cbeSLingli Chen * Driver version(in-tree): 5.15.0-46-generic (i40e) 63267cb9cbeSLingli Chen 63367cb9cbeSLingli Chen * Intel\ |reg| Ethernet Converged Network Adapter XL710-QDA2 (2X40G) 63467cb9cbeSLingli Chen 63567cb9cbeSLingli Chen * Firmware version(PF): 9.00 0x8000ce86 1.3179.0 63667cb9cbeSLingli Chen * Device id (pf/vf): 8086:1583 / 8086:154c 63767cb9cbeSLingli Chen * Driver version(out-tree): 2.20.12 (i40e) 63867cb9cbeSLingli Chen * Driver version(in-tree): 5.15.0-46-generic (i40e) 63967cb9cbeSLingli Chen 64067cb9cbeSLingli Chen * Intel\ |reg| Ethernet Converged Network Adapter X710-T2L 64167cb9cbeSLingli Chen 64267cb9cbeSLingli Chen * Firmware version: 9.00 0x8000ce67 1.3179.0 64367cb9cbeSLingli Chen * Device id (pf): 8086:15ff 64467cb9cbeSLingli Chen * Driver version: 2.20.12 (i40e) 6452eecbca1SRaslan Darawsheh 6462eecbca1SRaslan Darawsheh* Intel\ |reg| platforms with NVIDIA\ |reg| NICs combinations 6472eecbca1SRaslan Darawsheh 6482eecbca1SRaslan Darawsheh * CPU: 6492eecbca1SRaslan Darawsheh 6502eecbca1SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| Gold 6154 CPU @ 3.00GHz 6512eecbca1SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2697A v4 @ 2.60GHz 6522eecbca1SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2697 v3 @ 2.60GHz 6532eecbca1SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2680 v2 @ 2.80GHz 6542eecbca1SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2670 0 @ 2.60GHz 6552eecbca1SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2650 v4 @ 2.20GHz 6562eecbca1SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2650 v3 @ 2.30GHz 6572eecbca1SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2640 @ 2.50GHz 6582eecbca1SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2650 0 @ 2.00GHz 6592eecbca1SRaslan Darawsheh * Intel\ |reg| Xeon\ |reg| CPU E5-2620 v4 @ 2.10GHz 6602eecbca1SRaslan Darawsheh 6612eecbca1SRaslan Darawsheh * OS: 6622eecbca1SRaslan Darawsheh 6632eecbca1SRaslan Darawsheh * Red Hat Enterprise Linux release 8.6 (Ootpa) 6642eecbca1SRaslan Darawsheh * Red Hat Enterprise Linux release 8.4 (Ootpa) 6652eecbca1SRaslan Darawsheh * Red Hat Enterprise Linux release 8.2 (Ootpa) 6662eecbca1SRaslan Darawsheh * Red Hat Enterprise Linux Server release 7.9 (Maipo) 6672eecbca1SRaslan Darawsheh * Red Hat Enterprise Linux Server release 7.8 (Maipo) 6682eecbca1SRaslan Darawsheh * Red Hat Enterprise Linux Server release 7.6 (Maipo) 6692eecbca1SRaslan Darawsheh * Red Hat Enterprise Linux Server release 7.5 (Maipo) 6702eecbca1SRaslan Darawsheh * Red Hat Enterprise Linux Server release 7.4 (Maipo) 6712eecbca1SRaslan Darawsheh * Ubuntu 22.04 6722eecbca1SRaslan Darawsheh * Ubuntu 20.04 6732eecbca1SRaslan Darawsheh * Ubuntu 18.04 6742eecbca1SRaslan Darawsheh * SUSE Enterprise Linux 15 SP2 6752eecbca1SRaslan Darawsheh 6762eecbca1SRaslan Darawsheh * OFED: 6772eecbca1SRaslan Darawsheh 6782eecbca1SRaslan Darawsheh * MLNX_OFED 5.8-1.0.1.1 and above 6792eecbca1SRaslan Darawsheh * MLNX_OFED 5.7-1.0.2.0 6802eecbca1SRaslan Darawsheh 6812eecbca1SRaslan Darawsheh * upstream kernel: 6822eecbca1SRaslan Darawsheh 6832eecbca1SRaslan Darawsheh * Linux 6.1.0-rc3 and above 6842eecbca1SRaslan Darawsheh 6852eecbca1SRaslan Darawsheh * rdma-core: 6862eecbca1SRaslan Darawsheh 6872eecbca1SRaslan Darawsheh * rdma-core-43.0 and above 6882eecbca1SRaslan Darawsheh 6892eecbca1SRaslan Darawsheh * NICs: 6902eecbca1SRaslan Darawsheh 6912eecbca1SRaslan Darawsheh * NVIDIA\ |reg| ConnectX\ |reg|-3 Pro 40G MCX354A-FCC_Ax (2x40G) 6922eecbca1SRaslan Darawsheh 6932eecbca1SRaslan Darawsheh * Host interface: PCI Express 3.0 x8 6942eecbca1SRaslan Darawsheh * Device ID: 15b3:1007 6952eecbca1SRaslan Darawsheh * Firmware version: 2.42.5000 6962eecbca1SRaslan Darawsheh 6972eecbca1SRaslan Darawsheh * NVIDIA\ |reg| ConnectX\ |reg|-3 Pro 40G MCX354A-FCCT (2x40G) 6982eecbca1SRaslan Darawsheh 6992eecbca1SRaslan Darawsheh * Host interface: PCI Express 3.0 x8 7002eecbca1SRaslan Darawsheh * Device ID: 15b3:1007 7012eecbca1SRaslan Darawsheh * Firmware version: 2.42.5000 7022eecbca1SRaslan Darawsheh 7032eecbca1SRaslan Darawsheh * NVIDIA\ |reg| ConnectX\ |reg|-4 Lx 25G MCX4121A-ACAT (2x25G) 7042eecbca1SRaslan Darawsheh 7052eecbca1SRaslan Darawsheh * Host interface: PCI Express 3.0 x8 7062eecbca1SRaslan Darawsheh * Device ID: 15b3:1015 7072eecbca1SRaslan Darawsheh * Firmware version: 14.32.1010 and above 7082eecbca1SRaslan Darawsheh 7092eecbca1SRaslan Darawsheh * NVIDIA\ |reg| ConnectX\ |reg|-4 Lx 50G MCX4131A-GCAT (1x50G) 7102eecbca1SRaslan Darawsheh 7112eecbca1SRaslan Darawsheh * Host interface: PCI Express 3.0 x8 7122eecbca1SRaslan Darawsheh * Device ID: 15b3:1015 7132eecbca1SRaslan Darawsheh * Firmware version: 14.32.1010 and above 7142eecbca1SRaslan Darawsheh 7152eecbca1SRaslan Darawsheh * NVIDIA\ |reg| ConnectX\ |reg|-5 100G MCX516A-CCAT (2x100G) 7162eecbca1SRaslan Darawsheh 7172eecbca1SRaslan Darawsheh * Host interface: PCI Express 3.0 x16 7182eecbca1SRaslan Darawsheh * Device ID: 15b3:1017 7192eecbca1SRaslan Darawsheh * Firmware version: 16.35.1012 and above 7202eecbca1SRaslan Darawsheh 7212eecbca1SRaslan Darawsheh * NVIDIA\ |reg| ConnectX\ |reg|-5 100G MCX556A-ECAT (2x100G) 7222eecbca1SRaslan Darawsheh 7232eecbca1SRaslan Darawsheh * Host interface: PCI Express 3.0 x16 7242eecbca1SRaslan Darawsheh * Device ID: 15b3:1017 7252eecbca1SRaslan Darawsheh * Firmware version: 16.35.1012 and above 7262eecbca1SRaslan Darawsheh 7272eecbca1SRaslan Darawsheh * NVIDIA\ |reg| ConnectX\ |reg|-5 100G MCX556A-EDAT (2x100G) 7282eecbca1SRaslan Darawsheh 7292eecbca1SRaslan Darawsheh * Host interface: PCI Express 3.0 x16 7302eecbca1SRaslan Darawsheh * Device ID: 15b3:1017 7312eecbca1SRaslan Darawsheh * Firmware version: 16.35.1012 and above 7322eecbca1SRaslan Darawsheh 7332eecbca1SRaslan Darawsheh * NVIDIA\ |reg| ConnectX\ |reg|-5 Ex EN 100G MCX516A-CDAT (2x100G) 7342eecbca1SRaslan Darawsheh 7352eecbca1SRaslan Darawsheh * Host interface: PCI Express 4.0 x16 7362eecbca1SRaslan Darawsheh * Device ID: 15b3:1019 7372eecbca1SRaslan Darawsheh * Firmware version: 16.35.1012 and above 7382eecbca1SRaslan Darawsheh 7392eecbca1SRaslan Darawsheh * NVIDIA\ |reg| ConnectX\ |reg|-6 Dx EN 100G MCX623106AN-CDAT (2x100G) 7402eecbca1SRaslan Darawsheh 7412eecbca1SRaslan Darawsheh * Host interface: PCI Express 4.0 x16 7422eecbca1SRaslan Darawsheh * Device ID: 15b3:101d 7432eecbca1SRaslan Darawsheh * Firmware version: 22.35.1012 and above 7442eecbca1SRaslan Darawsheh 7452eecbca1SRaslan Darawsheh * NVIDIA\ |reg| ConnectX\ |reg|-6 Lx EN 25G MCX631102AN-ADAT (2x25G) 7462eecbca1SRaslan Darawsheh 7472eecbca1SRaslan Darawsheh * Host interface: PCI Express 4.0 x8 7482eecbca1SRaslan Darawsheh * Device ID: 15b3:101f 7492eecbca1SRaslan Darawsheh * Firmware version: 26.35.1012 and above 7502eecbca1SRaslan Darawsheh 7512eecbca1SRaslan Darawsheh * NVIDIA\ |reg| ConnectX\ |reg|-7 200G CX713106AE-HEA_QP1_Ax (2x200G) 7522eecbca1SRaslan Darawsheh 7532eecbca1SRaslan Darawsheh * Host interface: PCI Express 5.0 x16 7542eecbca1SRaslan Darawsheh * Device ID: 15b3:1021 7552eecbca1SRaslan Darawsheh * Firmware version: 28.35.1012 and above 7562eecbca1SRaslan Darawsheh 7572eecbca1SRaslan Darawsheh* NVIDIA\ |reg| BlueField\ |reg| SmartNIC 7582eecbca1SRaslan Darawsheh 7592eecbca1SRaslan Darawsheh * NVIDIA\ |reg| BlueField\ |reg|-2 SmartNIC MT41686 - MBF2H332A-AEEOT_A1 (2x25G) 7602eecbca1SRaslan Darawsheh 7612eecbca1SRaslan Darawsheh * Host interface: PCI Express 3.0 x16 7622eecbca1SRaslan Darawsheh * Device ID: 15b3:a2d6 7632eecbca1SRaslan Darawsheh * Firmware version: 24.35.1012 and above 7642eecbca1SRaslan Darawsheh 7652eecbca1SRaslan Darawsheh * Embedded software: 7662eecbca1SRaslan Darawsheh 7672eecbca1SRaslan Darawsheh * Ubuntu 20.04.3 7682eecbca1SRaslan Darawsheh * MLNX_OFED 5.8-1.0.1.1 and above 7692eecbca1SRaslan Darawsheh * DOCA 1.5 with BlueField 3.9.3 7702eecbca1SRaslan Darawsheh * DPDK application running on ARM cores 7712eecbca1SRaslan Darawsheh 7722eecbca1SRaslan Darawsheh* IBM Power 9 platforms with NVIDIA\ |reg| NICs combinations 7732eecbca1SRaslan Darawsheh 7742eecbca1SRaslan Darawsheh * CPU: 7752eecbca1SRaslan Darawsheh 7762eecbca1SRaslan Darawsheh * POWER9 2.2 (pvr 004e 1202) 7772eecbca1SRaslan Darawsheh 7782eecbca1SRaslan Darawsheh * OS: 7792eecbca1SRaslan Darawsheh 7802eecbca1SRaslan Darawsheh * Ubuntu 20.04 7812eecbca1SRaslan Darawsheh 7822eecbca1SRaslan Darawsheh * NICs: 7832eecbca1SRaslan Darawsheh 7842eecbca1SRaslan Darawsheh * NVIDIA\ |reg| ConnectX\ |reg|-5 100G MCX556A-ECAT (2x100G) 7852eecbca1SRaslan Darawsheh 7862eecbca1SRaslan Darawsheh * Host interface: PCI Express 4.0 x16 7872eecbca1SRaslan Darawsheh * Device ID: 15b3:1017 7882eecbca1SRaslan Darawsheh * Firmware version: 16.35.1012 7892eecbca1SRaslan Darawsheh 7902eecbca1SRaslan Darawsheh * NVIDIA\ |reg| ConnectX\ |reg|-6 Dx 100G MCX623106AN-CDAT (2x100G) 7912eecbca1SRaslan Darawsheh 7922eecbca1SRaslan Darawsheh * Host interface: PCI Express 4.0 x16 7932eecbca1SRaslan Darawsheh * Device ID: 15b3:101d 7942eecbca1SRaslan Darawsheh * Firmware version: 22.35.1012 7952eecbca1SRaslan Darawsheh 7962eecbca1SRaslan Darawsheh * OFED: 7972eecbca1SRaslan Darawsheh 7982eecbca1SRaslan Darawsheh * MLNX_OFED 5.8-1.0.1.1 799