As per errata i580, Core should not attempt to goto OSWR/OFF state if DPLL3 is in manual lock mode (CM_AUTOIDLE_PLL[AUTO_CORE_DPLL] = 0). This WA is applicable only if WA for errata i581 is applied since DPLL3 is put in manual lock mode as part of the i581 errata. This patch has been developed on top of i581 errata WA available@ https://patchwork.kernel.org/patch/102673/ Tested on OMAP3630 ZOOM3. Signed-off-by: Vishwanath BS <vishwanath.bs@xxxxxx> --- diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c index b0a5d09..5b48b6c --- a/arch/arm/mach-omap2/pm34xx.c +++ b/arch/arm/mach-omap2/pm34xx.c @@ -461,6 +461,9 @@ void omap_sram_idle(void) } cm_rmw_mod_reg_bits(OMAP3430_AUTO_CORE_DPLL_MASK, 0x1, PLL_MOD, CM_AUTOIDLE); + } else if (core_next_state > PWRDM_POWER_RET) { + pwrdm_set_next_pwrst(core_pwrdm, PWRDM_POWER_RET); + core_next_state = PWRDM_POWER_RET; } } } -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html