diff options
Diffstat (limited to 'drivers/dma')
-rw-r--r-- | drivers/dma/dw/core.c | 9 |
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 | ||
1473 | static void dw_dma_on(struct dw_dma *dw) | ||
1474 | { | ||
1475 | dma_writel(dw, CFG, DW_CFG_DMA_EN); | ||
1476 | } | ||
1477 | |||
1473 | int dw_dma_probe(struct dw_dma_chip *chip, struct dw_dma_platform_data *pdata) | 1478 | int 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 | } |
1711 | EXPORT_SYMBOL_GPL(dw_dma_resume); | 1716 | EXPORT_SYMBOL_GPL(dw_dma_resume); |