From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 0F091A0093; Tue, 19 May 2020 12:00:59 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id A65E61D5D7; Tue, 19 May 2020 12:00:58 +0200 (CEST) Received: from relay0253.mxlogin.com (relay0253.mxlogin.com [199.181.239.253]) by dpdk.org (Postfix) with ESMTP id D30A51D5D0 for ; Tue, 19 May 2020 12:00:56 +0200 (CEST) Received: from filter004.mxroute.com ([149.28.56.236] 149.28.56.236.vultr.com) (Authenticated sender: mN4UYu2MZsgR) by relay0253.mxlogin.com (ZoneMTA) with ESMTPSA id 1722c60f5bb000e6c4.001 for (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES128-GCM-SHA256); Tue, 19 May 2020 10:00:51 +0000 X-Zone-Loop: fc89846318e6150822f76e35e7921a3aa726c4481e44 X-Originating-IP: [149.28.56.236] Received: from galaxy.mxroute.com (unknown [23.92.70.113]) by filter004.mxroute.com (Postfix) with ESMTPS id 20D903EA0D; Tue, 19 May 2020 10:00:49 +0000 (UTC) Received: from [192.198.151.44] by galaxy.mxroute.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.91) (envelope-from ) id 1jaybU-0001Br-Q9; Tue, 19 May 2020 05:32:05 -0400 To: Hemant Agrawal , dev@dpdk.org, david.marchand@redhat.com References: <20200514132533.13752-1-hemant.agrawal@nxp.com> <20200515094752.28490-1-hemant.agrawal@nxp.com> <20200515094752.28490-3-hemant.agrawal@nxp.com> From: Ray Kinsella Autocrypt: addr=mdr@ashroe.eu; keydata= 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 Message-ID: <17001555-643b-3d2e-bca1-5f83f9a6f48c@ashroe.eu> Date: Tue, 19 May 2020 11:00:41 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0 MIME-Version: 1.0 In-Reply-To: <20200515094752.28490-3-hemant.agrawal@nxp.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-AuthUser: mdr@ashroe.eu Subject: Re: [dpdk-dev] [PATCH v8 02/13] bus/fslmc: move internal symbols into INTERNAL section X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 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. > > This patch also removes two symbols, which were not used > anywhere else i.e. rte_fslmc_vfio_dmamap & dpaa2_get_qbman_swp > > Signed-off-by: Hemant Agrawal > --- > devtools/libabigail.abignore | 2 + > drivers/bus/fslmc/fslmc_vfio.h | 5 +++ > drivers/bus/fslmc/mc/fsl_dpbp.h | 7 ++++ > drivers/bus/fslmc/mc/fsl_dpci.h | 3 ++ > drivers/bus/fslmc/mc/fsl_dpcon.h | 2 + > drivers/bus/fslmc/mc/fsl_dpdmai.h | 10 +++++ > drivers/bus/fslmc/mc/fsl_dpio.h | 11 +++++ > drivers/bus/fslmc/mc/fsl_dpmng.h | 4 ++ > drivers/bus/fslmc/mc/fsl_mc_cmd.h | 2 + > drivers/bus/fslmc/portal/dpaa2_hw_dpio.h | 5 +++ > drivers/bus/fslmc/portal/dpaa2_hw_pvt.h | 8 ++++ > .../bus/fslmc/qbman/include/fsl_qbman_debug.h | 8 ++++ > .../fslmc/qbman/include/fsl_qbman_portal.h | 42 +++++++++++++++++++ > drivers/bus/fslmc/rte_bus_fslmc_version.map | 20 ++++----- > drivers/bus/fslmc/rte_fslmc.h | 4 ++ > 15 files changed, 123 insertions(+), 10 deletions(-) > > diff --git a/devtools/libabigail.abignore b/devtools/libabigail.abignore > index b1488d5549..877c6d5be8 100644 > --- a/devtools/libabigail.abignore > +++ b/devtools/libabigail.abignore > @@ -51,3 +51,5 @@ > ; Ignore moving DPAAx stable functions to INTERNAL tag > [suppress_file] > file_name_regexp = ^librte_common_dpaax\. > +[suppress_file] > + file_name_regexp = ^librte_bus_fslmc\. > diff --git a/drivers/bus/fslmc/fslmc_vfio.h b/drivers/bus/fslmc/fslmc_vfio.h > index c988121294..bc7c6f62d7 100644 > --- a/drivers/bus/fslmc/fslmc_vfio.h > +++ b/drivers/bus/fslmc/fslmc_vfio.h > @@ -8,6 +8,7 @@ > #ifndef _FSLMC_VFIO_H_ > #define _FSLMC_VFIO_H_ > > +#include > #include > > /* Pathname of FSL-MC devices directory. */ > @@ -41,7 +42,11 @@ typedef struct fslmc_vfio_container { > } fslmc_vfio_container; > > extern char *fslmc_container; > + > +__rte_internal > int rte_dpaa2_intr_enable(struct rte_intr_handle *intr_handle, int index); > + > +__rte_internal > int rte_dpaa2_intr_disable(struct rte_intr_handle *intr_handle, int index); > > int rte_dpaa2_vfio_setup_intr(struct rte_intr_handle *intr_handle, > diff --git a/drivers/bus/fslmc/mc/fsl_dpbp.h b/drivers/bus/fslmc/mc/fsl_dpbp.h > index 9d405b42c4..0d590a2647 100644 > --- a/drivers/bus/fslmc/mc/fsl_dpbp.h > +++ b/drivers/bus/fslmc/mc/fsl_dpbp.h > @@ -7,6 +7,7 @@ > #ifndef __FSL_DPBP_H > #define __FSL_DPBP_H > > +#include > /* > * Data Path Buffer Pool API > * Contains initialization APIs and runtime control APIs for DPBP > @@ -14,6 +15,7 @@ > > struct fsl_mc_io; > > +__rte_internal > int dpbp_open(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > int dpbp_id, > @@ -42,10 +44,12 @@ int dpbp_destroy(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint32_t obj_id); > > +__rte_internal > int dpbp_enable(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token); > > +__rte_internal > int dpbp_disable(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token); > @@ -55,6 +59,7 @@ int dpbp_is_enabled(struct fsl_mc_io *mc_io, > uint16_t token, > int *en); > > +__rte_internal > int dpbp_reset(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token); > @@ -70,6 +75,7 @@ struct dpbp_attr { > uint16_t bpid; > }; > > +__rte_internal > int dpbp_get_attributes(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token, > @@ -88,6 +94,7 @@ int dpbp_get_api_version(struct fsl_mc_io *mc_io, > uint16_t *major_ver, > uint16_t *minor_ver); > > +__rte_internal > int dpbp_get_num_free_bufs(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token, > diff --git a/drivers/bus/fslmc/mc/fsl_dpci.h b/drivers/bus/fslmc/mc/fsl_dpci.h > index a0ee5bfe69..81fd3438aa 100644 > --- a/drivers/bus/fslmc/mc/fsl_dpci.h > +++ b/drivers/bus/fslmc/mc/fsl_dpci.h > @@ -181,6 +181,7 @@ struct dpci_rx_queue_cfg { > int order_preservation_en; > }; > > +__rte_internal > int dpci_set_rx_queue(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token, > @@ -228,6 +229,7 @@ int dpci_get_api_version(struct fsl_mc_io *mc_io, > uint16_t *major_ver, > uint16_t *minor_ver); > > +__rte_internal > int dpci_set_opr(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token, > @@ -235,6 +237,7 @@ int dpci_set_opr(struct fsl_mc_io *mc_io, > uint8_t options, > struct opr_cfg *cfg); > > +__rte_internal > int dpci_get_opr(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token, > diff --git a/drivers/bus/fslmc/mc/fsl_dpcon.h b/drivers/bus/fslmc/mc/fsl_dpcon.h > index af81d51195..7caa6c68a1 100644 > --- a/drivers/bus/fslmc/mc/fsl_dpcon.h > +++ b/drivers/bus/fslmc/mc/fsl_dpcon.h > @@ -20,6 +20,7 @@ struct fsl_mc_io; > */ > #define DPCON_INVALID_DPIO_ID (int)(-1) > > +__rte_internal > int dpcon_open(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > int dpcon_id, > @@ -77,6 +78,7 @@ struct dpcon_attr { > uint8_t num_priorities; > }; > > +__rte_internal > int dpcon_get_attributes(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token, > diff --git a/drivers/bus/fslmc/mc/fsl_dpdmai.h b/drivers/bus/fslmc/mc/fsl_dpdmai.h > index 40469cc139..19328c00a0 100644 > --- a/drivers/bus/fslmc/mc/fsl_dpdmai.h > +++ b/drivers/bus/fslmc/mc/fsl_dpdmai.h > @@ -5,6 +5,8 @@ > #ifndef __FSL_DPDMAI_H > #define __FSL_DPDMAI_H > > +#include > + > struct fsl_mc_io; > > /* Data Path DMA Interface API > @@ -23,11 +25,13 @@ struct fsl_mc_io; > */ > #define DPDMAI_ALL_QUEUES (uint8_t)(-1) > > +__rte_internal > int dpdmai_open(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > int dpdmai_id, > uint16_t *token); > > +__rte_internal > int dpdmai_close(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token); > @@ -54,10 +58,12 @@ int dpdmai_destroy(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint32_t object_id); > > +__rte_internal > int dpdmai_enable(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token); > > +__rte_internal > int dpdmai_disable(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token); > @@ -82,6 +88,7 @@ struct dpdmai_attr { > uint8_t num_of_queues; > }; > > +__rte_internal > int dpdmai_get_attributes(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token, > @@ -148,6 +155,7 @@ struct dpdmai_rx_queue_cfg { > > }; > > +__rte_internal > int dpdmai_set_rx_queue(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token, > @@ -168,6 +176,7 @@ struct dpdmai_rx_queue_attr { > uint32_t fqid; > }; > > +__rte_internal > int dpdmai_get_rx_queue(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token, > @@ -184,6 +193,7 @@ struct dpdmai_tx_queue_attr { > uint32_t fqid; > }; > > +__rte_internal > int dpdmai_get_tx_queue(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token, > diff --git a/drivers/bus/fslmc/mc/fsl_dpio.h b/drivers/bus/fslmc/mc/fsl_dpio.h > index 3158f53191..c2db76bdf8 100644 > --- a/drivers/bus/fslmc/mc/fsl_dpio.h > +++ b/drivers/bus/fslmc/mc/fsl_dpio.h > @@ -7,17 +7,21 @@ > #ifndef __FSL_DPIO_H > #define __FSL_DPIO_H > > +#include > + > /* Data Path I/O Portal API > * Contains initialization APIs and runtime control APIs for DPIO > */ > > struct fsl_mc_io; > > +__rte_internal > int dpio_open(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > int dpio_id, > uint16_t *token); > > +__rte_internal > int dpio_close(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token); > @@ -57,10 +61,12 @@ int dpio_destroy(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint32_t object_id); > > +__rte_internal > int dpio_enable(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token); > > +__rte_internal > int dpio_disable(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token); > @@ -70,10 +76,12 @@ int dpio_is_enabled(struct fsl_mc_io *mc_io, > uint16_t token, > int *en); > > +__rte_internal > int dpio_reset(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token); > > +__rte_internal > int dpio_set_stashing_destination(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token, > @@ -84,12 +92,14 @@ int dpio_get_stashing_destination(struct fsl_mc_io *mc_io, > uint16_t token, > uint8_t *sdest); > > +__rte_internal > int dpio_add_static_dequeue_channel(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token, > int dpcon_id, > uint8_t *channel_index); > > +__rte_internal > int dpio_remove_static_dequeue_channel(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token, > @@ -119,6 +129,7 @@ struct dpio_attr { > uint32_t clk; > }; > > +__rte_internal > int dpio_get_attributes(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > uint16_t token, > diff --git a/drivers/bus/fslmc/mc/fsl_dpmng.h b/drivers/bus/fslmc/mc/fsl_dpmng.h > index 36c387af27..8764ceaed9 100644 > --- a/drivers/bus/fslmc/mc/fsl_dpmng.h > +++ b/drivers/bus/fslmc/mc/fsl_dpmng.h > @@ -7,6 +7,8 @@ > #ifndef __FSL_DPMNG_H > #define __FSL_DPMNG_H > > +#include > + > /* > * Management Complex General API > * Contains general API for the Management Complex firmware > @@ -34,6 +36,7 @@ struct mc_version { > uint32_t revision; > }; > > +__rte_internal > int mc_get_version(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > struct mc_version *mc_ver_info); > @@ -48,6 +51,7 @@ struct mc_soc_version { > uint32_t pvr; > }; > > +__rte_internal > int mc_get_soc_version(struct fsl_mc_io *mc_io, > uint32_t cmd_flags, > struct mc_soc_version *mc_platform_info); > diff --git a/drivers/bus/fslmc/mc/fsl_mc_cmd.h b/drivers/bus/fslmc/mc/fsl_mc_cmd.h > index ac919610cf..7c0ca6b73a 100644 > --- a/drivers/bus/fslmc/mc/fsl_mc_cmd.h > +++ b/drivers/bus/fslmc/mc/fsl_mc_cmd.h > @@ -7,6 +7,7 @@ > #ifndef __FSL_MC_CMD_H > #define __FSL_MC_CMD_H > > +#include > #include > #include > > @@ -80,6 +81,7 @@ enum mc_cmd_status { > > #define MC_CMD_HDR_FLAGS_MASK 0xFF00FF00 > > +__rte_internal > int mc_send_command(struct fsl_mc_io *mc_io, struct mc_command *cmd); > > static inline uint64_t mc_encode_cmd_header(uint16_t cmd_id, > diff --git a/drivers/bus/fslmc/portal/dpaa2_hw_dpio.h b/drivers/bus/fslmc/portal/dpaa2_hw_dpio.h > index 2829c93806..7c5966241a 100644 > --- a/drivers/bus/fslmc/portal/dpaa2_hw_dpio.h > +++ b/drivers/bus/fslmc/portal/dpaa2_hw_dpio.h > @@ -36,20 +36,25 @@ extern uint8_t dpaa2_eqcr_size; > extern struct dpaa2_io_portal_t dpaa2_io_portal[RTE_MAX_LCORE]; > > /* Affine a DPIO portal to current processing thread */ > +__rte_internal > int dpaa2_affine_qbman_swp(void); > > /* Affine additional DPIO portal to current crypto processing thread */ > +__rte_internal > int dpaa2_affine_qbman_ethrx_swp(void); > > /* allocate memory for FQ - dq storage */ > +__rte_internal > int > dpaa2_alloc_dq_storage(struct queue_storage_info_t *q_storage); > > /* free memory for FQ- dq storage */ > +__rte_internal > void > dpaa2_free_dq_storage(struct queue_storage_info_t *q_storage); > > /* free the enqueue response descriptors */ > +__rte_internal > uint32_t > dpaa2_free_eq_descriptors(void); > > diff --git a/drivers/bus/fslmc/portal/dpaa2_hw_pvt.h b/drivers/bus/fslmc/portal/dpaa2_hw_pvt.h > index 368fe7c688..33b191f823 100644 > --- a/drivers/bus/fslmc/portal/dpaa2_hw_pvt.h > +++ b/drivers/bus/fslmc/portal/dpaa2_hw_pvt.h > @@ -426,11 +426,19 @@ void set_swp_active_dqs(uint16_t dpio_index, struct qbman_result *dqs) > { > rte_global_active_dqs_list[dpio_index].global_active_dqs = dqs; > } > +__rte_internal > struct dpaa2_dpbp_dev *dpaa2_alloc_dpbp_dev(void); > + > +__rte_internal > void dpaa2_free_dpbp_dev(struct dpaa2_dpbp_dev *dpbp); > + > +__rte_internal > int dpaa2_dpbp_supported(void); > > +__rte_internal > struct dpaa2_dpci_dev *rte_dpaa2_alloc_dpci_dev(void); > + > +__rte_internal > void rte_dpaa2_free_dpci_dev(struct dpaa2_dpci_dev *dpci); > > #endif > diff --git a/drivers/bus/fslmc/qbman/include/fsl_qbman_debug.h b/drivers/bus/fslmc/qbman/include/fsl_qbman_debug.h > index e010b1b6ae..f0c2f9fcb3 100644 > --- a/drivers/bus/fslmc/qbman/include/fsl_qbman_debug.h > +++ b/drivers/bus/fslmc/qbman/include/fsl_qbman_debug.h > @@ -1,6 +1,10 @@ > /* SPDX-License-Identifier: BSD-3-Clause > * Copyright (C) 2015 Freescale Semiconductor, Inc. > */ > +#ifndef _FSL_QBMAN_DEBUG_H > +#define _FSL_QBMAN_DEBUG_H > + > +#include > > struct qbman_swp; > > @@ -24,7 +28,11 @@ uint8_t verb; > uint8_t reserved2[29]; > }; > > +__rte_internal > int qbman_fq_query_state(struct qbman_swp *s, uint32_t fqid, > struct qbman_fq_query_np_rslt *r); > + > +__rte_internal > uint32_t qbman_fq_state_frame_count(const struct qbman_fq_query_np_rslt *r); > uint32_t qbman_fq_state_byte_count(const struct qbman_fq_query_np_rslt *r); > +#endif > diff --git a/drivers/bus/fslmc/qbman/include/fsl_qbman_portal.h b/drivers/bus/fslmc/qbman/include/fsl_qbman_portal.h > index 88f0a99686..f820077d2b 100644 > --- a/drivers/bus/fslmc/qbman/include/fsl_qbman_portal.h > +++ b/drivers/bus/fslmc/qbman/include/fsl_qbman_portal.h > @@ -7,6 +7,7 @@ > #ifndef _FSL_QBMAN_PORTAL_H > #define _FSL_QBMAN_PORTAL_H > > +#include > #include > > #define SVR_LS1080A 0x87030000 > @@ -117,6 +118,7 @@ uint32_t qbman_swp_interrupt_read_status(struct qbman_swp *p); > * @p: the given software portal object. > * @mask: The value to set in SWP_ISR register. > */ > +__rte_internal > void qbman_swp_interrupt_clear_status(struct qbman_swp *p, uint32_t mask); > > /** > @@ -286,6 +288,7 @@ void qbman_swp_push_get(struct qbman_swp *s, uint8_t channel_idx, int *enabled); > * rather by specifying the index (from 0 to 15) that has been mapped to the > * desired channel. > */ > +__rte_internal > void qbman_swp_push_set(struct qbman_swp *s, uint8_t channel_idx, int enable); > > /* ------------------- */ > @@ -325,6 +328,7 @@ enum qbman_pull_type_e { > * default/starting state. > * @d: the pull dequeue descriptor to be cleared. > */ > +__rte_internal > void qbman_pull_desc_clear(struct qbman_pull_desc *d); > > /** > @@ -340,6 +344,7 @@ void qbman_pull_desc_clear(struct qbman_pull_desc *d); > * the caller provides in 'storage_phys'), and 'stash' controls whether or not > * those writes to main-memory express a cache-warming attribute. > */ > +__rte_internal > void qbman_pull_desc_set_storage(struct qbman_pull_desc *d, > struct qbman_result *storage, > uint64_t storage_phys, > @@ -349,6 +354,7 @@ void qbman_pull_desc_set_storage(struct qbman_pull_desc *d, > * @d: the pull dequeue descriptor to be set. > * @numframes: number of frames to be set, must be between 1 and 16, inclusive. > */ > +__rte_internal > void qbman_pull_desc_set_numframes(struct qbman_pull_desc *d, > uint8_t numframes); > /** > @@ -372,6 +378,7 @@ void qbman_pull_desc_set_token(struct qbman_pull_desc *d, uint8_t token); > * qbman_pull_desc_set_fq() - Set fqid from which the dequeue command dequeues. > * @fqid: the frame queue index of the given FQ. > */ > +__rte_internal > void qbman_pull_desc_set_fq(struct qbman_pull_desc *d, uint32_t fqid); > > /** > @@ -407,6 +414,7 @@ void qbman_pull_desc_set_rad(struct qbman_pull_desc *d, int rad); > * Return 0 for success, and -EBUSY if the software portal is not ready > * to do pull dequeue. > */ > +__rte_internal > int qbman_swp_pull(struct qbman_swp *s, struct qbman_pull_desc *d); > > /* -------------------------------- */ > @@ -421,12 +429,14 @@ int qbman_swp_pull(struct qbman_swp *s, struct qbman_pull_desc *d); > * only once, so repeated calls can return a sequence of DQRR entries, without > * requiring they be consumed immediately or in any particular order. > */ > +__rte_internal > const struct qbman_result *qbman_swp_dqrr_next(struct qbman_swp *p); > > /** > * qbman_swp_prefetch_dqrr_next() - prefetch the next DQRR entry. > * @s: the software portal object. > */ > +__rte_internal > void qbman_swp_prefetch_dqrr_next(struct qbman_swp *s); > > /** > @@ -435,6 +445,7 @@ void qbman_swp_prefetch_dqrr_next(struct qbman_swp *s); > * @s: the software portal object. > * @dq: the DQRR entry to be consumed. > */ > +__rte_internal > void qbman_swp_dqrr_consume(struct qbman_swp *s, const struct qbman_result *dq); > > /** > @@ -442,6 +453,7 @@ void qbman_swp_dqrr_consume(struct qbman_swp *s, const struct qbman_result *dq); > * @s: the software portal object. > * @dqrr_index: the DQRR index entry to be consumed. > */ > +__rte_internal > void qbman_swp_dqrr_idx_consume(struct qbman_swp *s, uint8_t dqrr_index); > > /** > @@ -450,6 +462,7 @@ void qbman_swp_dqrr_idx_consume(struct qbman_swp *s, uint8_t dqrr_index); > * > * Return dqrr index. > */ > +__rte_internal > uint8_t qbman_get_dqrr_idx(const struct qbman_result *dqrr); > > /** > @@ -460,6 +473,7 @@ uint8_t qbman_get_dqrr_idx(const struct qbman_result *dqrr); > * > * Return dqrr entry object. > */ > +__rte_internal > struct qbman_result *qbman_get_dqrr_from_idx(struct qbman_swp *s, uint8_t idx); > > /* ------------------------------------------------- */ > @@ -485,6 +499,7 @@ struct qbman_result *qbman_get_dqrr_from_idx(struct qbman_swp *s, uint8_t idx); > * Return 1 for getting a valid dequeue result, or 0 for not getting a valid > * dequeue result. > */ > +__rte_internal > int qbman_result_has_new_result(struct qbman_swp *s, > struct qbman_result *dq); > > @@ -497,8 +512,10 @@ int qbman_result_has_new_result(struct qbman_swp *s, > * Return 1 for getting a valid dequeue result, or 0 for not getting a valid > * dequeue result. > */ > +__rte_internal > int qbman_check_command_complete(struct qbman_result *dq); > > +__rte_internal > int qbman_check_new_result(struct qbman_result *dq); > > /* -------------------------------------------------------- */ > @@ -624,6 +641,7 @@ int qbman_result_is_FQPN(const struct qbman_result *dq); > * > * Return the state field. > */ > +__rte_internal > uint8_t qbman_result_DQ_flags(const struct qbman_result *dq); > > /** > @@ -658,6 +676,7 @@ static inline int qbman_result_DQ_is_pull_complete( > * > * Return seqnum. > */ > +__rte_internal > uint16_t qbman_result_DQ_seqnum(const struct qbman_result *dq); > > /** > @@ -667,6 +686,7 @@ uint16_t qbman_result_DQ_seqnum(const struct qbman_result *dq); > * > * Return odpid. > */ > +__rte_internal > uint16_t qbman_result_DQ_odpid(const struct qbman_result *dq); > > /** > @@ -699,6 +719,7 @@ uint32_t qbman_result_DQ_frame_count(const struct qbman_result *dq); > * > * Return the frame queue context. > */ > +__rte_internal > uint64_t qbman_result_DQ_fqd_ctx(const struct qbman_result *dq); > > /** > @@ -707,6 +728,7 @@ uint64_t qbman_result_DQ_fqd_ctx(const struct qbman_result *dq); > * > * Return the frame descriptor. > */ > +__rte_internal > const struct qbman_fd *qbman_result_DQ_fd(const struct qbman_result *dq); > > /* State-change notifications (FQDAN/CDAN/CSCN/...). */ > @@ -717,6 +739,7 @@ const struct qbman_fd *qbman_result_DQ_fd(const struct qbman_result *dq); > * > * Return the state in the notifiation. > */ > +__rte_internal > uint8_t qbman_result_SCN_state(const struct qbman_result *scn); > > /** > @@ -850,6 +873,7 @@ struct qbman_eq_response { > * default/starting state. > * @d: the given enqueue descriptor. > */ > +__rte_internal > void qbman_eq_desc_clear(struct qbman_eq_desc *d); > > /* Exactly one of the following descriptor "actions" should be set. (Calling > @@ -870,6 +894,7 @@ void qbman_eq_desc_clear(struct qbman_eq_desc *d); > * @response_success: 1 = enqueue with response always; 0 = enqueue with > * rejections returned on a FQ. > */ > +__rte_internal > void qbman_eq_desc_set_no_orp(struct qbman_eq_desc *d, int respond_success); > /** > * qbman_eq_desc_set_orp() - Set order-resotration in the enqueue descriptor > @@ -881,6 +906,7 @@ void qbman_eq_desc_set_no_orp(struct qbman_eq_desc *d, int respond_success); > * @incomplete: indiates whether this is the last fragments using the same > * sequeue number. > */ > +__rte_internal > void qbman_eq_desc_set_orp(struct qbman_eq_desc *d, int respond_success, > uint16_t opr_id, uint16_t seqnum, int incomplete); > > @@ -915,6 +941,7 @@ void qbman_eq_desc_set_orp_nesn(struct qbman_eq_desc *d, uint16_t opr_id, > * data structure.) 'stash' controls whether or not the write to main-memory > * expresses a cache-warming attribute. > */ > +__rte_internal > void qbman_eq_desc_set_response(struct qbman_eq_desc *d, > uint64_t storage_phys, > int stash); > @@ -929,6 +956,7 @@ void qbman_eq_desc_set_response(struct qbman_eq_desc *d, > * result "storage" before issuing an enqueue, and use any non-zero 'token' > * value. > */ > +__rte_internal > void qbman_eq_desc_set_token(struct qbman_eq_desc *d, uint8_t token); > > /** > @@ -944,6 +972,7 @@ void qbman_eq_desc_set_token(struct qbman_eq_desc *d, uint8_t token); > * @d: the enqueue descriptor > * @fqid: the id of the frame queue to be enqueued. > */ > +__rte_internal > void qbman_eq_desc_set_fq(struct qbman_eq_desc *d, uint32_t fqid); > > /** > @@ -953,6 +982,7 @@ void qbman_eq_desc_set_fq(struct qbman_eq_desc *d, uint32_t fqid); > * @qd_bin: the queuing destination bin > * @qd_prio: the queuing destination priority. > */ > +__rte_internal > void qbman_eq_desc_set_qd(struct qbman_eq_desc *d, uint32_t qdid, > uint16_t qd_bin, uint8_t qd_prio); > > @@ -978,6 +1008,7 @@ void qbman_eq_desc_set_eqdi(struct qbman_eq_desc *d, int enable); > * held-active (order-preserving) FQ, whether the FQ should be parked instead of > * being rescheduled.) > */ > +__rte_internal > void qbman_eq_desc_set_dca(struct qbman_eq_desc *d, int enable, > uint8_t dqrr_idx, int park); > > @@ -987,6 +1018,7 @@ void qbman_eq_desc_set_dca(struct qbman_eq_desc *d, int enable, > * > * Return the fd pointer. > */ > +__rte_internal > struct qbman_fd *qbman_result_eqresp_fd(struct qbman_result *eqresp); > > /** > @@ -997,6 +1029,7 @@ struct qbman_fd *qbman_result_eqresp_fd(struct qbman_result *eqresp); > * This value is set into the response id before the enqueue command, which, > * get overwritten by qbman once the enqueue command is complete. > */ > +__rte_internal > void qbman_result_eqresp_set_rspid(struct qbman_result *eqresp, uint8_t val); > > /** > @@ -1009,6 +1042,7 @@ void qbman_result_eqresp_set_rspid(struct qbman_result *eqresp, uint8_t val); > * copied into the enqueue response to determine if the command has been > * completed, and response has been updated. > */ > +__rte_internal > uint8_t qbman_result_eqresp_rspid(struct qbman_result *eqresp); > > /** > @@ -1017,6 +1051,7 @@ uint8_t qbman_result_eqresp_rspid(struct qbman_result *eqresp); > * > * Return 0 when command is sucessful. > */ > +__rte_internal > uint8_t qbman_result_eqresp_rc(struct qbman_result *eqresp); > > /** > @@ -1043,6 +1078,7 @@ int qbman_swp_enqueue(struct qbman_swp *s, const struct qbman_eq_desc *d, > * > * Return the number of enqueued frames, -EBUSY if the EQCR is not ready. > */ > +__rte_internal > int qbman_swp_enqueue_multiple(struct qbman_swp *s, > const struct qbman_eq_desc *d, > const struct qbman_fd *fd, > @@ -1060,6 +1096,7 @@ int qbman_swp_enqueue_multiple(struct qbman_swp *s, > * > * Return the number of enqueued frames, -EBUSY if the EQCR is not ready. > */ > +__rte_internal > int qbman_swp_enqueue_multiple_fd(struct qbman_swp *s, > const struct qbman_eq_desc *d, > struct qbman_fd **fd, > @@ -1076,6 +1113,7 @@ int qbman_swp_enqueue_multiple_fd(struct qbman_swp *s, > * > * Return the number of enqueued frames, -EBUSY if the EQCR is not ready. > */ > +__rte_internal > int qbman_swp_enqueue_multiple_desc(struct qbman_swp *s, > const struct qbman_eq_desc *d, > const struct qbman_fd *fd, > @@ -1117,12 +1155,14 @@ struct qbman_release_desc { > * default/starting state. > * @d: the qbman release descriptor. > */ > +__rte_internal > void qbman_release_desc_clear(struct qbman_release_desc *d); > > /** > * qbman_release_desc_set_bpid() - Set the ID of the buffer pool to release to > * @d: the qbman release descriptor. > */ > +__rte_internal > void qbman_release_desc_set_bpid(struct qbman_release_desc *d, uint16_t bpid); > > /** > @@ -1141,6 +1181,7 @@ void qbman_release_desc_set_rcdi(struct qbman_release_desc *d, int enable); > * > * Return 0 for success, -EBUSY if the release command ring is not ready. > */ > +__rte_internal > int qbman_swp_release(struct qbman_swp *s, const struct qbman_release_desc *d, > const uint64_t *buffers, unsigned int num_buffers); > > @@ -1166,6 +1207,7 @@ int qbman_swp_release_thresh(struct qbman_swp *s, unsigned int thresh); > * Return 0 for success, or negative error code if the acquire command > * fails. > */ > +__rte_internal > int qbman_swp_acquire(struct qbman_swp *s, uint16_t bpid, uint64_t *buffers, > unsigned int num_buffers); > > diff --git a/drivers/bus/fslmc/rte_bus_fslmc_version.map b/drivers/bus/fslmc/rte_bus_fslmc_version.map > index fe45575046..1b7a5a45e9 100644 > --- a/drivers/bus/fslmc/rte_bus_fslmc_version.map > +++ b/drivers/bus/fslmc/rte_bus_fslmc_version.map > @@ -1,4 +1,14 @@ > DPDK_20.0 { > + local: *; > +}; > + > +EXPERIMENTAL { > + global: > + > + rte_fslmc_vfio_mem_dmamap; > +}; > + > +INTERNAL { > global: > > dpaa2_affine_qbman_ethrx_swp; > @@ -11,7 +21,6 @@ DPDK_20.0 { > dpaa2_free_dpbp_dev; > dpaa2_free_dq_storage; > dpaa2_free_eq_descriptors; > - dpaa2_get_qbman_swp; > dpaa2_io_portal; > dpaa2_svr_family; > dpaa2_virt_mode; > @@ -101,15 +110,6 @@ DPDK_20.0 { > rte_fslmc_driver_unregister; > rte_fslmc_get_device_count; > rte_fslmc_object_register; > - rte_fslmc_vfio_dmamap; > rte_global_active_dqs_list; > rte_mcp_ptr_list; > - > - local: *; > -}; > - > -EXPERIMENTAL { > - global: > - > - rte_fslmc_vfio_mem_dmamap; > }; > diff --git a/drivers/bus/fslmc/rte_fslmc.h b/drivers/bus/fslmc/rte_fslmc.h > index 96ba8dc259..5078b48ee1 100644 > --- a/drivers/bus/fslmc/rte_fslmc.h > +++ b/drivers/bus/fslmc/rte_fslmc.h > @@ -162,6 +162,7 @@ RTE_DECLARE_PER_LCORE(struct dpaa2_portal_dqrr, dpaa2_held_bufs); > * A pointer to a rte_dpaa2_driver structure describing the driver > * to be registered. > */ > +__rte_internal > void rte_fslmc_driver_register(struct rte_dpaa2_driver *driver); > > /** > @@ -171,6 +172,7 @@ void rte_fslmc_driver_register(struct rte_dpaa2_driver *driver); > * A pointer to a rte_dpaa2_driver structure describing the driver > * to be unregistered. > */ > +__rte_internal > void rte_fslmc_driver_unregister(struct rte_dpaa2_driver *driver); > > /** Helper for DPAA2 device registration from driver (eth, crypto) instance */ > @@ -189,6 +191,7 @@ RTE_PMD_EXPORT_NAME(nm, __COUNTER__) > * A pointer to a rte_dpaa_object structure describing the mc object > * to be registered. > */ > +__rte_internal > void rte_fslmc_object_register(struct rte_dpaa2_object *object); > > /** > @@ -200,6 +203,7 @@ void rte_fslmc_object_register(struct rte_dpaa2_object *object); > * >=0 for count; 0 indicates either no device of the said type scanned or > * invalid device type. > */ > +__rte_internal > uint32_t rte_fslmc_get_device_count(enum rte_dpaa2_dev_type device_type); > > /** Helper for DPAA2 object registration */ > Acked-by: Ray Kinsella