diff --git a/drivers/dma/dw_dmac.c b/drivers/dma/dw_dmac.c index 7f9f3324de17..5816da34129d 100644 --- a/drivers/dma/dw_dmac.c +++ b/drivers/dma/dw_dmac.c @@ -757,6 +757,7 @@ dwc_prep_dma_memcpy(struct dma_chan *chan, dma_addr_t dest, dma_addr_t src, desc->lli.dar = dest + offset; desc->lli.ctllo = ctllo; desc->lli.ctlhi = xfer_count; + desc->len = xfer_count << src_width; if (!first) { first = desc; @@ -855,6 +856,7 @@ dwc_prep_slave_sg(struct dma_chan *chan, struct scatterlist *sgl, } desc->lli.ctlhi = dlen >> mem_width; + desc->len = dlen; if (!first) { first = desc; @@ -913,6 +915,7 @@ dwc_prep_slave_sg(struct dma_chan *chan, struct scatterlist *sgl, len = 0; } desc->lli.ctlhi = dlen >> reg_width; + desc->len = dlen; if (!first) { first = desc;