efcb0f358465b91a47382bb4f1591f86be3d15e8
[dpdk.git] / doc / guides / rel_notes / release_21_08.rst
1 .. SPDX-License-Identifier: BSD-3-Clause
2    Copyright 2021 The DPDK contributors
3
4 .. include:: <isonum.txt>
5
6 DPDK Release 21.08
7 ==================
8
9 .. **Read this first.**
10
11    The text in the sections below explains how to update the release notes.
12
13    Use proper spelling, capitalization and punctuation in all sections.
14
15    Variable and config names should be quoted as fixed width text:
16    ``LIKE_THIS``.
17
18    Build the docs and view the output file to ensure the changes are correct::
19
20       make doc-guides-html
21       xdg-open build/doc/html/guides/rel_notes/release_21_08.html
22
23
24 New Features
25 ------------
26
27 .. This section should contain new features added in this release.
28    Sample format:
29
30    * **Add a title in the past tense with a full stop.**
31
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.
35
36      If the feature adds a lot of sub-features you can use a bullet list
37      like this:
38
39      * Added feature foo to do something.
40      * Enhanced feature bar to do something else.
41
42      Refer to the previous release notes for examples.
43
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)
47        - ethdev (lib, PMDs)
48        - cryptodev (lib, PMDs)
49        - eventdev (lib, PMDs)
50        - etc
51      * Other libs
52      * Apps, Examples, Tools (if significant)
53
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      =======================================================
57
58 * **Added auxiliary bus support.**
59
60   Auxiliary bus provides a way to split function into child-devices
61   representing sub-domains of functionality. Each auxiliary device
62   represents a part of its parent functionality.
63
64 * **Added XZ compressed firmware support.**
65
66   Using ``rte_firmware_read``, a driver can now handle XZ compressed firmware
67   in a transparent way, with EAL uncompressing using libarchive if this library
68   is available when building DPDK.
69
70 * **Updated Intel iavf driver.**
71
72   * Added Tx QoS VF queue TC mapping.
73
74 * **Updated Intel ice driver.**
75
76   * In AVX2 code, added the new RX and TX paths to use the HW offload
77     features. When the HW offload features are configured to be used, the
78     offload paths are chosen automatically. In parallel the support for HW
79     offload features was removed from the legacy AVX2 paths.
80   * Added Tx QoS TC bandwidth configuration in DCF.
81
82 * **Added support for Marvell CN10K SoC ethernet device.**
83
84   * Added net/cnxk driver which provides the support for the integrated ethernet
85     device.
86
87 * **Updated Mellanox mlx5 driver.**
88
89   * Added support for meter hierarchy.
90   * Added devargs options ``allow_duplicate_pattern``.
91
92 * **Added Wangxun ngbe PMD.**
93
94   Added a new PMD driver for Wangxun 1 Gigabit Ethernet NICs.
95   See the :doc:`../nics/ngbe` for more details.
96
97 * **Added support for Marvell CNXK crypto driver.**
98
99   * Added cnxk crypto PMD which provides support for an integrated
100     crypto driver for CN9K and CN10K series of SOCs. Support for
101     symmetric crypto algorithms is added to both the PMDs.
102   * Added support for lookaside protocol (IPsec) offload in cn10k PMD.
103   * Added support for asymmetric crypto operations in cn9k and cn10k PMD.
104
105 * **Updated Marvell OCTEON TX crypto PMD.**
106
107   Added support for crypto adapter OP_FORWARD mode.
108
109 * **Added Baseband PHY CNXK PMD.**
110
111   Added Baseband PHY PMD which allows to configure BPHY hardware block
112   comprising accelerators and DSPs specifically tailored for 5G/LTE inline
113   usecases. Configuration happens via standard rawdev enq/deq operations. See
114   the :doc:`../rawdevs/cnxk_bphy` rawdev guide for more details on this driver.
115
116 * **Added cppc_cpufreq support to Power Management library.**
117
118   Added support for cppc_cpufreq driver which works on most arm64 platforms.
119
120 * **Added multi-queue support to Ethernet PMD Power Management**
121
122   The experimental PMD power management API now supports managing
123   multiple Ethernet Rx queues per lcore.
124
125
126 Removed Items
127 -------------
128
129 .. This section should contain removed items in this release. Sample format:
130
131    * Add a short 1-2 sentence description of the removed item
132      in the past tense.
133
134    This section is a comment. Do not overwrite or remove it.
135    Also, make sure to start the actual text at the margin.
136    =======================================================
137
138
139 API Changes
140 -----------
141
142 .. This section should contain API changes. Sample format:
143
144    * sample: Add a short 1-2 sentence description of the API change
145      which was announced in the previous releases and made in this release.
146      Start with a scope label like "ethdev:".
147      Use fixed width quotes for ``function_names`` or ``struct_names``.
148      Use the past tense.
149
150    This section is a comment. Do not overwrite or remove it.
151    Also, make sure to start the actual text at the margin.
152    =======================================================
153
154 * eal: ``rte_strscpy`` sets ``rte_errno`` to ``E2BIG`` in case of string
155   truncation.
156
157 * eal: ``rte_power_monitor`` and the ``rte_power_monitor_cond`` struct changed
158   to use a callback mechanism.
159
160 * rte_power: The experimental PMD power management API is no longer considered
161   to be thread safe; all Rx queues affected by the API will now need to be
162   stopped before making any changes to the power management scheme.
163
164
165 ABI Changes
166 -----------
167
168 .. This section should contain ABI changes. Sample format:
169
170    * sample: Add a short 1-2 sentence description of the ABI change
171      which was announced in the previous releases and made in this release.
172      Start with a scope label like "ethdev:".
173      Use fixed width quotes for ``function_names`` or ``struct_names``.
174      Use the past tense.
175
176    This section is a comment. Do not overwrite or remove it.
177    Also, make sure to start the actual text at the margin.
178    =======================================================
179
180 * No ABI change that would break compatibility with 20.11.
181
182
183 Known Issues
184 ------------
185
186 .. This section should contain new known issues in this release. Sample format:
187
188    * **Add title in present tense with full stop.**
189
190      Add a short 1-2 sentence description of the known issue
191      in the present tense. Add information on any known workarounds.
192
193    This section is a comment. Do not overwrite or remove it.
194    Also, make sure to start the actual text at the margin.
195    =======================================================
196
197
198 Tested Platforms
199 ----------------
200
201 .. This section should contain a list of platforms that were tested
202    with this release.
203
204    The format is:
205
206    * <vendor> platform with <vendor> <type of devices> combinations
207
208      * List of CPU
209      * List of OS
210      * List of devices
211      * Other relevant details...
212
213    This section is a comment. Do not overwrite or remove it.
214    Also, make sure to start the actual text at the margin.
215    =======================================================