diff options
author | Daniel Lezcano <daniel.lezcano@linaro.org> | 2012-04-24 16:05:32 +0200 |
---|---|---|
committer | Kevin Hilman <khilman@ti.com> | 2012-05-03 22:16:40 +0200 |
commit | f79b5d8abf4c37f689eca5c18a5185db5f6cdb9d (patch) | |
tree | 84b72d29b36ef5c2a3f47b09e96e2404b8191605 /arch | |
parent | ARM: OMAP3: cpuidle - remove errata check in the init function (diff) | |
download | linux-f79b5d8abf4c37f689eca5c18a5185db5f6cdb9d.tar.xz linux-f79b5d8abf4c37f689eca5c18a5185db5f6cdb9d.zip |
ARM: OMAP3: cpuidle - remove the 'valid' field
With the previous changes all the states are valid, except the last
state which is now handled at runtime by next_valid_state() based on
the errata flags.
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Reviewed-by: Jean Pihet <j-pihet@ti.com>
Reviewed-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Tested-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Tested-by: Kevin Hilman <khilman@ti.com>
[khilman@ti.com: minor changelog rework]
Signed-off-by: Kevin Hilman <khilman@ti.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-omap2/cpuidle34xx.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/arch/arm/mach-omap2/cpuidle34xx.c b/arch/arm/mach-omap2/cpuidle34xx.c index f394ea672b8b..29b4f872e393 100644 --- a/arch/arm/mach-omap2/cpuidle34xx.c +++ b/arch/arm/mach-omap2/cpuidle34xx.c @@ -67,7 +67,6 @@ static struct cpuidle_params cpuidle_params_table[] = { struct omap3_idle_statedata { u32 mpu_state; u32 core_state; - u8 valid; }; struct omap3_idle_statedata omap3_idle_data[OMAP3_NUM_STATES]; @@ -191,8 +190,7 @@ static int next_valid_state(struct cpuidle_device *dev, } /* Check if current state is valid */ - if ((cx->valid) && - (cx->mpu_state >= mpu_deepest_state) && + if ((cx->mpu_state >= mpu_deepest_state) && (cx->core_state >= core_deepest_state)) { return index; } else { @@ -216,8 +214,7 @@ static int next_valid_state(struct cpuidle_device *dev, idx--; for (; idx >= 0; idx--) { cx = cpuidle_get_statedata(&dev->states_usage[idx]); - if ((cx->valid) && - (cx->mpu_state >= mpu_deepest_state) && + if ((cx->mpu_state >= mpu_deepest_state) && (cx->core_state >= core_deepest_state)) { next_index = idx; break; @@ -371,7 +368,6 @@ static inline struct omap3_idle_statedata *_fill_cstate_usage( struct omap3_idle_statedata *cx = &omap3_idle_data[idx]; struct cpuidle_state_usage *state_usage = &dev->states_usage[idx]; - cx->valid = cpuidle_params_table[idx].valid; cpuidle_set_statedata(state_usage, cx); return cx; @@ -386,7 +382,6 @@ static inline struct omap3_idle_statedata *_fill_cstate_usage( int __init omap3_idle_init(void) { struct cpuidle_device *dev; - struct cpuidle_driver *drv = &omap3_idle_driver; struct omap3_idle_statedata *cx; mpu_pd = pwrdm_lookup("mpu_pwrdm"); @@ -399,7 +394,6 @@ int __init omap3_idle_init(void) /* C1 . MPU WFI + Core active */ cx = _fill_cstate_usage(dev, 0); - cx->valid = 1; /* C1 is always valid */ cx->mpu_state = PWRDM_POWER_ON; cx->core_state = PWRDM_POWER_ON; @@ -433,7 +427,6 @@ int __init omap3_idle_init(void) cx->mpu_state = PWRDM_POWER_OFF; cx->core_state = PWRDM_POWER_OFF; - drv->state_count = OMAP3_NUM_STATES; cpuidle_register_driver(&omap3_idle_driver); if (cpuidle_register_device(dev)) { |