[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