1 .. SPDX-License-Identifier: BSD-3-Clause
2 Copyright 2022 The DPDK contributors
4 .. include:: <isonum.txt>
9 .. **Read this first.**
11 The text in the sections below explains how to update the release notes.
13 Use proper spelling, capitalization and punctuation in all sections.
15 Variable and config names should be quoted as fixed width text:
18 Build the docs and view the output file to ensure the changes are correct::
21 xdg-open build/doc/guides/html/rel_notes/release_22_07.html
27 .. This section should contain new features added in this release.
30 * **Add a title in the past tense with a full stop.**
32 Add a short 1-2 sentence description in the past tense.
33 The description should be enough to allow someone scanning
34 the release notes to understand the new feature.
36 If the feature adds a lot of sub-features you can use a bullet list
39 * Added feature foo to do something.
40 * Enhanced feature bar to do something else.
42 Refer to the previous release notes for examples.
44 Suggested order in release notes items:
45 * Core libs (EAL, mempool, ring, mbuf, buses)
46 * Device abstraction libs and PMDs (ordered alphabetically by vendor name)
48 - cryptodev (lib, PMDs)
49 - eventdev (lib, PMDs)
52 * Apps, Examples, Tools (if significant)
54 This section is a comment. Do not overwrite or remove it.
55 Also, make sure to start the actual text at the margin.
56 =======================================================
58 * **Added initial RISC-V architecture support.***
60 Added EAL implementation for RISC-V architecture.
61 The initial device the porting was tested on is
62 a HiFive Unmatched development board based on the SiFive Freedom U740 SoC.
63 In theory this implementation should work
64 with any ``rv64gc`` ISA compatible implementation
65 with MMU supporting a reasonable address space size (U740 uses sv39 MMU).
67 * **Added Sequence Lock.**
69 Added a new synchronization primitive: the sequence lock
70 (seqlock). A seqlock allows for low overhead, parallel reads. The
71 DPDK seqlock uses a spinlock to serialize multiple writing threads.
73 * ** Added function get random floating point number.**
75 Added the function ``rte_drand()`` to provide a pseudo-random
76 floating point number.
78 * **Added protocol based input color selection for meter.**
80 Added new functions ``rte_mtr_color_in_protocol_set()``,
81 ``rte_mtr_color_in_protocol_get()``,
82 ``rte_mtr_color_in_protocol_priority_get()``,
83 ``rte_mtr_meter_vlan_table_update()``
84 and updated ``struct rte_mtr_params`` and ``struct rte_mtr_capabilities`` to
85 support protocol based input color selection for meter.
87 * **Added Rx queue available descriptors threshold and event.**
89 Added ethdev API and corresponding driver operations to set Rx queue
90 available descriptors threshold and query for queues with reached
91 threshold when a new event ``RTE_ETH_EVENT_RX_AVAIL_THRESH`` is received.
93 * **Added telemetry for module EEPROM.**
95 Added telemetry command to dump module EEPROM.
96 Added support for module EEPROM information format defined in:
98 * SFF-8079 revision 1.7
99 * SFF-8472 revision 12.0
100 * SFF-8636 revision 2.7
102 * **Added vhost API to get the number of in-flight packets.**
104 Added an API which can get the number of in-flight packets in
105 vhost async data path without using lock.
107 * **Added vhost async dequeue API to receive packets from guest.**
109 Added vhost async dequeue API which can leverage DMA devices to
110 accelerate receiving packets from guest.
112 * **Added vhost API to get the device type of a vDPA device.**
114 Added an API which can get the device type of vDPA device.
116 * **Updated Amazon ena driver.**
118 The new driver version (v2.7.0) includes:
120 * Added fast mbuf free feature support.
121 * Added ``enable_llq`` device argument for controlling the PMD LLQ
122 (Low Latency Queue) mode.
124 * **Updated Atomic Rules' Arkville PMD.**
126 * A firmware version update to Arkville 22.07 is required.
127 * Added support for Atomic Rules PCI device IDs ``0x101a, 0x101b, 0x101c``.
128 * Added PMD support for virtual functions and vfio_pci driver.
130 * **Updated Intel iavf driver.**
132 * Added Tx QoS queue rate limitation support.
133 * Added quanta size configuration support.
134 * Added ``DEV_RX_OFFLOAD_TIMESTAMP`` support.
135 * Added Protocol Agnostic Flow Offloading support in AVF FDIR and RSS.
137 * **Updated Intel ice driver.**
139 * Added support for RSS RETA configure in DCF mode.
140 * Added support for RSS HASH configure in DCF mode.
141 * Added support for MTU configure in DCF mode.
142 * Added support for promisc configuration in DCF mode.
143 * Added support for MAC configuration in DCF mode.
144 * Added support for VLAN filter and offload configuration in DCF mode.
145 * Added Tx QoS queue / queue group rate limitation configure support.
146 * Added Tx QoS queue / queue group priority configuration support.
147 * Added Tx QoS queue weight configuration support.
149 * **Updated Intel igc driver.**
151 Added Intel Foxville I226 devices in ``igc`` driver.
152 See the doc:`../nics/igc` NIC guide for more details.
154 * **Updated Mellanox mlx5 driver.**
156 * Added support for promiscuous mode on Windows.
157 * Added support for MTU on Windows.
158 * Added matching and RSS on IPsec ESP.
160 * **Updated Netronome nfp driver.**
162 * Added support for NFP3800 NIC.
163 * Added support for firmware with NFDk.
165 * **Updated VMware vmxnet3 networking driver.**
167 * Added version 5 support.
168 * Added RETA query and RETA update support.
169 * Added version 6 support with some new features:
171 * Increased maximum MTU up to 9190;
172 * Increased maximum number of Rx and Tx queues;
173 * Removed power-of-two limitations on Rx and Tx queue size;
174 * Extended interrupt structures (required for additional queues).
176 * **Updated Wangxun ngbe driver.**
178 * Added support for yt8531s PHY.
179 * Added support for OEM subsystem vendor ID.
180 * Added autoneg on/off for external PHY SFI mode.
182 * **Updated Wangxun txgbe driver.**
184 * Added support for OEM subsystem vendor ID.
186 * **Added Elliptic Curve Diffie-Hellman (ECDH) algorithm in cryptodev.**
188 Added support for Elliptic Curve Diffie Hellman (ECDH) asymmetric
189 algorithm in cryptodev.
191 * **Updated OpenSSL crypto driver with 3.0 EVP API.**
193 Updated OpenSSL driver to support OpenSSL v3.0 EVP API.
194 Backward compatibility with OpenSSL v1.1.1 is also maintained.
196 * **Updated Marvell cnxk crypto driver.**
198 * Added AH mode support in lookaside protocol (IPsec) for CN9K & CN10K.
199 * Added AES-GMAC support in lookaside protocol (IPsec) for CN9K & CN10K.
201 * **Updated Intel QuickAssist Technology (QAT) crypto PMD.**
203 * Added support for secp384r1 elliptic curve.
205 * **Added Intel ACC101 baseband PMD.**
207 Added a new baseband PMD for Intel ACC101 device.
209 * **Added eventdev API to quiesce an event port.**
211 Added the function ``rte_event_port_quiesce()``
212 to quiesce any lcore-specific resources consumed by the event port,
213 when the lcore is no more associated with an event port.
215 * **Added support for setting queue attributes at runtime in eventdev.**
217 Added new API ``rte_event_queue_attr_set()``, to set event queue attributes
220 * **Added new queues attributes weight and affinity in eventdev.**
222 Defined new event queue attributes weight and affinity as below:
224 * ``RTE_EVENT_QUEUE_ATTR_WEIGHT``
225 * ``RTE_EVENT_QUEUE_ATTR_AFFINITY``
227 * **Added telemetry to dmadev library.**
229 Added telemetry callback functions which allow for a list of DMA devices,
230 statistics and other DMA device information to be queried.
232 * **Added scalar version of the LPM library.**
234 Added scalar implementation of ``rte_lpm_lookupx4``.
235 This is a fall-back implementation for platforms that
236 don't support vector operations.
238 * **Merged l3fwd-acl into l3fwd example.**
240 Merged l3fwd-acl code into l3fwd as l3fwd-acl contains duplicate
241 and common functions to l3fwd.
247 .. This section should contain removed items in this release. Sample format:
249 * Add a short 1-2 sentence description of the removed item
252 This section is a comment. Do not overwrite or remove it.
253 Also, make sure to start the actual text at the margin.
254 =======================================================
260 .. This section should contain API changes. Sample format:
262 * sample: Add a short 1-2 sentence description of the API change
263 which was announced in the previous releases and made in this release.
264 Start with a scope label like "ethdev:".
265 Use fixed width quotes for ``function_names`` or ``struct_names``.
268 This section is a comment. Do not overwrite or remove it.
269 Also, make sure to start the actual text at the margin.
270 =======================================================
272 * The DPDK header file ``rte_altivec.h``,
273 which is a wrapper for the PPC header file ``altivec.h``,
274 undefines the AltiVec keyword ``vector``.
275 The alternative keyword ``__vector`` should be used instead.
277 * Experimental structures ``struct rte_mtr_params``
278 and ``struct rte_mtr_capabilities`` updated to support
279 protocol based input color for meter.
285 .. This section should contain ABI changes. Sample format:
287 * sample: Add a short 1-2 sentence description of the ABI change
288 which was announced in the previous releases and made in this release.
289 Start with a scope label like "ethdev:".
290 Use fixed width quotes for ``function_names`` or ``struct_names``.
293 This section is a comment. Do not overwrite or remove it.
294 Also, make sure to start the actual text at the margin.
295 =======================================================
297 * No ABI change that would break compatibility with 21.11.
303 .. This section should contain new known issues in this release. Sample format:
305 * **Add title in present tense with full stop.**
307 Add a short 1-2 sentence description of the known issue
308 in the present tense. Add information on any known workarounds.
310 This section is a comment. Do not overwrite or remove it.
311 Also, make sure to start the actual text at the margin.
312 =======================================================
318 .. This section should contain a list of platforms that were tested
323 * <vendor> platform with <vendor> <type of devices> combinations
328 * Other relevant details...
330 This section is a comment. Do not overwrite or remove it.
331 Also, make sure to start the actual text at the margin.
332 =======================================================