[v8,00/12] event DMA adapter library support

Message ID 20230929115051.564063-1-amitprakashs@marvell.com (mailing list archive)
Headers
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

Jerin Jacob Oct. 3, 2023, 5:13 a.m. UTC | #1
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>