net/i40e: use write combining store for tail updates
[dpdk.git] / doc / guides / rel_notes / release_20_11.rst
index c70a892..d9edbcd 100644 (file)
@@ -55,11 +55,25 @@ New Features
      Also, make sure to start the actual text at the margin.
      =======================================================
 
+* **Added write combining store APIs.**
+
+  Added ``rte_write32_wc`` and ``rte_write32_wc_relaxed`` APIs
+  that enable write combining stores (depending on architecture).
+  The functions are provided as a generic stubs and
+  x86 specific implementation.
+
+* **Added the FEC API, for a generic FEC query and config.**
+
+  Added the FEC API which provides functions for query FEC capabilities and
+  current FEC mode from device. Also, API for configuring FEC mode is also provided.
+
 * **Updated Broadcom bnxt driver.**
 
   Updated the Broadcom bnxt driver with new features and improvements, including:
 
   * Added support for 200G PAM4 link speed.
+  * Added support for RSS hash level selection.
+  * Updated HWRM structures to 1.10.1.70 version.
 
 * **Updated Cisco enic driver.**
 
@@ -68,6 +82,36 @@ New Features
   * Added support for non-zero priorities for group 0 flows
   * Added support for VXLAN decap combined with VLAN pop
 
+* **Added hns3 FEC PMD, for supporting query and config FEC mode.**
+
+  Added the FEC PMD which provides functions for query FEC capabilities and
+  current FEC mode from device. Also, PMD for configuring FEC mode is also provided.
+
+* **Updated Solarflare network PMD.**
+
+  Updated the Solarflare ``sfc_efx`` driver with changes including:
+
+  * Added SR-IOV PF support
+
+* **Updated Virtio driver.**
+
+  * Added support for Vhost-vDPA backend to Virtio-user PMD.
+  * Changed default link speed to unknown.
+  * Added support for 200G link speed.
+
+* **Updated Intel i40e driver.**
+
+  Updated the Intel i40e driver to use write combining stores.
+
+* **Added Ice Lake (Gen4) support for Intel NTB.**
+
+  Added NTB device support (4th generation) for Intel Ice Lake platform.
+
+* **Added UDP/IPv4 GRO support for VxLAN and non-VxLAN packets.**
+
+  For VxLAN packets, added inner UDP/IPv4 support.
+  For non-VxLAN packets, added UDP/IPv4 support.
+
 * **Extended flow-perf application.**
 
   * Started supporting user order instead of bit mask:
@@ -84,6 +128,26 @@ New Features
     ``--portmask=N``
     where N represents the hexadecimal bitmask of ports used.
 
+* **Updated ioat rawdev driver**
+
+  The ioat rawdev driver has been updated and enhanced. Changes include:
+
+  * Added support for Intel\ |reg| Data Streaming Accelerator hardware.
+    For more information, see https://01.org/blogs/2019/introducing-intel-data-streaming-accelerator
+  * Added support for the fill operation via the API ``rte_ioat_enqueue_fill()``,
+    where the hardware fills an area of memory with a repeating pattern.
+  * Added a per-device configuration flag to disable management
+    of user-provided completion handles.
+  * Renamed the ``rte_ioat_do_copies()`` API to ``rte_ioat_perform_ops()``,
+    and renamed the ``rte_ioat_completed_copies()`` API to ``rte_ioat_completed_ops()``
+    to better reflect the APIs' purposes, and remove the implication that
+    they are limited to copy operations only.
+    [Note: The old API is still provided but marked as deprecated in the code]
+  * Added a new API ``rte_ioat_fence()`` to add a fence between operations.
+    This API replaces the ``fence`` flag parameter in the ``rte_ioat_enqueue_copies()`` function,
+    and is clearer as there is no ambiguity as to whether the flag should be
+    set on the last operation before the fence or the first operation after it.
+
 * **Updated the pipeline library for alignment with the P4 language.**
 
   Added new Software Switch (SWX) pipeline type that provides more
@@ -108,6 +172,12 @@ Removed Items
    Also, make sure to start the actual text at the margin.
    =======================================================
 
+* vhost: Dequeue zero-copy support has been removed.
+
+* kernel: The module ``igb_uio`` has been moved to the git repository
+  ``dpdk-kmods`` in a new directory ``linux/igb_uio``.
+
+* Removed Python 2 support since it was EOL'd in January 2020.
 
 API Changes
 -----------
@@ -178,6 +248,13 @@ API Changes
   * ``_rte_eth_dev_callback_process()`` -> ``rte_eth_dev_callback_process()``
   * ``_rte_eth_dev_reset`` -> ``rte_eth_dev_internal_reset()``
 
+* ethdev: Modified field type of ``base`` and ``nb_queue`` in struct
+  ``rte_eth_dcb_tc_queue_mapping`` from ``uint8_t`` to ``uint16_t``.
+  As the data of ``uint8_t`` will be truncated when queue number under
+  a TC is greater than 256.
+
+* vhost: Moved vDPA APIs from experimental to stable.
+
 * rawdev: Added a structure size parameter to the functions
   ``rte_rawdev_queue_setup()``, ``rte_rawdev_queue_conf_get()``,
   ``rte_rawdev_info_get()`` and ``rte_rawdev_configure()``,
@@ -187,6 +264,20 @@ API Changes
   and the function ``rte_rawdev_queue_conf_get()``
   from ``void`` to ``int`` allowing the return of error codes from drivers.
 
+* rawdev: The running of a drivers ``selftest()`` function can now be done
+  using the ``rawdev_autotest`` command in the ``dpdk-test`` binary. This
+  command now calls the self-test function for each rawdev found on the
+  system, and does not require a specific command per device type.
+  Following this change, the ``ioat_rawdev_autotest`` command has been
+  removed as no longer needed.
+
+* raw/ioat: As noted above, the ``rte_ioat_do_copies()`` and
+  ``rte_ioat_completed_copies()`` functions have been renamed to
+  ``rte_ioat_perform_ops()`` and ``rte_ioat_completed_ops()`` respectively.
+
+* stack: the experimental tag has been dropped from the stack library, and its
+  interfaces are considered stable as of DPDK 20.11.
+
 * bpf: ``RTE_BPF_XTYPE_NUM`` has been dropped from ``rte_bpf_xtype``.