diff options
-rw-r--r-- | arch/arm/mach-omap2/vc.c | 5 | ||||
-rw-r--r-- | arch/arm/mach-omap2/voltage.c | 6 | ||||
-rw-r--r-- | arch/arm/mach-omap2/voltage.h | 4 |
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, |