summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch/arm/mach-omap2/vc.c5
-rw-r--r--arch/arm/mach-omap2/voltage.c6
-rw-r--r--arch/arm/mach-omap2/voltage.h4
3 files changed, 5 insertions, 10 deletions
diff --git a/arch/arm/mach-omap2/vc.c b/arch/arm/mach-omap2/vc.c
index f8bdd5183e2f..d9e69944f0c9 100644
--- a/arch/arm/mach-omap2/vc.c
+++ b/arch/arm/mach-omap2/vc.c
@@ -128,7 +128,7 @@ int omap_vc_pre_scale(struct voltagedomain *voltdm,
}
*target_vsel = voltdm->pmic->uv_to_vsel(target_volt);
- *current_vsel = voltdm->pmic->uv_to_vsel(vdd->curr_volt);
+ *current_vsel = voltdm->pmic->uv_to_vsel(voltdm->nominal_volt);
/* Setting the ON voltage to the new target voltage */
vc_cmdval = voltdm->read(vc->cmdval_reg);
@@ -145,7 +145,6 @@ void omap_vc_post_scale(struct voltagedomain *voltdm,
unsigned long target_volt,
u8 target_vsel, u8 current_vsel)
{
- struct omap_vdd_info *vdd = voltdm->vdd;
u32 smps_steps = 0, smps_delay = 0;
smps_steps = abs(target_vsel - current_vsel);
@@ -154,7 +153,7 @@ void omap_vc_post_scale(struct voltagedomain *voltdm,
voltdm->pmic->slew_rate) + 2;
udelay(smps_delay);
- vdd->curr_volt = target_volt;
+ 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 4afb36883b25..1b39e68db355 100644
--- a/arch/arm/mach-omap2/voltage.c
+++ b/arch/arm/mach-omap2/voltage.c
@@ -81,16 +81,12 @@ ovdc_out:
*/
unsigned long omap_voltage_get_nom_volt(struct voltagedomain *voltdm)
{
- struct omap_vdd_info *vdd;
-
if (!voltdm || IS_ERR(voltdm)) {
pr_warning("%s: VDD specified does not exist!\n", __func__);
return 0;
}
- vdd = voltdm->vdd;
-
- return vdd->curr_volt;
+ return voltdm->nominal_volt;
}
/**
diff --git a/arch/arm/mach-omap2/voltage.h b/arch/arm/mach-omap2/voltage.h
index 7f8b00aff394..0bd71a2910ab 100644
--- a/arch/arm/mach-omap2/voltage.h
+++ b/arch/arm/mach-omap2/voltage.h
@@ -62,6 +62,7 @@ struct omap_vfsm_instance {
* @sys_clk: system clock name/frequency, used for various timing calculations
* @vdd: to be removed
* @scale: function used to scale the voltage of the voltagedomain
+ * @nominal_volt: current nominal voltage for this voltage domain
*/
struct voltagedomain {
char *name;
@@ -85,6 +86,7 @@ struct voltagedomain {
int (*scale) (struct voltagedomain *voltdm,
unsigned long target_volt);
+ u32 nominal_volt;
struct omap_vdd_info *vdd;
};
@@ -148,11 +150,9 @@ struct omap_voltdm_pmic {
*
* @volt_data : voltage table having the distinct voltages supported
* by the domain and other associated per voltage data.
- * @curr_volt : current voltage for this vdd.
*/
struct omap_vdd_info {
struct omap_volt_data *volt_data;
- u32 curr_volt;
};
void omap_voltage_get_volttable(struct voltagedomain *voltdm,