From: fengchengwen <fengchengwen@huawei.com>
To: <pbhagavatula@marvell.com>, <jerinj@marvell.com>,
Kevin Laatz <kevin.laatz@intel.com>,
Bruce Richardson <bruce.richardson@intel.com>,
Gagandeep Singh <g.singh@nxp.com>,
Sachin Saxena <sachin.saxena@nxp.com>,
Hemant Agrawal <hemant.agrawal@nxp.com>
Cc: <vattunuru@marvell.com>, <conor.walsh@intel.com>,
<gmuthukrishn@marvell.com>, <vvelumuri@marvell.com>,
<anatoly.burakov@intel.com>, <dev@dpdk.org>
Subject: Re: [25.11 PATCH 1/3] dmadev: add enqueue dequeue operations
Date: Thu, 24 Apr 2025 15:01:26 +0800 [thread overview]
Message-ID: <b296e45a-131e-4956-a9dd-260d7a120996@huawei.com> (raw)
In-Reply-To: <20250416100931.6544-2-pbhagavatula@marvell.com>
Hi Pavan,
On 2025/4/16 18:09, pbhagavatula@marvell.com wrote:
> From: Pavan Nikhilesh <pbhagavatula@marvell.com>
>
> Add enqueue/dequeue operations that use struct rte_dma_op
> to communicate with the dma device.
> These operations need to be enabled at dma device configuration
> time by setting the flag rte_dma_conf::enable_enq_deq if the
> device supports RTE_DMA_CAPA_OPS_ENQ_DEQ capability.
> The enqueue dequeue operations are not compatible with
> rte_dma_copy, rte_dma_copy_sg, rte_dma_fill, rte_dma_submit,
> rte_dma_completed, rte_dma_completed_status range of APIs.
>
> Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
> ---
> app/test/test_dmadev.c | 160 +++++++++++++++++++++++++++
> app/test/test_dmadev_api.c | 78 +++++++++++--
> doc/guides/prog_guide/dmadev.rst | 34 ++++++
> drivers/dma/dpaa/dpaa_qdma.c | 2 +-
> drivers/dma/dpaa2/dpaa2_qdma.c | 2 +-
> lib/dmadev/rte_dmadev.c | 30 ++++-
> lib/dmadev/rte_dmadev.h | 155 ++++++++++++++++++++++++--
> lib/dmadev/rte_dmadev_core.h | 10 ++
> lib/dmadev/rte_dmadev_trace.h | 2 +-
> lib/dmadev/rte_dmadev_trace_fp.h | 20 ++++
> lib/dmadev/rte_dmadev_trace_points.c | 6 +
> 11 files changed, 477 insertions(+), 22 deletions(-)
It seemed this API couldn't use at the same time with original API. Could you describe this explicitly?
I'm inferring that this feature is added mainly for performance. and we traded it off when design the API.
So could you share the performance gain when use this API compared with original API?
You have show the programming model for the enqueue/dequeue operations at cover letter, that's nice,
but I want to know the higher level: how the library API interact with Application. so that I can
understand why the rte_dma_op contain so such fields.
And also, please split this commit to at least two: one for library, one for UT.
Thanks
next prev parent reply other threads:[~2025-04-24 7:01 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-16 10:09 [25.11 PATCH 0/3] Introduce DMA enqueue/dequeue operations pbhagavatula
2025-04-16 10:09 ` [25.11 PATCH 1/3] dmadev: add enqueue dequeue operations pbhagavatula
2025-04-24 7:01 ` fengchengwen [this message]
2025-04-16 10:09 ` [25.11 PATCH 2/3] dma/cnxk: implement enqueue dequeue ops pbhagavatula
2025-04-16 10:09 ` [25.11 PATCH 3/3] eventdev: refactor DMA adapter ops pbhagavatula
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=b296e45a-131e-4956-a9dd-260d7a120996@huawei.com \
--to=fengchengwen@huawei.com \
--cc=anatoly.burakov@intel.com \
--cc=bruce.richardson@intel.com \
--cc=conor.walsh@intel.com \
--cc=dev@dpdk.org \
--cc=g.singh@nxp.com \
--cc=gmuthukrishn@marvell.com \
--cc=hemant.agrawal@nxp.com \
--cc=jerinj@marvell.com \
--cc=kevin.laatz@intel.com \
--cc=pbhagavatula@marvell.com \
--cc=sachin.saxena@nxp.com \
--cc=vattunuru@marvell.com \
--cc=vvelumuri@marvell.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).