{\r
struct regulator *regulator, *regulator_dep;\r
int volt = 0, volt_dep = 0, step = 0, step_dep = 0;\r
+ int volt_tmp = 0, volt_dep_tmp = 0;\r
int volt_pre = 0, volt_dep_pre = 0;\r
int ret = 0;\r
\r
} else if (step > 0) {\r
// up voltage\r
DVFS_DBG("step > 0\n");\r
+ volt_tmp = volt_dep + clk_biger_than_dep;\r
+ volt_dep_tmp = volt + dep_biger_than_clk;\r
\r
- if (volt > volt_dep) {\r
- if (volt_dep == volt_dep_new) {\r
- volt = volt_dep + clk_biger_than_dep;\r
- } else {\r
- volt_dep = volt + dep_biger_than_clk;\r
- }\r
- } else if (volt < volt_dep){\r
- if (volt == volt_new) {\r
- volt_dep = volt + dep_biger_than_clk;\r
- } else {\r
- volt = volt_dep + clk_biger_than_dep;\r
- }\r
- } else {\r
- if (volt != volt_new)\r
- volt = volt_dep + clk_biger_than_dep;\r
- if (volt_dep != volt_dep_new)\r
- volt_dep = volt + dep_biger_than_clk;\r
- }\r
- volt = volt > volt_new ? volt_new : volt;\r
- volt_dep = volt_dep > volt_dep_new ? volt_dep_new : volt_dep;\r
+ volt = volt_tmp > volt_new ? volt_new : volt_tmp;\r
+ volt_dep = volt_dep_tmp > volt_dep_new ? volt_dep_new : volt_dep_tmp;\r
\r
} else if (step < 0) {\r
// down voltage\r
DVFS_DBG("step < 0\n");\r
- if (volt > volt_dep) {\r
- if (volt == volt_new) {\r
- volt_dep = volt - clk_biger_than_dep;\r
- } else {\r
- volt = volt_dep - dep_biger_than_clk;\r
- }\r
- } else if (volt < volt_dep){\r
- if (volt_dep == volt_dep_new) {\r
- volt = volt_dep - dep_biger_than_clk;\r
- } else {\r
- volt_dep = volt - clk_biger_than_dep;\r
- }\r
- } else {\r
- if (volt != volt_new)\r
- volt = volt_dep - dep_biger_than_clk;\r
- if (volt_dep != volt_dep_new)\r
- volt_dep = volt - clk_biger_than_dep;\r
- }\r
- volt = volt < volt_new ? volt_new : volt;\r
- volt_dep = volt_dep < volt_dep_new ? volt_dep_new : volt_dep;\r
+\r
+ volt_tmp = volt_dep - dep_biger_than_clk;\r
+ volt_dep_tmp = volt - clk_biger_than_dep;\r
+\r
+ volt = volt_tmp < volt_new ? volt_new : volt_tmp;\r
+ volt_dep = volt_dep_tmp < volt_dep_new ? volt_dep_new : volt_dep_tmp;\r
\r
} else {\r
DVFS_ERR("Oops, some bugs here:Volt_new=%d(old=%d), volt_dep_new=%d(dep_old=%d)\n",\r