From: Nicolas Ferre Date: Mon, 13 Dec 2010 12:48:41 +0000 (+0100) Subject: dmaengine: at_hdmac: fix buffer transfer size specification X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=59a609d9b59be9452f168fe228befea53d5962ff;p=openwrt%2Fstaging%2Fblogic.git dmaengine: at_hdmac: fix buffer transfer size specification Buffer transfer size is the number of transfers to be performed in relation with the width of the _source_ interface. So in the DMA_FROM_DEVICE case, it should be the register width that should be taken into account. Signed-off-by: Nicolas Ferre Signed-off-by: Dan Williams --- diff --git a/drivers/dma/at_hdmac.c b/drivers/dma/at_hdmac.c index a0f3e6a06e06..ea0ee81cff53 100644 --- a/drivers/dma/at_hdmac.c +++ b/drivers/dma/at_hdmac.c @@ -722,7 +722,7 @@ atc_prep_slave_sg(struct dma_chan *chan, struct scatterlist *sgl, desc->lli.daddr = mem; desc->lli.ctrla = ctrla | ATC_DST_WIDTH(mem_width) - | len >> mem_width; + | len >> reg_width; desc->lli.ctrlb = ctrlb; if (!first) {