Lines Matching refs:policy
24 struct cpufreq_policy *policy; member
89 if (sg_policy->policy->fast_switch_enabled && in sugov_should_update_freq()
90 !cpufreq_this_cpu_can_update(sg_policy->policy)) in sugov_should_update_freq()
119 struct cpufreq_policy *policy = sg_policy->policy; in sugov_fast_switch() local
125 next_freq = cpufreq_driver_fast_switch(policy, next_freq); in sugov_fast_switch()
129 policy->cur = next_freq; in sugov_fast_switch()
132 for_each_cpu(cpu, policy->cpus) in sugov_fast_switch()
174 struct cpufreq_policy *policy = sg_policy->policy; in get_next_freq() local
176 policy->cpuinfo.max_freq : policy->cur; in get_next_freq()
185 return cpufreq_driver_resolve_freq(policy, freq); in get_next_freq()
492 if (sg_policy->policy->fast_switch_enabled) { in sugov_update_single()
504 struct cpufreq_policy *policy = sg_policy->policy; in sugov_next_freq_shared() local
508 for_each_cpu(j, policy->cpus) { in sugov_next_freq_shared()
542 if (sg_policy->policy->fast_switch_enabled) in sugov_update_shared()
573 __cpufreq_driver_target(sg_policy->policy, freq, CPUFREQ_RELATION_L); in sugov_work()
638 static struct sugov_policy *sugov_policy_alloc(struct cpufreq_policy *policy) in sugov_policy_alloc() argument
646 sg_policy->policy = policy; in sugov_policy_alloc()
673 struct cpufreq_policy *policy = sg_policy->policy; in sugov_kthread_create() local
677 if (policy->fast_switch_enabled) in sugov_kthread_create()
684 cpumask_first(policy->related_cpus)); in sugov_kthread_create()
698 kthread_bind_mask(thread, policy->related_cpus); in sugov_kthread_create()
710 if (sg_policy->policy->fast_switch_enabled) in sugov_kthread_stop()
739 static int sugov_init(struct cpufreq_policy *policy) in sugov_init() argument
746 if (policy->governor_data) in sugov_init()
749 cpufreq_enable_fast_switch(policy); in sugov_init()
751 sg_policy = sugov_policy_alloc(policy); in sugov_init()
768 policy->governor_data = sg_policy; in sugov_init()
781 tunables->rate_limit_us = cpufreq_policy_transition_delay_us(policy); in sugov_init()
783 policy->governor_data = sg_policy; in sugov_init()
787 get_governor_parent_kobj(policy), "%s", in sugov_init()
798 policy->governor_data = NULL; in sugov_init()
809 cpufreq_disable_fast_switch(policy); in sugov_init()
815 static void sugov_exit(struct cpufreq_policy *policy) in sugov_exit() argument
817 struct sugov_policy *sg_policy = policy->governor_data; in sugov_exit()
824 policy->governor_data = NULL; in sugov_exit()
832 cpufreq_disable_fast_switch(policy); in sugov_exit()
835 static int sugov_start(struct cpufreq_policy *policy) in sugov_start() argument
837 struct sugov_policy *sg_policy = policy->governor_data; in sugov_start()
848 for_each_cpu(cpu, policy->cpus) { in sugov_start()
856 for_each_cpu(cpu, policy->cpus) { in sugov_start()
860 policy_is_shared(policy) ? in sugov_start()
867 static void sugov_stop(struct cpufreq_policy *policy) in sugov_stop() argument
869 struct sugov_policy *sg_policy = policy->governor_data; in sugov_stop()
872 for_each_cpu(cpu, policy->cpus) in sugov_stop()
877 if (!policy->fast_switch_enabled) { in sugov_stop()
883 static void sugov_limits(struct cpufreq_policy *policy) in sugov_limits() argument
885 struct sugov_policy *sg_policy = policy->governor_data; in sugov_limits()
887 if (!policy->fast_switch_enabled) { in sugov_limits()
889 cpufreq_policy_apply_limits(policy); in sugov_limits()
938 void sched_cpufreq_governor_change(struct cpufreq_policy *policy, in sched_cpufreq_governor_change() argument
941 if (old_gov == &schedutil_gov || policy->governor == &schedutil_gov) { in sched_cpufreq_governor_change()