[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-id: <15852322.15281335501548956.JavaMail.weblogic@epml25>
Date: Fri, 27 Apr 2012 04:39:09 +0000 (GMT)
From: MyungJoo Ham <myungjoo.ham@...sung.com>
To: Xiaoguang Chen <chenxg@...vell.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Cc: "khilman@...com" <khilman@...com>,
¹Ú°æ¹Î <kyungmin.park@...sung.com>,
"mturquette@...com" <mturquette@...com>,
"rjw@...k.pl" <rjw@...k.pl>
Subject: Re: [PATCH] PM: devfreq: init performance/powersave governor
> Performance and powersave governor's get_target_freq
> is not called if driver chooses one of these two governors.
> Add init function in governor profile to call update_devfreq
> which will call get_target_freq subsequently.
>
> Signed-off-by: Xiaoguang Chen <chenxg@...vell.com>
Acked-by: MyungJoo Ham <myungjoo.ham@...sung.com>
Hello Xiaoguang,
Yes, if we do not call any QoS, min/max, OPP interfaces or enable polling, we need to call this at init. In fact, this is a bugfix patch.
Thank you!
Cheers!
MyungJoo.
> ---
> drivers/devfreq/governor_performance.c | 7 +++++++
> drivers/devfreq/governor_powersave.c | 7 +++++++
> 2 files changed, 14 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/devfreq/governor_performance.c b/drivers/devfreq/governor_performance.c
> index 574a06b..af75ddd 100644
> --- a/drivers/devfreq/governor_performance.c
> +++ b/drivers/devfreq/governor_performance.c
> @@ -10,6 +10,7 @@
> */
>
> #include <linux/devfreq.h>
> +#include "governor.h"
>
> static int devfreq_performance_func(struct devfreq *df,
> unsigned long *freq)
> @@ -25,8 +26,14 @@ static int devfreq_performance_func(struct devfreq *df,
> return 0;
> }
>
> +static int performance_init(struct devfreq *devfreq)
> +{
> + return update_devfreq(devfreq);
> +}
> +
> const struct devfreq_governor devfreq_performance = {
> .name = "performance",
> + .init = performance_init,
> .get_target_freq = devfreq_performance_func,
> .no_central_polling = true,
> };
> diff --git a/drivers/devfreq/governor_powersave.c b/drivers/devfreq/governor_powersave.c
> index d742d4a..fec0cdb 100644
> --- a/drivers/devfreq/governor_powersave.c
> +++ b/drivers/devfreq/governor_powersave.c
> @@ -10,6 +10,7 @@
> */
>
> #include <linux/devfreq.h>
> +#include "governor.h"
>
> static int devfreq_powersave_func(struct devfreq *df,
> unsigned long *freq)
> @@ -22,8 +23,14 @@ static int devfreq_powersave_func(struct devfreq *df,
> return 0;
> }
>
> +static int powersave_init(struct devfreq *devfreq)
> +{
> + return update_devfreq(devfreq);
> +}
> +
> const struct devfreq_governor devfreq_powersave = {
> .name = "powersave",
> + .init = powersave_init,
> .get_target_freq = devfreq_powersave_func,
> .no_central_polling = true,
> };
> --
> 1.7.0.4
>
>
Powered by blists - more mailing lists