On 15/05/2020 10:47, Hemant Agrawal wrote:
> This patch moves the internal symbols to INTERNAL sections
> so that any change in them is not reported as ABI breakage.
>
> Signed-off-by: Hemant Agrawal <hemant.agra...@nxp.com>
> ---
> devtools/libabigail.abignore | 3 +++
> drivers/common/dpaax/dpaa_of.h | 15 +++++++++++++++
> drivers/common/dpaax/dpaax_iova_table.h | 4 ++++
> drivers/common/dpaax/rte_common_dpaax_version.map | 6 ++++--
> 4 files changed, 26 insertions(+), 2 deletions(-)
>
> diff --git a/devtools/libabigail.abignore b/devtools/libabigail.abignore
> index c9ee73cb3c..b1488d5549 100644
> --- a/devtools/libabigail.abignore
> +++ b/devtools/libabigail.abignore
> @@ -48,3 +48,6 @@
> changed_enumerators = RTE_CRYPTO_AEAD_LIST_END
> [suppress_variable]
> name = rte_crypto_aead_algorithm_strings
> +; Ignore moving DPAAx stable functions to INTERNAL tag
> +[suppress_file]
> + file_name_regexp = ^librte_common_dpaax\.
> diff --git a/drivers/common/dpaax/dpaa_of.h b/drivers/common/dpaax/dpaa_of.h
> index 960b421766..38d91a1afe 100644
> --- a/drivers/common/dpaax/dpaa_of.h
> +++ b/drivers/common/dpaax/dpaa_of.h
> @@ -24,6 +24,7 @@
> #include <limits.h>
> #include <rte_common.h>
> #include <dpaa_list.h>
> +#include <rte_compat.h>
>
> #ifndef OF_INIT_DEFAULT_PATH
> #define OF_INIT_DEFAULT_PATH "/proc/device-tree"
> @@ -102,6 +103,7 @@ struct dt_file {
> uint64_t buf[OF_FILE_BUF_MAX >> 3];
> };
>
> +__rte_internal
> const struct device_node *of_find_compatible_node(
> const struct device_node *from,
> const char *type __rte_unused,
> @@ -113,32 +115,44 @@ const struct device_node *of_find_compatible_node(
> dev_node != NULL; \
> dev_node = of_find_compatible_node(dev_node, type, compatible))
>
> +__rte_internal
> const void *of_get_property(const struct device_node *from, const char *name,
> size_t *lenp) __attribute__((nonnull(2)));
> +__rte_internal
> bool of_device_is_available(const struct device_node *dev_node);
>
> +
> +__rte_internal
> const struct device_node *of_find_node_by_phandle(uint64_t ph);
>
> +__rte_internal
> const struct device_node *of_get_parent(const struct device_node *dev_node);
>
> +__rte_internal
> const struct device_node *of_get_next_child(const struct device_node
> *dev_node,
> const struct device_node *prev);
>
> +__rte_internal
> const void *of_get_mac_address(const struct device_node *np);
>
> #define for_each_child_node(parent, child) \
> for (child = of_get_next_child(parent, NULL); child != NULL; \
> child = of_get_next_child(parent, child))
>
> +
> +__rte_internal
> uint32_t of_n_addr_cells(const struct device_node *dev_node);
> uint32_t of_n_size_cells(const struct device_node *dev_node);
>
> +__rte_internal
> const uint32_t *of_get_address(const struct device_node *dev_node, size_t
> idx,
> uint64_t *size, uint32_t *flags);
>
> +__rte_internal
> uint64_t of_translate_address(const struct device_node *dev_node,
> const uint32_t *addr) __attribute__((nonnull));
>
> +__rte_internal
> bool of_device_is_compatible(const struct device_node *dev_node,
> const char *compatible);
>
> @@ -146,6 +160,7 @@ bool of_device_is_compatible(const struct device_node
> *dev_node,
> * subsystem that is device-tree-dependent. Eg. Qman/Bman, config layers,
> etc.
> * The path should usually be "/proc/device-tree".
> */
> +__rte_internal
> int of_init_path(const char *dt_path);
>
> /* of_finish() allows a controlled tear-down of the device-tree layer, eg.
> if a
> diff --git a/drivers/common/dpaax/dpaax_iova_table.h
> b/drivers/common/dpaax/dpaax_iova_table.h
> index fc3b9e7a8f..230fba8ba0 100644
> --- a/drivers/common/dpaax/dpaax_iova_table.h
> +++ b/drivers/common/dpaax/dpaax_iova_table.h
> @@ -61,9 +61,13 @@ extern struct dpaax_iova_table *dpaax_iova_table_p;
> #define DPAAX_MEM_SPLIT_MASK_OFF (DPAAX_MEM_SPLIT - 1) /**< Offset */
>
> /* APIs exposed */
> +__rte_internal
> int dpaax_iova_table_populate(void);
> +__rte_internal
> void dpaax_iova_table_depopulate(void);
> +__rte_internal
> int dpaax_iova_table_update(phys_addr_t paddr, void *vaddr, size_t length);
> +__rte_internal
> void dpaax_iova_table_dump(void);
>
> static inline void *dpaax_iova_table_get_va(phys_addr_t paddr) __rte_hot;
> diff --git a/drivers/common/dpaax/rte_common_dpaax_version.map
> b/drivers/common/dpaax/rte_common_dpaax_version.map
> index f72eba761d..14b507ad13 100644
> --- a/drivers/common/dpaax/rte_common_dpaax_version.map
> +++ b/drivers/common/dpaax/rte_common_dpaax_version.map
> @@ -1,4 +1,8 @@
> DPDK_20.0 {
> + local: *;
> +};
> +
> +INTERNAL {
you may need to rebase.
rte_common_dpaax_version.map already has an INTERNAL section.
> global:
>
> dpaax_iova_table_depopulate;
> @@ -18,6 +22,4 @@ DPDK_20.0 {
> of_init_path;
> of_n_addr_cells;
> of_translate_address;
> -
> - local: *;
> };
>