diff options
author | Olof Johansson <olof@lixom.net> | 2013-12-29 06:37:03 +0100 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2013-12-29 06:38:16 +0100 |
commit | fe5a365cdb9cc925d5ce86a5bb4509dca57f3894 (patch) | |
tree | 8dd536be0e16e86109295142edd1ef1fd18c2e98 /arch/arm/mach-omap2/omap_device.c | |
parent | Merge tag 'tegra-for-3.14-defconfig-2' of git://git.kernel.org/pub/scm/linux/... (diff) | |
parent | Linux 3.13-rc5 (diff) | |
download | linux-fe5a365cdb9cc925d5ce86a5bb4509dca57f3894.tar.xz linux-fe5a365cdb9cc925d5ce86a5bb4509dca57f3894.zip |
Merge tag 'v3.13-rc5' into next/boards
Need a newer base version to get a regulator fix for Samsung platforms that
they enable building in a defconfig.
Linux 3.13-rc5
Diffstat (limited to 'arch/arm/mach-omap2/omap_device.c')
-rw-r--r-- | arch/arm/mach-omap2/omap_device.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/omap_device.c b/arch/arm/mach-omap2/omap_device.c index 828f538b1c4e..01ef59def44b 100644 --- a/arch/arm/mach-omap2/omap_device.c +++ b/arch/arm/mach-omap2/omap_device.c @@ -184,6 +184,10 @@ static int omap_device_build_from_dt(struct platform_device *pdev) odbfd_exit1: kfree(hwmods); odbfd_exit: + /* if data/we are at fault.. load up a fail handler */ + if (ret) + pdev->dev.pm_domain = &omap_device_fail_pm_domain; + return ret; } @@ -606,6 +610,19 @@ static int _od_runtime_resume(struct device *dev) return pm_generic_runtime_resume(dev); } + +static int _od_fail_runtime_suspend(struct device *dev) +{ + dev_warn(dev, "%s: FIXME: missing hwmod/omap_dev info\n", __func__); + return -ENODEV; +} + +static int _od_fail_runtime_resume(struct device *dev) +{ + dev_warn(dev, "%s: FIXME: missing hwmod/omap_dev info\n", __func__); + return -ENODEV; +} + #endif #ifdef CONFIG_SUSPEND @@ -659,6 +676,13 @@ static int _od_resume_noirq(struct device *dev) #define _od_resume_noirq NULL #endif +struct dev_pm_domain omap_device_fail_pm_domain = { + .ops = { + SET_RUNTIME_PM_OPS(_od_fail_runtime_suspend, + _od_fail_runtime_resume, NULL) + } +}; + struct dev_pm_domain omap_device_pm_domain = { .ops = { SET_RUNTIME_PM_OPS(_od_runtime_suspend, _od_runtime_resume, |