[PATCH] dma: ti: fix a missing check in omap_dma_prep_dma_cyclic
From: Kangjie Lu
Date: Sat Mar 23 2019 - 18:40:00 EST
It is invalid when "buf_len" is not aligned with "period_len".
The fix adds a check for the alignment.
Signed-off-by: Kangjie Lu <kjlu@xxxxxxx>
---
drivers/dma/ti/omap-dma.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/dma/ti/omap-dma.c b/drivers/dma/ti/omap-dma.c
index a4a931ddf6f6..5f0ce1975e52 100644
--- a/drivers/dma/ti/omap-dma.c
+++ b/drivers/dma/ti/omap-dma.c
@@ -1065,6 +1065,9 @@ static struct dma_async_tx_descriptor *omap_dma_prep_dma_cyclic(
unsigned es;
u32 burst;
+ if (buf_len % period_len)
+ return NULL;
+
if (dir == DMA_DEV_TO_MEM) {
dev_addr = c->cfg.src_addr;
dev_width = c->cfg.src_addr_width;
--
2.17.1