From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nipun Gupta Subject: [PATCH v6 0/8] Introduce DPAA2 QDMA raw driver Date: Wed, 2 May 2018 22:39:24 +0530 Message-ID: <1525280972-27736-1-git-send-email-nipun.gupta@nxp.com> References: <1525168731-30912-1-git-send-email-nipun.gupta@nxp.com> Mime-Version: 1.0 Content-Type: text/plain Cc: dev@dpdk.org, Nipun Gupta To: thomas@monjalon.net, hemant.agrawal@nxp.com, shreyansh.jain@nxp.com Return-path: Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-he1eur01hn0226.outbound.protection.outlook.com [104.47.0.226]) by dpdk.org (Postfix) with ESMTP id 2A44ADED for ; Wed, 2 May 2018 19:10:17 +0200 (CEST) In-Reply-To: <1525168731-30912-1-git-send-email-nipun.gupta@nxp.com> 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 introduces DPAA2 based QDMA device driver. It provide means to initiate a DMA transaction from CPU. The initiated DMA is performed without CPU being involved in the actual DMA transaction. This patch series is rebased on dpdk master branch Patch 1: Support meson build in raw Patches 2-4: Makes necessary changes in the DPAA2 bus Patches 5-7: Add the DPAA2 QDMA driver Patch 8: Update the documentation Changes in v2: - Rebased over master branch - Pulled in couple of changes which were in CMDIF series - patch 3: some updations, patch 4 - handle failues in device init correctly - Updated the logging, added DP logs - Fixed remove_hw_queues_from_list function Changes in v3: - Fix compilation issue introduced due to a very recent change of removal of dma_addr_t. Fix in patch 7 where dma_addr_t was used. Changes in v4: - Support meson build for raw and dpaa2 qdma (patch 1 & 5) - Merged the two separate doc patches (patch 8) Changes in v5: - install user header file (rte_pmd_dpaa2_qdma.h) in case of meson build where it is introduced (patch 6). Previously it was added in patch 5. Changes in v6: - Fix meson shared build Nipun Gupta (8): raw: support meson build bus/fslmc: support MC DPDMAI object bus/fslmc: support scanning and probing of QDMA devices bus/fslmc: add macros required by QDMA for FLE and FD raw/dpaa2_qdma: introduce the DPAA2 QDMA driver raw/dpaa2_qdma: support configuration APIs raw/dpaa2_qdma: support enq and deq operations doc: add DPAA2 QDMA rawdev guide MAINTAINERS | 9 + config/common_base | 5 + config/common_linuxapp | 1 + doc/api/doxy-api-index.md | 1 + doc/api/doxy-api.conf | 1 + doc/guides/index.rst | 1 + doc/guides/rawdevs/dpaa2_qdma.rst | 140 +++ doc/guides/rawdevs/index.rst | 14 + doc/guides/rel_notes/release_18_05.rst | 8 + drivers/bus/fslmc/Makefile | 9 +- drivers/bus/fslmc/fslmc_bus.c | 2 + drivers/bus/fslmc/fslmc_vfio.c | 1 + drivers/bus/fslmc/mc/dpdmai.c | 429 +++++++++ drivers/bus/fslmc/mc/fsl_dpdmai.h | 189 ++++ drivers/bus/fslmc/mc/fsl_dpdmai_cmd.h | 107 +++ drivers/bus/fslmc/meson.build | 1 + drivers/bus/fslmc/portal/dpaa2_hw_pvt.h | 8 +- drivers/bus/fslmc/rte_bus_fslmc_version.map | 9 + drivers/bus/fslmc/rte_fslmc.h | 2 + drivers/meson.build | 3 +- drivers/raw/Makefile | 3 + drivers/raw/dpaa2_qdma/Makefile | 36 + drivers/raw/dpaa2_qdma/dpaa2_qdma.c | 1002 ++++++++++++++++++++ drivers/raw/dpaa2_qdma/dpaa2_qdma.h | 150 +++ drivers/raw/dpaa2_qdma/dpaa2_qdma_logs.h | 46 + drivers/raw/dpaa2_qdma/meson.build | 9 + drivers/raw/dpaa2_qdma/rte_pmd_dpaa2_qdma.h | 286 ++++++ .../raw/dpaa2_qdma/rte_pmd_dpaa2_qdma_version.map | 20 + drivers/raw/meson.build | 7 + drivers/raw/skeleton_rawdev/meson.build | 8 + mk/rte.app.mk | 3 + 31 files changed, 2504 insertions(+), 6 deletions(-) create mode 100644 doc/guides/rawdevs/dpaa2_qdma.rst create mode 100644 doc/guides/rawdevs/index.rst create mode 100644 drivers/bus/fslmc/mc/dpdmai.c create mode 100644 drivers/bus/fslmc/mc/fsl_dpdmai.h create mode 100644 drivers/bus/fslmc/mc/fsl_dpdmai_cmd.h create mode 100644 drivers/raw/dpaa2_qdma/Makefile create mode 100644 drivers/raw/dpaa2_qdma/dpaa2_qdma.c create mode 100644 drivers/raw/dpaa2_qdma/dpaa2_qdma.h create mode 100644 drivers/raw/dpaa2_qdma/dpaa2_qdma_logs.h create mode 100644 drivers/raw/dpaa2_qdma/meson.build create mode 100644 drivers/raw/dpaa2_qdma/rte_pmd_dpaa2_qdma.h create mode 100644 drivers/raw/dpaa2_qdma/rte_pmd_dpaa2_qdma_version.map create mode 100644 drivers/raw/meson.build create mode 100644 drivers/raw/skeleton_rawdev/meson.build -- 1.9.1