Re: [PATCH resend] dma: pl330: Fix cyclic transfers

From: Vinod Koul
Date: Mon Jul 22 2013 - 06:01:18 EST


On Tue, Jul 16, 2013 at 04:13:23PM +0200, Lars-Peter Clausen wrote:
> Allocate a descriptor for each period of a cyclic transfer, not just the first.
> Also since the callback needs to be called for each finished period make sure to
> initialize the callback and callback_param fields of each descriptor in a cyclic
> transfer.


> switch (direction) {
> case DMA_MEM_TO_DEV:
> - desc->rqcfg.src_inc = 1;
> - desc->rqcfg.dst_inc = 0;
> - desc->req.rqtype = MEMTODEV;
> - src = dma_addr;
> - dst = pch->fifo_addr;
> - break;
> case DMA_DEV_TO_MEM:
> - desc->rqcfg.src_inc = 0;
> - desc->rqcfg.dst_inc = 1;
> - desc->req.rqtype = DEVTOMEM;
> - src = pch->fifo_addr;
> - dst = dma_addr;
> break;
> default:
> dev_err(pch->dmac->pif.dev, "%s:%d Invalid dma direction\n",
shouldnt the whole switch be removed and for error check you should use
is_slave_direction()

~Vinod
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/