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 3CFCEA0C55; Wed, 13 Oct 2021 17:18:02 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id AF0E5410DA; Wed, 13 Oct 2021 17:18:01 +0200 (CEST) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by mails.dpdk.org (Postfix) with ESMTP id 824E640E64 for ; Wed, 13 Oct 2021 17:17:59 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10136"; a="290944021" X-IronPort-AV: E=Sophos;i="5.85,371,1624345200"; d="scan'208";a="290944021" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Oct 2021 08:17:45 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.85,371,1624345200"; d="scan'208";a="441682012" Received: from silpixa00399126.ir.intel.com ([10.237.223.151]) by orsmga006.jf.intel.com with ESMTP; 13 Oct 2021 08:17:43 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: conor.walsh@intel.com, kevin.laatz@intel.com, fengchengwen@huawei.com, jerinj@marvell.com, Bruce Richardson Date: Wed, 13 Oct 2021 16:17:23 +0100 Message-Id: <20211013151736.762378-1-bruce.richardson@intel.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20210924102942.2878051-1-bruce.richardson@intel.com> References: <20210924102942.2878051-1-bruce.richardson@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v7 00/13] add test suite for DMA drivers 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 patchset adds a fairly comprehensive set of tests for basic dmadev functionality. Tests are added to verify basic copy operation in each device, using both submit function and submit flag, and verifying completion gathering using both "completed()" and "completed_status()" functions. Beyond that, tests are then added for the error reporting and handling, as is a suite of tests for the fill() operation for devices that support those. New in version 6 of the series are a couple of new patches to add support for the skeleton dmadev to pass the suite of tests. This includes adding missing function support to it, as well as adding a capability flag to dmadev to indicate that it can't support invalid addresses. Depends-on: series-19594 ("support dmadev") V7: * rebased to dmadev v26 patchset V6: * changed type of dev_id from uint16_t to int16_t * moved burst_capacity function to datapath function set * added burst_capacity function and vchan_status functions to skeleton driver * added capability flag to indicate if device supports handling errors * enabled running unit tests on skeleton driver V5: * added missing reviewed-by tags from v3 reviewed. V4: * rebased to v22 of dmadev set * added patch for iteration macro for dmadevs to allow testing each dmadev in turn V3: * add patch and tests for a burst-capacity function * addressed review feedback from v2 * code cleanups to try and shorten code where possible V2: * added into dmadev a API to check for a device being idle * removed the hard-coded timeout delays before checking completions, and instead wait for device to be idle * added in checks for statistics updates as part of some tests * fixed issue identified by internal coverity scan * other minor miscellaneous changes and fixes. Bruce Richardson (10): dmadev: add channel status check for testing use dma/skeleton: add channel status function dma/skeleton: add burst capacity function dmadev: add device iterator app/test: add basic dmadev instance tests app/test: add basic dmadev copy tests app/test: run test suite on skeleton driver app/test: add more comprehensive dmadev copy tests dmadev: add flag for error handling support app/test: test dmadev instance failure handling Kevin Laatz (3): dmadev: add burst capacity API app/test: add dmadev fill tests app/test: add dmadev burst capacity API test app/test/test_dmadev.c | 830 ++++++++++++++++++++++++- drivers/dma/skeleton/skeleton_dmadev.c | 28 +- drivers/dma/skeleton/skeleton_dmadev.h | 2 +- lib/dmadev/rte_dmadev.c | 40 ++ lib/dmadev/rte_dmadev.h | 89 +++ lib/dmadev/rte_dmadev_core.h | 4 + lib/dmadev/rte_dmadev_pmd.h | 5 + lib/dmadev/version.map | 3 + 8 files changed, 995 insertions(+), 6 deletions(-) -- 2.30.2