This patch set contains six patch for new add dmadev. Chengwen Feng (6): dmadev: introduce DMA device library dmadev: add control plane API support dmadev: add data plane API support dmadev: add multi-process support dma/skeleton: introduce skeleton dmadev driver app/test: add dmadev API test
--- v24: * use rte_dma_fp_object to hide implementation details. * support group doxygen for RTE_DMA_CAPA_* and RTE_DMA_OP_*. * adjusted the naming of some functions. * fix typo. v23: * split multi-process support from 1st patch. * fix some static check warning. * fix skeleton cpu thread zero_req_count flip bug. * add test_dmadev_api.h. * add the description of modifying the dmadev state when init OK. v22: * function prefix change from rte_dmadev_* to rte_dma_*. * change to prefix comment in most scenarios. * dmadev dev_id use int16_t type. * fix typo. * organize patchsets in incremental mode. v21: * add comment for reserved fields of struct rte_dmadev. v20: * delete unnecessary and duplicate include header files. * the conf_sz parameter is added to the configure and vchan-setup callbacks of the PMD, this is mainly used to enhance ABI compatibility. * the rte_dmadev structure field is rearranged to reserve more space for I/O functions. * fix some ambiguous and unnecessary comments. * fix the potential memory leak of ut. * redefine skeldma_init_once to skeldma_count. * suppress rte_dmadev error output when execute ut. MAINTAINERS | 7 + app/test/meson.build | 4 + app/test/test_dmadev.c | 41 + app/test/test_dmadev_api.c | 574 +++++++++++++ app/test/test_dmadev_api.h | 5 + doc/api/doxy-api-index.md | 1 + doc/api/doxy-api.conf.in | 1 + doc/guides/dmadevs/index.rst | 12 + doc/guides/index.rst | 1 + doc/guides/prog_guide/dmadev.rst | 120 +++ doc/guides/prog_guide/img/dmadev.svg | 283 +++++++ doc/guides/prog_guide/index.rst | 1 + doc/guides/rel_notes/release_21_11.rst | 6 + drivers/dma/meson.build | 6 + drivers/dma/skeleton/meson.build | 7 + drivers/dma/skeleton/skeleton_dmadev.c | 571 +++++++++++++ drivers/dma/skeleton/skeleton_dmadev.h | 61 ++ drivers/dma/skeleton/version.map | 3 + drivers/meson.build | 1 + lib/dmadev/meson.build | 7 + lib/dmadev/rte_dmadev.c | 844 +++++++++++++++++++ lib/dmadev/rte_dmadev.h | 1048 ++++++++++++++++++++++++ lib/dmadev/rte_dmadev_core.h | 78 ++ lib/dmadev/rte_dmadev_pmd.h | 173 ++++ lib/dmadev/version.map | 35 + lib/meson.build | 1 + 26 files changed, 3891 insertions(+) create mode 100644 app/test/test_dmadev.c create mode 100644 app/test/test_dmadev_api.c create mode 100644 app/test/test_dmadev_api.h create mode 100644 doc/guides/dmadevs/index.rst create mode 100644 doc/guides/prog_guide/dmadev.rst create mode 100644 doc/guides/prog_guide/img/dmadev.svg create mode 100644 drivers/dma/meson.build create mode 100644 drivers/dma/skeleton/meson.build create mode 100644 drivers/dma/skeleton/skeleton_dmadev.c create mode 100644 drivers/dma/skeleton/skeleton_dmadev.h create mode 100644 drivers/dma/skeleton/version.map create mode 100644 lib/dmadev/meson.build create mode 100644 lib/dmadev/rte_dmadev.c create mode 100644 lib/dmadev/rte_dmadev.h create mode 100644 lib/dmadev/rte_dmadev_core.h create mode 100644 lib/dmadev/rte_dmadev_pmd.h create mode 100644 lib/dmadev/version.map -- 2.33.0