[PATCH] dmaengine: edma: re-initialize dummy slot during system resume

From: Vignesh R
Date: Wed Nov 23 2016 - 04:28:15 EST


The last param set in a transfer should always be pointing to dummy
param set in non-cyclic mode. When system wakes from low power state
EDMA PARAM slots may be reset to random values. Hence, re-initialize
dummy slot to dummy param set on system resume.

Signed-off-by: Vignesh R <vigneshr@xxxxxx>
Acked-by: Peter Ujfalusi <peter.ujfalusi@xxxxxx>
---
drivers/dma/edma.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/drivers/dma/edma.c b/drivers/dma/edma.c
index 77242b37ef87..3879f80a4815 100644
--- a/drivers/dma/edma.c
+++ b/drivers/dma/edma.c
@@ -2451,6 +2451,9 @@ static int edma_pm_resume(struct device *dev)
int i;
s8 (*queue_priority_mapping)[2];

+ /* re initialize dummy slot to dummy param set */
+ edma_write_slot(ecc, ecc->dummy_slot, &dummy_paramset);
+
queue_priority_mapping = ecc->info->queue_priority_mapping;

/* Event queue priority mapping */
--
2.10.2