xref: /dpdk/doc/guides/rel_notes/deprecation.rst (revision 2a7bb4fdf61e9edfb7adbaecb50e728b82da9e23)
1..  SPDX-License-Identifier: BSD-3-Clause
2    Copyright 2018 The DPDK contributors
3
4ABI and API Deprecation
5=======================
6
7See the :doc:`guidelines document for details of the ABI policy </contributing/versioning>`.
8API and ABI deprecation notices are to be posted here.
9
10
11Deprecation Notices
12-------------------
13
14* kvargs: The function ``rte_kvargs_process`` will get a new parameter
15  for returning key match count. It will ease handling of no-match case.
16
17* eal: both declaring and identifying devices will be streamlined in v18.11.
18  New functions will appear to query a specific port from buses, classes of
19  device and device drivers. Device declaration will be made coherent with the
20  new scheme of device identification.
21  As such, ``rte_devargs`` device representation will change.
22
23  - The enum ``rte_devtype`` was used to identify a bus and will disappear.
24  - Functions previously deprecated will change or disappear:
25
26    + ``rte_eal_devargs_type_count``
27
28* pci: Several exposed functions are misnamed.
29  The following functions are deprecated starting from v17.11 and are replaced:
30
31  - ``eal_parse_pci_BDF`` replaced by ``rte_pci_addr_parse``
32  - ``eal_parse_pci_DomBDF`` replaced by ``rte_pci_addr_parse``
33  - ``rte_eal_compare_pci_addr`` replaced by ``rte_pci_addr_cmp``
34
35* dpaa2: removal of ``rte_dpaa2_memsegs`` structure which has been replaced
36  by a pa-va search library. This structure was earlier being used for holding
37  memory segments used by dpaa2 driver for faster pa->va translation. This
38  structure would be made internal (or removed if all dependencies are cleared)
39  in future releases.
40
41* ethdev: the legacy filter API, including
42  ``rte_eth_dev_filter_supported()``, ``rte_eth_dev_filter_ctrl()`` as well
43  as filter types MACVLAN, ETHERTYPE, FLEXIBLE, SYN, NTUPLE, TUNNEL, FDIR,
44  HASH and L2_TUNNEL, is superseded by the generic flow API (rte_flow) in
45  PMDs that implement the latter.
46  Target release for removal of the legacy API will be defined once most
47  PMDs have switched to rte_flow.
48
49* ethdev: Maximum and minimum MTU values vary between hardware devices. In
50  hardware agnostic DPDK applications access to such information would allow
51  a more accurate way of validating and setting supported MTU values on a per
52  device basis rather than using a defined default for all devices. To
53  resolve this, the following members will be added to ``rte_eth_dev_info``.
54  Note: these can be added to fit a hole in the existing structure for amd64
55  but not for 32-bit, as such ABI change will occur as size of the structure
56  will increase.
57
58  - Member ``uint16_t min_mtu`` the minimum MTU allowed.
59  - Member ``uint16_t max_mtu`` the maximum MTU allowed.
60
61* crypto/aesni_mb: the minimum supported intel-ipsec-mb library version will be
62  changed from 0.49.0 to 0.52.0.
63