net/e1000: build on Windows
[dpdk.git] / doc / guides / rel_notes / release_21_11.rst
index 6fb3164..f77afc1 100644 (file)
@@ -75,6 +75,17 @@ New Features
     operations.
   * Added multi-process support.
 
+* **Added IDXD dmadev driver implementation.**
+
+  The IDXD dmadev driver provide device drivers for the Intel DSA devices.
+  This device driver can be used through the generic dmadev API.
+
+* **Added IOAT dmadev driver implementation.**
+
+  The Intel I/O Acceleration Technology (IOAT) dmadev driver provides a device
+  driver for Intel IOAT devices such as Crystal Beach DMA (CBDMA) on Ice Lake,
+  Skylake and Broadwell. This device driver can be used through the generic dmadev API.
+
 * **Added support to get all MAC addresses of a device.**
 
   Added ``rte_eth_macaddrs_get`` to allow user to retrieve all Ethernet
@@ -85,6 +96,17 @@ New Features
   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.
 
+* **Added L2TPv2 and PPP protocol support in flow API.**
+
+  Added flow pattern items and header formats of L2TPv2 and PPP protocol.
+
+* **Added flow flex item.**
+
+  The configurable flow flex item provides the capability to introduce
+  an arbitrary user-specified network protocol header,
+  configure the hardware accordingly, and perform match on this header
+  with desired patterns and masks.
+
 * **Added ethdev support to control delivery of Rx metadata from the HW to the PMD.**
 
   A new API, ``rte_eth_rx_metadata_negotiate()``, was added.
@@ -94,25 +116,47 @@ New Features
   * ``RTE_ETH_RX_METADATA_USER_MARK``
   * ``RTE_ETH_RX_METADATA_TUNNEL_ID``
 
+* **Added an API to get a proxy port to manage "transfer" flows.**
+
+  A new API, ``rte_flow_pick_transfer_proxy()``, was added.
+
 * **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.
 
+* **Added API to get device configuration in ethdev.**
+
+  Added an ethdev API which can help users get device configuration.
+
 * **Updated AF_XDP PMD.**
 
   * Disabled secondary process support.
 
+* **Updated Amazon ENA PMD.**
+
+  Updated the Amazon ENA PMD. The new driver version (v2.5.0) introduced
+  bug fixes and improvements, including:
+
+  * Support for the tx_free_thresh and rx_free_thresh configuration parameters.
+  * NUMA aware allocations for the queue helper structures.
+  * Watchdog's feature which is checking for missing Tx completions.
+
 * **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 e1000 emulated driver.**
+
+  * Added Intel e1000 support on Windows.
+
 * **Updated Intel iavf driver.**
 
   * Added Intel iavf support on Windows.
   * Added IPv4 and L4 (TCP/UDP/SCTP) checksum hash support in RSS flow.
+  * Added PPPoL2TPv2oUDP RSS hash based on inner IP address and TCP/UDP port.
 
 * **Updated Intel ice driver.**
 
@@ -131,6 +175,7 @@ New Features
   * Added rte_tm support.
   * Added support for Inline IPsec for CN9K event mode and CN10K
     poll mode and event mode.
+  * Added support for ingress meter for CN10K platform.
 
 * **Updated Mellanox mlx5 driver.**
 
@@ -144,6 +189,7 @@ New Features
   Updated the Solarflare ``sfc_efx`` driver with changes including:
 
   * Added port representors support on SN1000 SmartNICs
+  * Added flow API transfer proxy support
 
 * **Updated Marvell cnxk crypto PMD.**
 
@@ -214,6 +260,18 @@ New Features
   * Added tests to verify tunnel header verification in IPsec inbound.
   * Added tests to verify inner checksum.
 
+* **Revised packet capture framework.**
+
+  * New dpdk-dumpcap program that has most of the features
+    of the wireshark dumpcap utility including:
+    capture of multiple interfaces, filtering,
+    and stopping after number of bytes, packets.
+  * New library for writing pcapng packet capture files.
+  * Enhancements to the pdump library to support:
+    * Packet filter with BPF.
+    * Pcapng format with timestamps and meta-data.
+    * Fixes packet capture with stripped VLAN tags.
+
 
 Removed Items
 -------------
@@ -276,6 +334,14 @@ API Changes
   removed. Its usages have been replaced by a new function
   ``rte_kvargs_get_with_value()``.
 
+* cmdline: ``cmdline_stdin_exit()`` now frees the ``cmdline`` structure.
+  Calls to ``cmdline_free()`` after it need to be deleted from applications.
+
+* cmdline: Made ``cmdline`` structure definition hidden on Linux and FreeBSD.
+
+* cmdline: Made ``rdline`` structure definition hidden. Functions are added
+  to dynamically allocate and free it, and to access user data in callbacks.
+
 * mempool: Added ``RTE_MEMPOOL_F_NON_IO`` flag to give a hint to DPDK components
   that objects from this pool will not be used for device IO (e.g. DMA).
 
@@ -294,7 +360,24 @@ API Changes
 * net: Renamed ``s_addr`` and ``d_addr`` fields of ``rte_ether_hdr`` structure
   to ``src_addr`` and ``dst_addr``, respectively.
 
-* ethdev: Added item ``PORT_REPRESENTOR`` to flow API.
+* net: Added ``version`` and ``ihl`` bit-fields to ``struct rte_ipv4_hdr``.
+  Existing ``version_ihl`` field is kept for backward compatibility.
+
+* ethdev: Added items and actions ``PORT_REPRESENTOR``, ``REPRESENTED_PORT`` to
+  flow API.
+
+* ethdev: Deprecated items and actions ``PF``, ``VF``, ``PHY_PORT``, ``PORT_ID``.
+  Suggested items and actions ``PORT_REPRESENTOR``, ``REPRESENTED_PORT`` instead.
+
+* ethdev: Deprecated the use of attributes ``ingress`` / ``egress`` combined
+  with ``transfer``. See items ``PORT_REPRESENTOR``, ``REPRESENTED_PORT``.
+
+* ethdev: ``rte_flow_action_modify_data`` structure updated, immediate data
+  array is extended, data pointer field is explicitly added to union, the
+  action behavior is defined in more strict fashion and documentation updated.
+  The immediate value behavior has been changed, the entire immediate field
+  should be provided, and offset for immediate source bitfield is assigned
+  from destination one.
 
 * 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
@@ -320,6 +403,9 @@ API Changes
 
 * bbdev: Added device info related to data byte endianness processing.
 
+* eventdev: Moved memory used by timer adapters to hugepage. This will prevent
+  TLB misses if any and aligns to memory structure of other subsystems.
+
 
 ABI Changes
 -----------
@@ -388,6 +474,18 @@ ABI Changes
 * bbdev: Added capability related to more comprehensive CRC options,
   shifting values of the ``enum rte_bbdev_op_ldpcdec_flag_bitmasks``.
 
+* eventdev: New variables ``rx_event_buf_count`` and ``rx_event_buf_size``
+  were added in structure ``rte_event_eth_rx_adapter_stats`` to get additional
+  status.
+
+* eventdev: A new structure ``rte_event_fp_ops`` has been added which is now used
+  by the fastpath inline functions. The structures ``rte_eventdev``,
+  ``rte_eventdev_data`` have been made internal. ``rte_eventdevs[]`` can't be
+  accessed directly by user any more. This change is transparent to both
+  applications and PMDs.
+
+* eventdev: Re-arranged fields in ``rte_event_timer`` to remove holes.
+
 
 Known Issues
 ------------