aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/vc.c
diff options
context:
space:
mode:
authorNishanth Menon <nm@ti.com>2011-08-05 20:39:27 -0500
committerNishanth Menon <nm@ti.com>2011-08-26 20:17:12 -0500
commit0024a2591228bdcd2a9c624b051dc92012b47961 (patch)
tree3ddef84f046e8ab1fb2ecb4283de6cec170a874c /arch/arm/mach-omap2/vc.c
parent11425145143860fad783841492de2f08dfa4ab79 (diff)
downloadkernel_samsung_tuna-0024a2591228bdcd2a9c624b051dc92012b47961.zip
kernel_samsung_tuna-0024a2591228bdcd2a9c624b051dc92012b47961.tar.gz
kernel_samsung_tuna-0024a2591228bdcd2a9c624b051dc92012b47961.tar.bz2
OMAP3+: PM: VC: Support PMICs' switch on time
While switching from low power states to powered states, the devices need a bit of startup time. This is characterized in the documentation. Provide a mechanism to add the delay Change-Id: Ia1bd2b6c5b903eca15852e666910e5b385d7884a Signed-off-by: Nishanth Menon <nm@ti.com>
Diffstat (limited to 'arch/arm/mach-omap2/vc.c')
-rw-r--r--arch/arm/mach-omap2/vc.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/vc.c b/arch/arm/mach-omap2/vc.c
index 6a9b8a9..cbf9a3b 100644
--- a/arch/arm/mach-omap2/vc.c
+++ b/arch/arm/mach-omap2/vc.c
@@ -495,6 +495,10 @@ static int __init omap_vc_setup_lp_time(struct voltagedomain *voltdm,
volt_ramptime = DIV_ROUND_UP(volt_drop, pmic->slew_rate);
volt_ramptime += OMAP_VC_I2C_ACK_DELAY;
+ /* many PMICs need additional time to switch back on */
+ if (!is_retention)
+ volt_ramptime += pmic->switch_on_time;
+
if (volt_ramptime < max_latency_for_prescaler)
pre_scaler = 0x0;
else