aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin Hilman <khilman@ti.com>2011-07-18 16:24:17 -0700
committerKevin Hilman <khilman@ti.com>2011-09-15 12:09:22 -0700
commit6a62b78d9aa6661cae1a7d30b574daf435a14c47 (patch)
tree4812b637f223c71828a56ddd3261113024459a0e
parentd5c128289f5066a7c6bf27d6ba27a6ae425be757 (diff)
downloadkernel_samsung_smdk4412-6a62b78d9aa6661cae1a7d30b574daf435a14c47.zip
kernel_samsung_smdk4412-6a62b78d9aa6661cae1a7d30b574daf435a14c47.tar.gz
kernel_samsung_smdk4412-6a62b78d9aa6661cae1a7d30b574daf435a14c47.tar.bz2
OMAP3+: voltage: update nominal voltage in voltdm_scale() not VC post-scale
Currently, the nominal voltage is updated in the VC post-scale function which is common to both scaling methods. However, this has readabiliy problems as this update is not where it might be expected. Instead, move the updated into voltdm_scale() upon a successful return of voltdm->scale() Signed-off-by: Kevin Hilman <khilman@ti.com>
-rw-r--r--arch/arm/mach-omap2/vc.c2
-rw-r--r--arch/arm/mach-omap2/voltage.c6
2 files changed, 5 insertions, 3 deletions
diff --git a/arch/arm/mach-omap2/vc.c b/arch/arm/mach-omap2/vc.c
index d9e6994..6e58676 100644
--- a/arch/arm/mach-omap2/vc.c
+++ b/arch/arm/mach-omap2/vc.c
@@ -152,8 +152,6 @@ void omap_vc_post_scale(struct voltagedomain *voltdm,
smps_delay = ((smps_steps * voltdm->pmic->step_size) /
voltdm->pmic->slew_rate) + 2;
udelay(smps_delay);
-
- voltdm->nominal_volt = target_volt;
}
/* vc_bypass_scale - VC bypass method of voltage scaling */
diff --git a/arch/arm/mach-omap2/voltage.c b/arch/arm/mach-omap2/voltage.c
index 441c2d9..64070ac 100644
--- a/arch/arm/mach-omap2/voltage.c
+++ b/arch/arm/mach-omap2/voltage.c
@@ -85,7 +85,11 @@ int voltdm_scale(struct voltagedomain *voltdm,
return -ENODATA;
}
- return voltdm->scale(voltdm, target_volt);
+ ret = voltdm->scale(voltdm, target_volt);
+ if (!ret)
+ voltdm->nominal_volt = target_volt;
+
+ return ret;
}
/**