Commit 298e3204 authored by Linus Torvalds's avatar Linus Torvalds

Merge branch 'fixes' of git://git.infradead.org/users/vkoul/slave-dma

Pull dmaengine fixes from Vinod Koul:
 "Two patches, the first by Andy to fix dw dmac runtime pm and second
  one by me to fix the dmaengine headers in MAINTAINERS"

* 'fixes' of git://git.infradead.org/users/vkoul/slave-dma:
  dmaengine: dw: balance PM runtime calls
  MAINTAINERS: dmaengine: fix the header file for dmaengine
parents 59b2858f 6acf3998
...@@ -3183,7 +3183,7 @@ L: dmaengine@vger.kernel.org ...@@ -3183,7 +3183,7 @@ L: dmaengine@vger.kernel.org
Q: https://patchwork.kernel.org/project/linux-dmaengine/list/ Q: https://patchwork.kernel.org/project/linux-dmaengine/list/
S: Maintained S: Maintained
F: drivers/dma/ F: drivers/dma/
F: include/linux/dma* F: include/linux/dmaengine.h
F: Documentation/dmaengine/ F: Documentation/dmaengine/
T: git git://git.infradead.org/users/vkoul/slave-dma.git T: git git://git.infradead.org/users/vkoul/slave-dma.git
......
...@@ -1505,7 +1505,6 @@ int dw_dma_probe(struct dw_dma_chip *chip, struct dw_dma_platform_data *pdata) ...@@ -1505,7 +1505,6 @@ int dw_dma_probe(struct dw_dma_chip *chip, struct dw_dma_platform_data *pdata)
dw->regs = chip->regs; dw->regs = chip->regs;
chip->dw = dw; chip->dw = dw;
pm_runtime_enable(chip->dev);
pm_runtime_get_sync(chip->dev); pm_runtime_get_sync(chip->dev);
dw_params = dma_read_byaddr(chip->regs, DW_PARAMS); dw_params = dma_read_byaddr(chip->regs, DW_PARAMS);
...@@ -1703,7 +1702,6 @@ int dw_dma_remove(struct dw_dma_chip *chip) ...@@ -1703,7 +1702,6 @@ int dw_dma_remove(struct dw_dma_chip *chip)
} }
pm_runtime_put_sync_suspend(chip->dev); pm_runtime_put_sync_suspend(chip->dev);
pm_runtime_disable(chip->dev);
return 0; return 0;
} }
EXPORT_SYMBOL_GPL(dw_dma_remove); EXPORT_SYMBOL_GPL(dw_dma_remove);
......
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
#include <linux/module.h> #include <linux/module.h>
#include <linux/device.h> #include <linux/device.h>
#include <linux/clk.h> #include <linux/clk.h>
#include <linux/pm_runtime.h>
#include <linux/platform_device.h> #include <linux/platform_device.h>
#include <linux/dmaengine.h> #include <linux/dmaengine.h>
#include <linux/dma-mapping.h> #include <linux/dma-mapping.h>
...@@ -185,6 +186,8 @@ static int dw_probe(struct platform_device *pdev) ...@@ -185,6 +186,8 @@ static int dw_probe(struct platform_device *pdev)
if (err) if (err)
return err; return err;
pm_runtime_enable(&pdev->dev);
err = dw_dma_probe(chip, pdata); err = dw_dma_probe(chip, pdata);
if (err) if (err)
goto err_dw_dma_probe; goto err_dw_dma_probe;
...@@ -205,6 +208,7 @@ static int dw_probe(struct platform_device *pdev) ...@@ -205,6 +208,7 @@ static int dw_probe(struct platform_device *pdev)
return 0; return 0;
err_dw_dma_probe: err_dw_dma_probe:
pm_runtime_disable(&pdev->dev);
clk_disable_unprepare(chip->clk); clk_disable_unprepare(chip->clk);
return err; return err;
} }
...@@ -217,6 +221,7 @@ static int dw_remove(struct platform_device *pdev) ...@@ -217,6 +221,7 @@ static int dw_remove(struct platform_device *pdev)
of_dma_controller_free(pdev->dev.of_node); of_dma_controller_free(pdev->dev.of_node);
dw_dma_remove(chip); dw_dma_remove(chip);
pm_runtime_disable(&pdev->dev);
clk_disable_unprepare(chip->clk); clk_disable_unprepare(chip->clk);
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment