[PATCH V2 08/12] dmaengine/dw_dmac: Unmap all memory buffers after completion of slave transfers

Vinod Koul vinod.koul at intel.com
Mon Jan 30 22:58:32 EST 2012


On Wed, 2012-01-18 at 15:24 +0530, Viresh Kumar wrote:
> On 1/18/2012 3:06 PM, Russell King - ARM Linux wrote:
> > On Wed, Jan 18, 2012 at 02:41:55PM +0530, Viresh Kumar wrote:
> > NAK.  For reasons stated previously and subsequently ignored.
> > .
> > 
> 
> On 1/18/2012 3:05 PM, Russell King - ARM Linux wrote:
> >> > You implemented similar stuff in amba-pl08x :) .
> >> > 
> >> > if (!plchan->slave)
> >> > 	pl08x_unmap_buffers(txd);
> > Take a look at that.  "If *NOT* slave, unmap the buffers".
> 
> [Following is picked from current implementation of dw_dmac:]
> 
> 	if (!dwc->chan.private) {
> 		struct device *parent = chan2parent(&dwc->chan);
> 		if (!(txd->flags & DMA_COMPL_SKIP_DEST_UNMAP)) {
> 
> Sorry, I missed the most straight forward looking code. :(
> Actually, dw_dmac is also doing the same, i.e. unmapping only for
> non-slave transfers.
> 
> The same patch is still applicable, after fixing message subject and log.
> I will resend it, with message log fixed, once i get more feedbacks on V2.
> 
But this patch seems to unmap for *all* descriptors, so you need to fix
that as well, apart from the ones stated above.


-- 
~Vinod




More information about the linux-arm-kernel mailing list