Lines Matching refs:policy

137 	struct cpufreq_policy *policy;
142 policy = cpufreq_cpu_get_raw(cpu);
143 if (unlikely(!policy))
146 priv = policy->driver_data;
162 cpufreq_for_each_valid_entry(p, policy->freq_table)
171 static int apple_soc_cpufreq_set_target(struct cpufreq_policy *policy,
174 struct apple_cpu_priv *priv = policy->driver_data;
175 unsigned int pstate = policy->freq_table[index].driver_data;
201 static unsigned int apple_soc_cpufreq_fast_switch(struct cpufreq_policy *policy,
204 if (apple_soc_cpufreq_set_target(policy, policy->cached_resolved_idx) < 0)
207 return policy->freq_table[policy->cached_resolved_idx].frequency;
210 static int apple_soc_cpufreq_find_cluster(struct cpufreq_policy *policy,
218 ret = of_perf_domain_get_sharing_cpumask(policy->cpu, "performance-domains",
220 policy->cpus, &args);
238 static int apple_soc_cpufreq_init(struct cpufreq_policy *policy)
248 cpu_dev = get_cpu_device(policy->cpu);
250 pr_err("failed to get cpu%d device\n", policy->cpu);
260 ret = apple_soc_cpufreq_find_cluster(policy, &reg_base, &info);
266 ret = dev_pm_opp_set_sharing_cpus(cpu_dev, policy->cpus);
307 policy->driver_data = priv;
308 policy->freq_table = freq_table;
314 policy->cpuinfo.transition_latency = transition_latency;
315 policy->dvfs_possible_from_any_cpu = true;
316 policy->fast_switch_possible = true;
317 policy->suspend_freq = freq_table[0].frequency;
332 static void apple_soc_cpufreq_exit(struct cpufreq_policy *policy)
334 struct apple_cpu_priv *priv = policy->driver_data;
336 dev_pm_opp_free_cpufreq_table(priv->cpu_dev, &policy->freq_table);