Message ID | 20230929115051.564063-1-amitprakashs@marvell.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> 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 9D6E542672; Fri, 29 Sep 2023 13:51:20 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8C4F240E78; Fri, 29 Sep 2023 13:51:20 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by mails.dpdk.org (Postfix) with ESMTP id 7075540E64 for <dev@dpdk.org>; Fri, 29 Sep 2023 13:51:18 +0200 (CEST) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 38T27f6j021104; Fri, 29 Sep 2023 04:51:17 -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=jf2l2a1sn4XdfnYpsByDRmFz7iVDRGFr4fUz5FdhpMo=; b=P9iz1mIj16DCfzBxgMQMkPtvkis/+qxtdWoi606petKkrAySs3p0MYzoO0gbMoKSG4R5 7kjKVEnQ59ba2Dd8KZzMyvV8MkimmfnvH2DO+TlYO7Jh9P80+T8/g0OYzrNaYOwZhe99 0QsyCvILxYc2vrn5BUeA6uH+HOWB0j4/mDifC1ua+mqcrRCqBZtGoDx4suxoinao9Hgv jDxa8qwKIT3y2FNzZS5cfUH2wLzrYWgfeMSdt15RxzDws06eqKmj60N5BYigbuS+mrCO W7UWkURAy/uPXTgG5VRovq4wbvp+08KwdwV9q9Z/p8Hwxfo2LKY/VWQhI+gAfASxF2Fo YA== Received: from dc5-exch02.marvell.com ([199.233.59.182]) by mx0b-0016f401.pphosted.com (PPS) with ESMTPS id 3tcrrs8k6y-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Fri, 29 Sep 2023 04:51:17 -0700 Received: from DC5-EXCH01.marvell.com (10.69.176.38) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server (TLS) id 15.0.1497.48; Fri, 29 Sep 2023 04:51:15 -0700 Received: from maili.marvell.com (10.69.176.80) by DC5-EXCH01.marvell.com (10.69.176.38) with Microsoft SMTP Server id 15.0.1497.48 via Frontend Transport; Fri, 29 Sep 2023 04:51:15 -0700 Received: from localhost.localdomain (unknown [10.28.36.157]) by maili.marvell.com (Postfix) with ESMTP id D81D23F704E; Fri, 29 Sep 2023 04:51:10 -0700 (PDT) From: Amit Prakash Shukla <amitprakashs@marvell.com> To: CC: <dev@dpdk.org>, <jerinj@marvell.com>, <fengchengwen@huawei.com>, <kevin.laatz@intel.com>, <bruce.richardson@intel.com>, <conor.walsh@intel.com>, <vattunuru@marvell.com>, <g.singh@nxp.com>, <sachin.saxena@oss.nxp.com>, <hemant.agrawal@nxp.com>, <cheng1.jiang@intel.com>, <ndabilpuram@marvell.com>, <anoobj@marvell.com>, <mb@smartsharesystems.com>, Amit Prakash Shukla <amitprakashs@marvell.com> Subject: [PATCH v8 00/12] event DMA adapter library support Date: Fri, 29 Sep 2023 17:20:39 +0530 Message-ID: <20230929115051.564063-1-amitprakashs@marvell.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230929081309.464565-1-amitprakashs@marvell.com> References: <20230929081309.464565-1-amitprakashs@marvell.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Proofpoint-ORIG-GUID: Ks1Klgpeze4a6rN5DCeSdNaiOOGijvo0 X-Proofpoint-GUID: Ks1Klgpeze4a6rN5DCeSdNaiOOGijvo0 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.267,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-09-29_10,2023-09-28_03,2023-05-22_02 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org |
Series |
event DMA adapter library support
|
|
Message
Amit Prakash Shukla
Sept. 29, 2023, 11:50 a.m. UTC
This series adds support for event DMA adapter library. API's defined as part of this library can be used by the application for DMA transfer of data using event based mechanism. v8: - Re-arranged DMA adapter section in release notes. v7: - Resolved review comments. v6: - Resolved review comments. - Updated git commit message. v5: - Resolved review comments. v4: - Fixed compilation error. v3: - Resolved checkpatch warnings. - Fixed compilation error on intel. - Updated git commit message. v2: - Resolved review comments. - Patch split into multiple patches. Amit Prakash Shukla (12): eventdev/dma: introduce DMA adapter eventdev/dma: support adapter capabilities get eventdev/dma: support adapter create and free eventdev/dma: support vchan add and delete eventdev/dma: support adapter service function eventdev/dma: support adapter start and stop eventdev/dma: support adapter service ID get eventdev/dma: support adapter runtime params eventdev/dma: support adapter stats eventdev/dma: support adapter enqueue eventdev/dma: support adapter event port get app/test: add event DMA adapter auto-test MAINTAINERS | 7 + app/test/meson.build | 1 + app/test/test_event_dma_adapter.c | 805 +++++++++ config/rte_config.h | 1 + doc/api/doxy-api-index.md | 1 + doc/guides/eventdevs/features/default.ini | 8 + doc/guides/prog_guide/event_dma_adapter.rst | 264 +++ doc/guides/prog_guide/eventdev.rst | 8 +- .../img/event_dma_adapter_op_forward.svg | 1086 +++++++++++++ .../img/event_dma_adapter_op_new.svg | 1079 +++++++++++++ doc/guides/prog_guide/index.rst | 1 + doc/guides/rel_notes/release_23_11.rst | 6 + lib/eventdev/eventdev_pmd.h | 171 +- lib/eventdev/eventdev_private.c | 10 + lib/eventdev/meson.build | 4 +- lib/eventdev/rte_event_dma_adapter.c | 1434 +++++++++++++++++ lib/eventdev/rte_event_dma_adapter.h | 581 +++++++ lib/eventdev/rte_eventdev.c | 23 + lib/eventdev/rte_eventdev.h | 44 + lib/eventdev/rte_eventdev_core.h | 8 +- lib/eventdev/version.map | 16 + lib/meson.build | 2 +- 22 files changed, 5553 insertions(+), 7 deletions(-) create mode 100644 app/test/test_event_dma_adapter.c create mode 100644 doc/guides/prog_guide/event_dma_adapter.rst create mode 100644 doc/guides/prog_guide/img/event_dma_adapter_op_forward.svg create mode 100644 doc/guides/prog_guide/img/event_dma_adapter_op_new.svg create mode 100644 lib/eventdev/rte_event_dma_adapter.c create mode 100644 lib/eventdev/rte_event_dma_adapter.h
Comments
On Sat, Sep 30, 2023 at 1:06 AM Amit Prakash Shukla <amitprakashs@marvell.com> wrote: > > This series adds support for event DMA adapter library. API's defined > as part of this library can be used by the application for DMA transfer > of data using event based mechanism. > > v8: > - Re-arranged DMA adapter section in release notes. Updated the git commit as follows and applied series to dpdk-next-net-eventdev/for-main. Thanks commit 9f4e84563c6e27fa6c17662f46a0fd7927228801 (HEAD -> for-main, origin/for-main, origin/HEAD) Author: Amit Prakash Shukla <amitprakashs@marvell.com> Date: Fri Sep 29 17:20:51 2023 +0530 app/test: add event DMA adapter auto-test Added testsuite to test the dma adapter functionality. The testsuite detects event and DMA device capability and accordingly dma adapter is configured and modes are tested. Test command: sudo <build dir>/app/test/dpdk-test --vdev=dma_skeleton \ event_dma_adapter_autotest Signed-off-by: Amit Prakash Shukla <amitprakashs@marvell.com> commit 8c35a6be9d5a2017563b7cf3e3285711ea7b4b3a Author: Amit Prakash Shukla <amitprakashs@marvell.com> Date: Fri Sep 29 17:20:50 2023 +0530 eventdev/dma: support adapter event port get Added support for DMA adapter event port get. Signed-off-by: Amit Prakash Shukla <amitprakashs@marvell.com> commit 72124a5ada9743113bcebeefdfa2cc7bfd01f1ba Author: Amit Prakash Shukla <amitprakashs@marvell.com> Date: Fri Sep 29 17:20:49 2023 +0530 eventdev/dma: support adapter enqueue Added API support to enqueue a DMA operation to the DMA driver. Signed-off-by: Amit Prakash Shukla <amitprakashs@marvell.com> commit 60254867e10d7ceaff14dd1468bcb8ebfc536384 Author: Amit Prakash Shukla <amitprakashs@marvell.com> Date: Fri Sep 29 17:20:48 2023 +0530 eventdev/dma: support adapter stats Added DMA adapter stats API support to get and reset stats. DMA SW adapter stats and eventdev driver supported stats for enqueue and dequeue are reported by get API. Signed-off-by: Amit Prakash Shukla <amitprakashs@marvell.com> commit 1582c998adb0c39b297c14bd26d920dc3ffbfe7e Author: Amit Prakash Shukla <amitprakashs@marvell.com> Date: Fri Sep 29 17:20:47 2023 +0530 eventdev/dma: support adapter runtime params Added support to set and get runtime params for DMA adapter. The parameters that can be set/get are defined in struct rte_event_dma_adapter_runtime_params. Signed-off-by: Amit Prakash Shukla <amitprakashs@marvell.com> commit cacb21e2a5c30221a1327a8fccacde36836c31c2 Author: Amit Prakash Shukla <amitprakashs@marvell.com> Date: Fri Sep 29 17:20:46 2023 +0530 eventdev/dma: support adapter service ID get Added API support to get DMA adapter service ID. Service ID returned in the variable by the API call shall be used by application to map a service core. Signed-off-by: Amit Prakash Shukla <amitprakashs@marvell.com> commit c2d22cda05dd842e8966408880d3d1416820519d Author: Amit Prakash Shukla <amitprakashs@marvell.com> Date: Fri Sep 29 17:20:45 2023 +0530 eventdev/dma: support adapter start and stop Added API support to start and stop DMA adapter. Signed-off-by: Amit Prakash Shukla <amitprakashs@marvell.com> commit 8e54ab5c44cc41995e0f09cbe00ff8423ad19283 Author: Amit Prakash Shukla <amitprakashs@marvell.com> Date: Fri Sep 29 17:20:44 2023 +0530 eventdev/dma: support adapter service function Added support for DMA adapter service function for event devices. Enqueue and dequeue of event from eventdev and DMA device are done based on the adapter mode and the supported HW capabilities. Signed-off-by: Amit Prakash Shukla <amitprakashs@marvell.com> commit cc0a6f2373e1e10471d9a8ffb4d9bcb1f48d68e5 Author: Amit Prakash Shukla <amitprakashs@marvell.com> Date: Fri Sep 29 17:20:43 2023 +0530 eventdev/dma: support vchan add and delete Added API support to add and delete vchan's from the DMA adapter. DMA devid and vchan are added to the adapter instance by calling rte_event_dma_adapter_vchan_add() and deleted using rte_event_dma_adapter_vchan_del(). Signed-off-by: Amit Prakash Shukla <amitprakashs@marvell.com> commit c70b5e254a8f72811865944186e83b267d958804 Author: Amit Prakash Shukla <amitprakashs@marvell.com> Date: Fri Sep 29 17:20:41 2023 +0530 eventdev/dma: support adapter capabilities get Implement rte_event_dma_adapter_caps_get() API to get DMA adapter capabilities supported by the driver. Signed-off-by: Amit Prakash Shukla <amitprakashs@marvell.com> commit abde4c7f93da4bb436908f62bc1fe98f8af2c347 Author: Amit Prakash Shukla <amitprakashs@marvell.com> Date: Fri Sep 29 17:20:40 2023 +0530 eventdev/dma: introduce DMA adapter Introduce event dma adapter interface to transfer packets between dma device and event device. Signed-off-by: Amit Prakash Shukla <amitprakashs@marvell.com> Acked-by: Jerin Jacob <jerinj@marvell.com>