net/enic: support priorities for TCAM flows
[dpdk.git] / doc / guides / rel_notes / release_20_11.rst
index b729bdf..3faafa4 100644 (file)
@@ -55,6 +55,28 @@ New Features
      Also, make sure to start the actual text at the margin.
      =======================================================
 
+* **Updated Cisco enic driver.**
+
+  * Added support for VF representors with single-queue Tx/Rx and flow API
+  * Added support for egress PORT_ID action
+  * Added support for non-zero priorities for group 0 flows
+
+* **Extended flow-perf application.**
+
+  * Started supporting user order instead of bit mask:
+    Now the user can create any structure of rte_flow
+    using flow performance application with any order,
+    moreover the app also now starts to support inner
+    items matching as well.
+  * Added header modify actions.
+  * Added flag action.
+  * Added raw encap/decap actions.
+  * Added VXLAN encap/decap actions.
+  * Added ICMP and ICMP6 matching items.
+  * Added option to set port mask for insertion/deletion:
+    ``--portmask=N``
+    where N represents the hexadecimal bitmask of ports used.
+
 
 Removed Items
 -------------
@@ -84,10 +106,53 @@ API Changes
    Also, make sure to start the actual text at the margin.
    =======================================================
 
+* eal: The ``rte_logs`` struct and global symbol was made private
+  and is no longer part of the API.
+
+* eal: Made the ``rte_dev_event`` structure private to the EAL as no public API
+  used it.
+
+* mem: Removed the unioned field ``phys_addr`` from
+  the structures ``rte_memseg`` and ``rte_memzone``.
+  The field ``iova`` is remaining from the old unions.
+
+* mempool: Removed the unioned fields ``phys_addr`` and ``physaddr`` from
+  the structures ``rte_mempool_memhdr`` and ``rte_mempool_objhdr``.
+  The field ``iova`` is remaining from the old unions.
+  The flag name ``MEMPOOL_F_NO_PHYS_CONTIG`` is removed,
+  while the aliased flag ``MEMPOOL_F_NO_IOVA_CONTIG`` is kept.
+
+* mbuf: Removed the functions ``rte_mbuf_data_dma_addr*``
+  and the macros ``rte_pktmbuf_mtophys*``.
+  The same functionality is still available with the functions and macros
+  having ``iova`` in their names instead of ``dma_addr`` or ``mtophys``.
+
+* mbuf: Removed the unioned field ``buf_physaddr`` from ``rte_mbuf``.
+  The field ``buf_iova`` is remaining from the old union.
+
 * mbuf: Removed the unioned field ``refcnt_atomic`` from
   the structures ``rte_mbuf`` and ``rte_mbuf_ext_shared_info``.
   The field ``refcnt`` is remaining from the old unions.
 
+* pci: Removed the ``rte_kernel_driver`` enum defined in rte_dev.h and
+  replaced with a private enum in the PCI subsystem.
+
+* pci: Removed the PCI resources map API from the public API
+  (``pci_map_resource`` and ``pci_unmap_resource``) and moved it to the
+  PCI bus driver along with the PCI resources lists and associated structures
+  (``pci_map``, ``pci_msix_table``, ``mapped_pci_resource`` and
+  ``mapped_pci_res_list``).
+
+* ethdev: Removed the ``kdrv`` field in the ethdev ``rte_eth_dev_data``
+  structure as it gave no useful abstracted information to the applications.
+
+* ethdev: ``rte_eth_rx_descriptor_done()`` API has been deprecated.
+
+* Renamed internal ethdev APIs:
+
+  * ``_rte_eth_dev_callback_process()`` -> ``rte_eth_dev_callback_process()``
+  * ``_rte_eth_dev_reset`` -> ``rte_eth_dev_internal_reset()``
+
 * 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()``,
@@ -97,6 +162,8 @@ API Changes
   and the function ``rte_rawdev_queue_conf_get()``
   from ``void`` to ``int`` allowing the return of error codes from drivers.
 
+* bpf: ``RTE_BPF_XTYPE_NUM`` has been dropped from ``rte_bpf_xtype``.
+
 
 ABI Changes
 -----------
@@ -113,6 +180,21 @@ ABI Changes
    Also, make sure to start the actual text at the margin.
    =======================================================
 
+* ``ethdev`` changes
+
+  * Following device operation function pointers moved
+    from ``struct eth_dev_ops`` to ``struct rte_eth_dev``:
+
+    * ``eth_rx_queue_count_t       rx_queue_count;``
+    * ``eth_rx_descriptor_done_t   rx_descriptor_done;``
+    * ``eth_rx_descriptor_status_t rx_descriptor_status;``
+    * ``eth_tx_descriptor_status_t tx_descriptor_status;``
+
+  * ``struct eth_dev_ops`` is no more accessible by applications,
+    which was already internal data structure.
+
+  * ``ethdev`` internal functions are marked with ``__rte_internal`` tag.
+
 
 Known Issues
 ------------