From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 5B179A034F; Thu, 29 Jul 2021 15:11:22 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C64AD410F9; Thu, 29 Jul 2021 15:11:17 +0200 (CEST) Received: from szxga08-in.huawei.com (szxga08-in.huawei.com [45.249.212.255]) by mails.dpdk.org (Postfix) with ESMTP id 6C49640DFB for ; Thu, 29 Jul 2021 15:11:11 +0200 (CEST) Received: from dggemv711-chm.china.huawei.com (unknown [172.30.72.57]) by szxga08-in.huawei.com (SkyGuard) with ESMTP id 4Gb9jy58zjz1CPpK; Thu, 29 Jul 2021 21:05:10 +0800 (CST) Received: from dggpeml500024.china.huawei.com (7.185.36.10) by dggemv711-chm.china.huawei.com (10.1.198.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2176.2; Thu, 29 Jul 2021 21:11:07 +0800 Received: from localhost.localdomain (10.67.165.24) by dggpeml500024.china.huawei.com (7.185.36.10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2176.2; Thu, 29 Jul 2021 21:11:07 +0800 From: Chengwen Feng To: , , , , , CC: , , , , , , , , , Date: Thu, 29 Jul 2021 21:06:53 +0800 Message-ID: <1627564019-10649-1-git-send-email-fengchengwen@huawei.com> X-Mailer: git-send-email 2.8.1 In-Reply-To: <1625231891-2963-1-git-send-email-fengchengwen@huawei.com> References: <1625231891-2963-1-git-send-email-fengchengwen@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-Originating-IP: [10.67.165.24] X-ClientProxiedBy: dggems703-chm.china.huawei.com (10.3.19.180) To dggpeml500024.china.huawei.com (7.185.36.10) X-CFilter-Loop: Reflected Subject: [dpdk-dev] [PATCH v12 0/6] support dmadev X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" This patch set contains six patch for new add dmadev. Chengwen Feng (6): 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 maintainers: add for dmadev --- v12: * add max_sges filed for struct rte_dmadev_info. * add more descriptor of dmadev.rst. * replace scatter with scatter gather in code comment. * split to six patch. * fix typo. v11: * rename RTE_DMA_STATUS_UNKNOWN to RTE_DMA_STATUS_ERROR_UNKNOWN. * add RTE_DMA_STATUS_INVALID_ADDR marco. * update release-note. * add acked-by for 1/2 patch. * add dmadev programming guide which is 2/2 patch. v10: * fix rte_dmadev_completed_status comment. v9: * delete RTE_ASSERT invoke. * make sure vchan setup fail when device started. * add check src/dst port parameter when setup vchan. * rename some variables in rte_dmadev.c. v8: * fix pcie access port diagram doxygen problem. * fix typo. * fix compile warning when enable DMADEV_DEBUG. v7: * add rte_dmadev_get_dev_id API. * fix typo. * use the default macro assignment scheme. * rename RTE_DMA_DEV_CAPA_* to RTE_DMADEV_CAPA_*. * rename rte_dmadev_conf.silent_mode to enable_silent. * add memset when get stats. v6: * delete fence capability. * delete vchan_release ops. * copy_sg direct use src/dst/nb_src/nb_dst as paramter. * define rte_dma_direction, don't support multiple direction in the same vchan. * fix segment fault when allocate. * fix typo. * fix comments format. v5: * add doxy-api-* file modify. * use RTE_LOG_REGISTER_DEFAULT. * fix typo. * resolve some incorrect comments. * fix some doxgen problem. * fix version.map still hold rte_dmadev_completed_fails. v4: * replace xxx_complete_fails with xxx_completed_status. * add SILENT capability, also a silent_mode in rte_dmadev_conf. * add op_flag_llc for performance. * rename dmadev_xxx_t to rte_dmadev_xxx_t to avoid namespace conflict. * delete filed 'enqueued_count' from rte_dmadev_stats. * make rte_dmadev hold 'dev_private' filed. * add RTE_DMA_STATUS_NOT_ATTEMPED status code. * rename RTE_DMA_STATUS_ACTIVE_DROP to RTE_DMA_STATUS_USER_ABORT. * rename rte_dma_sg(e) to rte_dmadev_sg(e) to make sure all struct prefix with rte_dmadev. * put the comment afterwards. * fix some doxgen problem. * delete macro RTE_DMADEV_VALID_DEV_ID_OR_RET and RTE_DMADEV_PTR_OR_ERR_RET. * replace strlcpy with rte_strscpy. * other minor modifications from review comment. v3: * rm reset and fill_sg ops. * rm MT-safe capabilities. * add submit flag. * redefine rte_dma_sg to implement asymmetric copy. * delete some reserved field for future use. * rearrangement rte_dmadev/rte_dmadev_data struct. * refresh rte_dmadev.h copyright. * update vchan setup parameter. * modified some inappropriate descriptions. * arrange version.map alphabetically. * other minor modifications from review comment. MAINTAINERS | 5 + 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 | 147 +++++ doc/guides/prog_guide/index.rst | 1 + doc/guides/rel_notes/release_21_08.rst | 6 + lib/dmadev/meson.build | 7 + lib/dmadev/rte_dmadev.c | 563 +++++++++++++++++ lib/dmadev/rte_dmadev.h | 1059 ++++++++++++++++++++++++++++++++ lib/dmadev/rte_dmadev_core.h | 182 ++++++ lib/dmadev/rte_dmadev_pmd.h | 72 +++ lib/dmadev/version.map | 36 ++ lib/meson.build | 1 + 14 files changed, 2084 insertions(+) create mode 100644 doc/guides/prog_guide/dmadev.rst 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.8.1