提交 d2c4b43d 编写于 作者: R Rajendra Nayak 提交者: Rafael J. Wysocki

drivers: sh: remove boilerplate code and use USE_PM_CLK_RUNTIME_OPS

USE_PM_CLK_RUNTIME_OPS is introduced so we don't repeat the same code
to do runtime_suspend and runtime_resume across users of PM clocks.
Use it to remove the boilerplate code.
Signed-off-by: NRajendra Nayak <rnayak@codeaurora.org>
Reviewed-by: NKevin Hilman <khilman@linaro.org>
Acked-by: NSantosh Shilimkar <ssantosh@kernel.org>
Acked-by: NGeert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com>
上级 ea6f8334
......@@ -20,58 +20,15 @@
#include <linux/bitmap.h>
#include <linux/slab.h>
#ifdef CONFIG_PM
static int sh_pm_runtime_suspend(struct device *dev)
{
int ret;
ret = pm_generic_runtime_suspend(dev);
if (ret) {
dev_err(dev, "failed to suspend device\n");
return ret;
}
ret = pm_clk_suspend(dev);
if (ret) {
dev_err(dev, "failed to suspend clock\n");
pm_generic_runtime_resume(dev);
return ret;
}
return 0;
}
static int sh_pm_runtime_resume(struct device *dev)
{
int ret;
ret = pm_clk_resume(dev);
if (ret) {
dev_err(dev, "failed to resume clock\n");
return ret;
}
return pm_generic_runtime_resume(dev);
}
static struct dev_pm_domain default_pm_domain = {
.ops = {
.runtime_suspend = sh_pm_runtime_suspend,
.runtime_resume = sh_pm_runtime_resume,
USE_PM_CLK_RUNTIME_OPS
USE_PLATFORM_PM_SLEEP_OPS
},
};
#define DEFAULT_PM_DOMAIN_PTR (&default_pm_domain)
#else
#define DEFAULT_PM_DOMAIN_PTR NULL
#endif /* CONFIG_PM */
static struct pm_clk_notifier_block platform_bus_notifier = {
.pm_domain = DEFAULT_PM_DOMAIN_PTR,
.pm_domain = &default_pm_domain,
.con_ids = { NULL, },
};
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册