From patchwork Mon Oct 18 23:35:56 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pavan Nikhilesh Bhagavatula X-Patchwork-Id: 102109 X-Patchwork-Delegate: jerinj@marvell.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 3E479A0C45; Tue, 19 Oct 2021 01:36:30 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C81CD40DF5; Tue, 19 Oct 2021 01:36:29 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by mails.dpdk.org (Postfix) with ESMTP id 03BD040142 for ; Tue, 19 Oct 2021 01:36:27 +0200 (CEST) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 19IK0MAL000890; Mon, 18 Oct 2021 16:36:25 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding : content-type; s=pfpt0220; bh=nV9aIlp4moxXEuTnYAwVT6EPWzq4Hmi9hiNzD5f1LL4=; b=Ztf9CGd7ZNrhCtHWtFu3mbvT8bMoTROKRJoloPMGmMfqoGVZknO876RaFwKTPSYKLWQS 4viC2HRtVL4xJDHAvZ+WW0oez0FQY9Th/3aQgtTS4Az1Cl1BytGkyogTBQ6KzIOHfriL K1Syb0nsE0xd704osSIReHRXDcD6eV8+F+pY7TcVi4BAMkMuZhtVRkax2WXt2eO0pEKj cQgM6kXs2Ay5N3Iztdl914VETbr6wULn1grkO8wOsJ5EdkCAihPAwmCH4Hph/cs2jocr IENblHRIIo4vXUG164JZhc2B+KqLOwiH0C90K6NbpZNfojoIGEVCYiVxIFKHLGsx47IT JQ== Received: from dc5-exch01.marvell.com ([199.233.59.181]) by mx0b-0016f401.pphosted.com with ESMTP id 3bsfk48mvf-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Mon, 18 Oct 2021 16:36:25 -0700 Received: from DC5-EXCH02.marvell.com (10.69.176.39) by DC5-EXCH01.marvell.com (10.69.176.38) with Microsoft SMTP Server (TLS) id 15.0.1497.18; Mon, 18 Oct 2021 16:36:23 -0700 Received: from maili.marvell.com (10.69.176.80) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server id 15.0.1497.18 via Frontend Transport; Mon, 18 Oct 2021 16:36:23 -0700 Received: from BG-LT7430.marvell.com (BG-LT7430.marvell.com [10.28.177.176]) by maili.marvell.com (Postfix) with ESMTP id CCDFD3F704A; Mon, 18 Oct 2021 16:36:17 -0700 (PDT) From: To: , Pavan Nikhilesh , "Shijith Thotton" , Timothy McDaniel , Hemant Agrawal , "Nipun Gupta" , =?utf-8?q?Mattias_R=C3=B6nnblom?= , Liang Ma , "Peter Mccarthy" , Harry van Haaren , Abhinandan Gujjar , Ray Kinsella CC: Date: Tue, 19 Oct 2021 05:05:56 +0530 Message-ID: <20211018233610.5694-1-pbhagavatula@marvell.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20211015190221.2160-1-pbhagavatula@marvell.com> References: <20211015190221.2160-1-pbhagavatula@marvell.com> MIME-Version: 1.0 X-Proofpoint-ORIG-GUID: 08GlBNDelSgF9DaqH0StKhsHm5OUIbnp X-Proofpoint-GUID: 08GlBNDelSgF9DaqH0StKhsHm5OUIbnp X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.182.1,Aquarius:18.0.790,Hydra:6.0.425,FMLib:17.0.607.475 definitions=2021-10-18_07,2021-10-18_01,2020-04-07_01 Subject: [dpdk-dev] [PATCH v5 01/14] eventdev: make driver interface as internal X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 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" From: Pavan Nikhilesh Mark all the driver specific functions as internal, remove `rte` prefix from `struct rte_eventdev_ops`. Remove experimental tag from internal functions. Remove `eventdev_pmd.h` from non-internal header files. Signed-off-by: Pavan Nikhilesh Acked-by: Hemant Agrawal --- v5 Changes: - Move doc updates to respective patches. (Jerin) v4 Changes: - Update release notes. (Jerin) - Rearrange fp_ops fields. (Jerin) - Free timer array memory when freeing the last adapter. (Erik) - Rebase onto next-event. - Fix spell checks. - Rearrange version.map (David) v3 Changes: - Reset fp_ops when device is torndown. - Add `event_dev_probing_finish()` this function is used for post-initialization processing. In current usecase we use it to initialize fastpath ops. v2 Changes: - Rework inline flat array by adding port data into it. - Rearrange rte_event_timer elements. drivers/event/cnxk/cn10k_eventdev.c | 6 ++--- drivers/event/cnxk/cn9k_eventdev.c | 10 ++++----- drivers/event/dlb2/dlb2.c | 2 +- drivers/event/dpaa/dpaa_eventdev.c | 2 +- drivers/event/dpaa2/dpaa2_eventdev.c | 2 +- drivers/event/dsw/dsw_evdev.c | 2 +- drivers/event/octeontx/ssovf_evdev.c | 2 +- drivers/event/octeontx/ssovf_worker.c | 4 ++-- drivers/event/octeontx2/otx2_evdev.c | 26 +++++++++++----------- drivers/event/opdl/opdl_evdev.c | 2 +- drivers/event/skeleton/skeleton_eventdev.c | 2 +- drivers/event/sw/sw_evdev.c | 2 +- lib/eventdev/eventdev_pmd.h | 6 ++++- lib/eventdev/eventdev_pmd_pci.h | 4 +++- lib/eventdev/eventdev_pmd_vdev.h | 2 ++ lib/eventdev/meson.build | 6 +++++ lib/eventdev/rte_event_crypto_adapter.h | 1 - lib/eventdev/rte_eventdev.h | 25 ++++++++++++--------- lib/eventdev/version.map | 17 +++++++------- 19 files changed, 70 insertions(+), 53 deletions(-) -- 2.17.1 diff --git a/drivers/event/cnxk/cn10k_eventdev.c b/drivers/event/cnxk/cn10k_eventdev.c index bfd470cffd..612c299b59 100644 --- a/drivers/event/cnxk/cn10k_eventdev.c +++ b/drivers/event/cnxk/cn10k_eventdev.c @@ -380,7 +380,7 @@ cn10k_sso_fp_fns_set(struct rte_eventdev *event_dev) }; /* Tx modes */ - const event_tx_adapter_enqueue + const event_tx_adapter_enqueue_t sso_hws_tx_adptr_enq[2][2][2][2][2][2][2] = { #define T(name, f6, f5, f4, f3, f2, f1, f0, sz, flags) \ [f6][f5][f4][f3][f2][f1][f0] = cn10k_sso_hws_tx_adptr_enq_##name, @@ -388,7 +388,7 @@ cn10k_sso_fp_fns_set(struct rte_eventdev *event_dev) #undef T }; - const event_tx_adapter_enqueue + const event_tx_adapter_enqueue_t sso_hws_tx_adptr_enq_seg[2][2][2][2][2][2][2] = { #define T(name, f6, f5, f4, f3, f2, f1, f0, sz, flags) \ [f6][f5][f4][f3][f2][f1][f0] = cn10k_sso_hws_tx_adptr_enq_seg_##name, @@ -788,7 +788,7 @@ cn10k_crypto_adapter_qp_del(const struct rte_eventdev *event_dev, return cnxk_crypto_adapter_qp_del(cdev, queue_pair_id); } -static struct rte_eventdev_ops cn10k_sso_dev_ops = { +static struct eventdev_ops cn10k_sso_dev_ops = { .dev_infos_get = cn10k_sso_info_get, .dev_configure = cn10k_sso_dev_configure, .queue_def_conf = cnxk_sso_queue_def_conf, diff --git a/drivers/event/cnxk/cn9k_eventdev.c b/drivers/event/cnxk/cn9k_eventdev.c index 806dcb0a45..d757da7c37 100644 --- a/drivers/event/cnxk/cn9k_eventdev.c +++ b/drivers/event/cnxk/cn9k_eventdev.c @@ -514,7 +514,7 @@ cn9k_sso_fp_fns_set(struct rte_eventdev *event_dev) }; /* Tx modes */ - const event_tx_adapter_enqueue + const event_tx_adapter_enqueue_t sso_hws_tx_adptr_enq[2][2][2][2][2][2][2] = { #define T(name, f6, f5, f4, f3, f2, f1, f0, sz, flags) \ [f6][f5][f4][f3][f2][f1][f0] = cn9k_sso_hws_tx_adptr_enq_##name, @@ -522,7 +522,7 @@ cn9k_sso_fp_fns_set(struct rte_eventdev *event_dev) #undef T }; - const event_tx_adapter_enqueue + const event_tx_adapter_enqueue_t sso_hws_tx_adptr_enq_seg[2][2][2][2][2][2][2] = { #define T(name, f6, f5, f4, f3, f2, f1, f0, sz, flags) \ [f6][f5][f4][f3][f2][f1][f0] = cn9k_sso_hws_tx_adptr_enq_seg_##name, @@ -530,7 +530,7 @@ cn9k_sso_fp_fns_set(struct rte_eventdev *event_dev) #undef T }; - const event_tx_adapter_enqueue + const event_tx_adapter_enqueue_t sso_hws_dual_tx_adptr_enq[2][2][2][2][2][2][2] = { #define T(name, f6, f5, f4, f3, f2, f1, f0, sz, flags) \ [f6][f5][f4][f3][f2][f1][f0] = cn9k_sso_hws_dual_tx_adptr_enq_##name, @@ -538,7 +538,7 @@ cn9k_sso_fp_fns_set(struct rte_eventdev *event_dev) #undef T }; - const event_tx_adapter_enqueue + const event_tx_adapter_enqueue_t sso_hws_dual_tx_adptr_enq_seg[2][2][2][2][2][2][2] = { #define T(name, f6, f5, f4, f3, f2, f1, f0, sz, flags) \ [f6][f5][f4][f3][f2][f1][f0] = \ @@ -1060,7 +1060,7 @@ cn9k_crypto_adapter_qp_del(const struct rte_eventdev *event_dev, return cnxk_crypto_adapter_qp_del(cdev, queue_pair_id); } -static struct rte_eventdev_ops cn9k_sso_dev_ops = { +static struct eventdev_ops cn9k_sso_dev_ops = { .dev_infos_get = cn9k_sso_info_get, .dev_configure = cn9k_sso_dev_configure, .queue_def_conf = cnxk_sso_queue_def_conf, diff --git a/drivers/event/dlb2/dlb2.c b/drivers/event/dlb2/dlb2.c index 252bbd8d5e..c8742ddb2c 100644 --- a/drivers/event/dlb2/dlb2.c +++ b/drivers/event/dlb2/dlb2.c @@ -4384,7 +4384,7 @@ dlb2_entry_points_init(struct rte_eventdev *dev) struct dlb2_eventdev *dlb2; /* Expose PMD's eventdev interface */ - static struct rte_eventdev_ops dlb2_eventdev_entry_ops = { + static struct eventdev_ops dlb2_eventdev_entry_ops = { .dev_infos_get = dlb2_eventdev_info_get, .dev_configure = dlb2_eventdev_configure, .dev_start = dlb2_eventdev_start, diff --git a/drivers/event/dpaa/dpaa_eventdev.c b/drivers/event/dpaa/dpaa_eventdev.c index ec74160325..9f14390d28 100644 --- a/drivers/event/dpaa/dpaa_eventdev.c +++ b/drivers/event/dpaa/dpaa_eventdev.c @@ -925,7 +925,7 @@ dpaa_eventdev_txa_enqueue(void *port, return nb_events; } -static struct rte_eventdev_ops dpaa_eventdev_ops = { +static struct eventdev_ops dpaa_eventdev_ops = { .dev_infos_get = dpaa_event_dev_info_get, .dev_configure = dpaa_event_dev_configure, .dev_start = dpaa_event_dev_start, diff --git a/drivers/event/dpaa2/dpaa2_eventdev.c b/drivers/event/dpaa2/dpaa2_eventdev.c index 5ccf22f77f..d577f64824 100644 --- a/drivers/event/dpaa2/dpaa2_eventdev.c +++ b/drivers/event/dpaa2/dpaa2_eventdev.c @@ -1015,7 +1015,7 @@ dpaa2_eventdev_txa_enqueue(void *port, return nb_events; } -static struct rte_eventdev_ops dpaa2_eventdev_ops = { +static struct eventdev_ops dpaa2_eventdev_ops = { .dev_infos_get = dpaa2_eventdev_info_get, .dev_configure = dpaa2_eventdev_configure, .dev_start = dpaa2_eventdev_start, diff --git a/drivers/event/dsw/dsw_evdev.c b/drivers/event/dsw/dsw_evdev.c index 2301a4b7a0..01f060fff3 100644 --- a/drivers/event/dsw/dsw_evdev.c +++ b/drivers/event/dsw/dsw_evdev.c @@ -398,7 +398,7 @@ dsw_crypto_adapter_caps_get(const struct rte_eventdev *dev __rte_unused, return 0; } -static struct rte_eventdev_ops dsw_evdev_ops = { +static struct eventdev_ops dsw_evdev_ops = { .port_setup = dsw_port_setup, .port_def_conf = dsw_port_def_conf, .port_release = dsw_port_release, diff --git a/drivers/event/octeontx/ssovf_evdev.c b/drivers/event/octeontx/ssovf_evdev.c index b93f6ec8c6..4a8c6a13a5 100644 --- a/drivers/event/octeontx/ssovf_evdev.c +++ b/drivers/event/octeontx/ssovf_evdev.c @@ -790,7 +790,7 @@ ssovf_crypto_adapter_qp_del(const struct rte_eventdev *dev, } /* Initialize and register event driver with DPDK Application */ -static struct rte_eventdev_ops ssovf_ops = { +static struct eventdev_ops ssovf_ops = { .dev_infos_get = ssovf_info_get, .dev_configure = ssovf_configure, .queue_def_conf = ssovf_queue_def_conf, diff --git a/drivers/event/octeontx/ssovf_worker.c b/drivers/event/octeontx/ssovf_worker.c index 8b056ddc5a..2df940f0f1 100644 --- a/drivers/event/octeontx/ssovf_worker.c +++ b/drivers/event/octeontx/ssovf_worker.c @@ -343,11 +343,11 @@ ssovf_fastpath_fns_set(struct rte_eventdev *dev) dev->ca_enqueue = ssow_crypto_adapter_enqueue; - const event_tx_adapter_enqueue ssow_txa_enqueue[2][2][2][2] = { + const event_tx_adapter_enqueue_t ssow_txa_enqueue[2][2][2][2] = { #define T(name, f3, f2, f1, f0, sz, flags) \ [f3][f2][f1][f0] = sso_event_tx_adapter_enqueue_ ##name, -SSO_TX_ADPTR_ENQ_FASTPATH_FUNC + SSO_TX_ADPTR_ENQ_FASTPATH_FUNC #undef T }; diff --git a/drivers/event/octeontx2/otx2_evdev.c b/drivers/event/octeontx2/otx2_evdev.c index 38a6b651d9..f26bed334f 100644 --- a/drivers/event/octeontx2/otx2_evdev.c +++ b/drivers/event/octeontx2/otx2_evdev.c @@ -178,41 +178,41 @@ SSO_RX_ADPTR_ENQ_FASTPATH_FUNC }; /* Tx modes */ - const event_tx_adapter_enqueue + const event_tx_adapter_enqueue_t ssogws_tx_adptr_enq[2][2][2][2][2][2][2] = { #define T(name, f6, f5, f4, f3, f2, f1, f0, sz, flags) \ [f6][f5][f4][f3][f2][f1][f0] = \ otx2_ssogws_tx_adptr_enq_ ## name, -SSO_TX_ADPTR_ENQ_FASTPATH_FUNC + SSO_TX_ADPTR_ENQ_FASTPATH_FUNC #undef T - }; + }; - const event_tx_adapter_enqueue + const event_tx_adapter_enqueue_t ssogws_tx_adptr_enq_seg[2][2][2][2][2][2][2] = { #define T(name, f6, f5, f4, f3, f2, f1, f0, sz, flags) \ [f6][f5][f4][f3][f2][f1][f0] = \ otx2_ssogws_tx_adptr_enq_seg_ ## name, -SSO_TX_ADPTR_ENQ_FASTPATH_FUNC + SSO_TX_ADPTR_ENQ_FASTPATH_FUNC #undef T - }; + }; - const event_tx_adapter_enqueue + const event_tx_adapter_enqueue_t ssogws_dual_tx_adptr_enq[2][2][2][2][2][2][2] = { #define T(name, f6, f5, f4, f3, f2, f1, f0, sz, flags) \ [f6][f5][f4][f3][f2][f1][f0] = \ otx2_ssogws_dual_tx_adptr_enq_ ## name, -SSO_TX_ADPTR_ENQ_FASTPATH_FUNC + SSO_TX_ADPTR_ENQ_FASTPATH_FUNC #undef T - }; + }; - const event_tx_adapter_enqueue + const event_tx_adapter_enqueue_t ssogws_dual_tx_adptr_enq_seg[2][2][2][2][2][2][2] = { #define T(name, f6, f5, f4, f3, f2, f1, f0, sz, flags) \ [f6][f5][f4][f3][f2][f1][f0] = \ otx2_ssogws_dual_tx_adptr_enq_seg_ ## name, -SSO_TX_ADPTR_ENQ_FASTPATH_FUNC + SSO_TX_ADPTR_ENQ_FASTPATH_FUNC #undef T - }; + }; event_dev->enqueue = otx2_ssogws_enq; event_dev->enqueue_burst = otx2_ssogws_enq_burst; @@ -1596,7 +1596,7 @@ otx2_sso_close(struct rte_eventdev *event_dev) } /* Initialize and register event driver with DPDK Application */ -static struct rte_eventdev_ops otx2_sso_ops = { +static struct eventdev_ops otx2_sso_ops = { .dev_infos_get = otx2_sso_info_get, .dev_configure = otx2_sso_configure, .queue_def_conf = otx2_sso_queue_def_conf, diff --git a/drivers/event/opdl/opdl_evdev.c b/drivers/event/opdl/opdl_evdev.c index cfa9733b64..739dc64c82 100644 --- a/drivers/event/opdl/opdl_evdev.c +++ b/drivers/event/opdl/opdl_evdev.c @@ -609,7 +609,7 @@ set_do_test(const char *key __rte_unused, const char *value, void *opaque) static int opdl_probe(struct rte_vdev_device *vdev) { - static struct rte_eventdev_ops evdev_opdl_ops = { + static struct eventdev_ops evdev_opdl_ops = { .dev_configure = opdl_dev_configure, .dev_infos_get = opdl_info_get, .dev_close = opdl_close, diff --git a/drivers/event/skeleton/skeleton_eventdev.c b/drivers/event/skeleton/skeleton_eventdev.c index 6fd1102596..c9e17e7cb1 100644 --- a/drivers/event/skeleton/skeleton_eventdev.c +++ b/drivers/event/skeleton/skeleton_eventdev.c @@ -320,7 +320,7 @@ skeleton_eventdev_dump(struct rte_eventdev *dev, FILE *f) /* Initialize and register event driver with DPDK Application */ -static struct rte_eventdev_ops skeleton_eventdev_ops = { +static struct eventdev_ops skeleton_eventdev_ops = { .dev_infos_get = skeleton_eventdev_info_get, .dev_configure = skeleton_eventdev_configure, .dev_start = skeleton_eventdev_start, diff --git a/drivers/event/sw/sw_evdev.c b/drivers/event/sw/sw_evdev.c index a5e6ca22e8..9b72073322 100644 --- a/drivers/event/sw/sw_evdev.c +++ b/drivers/event/sw/sw_evdev.c @@ -945,7 +945,7 @@ static int32_t sw_sched_service_func(void *args) static int sw_probe(struct rte_vdev_device *vdev) { - static struct rte_eventdev_ops evdev_sw_ops = { + static struct eventdev_ops evdev_sw_ops = { .dev_configure = sw_dev_configure, .dev_infos_get = sw_info_get, .dev_close = sw_close, diff --git a/lib/eventdev/eventdev_pmd.h b/lib/eventdev/eventdev_pmd.h index 7ac31e9f92..688f30d45e 100644 --- a/lib/eventdev/eventdev_pmd.h +++ b/lib/eventdev/eventdev_pmd.h @@ -99,6 +99,7 @@ extern struct rte_eventdev *rte_eventdevs; * @return * - The rte_eventdev structure pointer for the given device ID. */ +__rte_internal static inline struct rte_eventdev * rte_event_pmd_get_named_dev(const char *name) { @@ -127,6 +128,7 @@ rte_event_pmd_get_named_dev(const char *name) * @return * - If the device index is valid (1) or not (0). */ +__rte_internal static inline unsigned rte_event_pmd_is_valid_dev(uint8_t dev_id) { @@ -1056,7 +1058,7 @@ typedef int (*eventdev_eth_tx_adapter_stats_reset_t)(uint8_t id, const struct rte_eventdev *dev); /** Event device operations function pointer table */ -struct rte_eventdev_ops { +struct eventdev_ops { eventdev_info_get_t dev_infos_get; /**< Get device info. */ eventdev_configure_t dev_configure; /**< Configure device. */ eventdev_start_t dev_start; /**< Start device. */ @@ -1173,6 +1175,7 @@ struct rte_eventdev_ops { * @return * - Slot in the rte_dev_devices array for a new device; */ +__rte_internal struct rte_eventdev * rte_event_pmd_allocate(const char *name, int socket_id); @@ -1184,6 +1187,7 @@ rte_event_pmd_allocate(const char *name, int socket_id); * @return * - 0 on success, negative on error */ +__rte_internal int rte_event_pmd_release(struct rte_eventdev *eventdev); diff --git a/lib/eventdev/eventdev_pmd_pci.h b/lib/eventdev/eventdev_pmd_pci.h index 1545b240f2..2f12a5eb24 100644 --- a/lib/eventdev/eventdev_pmd_pci.h +++ b/lib/eventdev/eventdev_pmd_pci.h @@ -31,7 +31,7 @@ typedef int (*eventdev_pmd_pci_callback_t)(struct rte_eventdev *dev); * interface. Same as rte_event_pmd_pci_probe, except caller can specify * the name. */ -__rte_experimental +__rte_internal static inline int rte_event_pmd_pci_probe_named(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev, @@ -85,6 +85,7 @@ rte_event_pmd_pci_probe_named(struct rte_pci_driver *pci_drv, * Wrapper for use by pci drivers as a .probe function to attach to a event * interface. */ +__rte_internal static inline int rte_event_pmd_pci_probe(struct rte_pci_driver *pci_drv, struct rte_pci_device *pci_dev, @@ -108,6 +109,7 @@ rte_event_pmd_pci_probe(struct rte_pci_driver *pci_drv, * Wrapper for use by pci drivers as a .remove function to detach a event * interface. */ +__rte_internal static inline int rte_event_pmd_pci_remove(struct rte_pci_device *pci_dev, eventdev_pmd_pci_callback_t devuninit) diff --git a/lib/eventdev/eventdev_pmd_vdev.h b/lib/eventdev/eventdev_pmd_vdev.h index 2d33924e6c..d9ee7277dd 100644 --- a/lib/eventdev/eventdev_pmd_vdev.h +++ b/lib/eventdev/eventdev_pmd_vdev.h @@ -37,6 +37,7 @@ * - Eventdev pointer if device is successfully created. * - NULL if device cannot be created. */ +__rte_internal static inline struct rte_eventdev * rte_event_pmd_vdev_init(const char *name, size_t dev_private_size, int socket_id) @@ -74,6 +75,7 @@ rte_event_pmd_vdev_init(const char *name, size_t dev_private_size, * @return * - 0 on success, negative on error */ +__rte_internal static inline int rte_event_pmd_vdev_uninit(const char *name) { diff --git a/lib/eventdev/meson.build b/lib/eventdev/meson.build index 32abeba794..523ea9ccae 100644 --- a/lib/eventdev/meson.build +++ b/lib/eventdev/meson.build @@ -27,5 +27,11 @@ headers = files( 'rte_event_crypto_adapter.h', 'rte_event_eth_tx_adapter.h', ) +driver_sdk_headers += files( + 'eventdev_pmd.h', + 'eventdev_pmd_pci.h', + 'eventdev_pmd_vdev.h', +) + deps += ['ring', 'ethdev', 'hash', 'mempool', 'mbuf', 'timer', 'cryptodev'] deps += ['telemetry'] diff --git a/lib/eventdev/rte_event_crypto_adapter.h b/lib/eventdev/rte_event_crypto_adapter.h index edbd5c61a3..1a8ff75384 100644 --- a/lib/eventdev/rte_event_crypto_adapter.h +++ b/lib/eventdev/rte_event_crypto_adapter.h @@ -171,7 +171,6 @@ extern "C" { #include #include "rte_eventdev.h" -#include "eventdev_pmd.h" /** * Crypto event adapter mode diff --git a/lib/eventdev/rte_eventdev.h b/lib/eventdev/rte_eventdev.h index a9c496fb62..0c701888d5 100644 --- a/lib/eventdev/rte_eventdev.h +++ b/lib/eventdev/rte_eventdev.h @@ -1324,7 +1324,7 @@ int rte_event_eth_tx_adapter_caps_get(uint8_t dev_id, uint16_t eth_port_id, uint32_t *caps); -struct rte_eventdev_ops; +struct eventdev_ops; struct rte_eventdev; typedef uint16_t (*event_enqueue_t)(void *port, const struct rte_event *ev); @@ -1342,18 +1342,21 @@ typedef uint16_t (*event_dequeue_burst_t)(void *port, struct rte_event ev[], uint16_t nb_events, uint64_t timeout_ticks); /**< @internal Dequeue burst of events from port of a device */ -typedef uint16_t (*event_tx_adapter_enqueue)(void *port, - struct rte_event ev[], uint16_t nb_events); +typedef uint16_t (*event_tx_adapter_enqueue_t)(void *port, + struct rte_event ev[], + uint16_t nb_events); /**< @internal Enqueue burst of events on port of a device */ -typedef uint16_t (*event_tx_adapter_enqueue_same_dest)(void *port, - struct rte_event ev[], uint16_t nb_events); +typedef uint16_t (*event_tx_adapter_enqueue_same_dest_t)(void *port, + struct rte_event ev[], + uint16_t nb_events); /**< @internal Enqueue burst of events on port of a device supporting * burst having same destination Ethernet port & Tx queue. */ -typedef uint16_t (*event_crypto_adapter_enqueue)(void *port, - struct rte_event ev[], uint16_t nb_events); +typedef uint16_t (*event_crypto_adapter_enqueue_t)(void *port, + struct rte_event ev[], + uint16_t nb_events); /**< @internal Enqueue burst of events on crypto adapter */ #define RTE_EVENTDEV_NAME_MAX_LEN (64) @@ -1421,15 +1424,15 @@ struct rte_eventdev { /**< Pointer to PMD dequeue function. */ event_dequeue_burst_t dequeue_burst; /**< Pointer to PMD dequeue burst function. */ - event_tx_adapter_enqueue_same_dest txa_enqueue_same_dest; + event_tx_adapter_enqueue_same_dest_t txa_enqueue_same_dest; /**< Pointer to PMD eth Tx adapter burst enqueue function with * events destined to same Eth port & Tx queue. */ - event_tx_adapter_enqueue txa_enqueue; + event_tx_adapter_enqueue_t txa_enqueue; /**< Pointer to PMD eth Tx adapter enqueue function. */ struct rte_eventdev_data *data; /**< Pointer to device data */ - struct rte_eventdev_ops *dev_ops; + struct eventdev_ops *dev_ops; /**< Functions exported by PMD */ struct rte_device *dev; /**< Device info. supplied by probing */ @@ -1438,7 +1441,7 @@ struct rte_eventdev { uint8_t attached : 1; /**< Flag indicating the device is attached */ - event_crypto_adapter_enqueue ca_enqueue; + event_crypto_adapter_enqueue_t ca_enqueue; /**< Pointer to PMD crypto adapter enqueue function. */ uint64_t reserved_64s[4]; /**< Reserved for future fields */ diff --git a/lib/eventdev/version.map b/lib/eventdev/version.map index 7de18497a6..cd72f45d29 100644 --- a/lib/eventdev/version.map +++ b/lib/eventdev/version.map @@ -55,12 +55,6 @@ DPDK_22 { rte_event_eth_tx_adapter_stats_get; rte_event_eth_tx_adapter_stats_reset; rte_event_eth_tx_adapter_stop; - rte_event_pmd_allocate; - rte_event_pmd_pci_probe; - rte_event_pmd_pci_remove; - rte_event_pmd_release; - rte_event_pmd_vdev_init; - rte_event_pmd_vdev_uninit; rte_event_port_attr_get; rte_event_port_default_conf_get; rte_event_port_link; @@ -136,8 +130,6 @@ EXPERIMENTAL { # changed in 20.11 __rte_eventdev_trace_port_setup; - # added in 20.11 - rte_event_pmd_pci_probe_named; # added in 21.11 rte_event_eth_rx_adapter_create_with_params; @@ -152,4 +144,13 @@ INTERNAL { global: rte_event_pmd_selftest_seqn_dynfield_offset; + rte_event_pmd_allocate; + rte_event_pmd_get_named_dev; + rte_event_pmd_is_valid_dev; + rte_event_pmd_pci_probe; + rte_event_pmd_pci_probe_named; + rte_event_pmd_pci_remove; + rte_event_pmd_release; + rte_event_pmd_vdev_init; + rte_event_pmd_vdev_uninit; };