Message ID | 4D063344.2010001@ti.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Kevin Hilman |
Headers | show |
diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c index ba3c0d6..da12a56 100644 --- a/arch/arm/mach-omap2/pm34xx.c +++ b/arch/arm/mach-omap2/pm34xx.c @@ -932,8 +932,15 @@ void omap3_pm_off_mode_enable(int enable) #endif list_for_each_entry(pwrst, &pwrst_list, node) { - pwrst->next_state = state; - omap_set_pwrdm_state(pwrst->pwrdm, state); + if (IS_PM34XX_ERRATUM(SDRC_WAKEUP_ERRATUM_i583) && + pwrst->pwrdm == core_pwrdm) { + pwrst->next_state = PWRDM_POWER_RET; + pr_err("%s: cannot enable Core OFF due to i583\n", + __func__); + } else { + pwrst->next_state = state; + } + omap_set_pwrdm_state(pwrst->pwrdm, pwrst->next_state); } }