From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vinod Koul Subject: Re: [PATCH V2] dmaengine: qcom_hidma: correct API violation for submit Date: Mon, 3 Jul 2017 10:40:22 +0530 Message-ID: <20170703051022.GZ19154@localhost> References: <1498833785-22632-1-git-send-email-okaya@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from mga11.intel.com ([192.55.52.93]:9954 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750980AbdGCFH1 (ORCPT ); Mon, 3 Jul 2017 01:07:27 -0400 Content-Disposition: inline In-Reply-To: <1498833785-22632-1-git-send-email-okaya@codeaurora.org> Sender: linux-arm-msm-owner@vger.kernel.org List-Id: linux-arm-msm@vger.kernel.org To: Sinan Kaya Cc: dmaengine@vger.kernel.org, timur@codeaurora.org, linux-arm-msm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Andy Gross , David Brown , Dan Williams , linux-soc@vger.kernel.org, linux-kernel@vger.kernel.org On Fri, Jun 30, 2017 at 10:43:05AM -0400, Sinan Kaya wrote: > Current code is violating the DMA Engine API by putting the submitted > requests directly into the HW queue. This causes queued transactions > to be started by another thread as soon as the first one finishes. > > The DMA Engine document clearly states this. > > "dmaengine_submit() will not start the DMA operation". > > Move HW queuing of the requests into the issue_pending() routine > to comply with API requirements also create a new queued state for > temporarily holding the requests. > > A descriptor goes through these transitions now. > > free->prepared->queued->active->completed->free > > as opposed to > > free->prepared->active->completed->free Applied, thanks -- ~Vinod