cpufreq: sti: Migrate to dev_pm_opp_set_config()
The OPP core now provides a unified API for setting all configuration types, i.e. dev_pm_opp_set_config(). Lets start using it. Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
This commit is contained in:
parent
49cd000dc5
commit
49df85d033
@ -156,9 +156,13 @@ static int sti_cpufreq_set_opp_info(void)
|
|||||||
unsigned int hw_info_offset;
|
unsigned int hw_info_offset;
|
||||||
unsigned int version[VERSION_ELEMENTS];
|
unsigned int version[VERSION_ELEMENTS];
|
||||||
int pcode, substrate, major, minor;
|
int pcode, substrate, major, minor;
|
||||||
int ret;
|
int opp_token, ret;
|
||||||
char name[MAX_PCODE_NAME_LEN];
|
char name[MAX_PCODE_NAME_LEN];
|
||||||
struct opp_table *opp_table;
|
struct dev_pm_opp_config config = {
|
||||||
|
.supported_hw = version,
|
||||||
|
.supported_hw_count = ARRAY_SIZE(version),
|
||||||
|
.prop_name = name,
|
||||||
|
};
|
||||||
|
|
||||||
reg_fields = sti_cpufreq_match();
|
reg_fields = sti_cpufreq_match();
|
||||||
if (!reg_fields) {
|
if (!reg_fields) {
|
||||||
@ -210,21 +214,14 @@ use_defaults:
|
|||||||
|
|
||||||
snprintf(name, MAX_PCODE_NAME_LEN, "pcode%d", pcode);
|
snprintf(name, MAX_PCODE_NAME_LEN, "pcode%d", pcode);
|
||||||
|
|
||||||
opp_table = dev_pm_opp_set_prop_name(dev, name);
|
|
||||||
if (IS_ERR(opp_table)) {
|
|
||||||
dev_err(dev, "Failed to set prop name\n");
|
|
||||||
return PTR_ERR(opp_table);
|
|
||||||
}
|
|
||||||
|
|
||||||
version[0] = BIT(major);
|
version[0] = BIT(major);
|
||||||
version[1] = BIT(minor);
|
version[1] = BIT(minor);
|
||||||
version[2] = BIT(substrate);
|
version[2] = BIT(substrate);
|
||||||
|
|
||||||
opp_table = dev_pm_opp_set_supported_hw(dev, version, VERSION_ELEMENTS);
|
opp_token = dev_pm_opp_set_config(dev, &config);
|
||||||
if (IS_ERR(opp_table)) {
|
if (opp_token < 0) {
|
||||||
dev_err(dev, "Failed to set supported hardware\n");
|
dev_err(dev, "Failed to set OPP config\n");
|
||||||
ret = PTR_ERR(opp_table);
|
return opp_token;
|
||||||
goto err_put_prop_name;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
dev_dbg(dev, "pcode: %d major: %d minor: %d substrate: %d\n",
|
dev_dbg(dev, "pcode: %d major: %d minor: %d substrate: %d\n",
|
||||||
@ -233,10 +230,6 @@ use_defaults:
|
|||||||
version[0], version[1], version[2]);
|
version[0], version[1], version[2]);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
err_put_prop_name:
|
|
||||||
dev_pm_opp_put_prop_name(opp_table);
|
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int sti_cpufreq_fetch_syscon_registers(void)
|
static int sti_cpufreq_fetch_syscon_registers(void)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user