On 09/11/15 13:57, Andy Shevchenko wrote: > On Mon, Nov 9, 2015 at 3:23 PM, Jon Hunter <jonathanh@xxxxxxxxxx> wrote: >> The tegra-apb DMA driver enables runtime-pm but never calls >> pm_runtime_get/put and hence the runtime-pm callbacks are never invoked. >> The driver manages the clocks by directly calling clk_prepare_enable() >> and clk_unprepare_disable(). >> >> Fix this by replacing the clk_prepare_enable() and clk_disable_unprepare() >> with pm_runtime_get_sync() and pm_runtime_put(), respectively. Note that >> the consequence of this is that if runtime-pm is disabled, then the clocks >> will remain on the entire time the driver is loaded. However, if >> runtime-pm is disabled, then power is not most likely not a concern. > > Nitpick > >> @@ -1539,11 +1534,10 @@ static int tegra_dma_runtime_resume(struct device *dev) >> static int tegra_dma_pm_suspend(struct device *dev) >> { >> struct tegra_dma *tdma = dev_get_drvdata(dev); >> - int i; >> - int ret; >> + int i, ret; > >> static int tegra_dma_pm_resume(struct device *dev) >> { >> struct tegra_dma *tdma = dev_get_drvdata(dev); >> - int i; >> - int ret; >> + int i, ret; > > Do you really need that? Rhetorical question? ;-) I can drop that. Jon -- To unsubscribe from this list: send the line "unsubscribe dmaengine" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html