cryptodev: remove crypto device type enumeration
[dpdk.git] / doc / guides / rel_notes / release_17_08.rst
index eb31da2..63f5530 100644 (file)
@@ -41,6 +41,16 @@ New Features
      Also, make sure to start the actual text at the margin.
      =========================================================
 
      Also, make sure to start the actual text at the margin.
      =========================================================
 
+* **Added support for generic flow API (rte_flow) on igb NIC.**
+
+  This API provides a generic means to configure hardware to match specific
+  ingress or egress traffic, alter its behavior and query related counters
+  according to any number of user-defined rules.
+
+  * Generic flow API support for Ethernet, IPv4, UDP, TCP and
+    RAW pattern items with QUEUE actions. There are four
+    type of filter support for this feature on igb.
+
 * **Added Generic Flow API support to enic.**
 
   Flow API support for outer Ethernet, VLAN, IPv4, IPv6, UDP, TCP, SCTP, VxLAN
 * **Added Generic Flow API support to enic.**
 
   Flow API support for outer Ethernet, VLAN, IPv4, IPv6, UDP, TCP, SCTP, VxLAN
@@ -71,6 +81,58 @@ New Features
   Rx queues can be armed with an interrupt which will trigger on the
   next packet arrival.
 
   Rx queues can be armed with an interrupt which will trigger on the
   next packet arrival.
 
+* **Updated szedata2 PMD.**
+
+  Added support for firmwares with multiple Ethernet ports per physical port.
+
+* **Reorganized the symmetric crypto operation structure.**
+
+  The crypto operation (``rte_crypto_sym_op``) has been reorganized as follows:
+
+  * Removed field ``rte_crypto_sym_op_sess_type``.
+  * Replaced pointer and physical address of IV with offset from the start
+    of the crypto operation.
+  * Moved length and offset of cipher IV to ``rte_crypto_cipher_xform``.
+  * Removed Additional Authentication Data (AAD) length.
+  * Removed digest length.
+  * Removed AAD pointer and physical address from ``auth`` structure.
+  * Added ``aead`` structure, containing parameters for AEAD algorithms.
+
+* **Reorganized the crypto operation structure.**
+
+  The crypto operation (``rte_crypto_op``) has been reorganized as follows:
+
+  * Added field ``rte_crypto_op_sess_type``.
+  * Enumerations ``rte_crypto_op_status`` and ``rte_crypto_op_type``
+    have been modified to be uint8_t values.
+  * Removed the field ``opaque_data``.
+  * Pointer to ``rte_crypto_sym_op`` has been replaced with a zero length array.
+
+* **Updated cryptodev library.**
+
+  * Added AEAD algorithm specific functions and structures, so it is not
+    necessary to use a combination of cipher and authentication
+    structures anymore.
+  * Added helper functions for crypto device driver identification.
+
+* **Updated dpaa2_sec crypto PMD.**
+
+  Added support for AES-GCM and AES-CTR
+
+* **Updated the AESNI MB PMD.**
+
+  The AESNI MB PMD has been updated with additional support for:
+
+    * 12-byte IV on AES Counter Mode, apart from the previous 16-byte IV.
+
+* **Updated the AES-NI GCM PMD.**
+
+  The AES-NI GCM PMD was migrated from the ISA-L library to the Multi Buffer
+  library, as the latter library has Scatter Gather List support
+  now. The migration entailed adding additional support for:
+
+  * 192-bit key.
+
 
 Resolved Issues
 ---------------
 
 Resolved Issues
 ---------------
@@ -140,6 +202,15 @@ API Changes
    Also, make sure to start the actual text at the margin.
    =========================================================
 
    Also, make sure to start the actual text at the margin.
    =========================================================
 
+* **Reworked rte_cryptodev library.**
+
+  The rte_cryptodev library has been reworked and updated. The following changes
+  have been made to it:
+
+  * The crypto device type enumeration has been removed from cryptodev library.
+  * The function ``rte_crypto_count_devtype()`` has been removed, and replaced
+    by the new function ``rte_crypto_count_by_driver()``.
+
 
 ABI Changes
 -----------
 
 ABI Changes
 -----------
@@ -154,6 +225,25 @@ ABI Changes
    Also, make sure to start the actual text at the margin.
    =========================================================
 
    Also, make sure to start the actual text at the margin.
    =========================================================
 
+* **Reorganized the crypto operation structures.**
+
+  Some fields have been modified in the ``rte_crypto_op`` and ``rte_crypto_sym_op``
+  structures, as described in the `New Features`_ section.
+
+* **Reorganized the ``rte_crypto_sym_cipher_xform`` structure.**
+
+  * Added cipher IV length and offset parameters.
+
+* **Reorganized the ``rte_crypto_sym_auth_xform`` structure.**
+
+  * Added authentication IV length and offset parameters.
+  * Changed field size of AAD length from uint32_t to uint16_t.
+  * Changed field size of digest length from uint32_t to uint16_t.
+  * Removed AAD length.
+
+* Replaced ``dev_type`` enumeration with uint8_t ``driver_id`` in
+  ``rte_cryptodev_info``, ``rte_cryptodev`` and ``rte_cryptodev_sym_session``
+  structures.
 
 
 Shared Library Versions
 
 
 Shared Library Versions
@@ -178,7 +268,7 @@ The libraries prepended with a plus sign were incremented in this version.
      librte_bitratestats.so.1
      librte_cfgfile.so.2
      librte_cmdline.so.2
      librte_bitratestats.so.1
      librte_cfgfile.so.2
      librte_cmdline.so.2
-     librte_cryptodev.so.2
+   + librte_cryptodev.so.3
      librte_distributor.so.1
      librte_eal.so.4
      librte_ethdev.so.6
      librte_distributor.so.1
      librte_eal.so.4
      librte_ethdev.so.6