New APIs have been added to support rings with custom element size.
+* **Added mbuf pool with pinned external memory.**
+
+ Added support of mbuf with data buffer allocated in an external device memory.
+
* **Updated rte_flow api to support L2TPv3 over IP flows.**
Added support for new flow item to handle L2TPv3 over IP rte_flow patterns.
+* **Added DSCP rewrite action.**
+
+ New actions ``RTE_FLOW_ACTION_TYPE_SET_IPV[4/6]_DSCP`` have been added
+ to support rewrite the DSCP field in the IP header.
+
* **Added IONIC net PMD.**
Added the new ``ionic`` net driver for Pensando Ethernet Network Adapters.
Updated Mellanox mlx5 driver with new features and improvements, including:
+ * Added support for the mbufs with external pinned buffers.
* Added support for RSS using L3/L4 source/destination only.
* Added support for matching on GTP tunnel header item.
* Removed limitation of matching on tagged/untagged packets (when using DV flow engine).
+ * Added support for IPv4/IPv6 DSCP rewrite action.
* Added BlueField-2 integrated ConnectX-6 Dx device support.
* **Add new vDPA PMD based on Mellanox devices.**
* No change in this release.
+.. _20_02_abi_changes:
+
ABI Changes
-----------
* No change, kept ABI v20. DPDK 20.02 is compatible with DPDK 19.11.
+* The soname for each stable ABI version should be just the ABI version major
+ number without the minor number. Unfortunately both major and minor were used
+ in the v19.11 release, causing version v20.x releases to be incompatible with
+ ABI v20.0.
+
+ The `commit f26c2b39b271 <https://git.dpdk.org/dpdk/commit/?id=f26c2b39b271>`_
+ fixed the issue by switching from 2-part to 3-part ABI version numbers so that
+ we can keep v20.0 as soname and using the final digits to identify the DPDK
+ 20.x releases which are ABI compatible.
+
Tested Platforms
----------------
* Firmware version: 3.25, 0x800006eb
* Device id (pf): 8086:1533
* Driver version: 5.4.0-k(igb)
+
+* Intel\ |reg| platforms with Mellanox\ |reg| NICs combinations
+
+ * CPU:
+
+ * Intel\ |reg| Xeon\ |reg| Gold 6154 CPU @ 3.00GHz
+ * Intel\ |reg| Xeon\ |reg| CPU E5-2697A v4 @ 2.60GHz
+ * Intel\ |reg| Xeon\ |reg| CPU E5-2697 v3 @ 2.60GHz
+ * Intel\ |reg| Xeon\ |reg| CPU E5-2680 v2 @ 2.80GHz
+ * Intel\ |reg| Xeon\ |reg| CPU E5-2650 v4 @ 2.20GHz
+ * Intel\ |reg| Xeon\ |reg| CPU E5-2640 @ 2.50GHz
+ * Intel\ |reg| Xeon\ |reg| CPU E5-2620 v4 @ 2.10GHz
+
+ * OS:
+ * Red Hat Enterprise Linux Server release 7.5 (Maipo)
+ * Red Hat Enterprise Linux Server release 7.4 (Maipo)
+ * Red Hat Enterprise Linux Server release 7.3 (Maipo)
+ * Red Hat Enterprise Linux Server release 7.2 (Maipo)
+ * Ubuntu 18.04
+ * Ubuntu 16.04
+
+ * OFED:
+
+ * MLNX_OFED 4.7-3.2.9.0
+ * MLNX_OFED 5.0-0.4.1.0 and above
+
+ * upstream kernel:
+
+ * Linux 5.5 and above
+
+ * rdma-core:
+
+ * rdma-core-28.0-1 and above
+
+ * NICs:
+
+ * Mellanox\ |reg| ConnectX\ |reg|-3 Pro 40G MCX354A-FCC_Ax (2x40G)
+
+ * Host interface: PCI Express 3.0 x8
+ * Device ID: 15b3:1007
+ * Firmware version: 2.42.5000
+
+ * Mellanox\ |reg| ConnectX\ |reg|-3 Pro 40G MCX354A-FCCT (2x40G)
+
+ * Host interface: PCI Express 3.0 x8
+ * Device ID: 15b3:1007
+ * Firmware version: 2.42.5000
+
+ * Mellanox\ |reg| ConnectX\ |reg|-4 Lx 25G MCX4121A-ACAT (2x25G)
+
+ * Host interface: PCI Express 3.0 x8
+ * Device ID: 15b3:1015
+ * Firmware version: 14.27.1000 and above
+
+ * Mellanox\ |reg| ConnectX\ |reg|-4 Lx 50G MCX4131A-GCAT (1x50G)
+
+ * Host interface: PCI Express 3.0 x8
+ * Device ID: 15b3:1015
+ * Firmware version: 14.27.1000 and above
+
+ * Mellanox\ |reg| ConnectX\ |reg|-5 100G MCX516A-CCAT (2x100G)
+
+ * Host interface: PCI Express 3.0 x16
+ * Device ID: 15b3:1017
+ * Firmware version: 16.27.1000 and above
+
+ * Mellanox\ |reg| ConnectX\ |reg|-5 100G MCX556A-ECAT (2x100G)
+
+ * Host interface: PCI Express 3.0 x16
+ * Device ID: 15b3:1017
+ * Firmware version: 16.27.1000 and above
+
+ * Mellanox\ |reg| ConnectX\ |reg|-5 100G MCX556A-EDAT (2x100G)
+
+ * Host interface: PCI Express 3.0 x16
+ * Device ID: 15b3:1017
+ * Firmware version: 16.27.1000 and above
+
+ * Mellanox\ |reg| ConnectX\ |reg|-5 Ex EN 100G MCX516A-CDAT (2x100G)
+
+ * Host interface: PCI Express 4.0 x16
+ * Device ID: 15b3:1019
+ * Firmware version: 16.27.1000 and above
+
+
+* Mellanox\ |reg| BlueField SmartNIC
+
+ * Mellanox\ |reg| BlueField SmartNIC MT416842 (2x25G)
+
+ * Host interface: PCI Express 3.0 x16
+ * Device ID: 15b3:a2d2
+ * Firmware version: 18.27.1000
+
+ * SoC Arm cores running OS:
+
+ * CentOS Linux release 7.5.1804 (AltArch)
+ * MLNX_OFED 5.0-0.4.0.0
+
+ * DPDK application running on Arm cores inside SmartNIC
+
+* IBM Power 9 platforms with Mellanox\ |reg| NICs combinations
+
+ * CPU:
+
+ * POWER9 2.2 (pvr 004e 1202) 2300MHz
+
+ * OS:
+
+ * Ubuntu 18.04.1 LTS (Bionic Beaver)
+
+ * NICs:
+
+ * Mellanox\ |reg| ConnectX\ |reg|-5 100G MCX556A-ECAT (2x100G)
+
+ * Host interface: PCI Express 3.0 x16
+ * Device ID: 15b3:1017
+ * Firmware version: 16.27.1000
+
+ * OFED:
+
+ * MLNX_OFED 5.0-0.4.1.0
+
+* ARMv8 SoC combinations from Marvell (with integrated NICs)
+
+ * SoC:
+
+ * CN83xx, CN96xx, CN93xx
+
+ * OS (Based on Marvell OCTEON TX SDK-10.3.2.x):
+
+ * Arch Linux
+ * Buildroot 2018.11
+ * Ubuntu 16.04.1 LTS
+ * Ubuntu 16.10
+ * Ubuntu 18.04.1
+ * Ubuntu 19.04