All of lore.kernel.org
 help / color / mirror / Atom feed
From: Viresh Kumar <viresh.kumar@linaro.org>
To: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Cc: rafael.j.wysocki@intel.com, linux-pm@vger.kernel.org,
	prarit@redhat.com, trenn@suse.de
Subject: Re: [PATCH v2 1/4] cpufreq: Add configurable generic policies
Date: Wed, 9 Dec 2015 07:48:04 +0530	[thread overview]
Message-ID: <20151209021804.GR3692@ubuntu> (raw)
In-Reply-To: <1449613890-10403-2-git-send-email-srinivas.pandruvada@linux.intel.com>

On 08-12-15, 14:31, Srinivas Pandruvada wrote:
> For drivers using cpufreq_driver->setpolicy callback, by default two
> policies are available (performance and powersave). The client drivers
> can't change them, even if there is no support for a policy.
> This change adds a new field "available_policies" in the struct
> cpufreq_policy. The client driver can optionally set this field during
> init() callback. If the client driver doesn't set this field then the
> default policies are "performance powersave" matching current
> implementation.
> 
> Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
> ---
>  drivers/cpufreq/cpufreq.c | 9 ++++++++-
>  include/linux/cpufreq.h   | 1 +
>  2 files changed, 9 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c
> index 8412ce5..286eaec 100644
> --- a/drivers/cpufreq/cpufreq.c
> +++ b/drivers/cpufreq/cpufreq.c
> @@ -688,7 +688,10 @@ static ssize_t show_scaling_available_governors(struct cpufreq_policy *policy,
>  	struct cpufreq_governor *t;
>  
>  	if (!has_target()) {
> -		i += sprintf(buf, "performance powersave");
> +		if (policy->available_policies & CPUFREQ_POLICY_PERFORMANCE)
> +			i += sprintf(buf, "performance ");
> +		if (policy->available_policies & CPUFREQ_POLICY_POWERSAVE)
> +			i += sprintf(&buf[i], "powersave ");
>  		goto out;
>  	}
>  
> @@ -966,6 +969,10 @@ static int cpufreq_init_policy(struct cpufreq_policy *policy)
>  
>  	memcpy(&new_policy, policy, sizeof(*policy));
>  
> +	if (!policy->available_policies)
> +		policy->available_policies = CPUFREQ_POLICY_PERFORMANCE |
> +						CPUFREQ_POLICY_POWERSAVE;
> +
>  	/* Update governor of new_policy to the governor used before hotplug */
>  	gov = find_governor(policy->last_governor);
>  	if (gov)
> diff --git a/include/linux/cpufreq.h b/include/linux/cpufreq.h
> index 177c768..7cc17df 100644
> --- a/include/linux/cpufreq.h
> +++ b/include/linux/cpufreq.h
> @@ -76,6 +76,7 @@ struct cpufreq_policy {
>  	unsigned int		restore_freq; /* = policy->cur before transition */
>  	unsigned int		suspend_freq; /* freq to set during suspend */
>  
> +	u8			available_policies;
>  	unsigned int		policy; /* see above */
>  	unsigned int		last_policy; /* policy before unplug */
>  	struct cpufreq_governor	*governor; /* see below */

Acked-by: Viresh Kumar <viresh.kumar@linaro.org>

-- 
viresh

  reply	other threads:[~2015-12-09  2:18 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-08 22:31 [PATCH v2 0/4] cpufreq governors and Intel P state driver compatibility Srinivas Pandruvada
2015-12-08 22:31 ` [PATCH v2 1/4] cpufreq: Add configurable generic policies Srinivas Pandruvada
2015-12-09  2:18   ` Viresh Kumar [this message]
2015-12-08 22:31 ` [PATCH v2 2/4] cpufreq: Add ondemand as a generic policy Srinivas Pandruvada
2015-12-08 22:31 ` [PATCH v2 3/4] Documentation: cpu-freq: update setpolicy documentation Srinivas Pandruvada
2015-12-09  2:19   ` Viresh Kumar
2015-12-08 22:31 ` [PATCH v2 4/4] cpufreq: intel_pstate: Change powersave to ondemand policy Srinivas Pandruvada
2015-12-08 23:45 ` [PATCH v2 0/4] cpufreq governors and Intel P state driver compatibility Prarit Bhargava
2015-12-08 23:57   ` Srinivas Pandruvada
2015-12-09 13:12     ` Prarit Bhargava
2015-12-09 16:18       ` Srinivas Pandruvada
2015-12-16 19:33 ` Srinivas Pandruvada

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20151209021804.GR3692@ubuntu \
    --to=viresh.kumar@linaro.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=prarit@redhat.com \
    --cc=rafael.j.wysocki@intel.com \
    --cc=srinivas.pandruvada@linux.intel.com \
    --cc=trenn@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.