aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/plat-omap/omap_device.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/plat-omap/omap_device.c')
-rw-r--r--arch/arm/plat-omap/omap_device.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/plat-omap/omap_device.c b/arch/arm/plat-omap/omap_device.c
index b93cfdc9a366..2526fa312b8a 100644
--- a/arch/arm/plat-omap/omap_device.c
+++ b/arch/arm/plat-omap/omap_device.c
@@ -573,6 +573,9 @@ static int _od_suspend_noirq(struct device *dev)
573 struct omap_device *od = to_omap_device(pdev); 573 struct omap_device *od = to_omap_device(pdev);
574 int ret; 574 int ret;
575 575
576 if (od->flags & OMAP_DEVICE_NO_IDLE_ON_SUSPEND)
577 return pm_generic_suspend_noirq(dev);
578
576 ret = pm_generic_suspend_noirq(dev); 579 ret = pm_generic_suspend_noirq(dev);
577 580
578 if (!ret && !pm_runtime_status_suspended(dev)) { 581 if (!ret && !pm_runtime_status_suspended(dev)) {
@@ -590,6 +593,9 @@ static int _od_resume_noirq(struct device *dev)
590 struct platform_device *pdev = to_platform_device(dev); 593 struct platform_device *pdev = to_platform_device(dev);
591 struct omap_device *od = to_omap_device(pdev); 594 struct omap_device *od = to_omap_device(pdev);
592 595
596 if (od->flags & OMAP_DEVICE_NO_IDLE_ON_SUSPEND)
597 return pm_generic_resume_noirq(dev);
598
593 if ((od->flags & OMAP_DEVICE_SUSPENDED) && 599 if ((od->flags & OMAP_DEVICE_SUSPENDED) &&
594 !pm_runtime_status_suspended(dev)) { 600 !pm_runtime_status_suspended(dev)) {
595 od->flags &= ~OMAP_DEVICE_SUSPENDED; 601 od->flags &= ~OMAP_DEVICE_SUSPENDED;