This patch set contains seven patch for new add dmadev. Chengwen Feng (7): dmadev: introduce DMA device library public APIs dmadev: introduce DMA device library internal header dmadev: introduce DMA device library PMD header dmadev: introduce DMA device library implementation doc: add DMA device library guide dma/skeleton: introduce skeleton dmadev driver app/test: add dmadev API test
--- 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. v19: * squash maintainer patch to patch #1. v18: * RTE_DMA_STATUS_* add BUS_READ/WRITE_ERR, PAGE_FAULT. * rte_dmadev dataplane API add judge dev_started when debug enable. * rte_dmadev_start/vchan_setup add judge device configured. * rte_dmadev_dump support format capability name. * optimized the comments of rte_dmadev. * fix skeldma_copy always return zero when enqueue successful. * log encapsulation macro add newline characters. * test_dmadev_api support rte_dmadev_dump() ut. MAINTAINERS | 7 + app/test/meson.build | 4 + app/test/test_dmadev.c | 43 + app/test/test_dmadev_api.c | 543 ++++++++++++ config/rte_config.h | 3 + doc/api/doxy-api-index.md | 1 + doc/api/doxy-api.conf.in | 1 + doc/guides/prog_guide/dmadev.rst | 125 +++ doc/guides/prog_guide/img/dmadev.svg | 283 +++++++ doc/guides/prog_guide/index.rst | 1 + doc/guides/rel_notes/release_21_11.rst | 5 + drivers/dma/meson.build | 11 + drivers/dma/skeleton/meson.build | 7 + drivers/dma/skeleton/skeleton_dmadev.c | 594 ++++++++++++++ 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 | 607 ++++++++++++++ lib/dmadev/rte_dmadev.h | 1047 ++++++++++++++++++++++++ lib/dmadev/rte_dmadev_core.h | 187 +++++ lib/dmadev/rte_dmadev_pmd.h | 72 ++ lib/dmadev/version.map | 35 + lib/meson.build | 1 + 24 files changed, 3649 insertions(+) create mode 100644 app/test/test_dmadev.c create mode 100644 app/test/test_dmadev_api.c 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