Browse Source

dmaengine: edma: re-initialize dummy slot during system resume

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@ti.com>
Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Vignesh R 9 năm trước cách đây
mục cha
commit
08c824e87e
1 tập tin đã thay đổi với 3 bổ sung0 xóa
  1. 3 0
      drivers/dma/edma.c

+ 3 - 0
drivers/dma/edma.c

@@ -2450,6 +2450,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 */