OMAP3+: VP: move voltage scale function pointer into struct voltagedomain
authorKevin Hilman <khilman@ti.com>
Thu, 14 Jul 2011 18:12:32 +0000 (11:12 -0700)
committerKevin Hilman <khilman@ti.com>
Thu, 15 Sep 2011 19:09:08 +0000 (12:09 -0700)
Function pointer used for actual voltage scaling (e.g. VP force update
or VC bypass) is moved from omap_vdd_info into struct voltagedomain,
resulting in renames s/vdd->volt_scale/voltdm->scale/

No functional changes.

Signed-off-by: Kevin Hilman <khilman@ti.com>
arch/arm/mach-omap2/voltage.c
arch/arm/mach-omap2/voltage.h

index 4a15668..32f0873 100644 (file)
@@ -45,10 +45,8 @@ static LIST_HEAD(voltdm_list);
 
 static int __init _config_common_vdd_data(struct voltagedomain *voltdm)
 {
-       struct omap_vdd_info *vdd = voltdm->vdd;
-
        /* Generic voltage parameters */
-       vdd->volt_scale = omap_vp_forceupdate_scale;
+       voltdm->scale = omap_vp_forceupdate_scale;
 
        return 0;
 }
@@ -107,22 +105,18 @@ unsigned long omap_voltage_get_nom_volt(struct voltagedomain *voltdm)
 int omap_voltage_scale_vdd(struct voltagedomain *voltdm,
                unsigned long target_volt)
 {
-       struct omap_vdd_info *vdd;
-
        if (!voltdm || IS_ERR(voltdm)) {
                pr_warning("%s: VDD specified does not exist!\n", __func__);
                return -EINVAL;
        }
 
-       vdd = voltdm->vdd;
-
-       if (!vdd->volt_scale) {
+       if (!voltdm->scale) {
                pr_err("%s: No voltage scale API registered for vdd_%s\n",
                        __func__, voltdm->name);
                return -ENODATA;
        }
 
-       return vdd->volt_scale(voltdm, target_volt);
+       return voltdm->scale(voltdm, target_volt);
 }
 
 /**
@@ -258,23 +252,19 @@ int omap_voltage_register_pmic(struct voltagedomain *voltdm,
  * defined in voltage.h
  */
 void omap_change_voltscale_method(struct voltagedomain *voltdm,
-               int voltscale_method)
+                                 int voltscale_method)
 {
-       struct omap_vdd_info *vdd;
-
        if (!voltdm || IS_ERR(voltdm)) {
                pr_warning("%s: VDD specified does not exist!\n", __func__);
                return;
        }
 
-       vdd = voltdm->vdd;
-
        switch (voltscale_method) {
        case VOLTSCALE_VPFORCEUPDATE:
-               vdd->volt_scale = omap_vp_forceupdate_scale;
+               voltdm->scale = omap_vp_forceupdate_scale;
                return;
        case VOLTSCALE_VCBYPASS:
-               vdd->volt_scale = omap_vc_bypass_scale;
+               voltdm->scale = omap_vc_bypass_scale;
                return;
        default:
                pr_warning("%s: Trying to change the method of voltage scaling"
@@ -315,7 +305,7 @@ int __init omap_voltage_late_init(void)
                clk_put(sys_ck);
 
                if (voltdm->vc) {
-                       voltdm->vdd->volt_scale = omap_vc_bypass_scale;
+                       voltdm->scale = omap_vc_bypass_scale;
                        omap_vc_init_channel(voltdm);
                }
 
index d14e0f4..dcc7ea6 100644 (file)
@@ -61,6 +61,7 @@ struct omap_vfsm_instance {
  * @read: read-modify-write a VC/VP register
  * @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
  */
 struct voltagedomain {
        char *name;
@@ -82,6 +83,9 @@ struct voltagedomain {
                u32 rate;
        } sys_clk;
 
+       int (*scale) (struct voltagedomain *voltdm,
+                     unsigned long target_volt);
+
        struct omap_vdd_info *vdd;
 };
 
@@ -145,14 +149,10 @@ 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.
- * @volt_scale         : API to scale the voltage of the vdd.
  */
 struct omap_vdd_info {
        struct omap_volt_data *volt_data;
        u32 curr_volt;
-
-       int (*volt_scale) (struct voltagedomain *voltdm,
-               unsigned long target_volt);
 };
 
 int omap_voltage_scale_vdd(struct voltagedomain *voltdm,