diff options
-rw-r--r-- | drivers/dma/ti/edma.c | 9 |
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) { |