Lines Matching refs:cpu_dev
279 static void _put_cluster_clk_and_freq_table(struct device *cpu_dev, in _put_cluster_clk_and_freq_table() argument
282 u32 cluster = raw_cpu_to_cluster(cpu_dev->id); in _put_cluster_clk_and_freq_table()
288 dev_pm_opp_free_cpufreq_table(cpu_dev, &freq_table[cluster]); in _put_cluster_clk_and_freq_table()
291 static void put_cluster_clk_and_freq_table(struct device *cpu_dev, in put_cluster_clk_and_freq_table() argument
294 u32 cluster = cpu_to_cluster(cpu_dev->id); in put_cluster_clk_and_freq_table()
301 return _put_cluster_clk_and_freq_table(cpu_dev, cpumask); in put_cluster_clk_and_freq_table()
316 static int _get_cluster_clk_and_freq_table(struct device *cpu_dev, in _get_cluster_clk_and_freq_table() argument
319 u32 cluster = raw_cpu_to_cluster(cpu_dev->id); in _get_cluster_clk_and_freq_table()
329 ret = dev_pm_opp_get_opp_count(cpu_dev) <= 0; in _get_cluster_clk_and_freq_table()
333 ret = dev_pm_opp_init_cpufreq_table(cpu_dev, &freq_table[cluster]); in _get_cluster_clk_and_freq_table()
337 clk[cluster] = clk_get(cpu_dev, NULL); in _get_cluster_clk_and_freq_table()
341 dev_err(cpu_dev, "%s: Failed to get clk for cpu: %d, cluster: %d\n", in _get_cluster_clk_and_freq_table()
342 __func__, cpu_dev->id, cluster); in _get_cluster_clk_and_freq_table()
344 dev_pm_opp_free_cpufreq_table(cpu_dev, &freq_table[cluster]); in _get_cluster_clk_and_freq_table()
347 dev_err(cpu_dev, "%s: Failed to get data for cluster: %d\n", __func__, in _get_cluster_clk_and_freq_table()
352 static int get_cluster_clk_and_freq_table(struct device *cpu_dev, in get_cluster_clk_and_freq_table() argument
355 u32 cluster = cpu_to_cluster(cpu_dev->id); in get_cluster_clk_and_freq_table()
362 ret = _get_cluster_clk_and_freq_table(cpu_dev, cpumask); in get_cluster_clk_and_freq_table()
413 struct device *cpu_dev; in ve_spc_cpufreq_init() local
416 cpu_dev = get_cpu_device(policy->cpu); in ve_spc_cpufreq_init()
417 if (!cpu_dev) { in ve_spc_cpufreq_init()
426 dev_pm_opp_get_sharing_cpus(cpu_dev, policy->cpus); in ve_spc_cpufreq_init()
435 ret = get_cluster_clk_and_freq_table(cpu_dev, policy->cpus); in ve_spc_cpufreq_init()
446 dev_info(cpu_dev, "%s: CPU %d initialized\n", __func__, policy->cpu); in ve_spc_cpufreq_init()
452 struct device *cpu_dev; in ve_spc_cpufreq_exit() local
454 cpu_dev = get_cpu_device(policy->cpu); in ve_spc_cpufreq_exit()
455 if (!cpu_dev) { in ve_spc_cpufreq_exit()
461 put_cluster_clk_and_freq_table(cpu_dev, policy->related_cpus); in ve_spc_cpufreq_exit()