diff options
author | Georgi Djakov <georgi.djakov@linaro.org> | 2017-04-24 15:17:06 +0300 |
---|---|---|
committer | Amit Kucheria <amit.kucheria@linaro.org> | 2018-04-19 14:24:26 +0530 |
commit | 8077732d882cc826635ec30e4b354d950cbbe928 (patch) | |
tree | 667aa1636da4811440d69200b770197483fb35fc /drivers/power/avs | |
parent | 8e97eecaf921739b4ee4385a51a0013ec5181104 (diff) |
power: avs: cpr: Register with cpufreq-dt
The CPR driver currently is handling most of the dependencies including
populating the OPPs, so just register it with cpufreq-dt.
Signed-off-by: Georgi Djakov <georgi.djakov@linaro.org>
Diffstat (limited to 'drivers/power/avs')
-rw-r--r-- | drivers/power/avs/qcom-cpr.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/power/avs/qcom-cpr.c b/drivers/power/avs/qcom-cpr.c index 46bba4514101..dc8ebc92c81b 100644 --- a/drivers/power/avs/qcom-cpr.c +++ b/drivers/power/avs/qcom-cpr.c @@ -1830,6 +1830,7 @@ static int cpr_probe(struct platform_device *pdev) u32 cpr_rev = FUSE_REVISION_UNKNOWN; u32 speed_bin = SPEED_BIN_NONE; u32 pvs_version = 0; + struct platform_device *cpufreq_dt_pdev; np = of_parse_phandle(dev->of_node, "eeprom", 0); if (!np) @@ -1924,6 +1925,14 @@ static int cpr_probe(struct platform_device *pdev) if (ret) return ret; + /* Register cpufreq-dt driver after the OPPs are populated */ + cpufreq_dt_pdev = platform_device_register_simple("cpufreq-dt", -1, NULL, 0); + if (IS_ERR(cpufreq_dt_pdev)) { + ret = PTR_ERR(cpufreq_dt_pdev); + pr_err("%s error registering cpufreq-dt (%d)\n", __func__, ret); + return ret; + } + drv->loop_disabled = cpr_is_close_loop_disabled(drv, desc, qfprom, cpr_fuses, adj); dev_dbg(drv->dev, "CPR closed loop is %sabled\n", |