From: Peter Ujfalusi Date: Mon, 14 Apr 2014 11:41:58 +0000 (+0300) Subject: dmaengine: edma: Correct the handling of src/dst_maxburst == 0 X-Git-Tag: Ubuntu-5.4-5.4.0-11.14~14337^2~59 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=b2b617de04081931cc10fd862b76b9fcaa9489e2;p=mirror_ubuntu-focal-kernel.git dmaengine: edma: Correct the handling of src/dst_maxburst == 0 When clients asks for maxburst = 0 it is basically the same case as if they were asking for maxburst = 1 since in both case ASYNC need to be used and the eDMA is expected to write/read one word per DMA request. Signed-off-by: Peter Ujfalusi Acked-by: Joel Fernandes Reviewed-and-Tested-by: Joel Fernandes Signed-off-by: Vinod Koul --- diff --git a/drivers/dma/edma.c b/drivers/dma/edma.c index 926360c2db6a..d7649d229755 100644 --- a/drivers/dma/edma.c +++ b/drivers/dma/edma.c @@ -287,6 +287,10 @@ static int edma_config_pset(struct dma_chan *chan, struct edmacc_param *pset, int absync; acnt = dev_width; + + /* src/dst_maxburst == 0 is the same case as src/dst_maxburst == 1 */ + if (!burst) + burst = 1; /* * If the maxburst is equal to the fifo width, use * A-synced transfers. This allows for large contiguous