summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/dma/ti/edma.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/dma/ti/edma.c b/drivers/dma/ti/edma.c
index 54895112ba59..1aae95cc0d4b 100644
--- a/drivers/dma/ti/edma.c
+++ b/drivers/dma/ti/edma.c
@@ -2338,9 +2338,6 @@ static int edma_probe(struct platform_device *pdev)
2338 2338
2339 ecc->default_queue = info->default_queue; 2339 ecc->default_queue = info->default_queue;
2340 2340
2341 for (i = 0; i < ecc->num_slots; i++)
2342 edma_write_slot(ecc, i, &dummy_paramset);
2343
2344 if (info->rsv) { 2341 if (info->rsv) {
2345 /* Set the reserved slots in inuse list */ 2342 /* Set the reserved slots in inuse list */
2346 rsv_slots = info->rsv->rsv_slots; 2343 rsv_slots = info->rsv->rsv_slots;
@@ -2353,6 +2350,12 @@ static int edma_probe(struct platform_device *pdev)
2353 } 2350 }
2354 } 2351 }
2355 2352
2353 for (i = 0; i < ecc->num_slots; i++) {
2354 /* Reset only unused - not reserved - paRAM slots */
2355 if (!test_bit(i, ecc->slot_inuse))
2356 edma_write_slot(ecc, i, &dummy_paramset);
2357 }
2358
2356 /* Clear the xbar mapped channels in unused list */ 2359 /* Clear the xbar mapped channels in unused list */
2357 xbar_chans = info->xbar_chans; 2360 xbar_chans = info->xbar_chans;
2358 if (xbar_chans) { 2361 if (xbar_chans) {