aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/dma
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/dma')
-rw-r--r--drivers/dma/dw/core.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/dma/dw/core.c b/drivers/dma/dw/core.c
index 9546b1f599f0..e94de0045aaf 100644
--- a/drivers/dma/dw/core.c
+++ b/drivers/dma/dw/core.c
@@ -1470,6 +1470,11 @@ static void dw_dma_off(struct dw_dma *dw)
1470 dw->chan[i].initialized = false; 1470 dw->chan[i].initialized = false;
1471} 1471}
1472 1472
1473static void dw_dma_on(struct dw_dma *dw)
1474{
1475 dma_writel(dw, CFG, DW_CFG_DMA_EN);
1476}
1477
1473int dw_dma_probe(struct dw_dma_chip *chip, struct dw_dma_platform_data *pdata) 1478int dw_dma_probe(struct dw_dma_chip *chip, struct dw_dma_platform_data *pdata)
1474{ 1479{
1475 struct dw_dma *dw; 1480 struct dw_dma *dw;
@@ -1643,7 +1648,7 @@ int dw_dma_probe(struct dw_dma_chip *chip, struct dw_dma_platform_data *pdata)
1643 dw->dma.device_tx_status = dwc_tx_status; 1648 dw->dma.device_tx_status = dwc_tx_status;
1644 dw->dma.device_issue_pending = dwc_issue_pending; 1649 dw->dma.device_issue_pending = dwc_issue_pending;
1645 1650
1646 dma_writel(dw, CFG, DW_CFG_DMA_EN); 1651 dw_dma_on(dw);
1647 1652
1648 err = dma_async_device_register(&dw->dma); 1653 err = dma_async_device_register(&dw->dma);
1649 if (err) 1654 if (err)
@@ -1705,7 +1710,7 @@ int dw_dma_resume(struct dw_dma_chip *chip)
1705{ 1710{
1706 struct dw_dma *dw = chip->dw; 1711 struct dw_dma *dw = chip->dw;
1707 1712
1708 dma_writel(dw, CFG, DW_CFG_DMA_EN); 1713 dw_dma_on(dw);
1709 return 0; 1714 return 0;
1710} 1715}
1711EXPORT_SYMBOL_GPL(dw_dma_resume); 1716EXPORT_SYMBOL_GPL(dw_dma_resume);