Lines Matching refs:drv

52 			   struct qcom_cpufreq_drv *drv);
96 struct qcom_cpufreq_drv *drv) in qcom_cpufreq_kryo_name_version() argument
114 drv->versions = 1 << (unsigned int)(*speedbin); in qcom_cpufreq_kryo_name_version()
117 drv->versions = 1 << ((unsigned int)(*speedbin) + 4); in qcom_cpufreq_kryo_name_version()
140 struct qcom_cpufreq_drv *drv; in qcom_cpufreq_probe() local
162 drv = kzalloc(sizeof(*drv), GFP_KERNEL); in qcom_cpufreq_probe()
163 if (!drv) in qcom_cpufreq_probe()
167 drv->data = match->data; in qcom_cpufreq_probe()
168 if (!drv->data) { in qcom_cpufreq_probe()
173 if (drv->data->get_version) { in qcom_cpufreq_probe()
184 ret = drv->data->get_version(cpu_dev, speedbin_nvmem, drv); in qcom_cpufreq_probe()
193 drv->opp_tables = kcalloc(num_possible_cpus(), sizeof(*drv->opp_tables), in qcom_cpufreq_probe()
195 if (!drv->opp_tables) { in qcom_cpufreq_probe()
200 drv->genpd_opp_tables = kcalloc(num_possible_cpus(), in qcom_cpufreq_probe()
201 sizeof(*drv->genpd_opp_tables), in qcom_cpufreq_probe()
203 if (!drv->genpd_opp_tables) { in qcom_cpufreq_probe()
215 if (drv->data->get_version) { in qcom_cpufreq_probe()
216 drv->opp_tables[cpu] = in qcom_cpufreq_probe()
218 &drv->versions, 1); in qcom_cpufreq_probe()
219 if (IS_ERR(drv->opp_tables[cpu])) { in qcom_cpufreq_probe()
220 ret = PTR_ERR(drv->opp_tables[cpu]); in qcom_cpufreq_probe()
227 if (drv->data->genpd_names) { in qcom_cpufreq_probe()
228 drv->genpd_opp_tables[cpu] = in qcom_cpufreq_probe()
230 drv->data->genpd_names, in qcom_cpufreq_probe()
232 if (IS_ERR(drv->genpd_opp_tables[cpu])) { in qcom_cpufreq_probe()
233 ret = PTR_ERR(drv->genpd_opp_tables[cpu]); in qcom_cpufreq_probe()
246 platform_set_drvdata(pdev, drv); in qcom_cpufreq_probe()
255 if (IS_ERR_OR_NULL(drv->genpd_opp_tables[cpu])) in qcom_cpufreq_probe()
257 dev_pm_opp_detach_genpd(drv->genpd_opp_tables[cpu]); in qcom_cpufreq_probe()
259 kfree(drv->genpd_opp_tables); in qcom_cpufreq_probe()
262 if (IS_ERR_OR_NULL(drv->opp_tables[cpu])) in qcom_cpufreq_probe()
264 dev_pm_opp_put_supported_hw(drv->opp_tables[cpu]); in qcom_cpufreq_probe()
266 kfree(drv->opp_tables); in qcom_cpufreq_probe()
268 kfree(drv); in qcom_cpufreq_probe()
275 struct qcom_cpufreq_drv *drv = platform_get_drvdata(pdev); in qcom_cpufreq_remove() local
281 if (drv->opp_tables[cpu]) in qcom_cpufreq_remove()
282 dev_pm_opp_put_supported_hw(drv->opp_tables[cpu]); in qcom_cpufreq_remove()
283 if (drv->genpd_opp_tables[cpu]) in qcom_cpufreq_remove()
284 dev_pm_opp_detach_genpd(drv->genpd_opp_tables[cpu]); in qcom_cpufreq_remove()
287 kfree(drv->opp_tables); in qcom_cpufreq_remove()
288 kfree(drv->genpd_opp_tables); in qcom_cpufreq_remove()
289 kfree(drv); in qcom_cpufreq_remove()