This patch makes sure that VDD2 dvfs always happens at a higher VDD1 OPP, hence bringing down the VDD2 DVFS latency to a large extent. Having a smaller VDD2 dvfs latency helps drivers which are sensitive to the time during which SDRAM is inaccessible due to SDRC iclk being disabled. Signed-off-by: Rajendra Nayak <rnayak@xxxxxx> --- arch/arm/mach-omap2/resource34xx.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-omap2/resource34xx.c b/arch/arm/mach-omap2/resource34xx.c index 9908e52..4c87436 100644 --- a/arch/arm/mach-omap2/resource34xx.c +++ b/arch/arm/mach-omap2/resource34xx.c @@ -353,6 +353,9 @@ int set_opp(struct shared_resource *resp, u32 target_level) int ind; if (resp == vdd1_resp) { + if (target_level < 3) + resource_release("vdd2_opp", &vdd2_dev); + resource_set_opp_level(VDD1_OPP, target_level, 0); /* * For VDD1 OPP3 and above, make sure the interconnect @@ -361,8 +364,6 @@ int set_opp(struct shared_resource *resp, u32 target_level) */ if (target_level >= 3) resource_request("vdd2_opp", &vdd2_dev, 400000); - else - resource_release("vdd2_opp", &vdd2_dev); } else if (resp == vdd2_resp) { tput = target_level; -- 1.5.4.7 -- 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