@@ -826,11 +826,10 @@ static int _set_opp_bw(const struct opp_table *opp_table,
}
static int _set_opp_custom(const struct opp_table *opp_table,
- struct device *dev, unsigned long old_freq,
- unsigned long freq,
- struct dev_pm_opp_supply *old_supply,
- struct dev_pm_opp_supply *new_supply)
+ struct device *dev, struct dev_pm_opp *opp,
+ unsigned long freq)
{
+ struct dev_pm_opp *old_opp = opp_table->current_opp;
struct dev_pm_set_opp_data *data;
int size;
@@ -840,12 +839,12 @@ static int _set_opp_custom(const struct opp_table *opp_table,
data->clk = opp_table->clk;
data->dev = dev;
- data->old_opp.rate = old_freq;
- size = sizeof(*old_supply) * opp_table->regulator_count;
- memcpy(data->old_opp.supplies, old_supply, size);
+ data->old_opp.rate = old_opp->rate;
+ size = sizeof(*old_opp->supplies) * opp_table->regulator_count;
+ memcpy(data->old_opp.supplies, old_opp->supplies, size);
data->new_opp.rate = freq;
- memcpy(data->new_opp.supplies, new_supply, size);
+ memcpy(data->new_opp.supplies, opp->supplies, size);
return opp_table->set_opp(data);
}
@@ -1000,7 +999,6 @@ static int _set_opp(struct device *dev, struct opp_table *opp_table,
struct dev_pm_opp *opp, unsigned long freq)
{
struct dev_pm_opp *old_opp;
- unsigned long old_freq;
int scaling_down, ret;
if (unlikely(!opp))
@@ -1011,7 +1009,6 @@ static int _set_opp(struct device *dev, struct opp_table *opp_table,
_find_current_opp(dev, opp_table);
old_opp = opp_table->current_opp;
- old_freq = old_opp->rate;
/* Return early if nothing to do */
if (opp_table->enabled && old_opp == opp) {
@@ -1020,7 +1017,7 @@ static int _set_opp(struct device *dev, struct opp_table *opp_table,
}
dev_dbg(dev, "%s: switching OPP: Freq %lu -> %lu Hz, Level %u -> %u, Bw %u -> %u\n",
- __func__, old_freq, freq, old_opp->level, opp->level,
+ __func__, old_opp->rate, freq, old_opp->level, opp->level,
old_opp->bandwidth ? old_opp->bandwidth[0].peak : 0,
opp->bandwidth ? opp->bandwidth[0].peak : 0);
@@ -1036,8 +1033,7 @@ static int _set_opp(struct device *dev, struct opp_table *opp_table,
}
if (opp_table->set_opp) {
- ret = _set_opp_custom(opp_table, dev, old_freq, freq,
- old_opp->supplies, opp->supplies);
+ ret = _set_opp_custom(opp_table, dev, opp, freq);
} else if (opp_table->regulators) {
ret = _generic_set_opp_regulator(opp_table, dev, opp, freq,
scaling_down);
Drop the unnecessary parameters and follow the pattern from _generic_set_opp_regulator(). While at it, also remove the local variable old_freq. Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> --- drivers/opp/core.c | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-)