Ideally in the flow of DVFS programming, VP should be in idle state (since we disabled it) before entering forceupdate. Ensure that this is the case. Not doing this could cause VP statemachine to enter invalid states. Use ratelimited warnings to prevent spam if VP state machine is stuck. Cc: Tony Lindgren <tony@xxxxxxxxxxx> Cc: Kevin Hilman <khilman@xxxxxx> Signed-off-by: Vinay Amancha <vinaykumar@xxxxxx> Signed-off-by: Nishanth Menon <nm@xxxxxx> --- arch/arm/mach-omap2/vp.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/arch/arm/mach-omap2/vp.c b/arch/arm/mach-omap2/vp.c index 4723879..2a8a085 100644 --- a/arch/arm/mach-omap2/vp.c +++ b/arch/arm/mach-omap2/vp.c @@ -163,6 +163,13 @@ int omap_vp_forceupdate_scale(struct voltagedomain *voltdm, u8 target_vsel, current_vsel; int ret, timeout = 0; + ret = _vp_wait_for_idle(voltdm, vp); + if (ret) { + pr_warn_ratelimited("%s: vdd_%s idle timedout (v=%ld)\n", + __func__, voltdm->name, target_volt); + return ret; + } + ret = omap_vc_pre_scale(voltdm, target_volt, &target_vsel, ¤t_vsel); if (ret) return ret; -- 1.7.9.5 -- 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