Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752138AbdGaMbK (ORCPT ); Mon, 31 Jul 2017 08:31:10 -0400 Received: from mga02.intel.com ([134.134.136.20]:1533 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751784AbdGaMbI (ORCPT ); Mon, 31 Jul 2017 08:31:08 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.40,442,1496127600"; d="scan'208";a="999121107" Date: Mon, 31 Jul 2017 18:04:05 +0530 From: Vinod Koul To: Abhishek Sahu Cc: andy.gross@linaro.org, david.brown@linaro.org, dan.j.williams@intel.com, linux-arm-msm@vger.kernel.org, linux-soc@vger.kernel.org, dmaengine@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 1/3] dmaengine: add DMA_PREP_CMD for non-Data descriptors. Message-ID: <20170731123405.GK3053@localhost> References: <1498481369-29497-1-git-send-email-absahu@codeaurora.org> <1498481369-29497-2-git-send-email-absahu@codeaurora.org> <20170719100753.GF3053@localhost> <2060be251cdc87fba73a891425caa7a3@codeaurora.org> <4a4a5956cff8c5f49f4f44dfbfd0589e@codeaurora.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <4a4a5956cff8c5f49f4f44dfbfd0589e@codeaurora.org> User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2794 Lines: 80 On Fri, Jul 28, 2017 at 09:38:56PM +0530, Abhishek Sahu wrote: > On 2017-07-19 17:48, Abhishek Sahu wrote: > >On 2017-07-19 15:37, Vinod Koul wrote: > >>On Mon, Jun 26, 2017 at 06:19:27PM +0530, Abhishek Sahu wrote: > >>>Some of the DMA controllers are capable of issuing the commands > >>>to peripheral by the DMA. These commands can be list of register > >>>reads/writes and its different from normal data reads/writes. > >>>This patch adds new flag DMA_PREP_CMD in DMA API which tells > >>>the driver that the data passed to DMA API is in command format > >>>and DMA driver will form descriptor in the required format. > >>> > >>>This flag can be used by any DMA controller driver which requires > >>>special handling for non-Data descriptors. > >> > >>Please add Documentation for this new flag in > >>Documentation/dmaengine/provider.txt > >> > > > > Sure. I will add update the documentation in v3. > > > >>> > >>>Signed-off-by: Abhishek Sahu > >>>--- > >>> include/linux/dmaengine.h | 3 +++ > >>> 1 file changed, 3 insertions(+) > >>> > >>>diff --git a/include/linux/dmaengine.h b/include/linux/dmaengine.h > >>>index 5336808..bbc297e 100644 > >>>--- a/include/linux/dmaengine.h > >>>+++ b/include/linux/dmaengine.h > >>>@@ -186,6 +186,8 @@ struct dma_interleaved_template { > >>> * on the result of this operation > >>> * @DMA_CTRL_REUSE: client can reuse the descriptor and submit again > >>>till > >>> * cleared or freed > >>>+ * @DMA_PREP_CMD: tell the driver that the data passed to DMA API is > >>>in command > >>>+ * format and it will be used for configuring the peripheral > >>>registers. > >> > >>Can you explain what is command format..? > >> > > > > The command format is not generic and its format will be dependent > > upon DMA engine. The client drivers will give data in its own > > command formats and this flag will be passed to DMA API’s to do > > the parsing according to its own command format. > > > > Currently this flag description and name is inclined towards > > Qualcomm BAM DMA command flag. We want to make this flag as > > generic one so require your suggestion regarding this. > > Will renaming this flag as DMA_PREP_NON_DATA or > > DMA_PREP_CUSTOM make it more generic? > > > > can we use same flag name DMA_PREP_CMD or should we > go for some other name? Are you asking for using DMA_PREP_CMD, for that I think should be ok If you asking about adding a new flag with DMA_PREP_CMD, then it would no > > >>> */ > >>> enum dma_ctrl_flags { > >>> DMA_PREP_INTERRUPT = (1 << 0), > >>>@@ -195,6 +197,7 @@ enum dma_ctrl_flags { > >>> DMA_PREP_CONTINUE = (1 << 4), > >>> DMA_PREP_FENCE = (1 << 5), > >>> DMA_CTRL_REUSE = (1 << 6), > >>>+ DMA_PREP_CMD = (1 << 7), > >>> }; > >>> > > > -- > Abhishek Sahu -- ~Vinod