[8/9] ARM: omap3: cpuidle: enable time keeping

Message ID 1364991322-20585-8-git-send-email-daniel.lezcano@linaro.org
State Accepted
Commit 561a07ac1c595572cbdbf459de87b319cba638ca
Headers show

Commit Message

Daniel Lezcano April 3, 2013, 12:15 p.m.
The TIME_VALID flag is specified for the different states but
the time residency computation is not done, no tk flag, no time
computation in the idle function.

Set the en_core_tk_irqen flag to activate it.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
---
 arch/arm/mach-omap2/cpuidle34xx.c |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

Comments

Kevin Hilman April 3, 2013, 5:47 p.m. | #1
Daniel Lezcano <daniel.lezcano@linaro.org> writes:

> The TIME_VALID flag is specified for the different states but
> the time residency computation is not done, no tk flag, no time
> computation in the idle function.
>
> Set the en_core_tk_irqen flag to activate it.
>
> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>

Acked-by: Kevin Hilman <khilman@linaro.org>

Also, is this a regression fix that also needs to hit v3.9?

Kevin

> ---
>  arch/arm/mach-omap2/cpuidle34xx.c |    5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/cpuidle34xx.c b/arch/arm/mach-omap2/cpuidle34xx.c
> index 80392fc..4f67a5b 100644
> --- a/arch/arm/mach-omap2/cpuidle34xx.c
> +++ b/arch/arm/mach-omap2/cpuidle34xx.c
> @@ -274,8 +274,9 @@ static int omap3_enter_idle_bm(struct cpuidle_device *dev,
>  static DEFINE_PER_CPU(struct cpuidle_device, omap3_idle_dev);
>  
>  static struct cpuidle_driver omap3_idle_driver = {
> -	.name =		"omap3_idle",
> -	.owner =	THIS_MODULE,
> +	.name             = "omap3_idle",
> +	.owner            = THIS_MODULE,
> +	.en_core_tk_irqen = 1,
>  	.states = {
>  		{
>  			.enter		  = omap3_enter_idle_bm,
Daniel Lezcano April 3, 2013, 8:49 p.m. | #2
On 04/03/2013 07:47 PM, Kevin Hilman wrote:
> Daniel Lezcano <daniel.lezcano@linaro.org> writes:
> 
>> The TIME_VALID flag is specified for the different states but
>> the time residency computation is not done, no tk flag, no time
>> computation in the idle function.
>>
>> Set the en_core_tk_irqen flag to activate it.
>>
>> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
>> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
> 
> Acked-by: Kevin Hilman <khilman@linaro.org>
> 
> Also, is this a regression fix that also needs to hit v3.9?

Yes, I think so.


>> ---
>>  arch/arm/mach-omap2/cpuidle34xx.c |    5 +++--
>>  1 file changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/arch/arm/mach-omap2/cpuidle34xx.c b/arch/arm/mach-omap2/cpuidle34xx.c
>> index 80392fc..4f67a5b 100644
>> --- a/arch/arm/mach-omap2/cpuidle34xx.c
>> +++ b/arch/arm/mach-omap2/cpuidle34xx.c
>> @@ -274,8 +274,9 @@ static int omap3_enter_idle_bm(struct cpuidle_device *dev,
>>  static DEFINE_PER_CPU(struct cpuidle_device, omap3_idle_dev);
>>  
>>  static struct cpuidle_driver omap3_idle_driver = {
>> -	.name =		"omap3_idle",
>> -	.owner =	THIS_MODULE,
>> +	.name             = "omap3_idle",
>> +	.owner            = THIS_MODULE,
>> +	.en_core_tk_irqen = 1,
>>  	.states = {
>>  		{
>>  			.enter		  = omap3_enter_idle_bm,
Kevin Hilman April 3, 2013, 9:43 p.m. | #3
Daniel Lezcano <daniel.lezcano@linaro.org> writes:

> On 04/03/2013 07:47 PM, Kevin Hilman wrote:
>> Daniel Lezcano <daniel.lezcano@linaro.org> writes:
>> 
>>> The TIME_VALID flag is specified for the different states but
>>> the time residency computation is not done, no tk flag, no time
>>> computation in the idle function.
>>>
>>> Set the en_core_tk_irqen flag to activate it.
>>>
>>> Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
>>> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
>> 
>> Acked-by: Kevin Hilman <khilman@linaro.org>
>> 
>> Also, is this a regression fix that also needs to hit v3.9?
>
> Yes, I think so.

OK.

I've got a handful of other OMAP CPUidle fixes queued for v3.10[1] so
I'll add this one to the queue and Cc: stable.

Thanks,

Kevin

[1]
git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm.git for_3.10/cleanup/cpuidle

Patch

diff --git a/arch/arm/mach-omap2/cpuidle34xx.c b/arch/arm/mach-omap2/cpuidle34xx.c
index 80392fc..4f67a5b 100644
--- a/arch/arm/mach-omap2/cpuidle34xx.c
+++ b/arch/arm/mach-omap2/cpuidle34xx.c
@@ -274,8 +274,9 @@  static int omap3_enter_idle_bm(struct cpuidle_device *dev,
 static DEFINE_PER_CPU(struct cpuidle_device, omap3_idle_dev);
 
 static struct cpuidle_driver omap3_idle_driver = {
-	.name =		"omap3_idle",
-	.owner =	THIS_MODULE,
+	.name             = "omap3_idle",
+	.owner            = THIS_MODULE,
+	.en_core_tk_irqen = 1,
 	.states = {
 		{
 			.enter		  = omap3_enter_idle_bm,