aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/pm44xx.c
diff options
context:
space:
mode:
authorColin Cross <ccross@android.com>2011-10-05 17:03:58 -0700
committerColin Cross <ccross@android.com>2011-10-05 17:03:58 -0700
commit418d70cbed49b19adfc7dbb71e6866e03c2142a7 (patch)
tree50acc33b159b64b630ed05c1fb02eec0ff268f14 /arch/arm/mach-omap2/pm44xx.c
parent90614432a0d56d8623a14ff44376ec33fc3f2f61 (diff)
parent903e0b987ba84f4371f524667ad1fd2fbad52f57 (diff)
downloadkernel_samsung_tuna-418d70cbed49b19adfc7dbb71e6866e03c2142a7.zip
kernel_samsung_tuna-418d70cbed49b19adfc7dbb71e6866e03c2142a7.tar.gz
kernel_samsung_tuna-418d70cbed49b19adfc7dbb71e6866e03c2142a7.tar.bz2
Merge branch 'android-omap-3.0' into android-omap-tuna-3.0
Diffstat (limited to 'arch/arm/mach-omap2/pm44xx.c')
-rw-r--r--arch/arm/mach-omap2/pm44xx.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/pm44xx.c b/arch/arm/mach-omap2/pm44xx.c
index 2130545..4e7940e 100644
--- a/arch/arm/mach-omap2/pm44xx.c
+++ b/arch/arm/mach-omap2/pm44xx.c
@@ -521,6 +521,17 @@ static int omap4_pm_suspend(void)
struct power_state *pwrst;
int state, ret = 0;
+ /*
+ * If any device was in the middle of a scale operation
+ * then abort, as we cannot predict which part of the scale
+ * operation we interrupted.
+ */
+ if (omap_dvfs_is_any_dev_scaling()) {
+ pr_err("%s: oops.. middle of scale op.. aborting suspend\n",
+ __func__);
+ return -EBUSY;
+ }
+
/* Wakeup timer from suspend */
if (wakeup_timer_seconds || wakeup_timer_milliseconds)
omap2_pm_wakeup_on_timer(wakeup_timer_seconds,