bbdev: add capability for CRC16 check
[dpdk.git] / doc / guides / rel_notes / release_21_11.rst
index 68b6405..fdffc48 100644 (file)
@@ -17,8 +17,8 @@ DPDK Release 21.11
 
    Build the docs and view the output file to ensure the changes are correct::
 
-      make doc-guides-html
-      xdg-open build/doc/html/guides/rel_notes/release_21_11.html
+      ninja -C build doc
+      xdg-open build/doc/guides/html/rel_notes/release_21_11.html
 
 
 New Features
@@ -62,9 +62,44 @@ New Features
   * Added bus-level parsing of the devargs syntax.
   * Kept compatibility with the legacy syntax as parsing fallback.
 
+* **Added new RSS offload types for IPv4/L4 checksum in RSS flow.**
+
+  Added macros ETH_RSS_IPV4_CHKSUM and ETH_RSS_L4_CHKSUM, now IPv4 and
+  TCP/UDP/SCTP header checksum field can be used as input set for RSS.
+
+* **Updated af_packet ethdev driver.**
+
+  * Default VLAN strip behavior was changed. VLAN tag won't be stripped
+    unless ``DEV_RX_OFFLOAD_VLAN_STRIP`` offload is enabled.
+
+* **Updated Broadcom bnxt PMD.**
+
+  * Added flow offload support for Thor.
+  * Implement support for tunnel offload.
+  * Updated HWRM API to version 1.10.2.44
+
+* **Updated Intel iavf driver.**
+
+  * Added Intel iavf support on Windows.
+  * Added IPv4 and L4 (TCP/UDP/SCTP) checksum hash support in RSS flow.
+
+* **Updated Intel ice driver.**
+
+  * Added 1PPS out support by a devargs.
+  * Added IPv4 and L4 (TCP/UDP/SCTP) checksum hash support in RSS flow.
+  * Added DEV_RX_OFFLOAD_TIMESTAMP support.
+  * Added timesync API support under scalar path.
+
+* **Updated Intel ixgbe driver.**
+
+  * Added Intel ixgbe support on Windows.
+
 * **Updated Marvell cnxk ethdev driver.**
 
   * Added rte_flow support for dual VLAN insert and strip actions.
+  * Added rte_tm support.
+  * Added support for Inline IPsec for CN9K event mode and CN10K
+    poll mode and event mode.
 
 * **Updated Marvell cnxk crypto PMD.**
 
@@ -72,6 +107,7 @@ New Features
   * Added Transport mode support in lookaside protocol (IPsec) for CN10K.
   * Added UDP encapsulation support in lookaside protocol (IPsec) for CN10K.
   * Added support for lookaside protocol (IPsec) offload for CN9K.
+  * Added support for ZUC algorithm with 256-bit key length for CN10K.
 
 * **Added support for event crypto adapter on Marvell CN10K and CN9K.**
 
@@ -91,6 +127,22 @@ New Features
   Added command-line options to specify total number of processes and
   current process ID. Each process owns subset of Rx and Tx queues.
 
+* **Updated test-crypto-perf application with new cases.**
+
+  * Added support for asymmetric crypto throughput performance measurement.
+    Only modex is supported for now.
+
+* **Added lookaside protocol (IPsec) tests in dpdk-test.**
+
+  * Added known vector tests (AES-GCM 128, 192, 256).
+  * Added tests to verify error reporting with ICV corruption.
+  * Added tests to verify IV generation.
+  * Added tests to verify UDP encapsulation.
+  * Added tests to verify UDP encapsulation ports.
+  * Added tests to validate packets soft expiry.
+  * Added tests to validate packets hard expiry.
+  * Added tests to verify tunnel header verification in IPsec inbound.
+
 
 Removed Items
 -------------
@@ -111,6 +163,17 @@ Removed Items
   blacklist/whitelist are removed. Users must use the new
   block/allow list arguments.
 
+* ethdev: Removed the port mirroring API. A more fine-grain flow API
+  action ``RTE_FLOW_ACTION_TYPE_SAMPLE`` should be used instead.
+  The structures ``rte_eth_mirror_conf`` and ``rte_eth_vlan_mirror`` and
+  the functions ``rte_eth_mirror_rule_set`` and
+  ``rte_eth_mirror_rule_reset`` along with the associated macros
+  ``ETH_MIRROR_*`` are removed.
+
+* i40e: Removed i40evf driver.
+  iavf already became the default VF driver for i40e devices,
+  so there is no need to maintain i40evf.
+
 
 API Changes
 -----------
@@ -127,6 +190,13 @@ API Changes
    Also, make sure to start the actual text at the margin.
    =======================================================
 
+* kvargs: The experimental function ``rte_kvargs_strcmp()`` has been
+  removed. Its usages have been replaced by a new function
+  ``rte_kvargs_get_with_value()``.
+
+* net: Renamed ``s_addr`` and ``d_addr`` fields of ``rte_ether_hdr`` structure
+  to ``src_addr`` and ``dst_addr``, respectively.
+
 * cryptodev: The API rte_cryptodev_pmd_is_valid_dev is modified to
   rte_cryptodev_is_valid_dev as it can be used by the application as
   well as PMD to check whether the device is valid or not.
@@ -135,6 +205,11 @@ API Changes
   as it is for drivers only and should be private to DPDK, and not
   installed for app use.
 
+* cryptodev: A ``reserved`` byte from structure ``rte_crypto_op`` was
+  renamed to ``aux_flags`` to indicate warnings and other information from
+  the crypto/security operation. This field will be used to communicate
+  events such as soft expiry with IPsec in lookaside mode.
+
 
 ABI Changes
 -----------
@@ -151,6 +226,32 @@ ABI Changes
    Also, make sure to start the actual text at the margin.
    =======================================================
 
+* security: ``rte_security_set_pkt_metadata`` and ``rte_security_get_userdata``
+  routines used by inline outbound and inline inbound security processing were
+  made inline and enhanced to do simple 64-bit set/get for PMDs that do not
+  have much processing in PMD specific callbacks but just 64-bit set/get.
+  This avoids a per packet function pointer jump overhead for such PMDs.
+
+* security: A new option ``iv_gen_disable`` was added in structure
+  ``rte_security_ipsec_sa_options`` to disable IV generation inside PMD,
+  so that application can provide its own IV and test known test vectors.
+
+* security: A new option ``tunnel_hdr_verify`` was added in structure
+  ``rte_security_ipsec_sa_options`` to indicate whether outer header
+  verification need to be done as part of inbound IPsec processing.
+
+* security: A new option ``udp_ports_verify`` was added in structure
+  ``rte_security_ipsec_sa_options`` to indicate whether UDP ports
+  verification need to be done as part of inbound IPsec processing.
+
+* security: A new structure ``rte_security_ipsec_lifetime`` was added to
+  replace ``esn_soft_limit`` in IPsec configuration structure
+  ``rte_security_ipsec_xform`` to allow applications to configure SA soft
+  and hard expiry limits. Limits can be either in number of packets or bytes.
+
+* bbdev: Added capability related to more comprehensive CRC options,
+  shifting values of the ``enum rte_bbdev_op_ldpcdec_flag_bitmasks``.
+
 
 Known Issues
 ------------