diff options
| -rw-r--r-- | drivers/dma/imx-sdma.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/dma/imx-sdma.c b/drivers/dma/imx-sdma.c index 18c0a131e4e4..66a0efb9651d 100644 --- a/drivers/dma/imx-sdma.c +++ b/drivers/dma/imx-sdma.c | |||
| @@ -531,6 +531,10 @@ static int sdma_run_channel0(struct sdma_engine *sdma) | |||
| 531 | dev_err(sdma->dev, "Timeout waiting for CH0 ready\n"); | 531 | dev_err(sdma->dev, "Timeout waiting for CH0 ready\n"); |
| 532 | } | 532 | } |
| 533 | 533 | ||
| 534 | /* Set bits of CONFIG register with dynamic context switching */ | ||
| 535 | if (readl(sdma->regs + SDMA_H_CONFIG) == 0) | ||
| 536 | writel_relaxed(SDMA_H_CONFIG_CSM, sdma->regs + SDMA_H_CONFIG); | ||
| 537 | |||
| 534 | return ret ? 0 : -ETIMEDOUT; | 538 | return ret ? 0 : -ETIMEDOUT; |
| 535 | } | 539 | } |
| 536 | 540 | ||
| @@ -1394,9 +1398,6 @@ static int sdma_init(struct sdma_engine *sdma) | |||
| 1394 | 1398 | ||
| 1395 | writel_relaxed(ccb_phys, sdma->regs + SDMA_H_C0PTR); | 1399 | writel_relaxed(ccb_phys, sdma->regs + SDMA_H_C0PTR); |
| 1396 | 1400 | ||
| 1397 | /* Set bits of CONFIG register with given context switching mode */ | ||
| 1398 | writel_relaxed(SDMA_H_CONFIG_CSM, sdma->regs + SDMA_H_CONFIG); | ||
| 1399 | |||
| 1400 | /* Initializes channel's priorities */ | 1401 | /* Initializes channel's priorities */ |
| 1401 | sdma_set_channel_priority(&sdma->channel[0], 7); | 1402 | sdma_set_channel_priority(&sdma->channel[0], 7); |
| 1402 | 1403 | ||
