Lines Matching refs:tunables
26 struct sugov_tunables *tunables; member
567 struct sugov_tunables *tunables = to_sugov_tunables(attr_set); in rate_limit_us_show() local
569 return sprintf(buf, "%u\n", tunables->rate_limit_us); in rate_limit_us_show()
575 struct sugov_tunables *tunables = to_sugov_tunables(attr_set); in rate_limit_us_store() local
582 tunables->rate_limit_us = rate_limit_us; in rate_limit_us_store()
688 struct sugov_tunables *tunables; in sugov_tunables_alloc() local
690 tunables = kzalloc(sizeof(*tunables), GFP_KERNEL); in sugov_tunables_alloc()
691 if (tunables) { in sugov_tunables_alloc()
692 gov_attr_set_init(&tunables->attr_set, &sg_policy->tunables_hook); in sugov_tunables_alloc()
694 global_tunables = tunables; in sugov_tunables_alloc()
696 return tunables; in sugov_tunables_alloc()
699 static void sugov_tunables_free(struct sugov_tunables *tunables) in sugov_tunables_free() argument
704 kfree(tunables); in sugov_tunables_free()
710 struct sugov_tunables *tunables; in sugov_init() local
737 sg_policy->tunables = global_tunables; in sugov_init()
743 tunables = sugov_tunables_alloc(sg_policy); in sugov_init()
744 if (!tunables) { in sugov_init()
749 tunables->rate_limit_us = cpufreq_policy_transition_delay_us(policy); in sugov_init()
752 sg_policy->tunables = tunables; in sugov_init()
754 ret = kobject_init_and_add(&tunables->attr_set.kobj, &sugov_tunables_ktype, in sugov_init()
766 sugov_tunables_free(tunables); in sugov_init()
785 struct sugov_tunables *tunables = sg_policy->tunables; in sugov_exit() local
790 count = gov_attr_set_put(&tunables->attr_set, &sg_policy->tunables_hook); in sugov_exit()
793 sugov_tunables_free(tunables); in sugov_exit()
807 sg_policy->freq_update_delay_ns = sg_policy->tunables->rate_limit_us * NSEC_PER_USEC; in sugov_start()