Skip to content

Commit

Permalink
ARM: S3C64XX: use timekeeping wrapper on cpuidle
Browse files Browse the repository at this point in the history
The timekeeping is computed from the cpuidle core if we set
the .en_core_tk_irqen flag. Let's use it and remove the duplicated
code.

Signed-off-by: Daniel Lezcano <[email protected]>
Tested-by: Mark Brown <[email protected]>
Signed-off-by: Kukjin Kim <[email protected]>
  • Loading branch information
dlezcano authored and kgene committed May 17, 2012
1 parent 4c8b207 commit aba607d
Showing 1 changed file with 1 addition and 11 deletions.
12 changes: 1 addition & 11 deletions arch/arm/mach-s3c64xx/cpuidle.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,7 @@ static int s3c64xx_enter_idle(struct cpuidle_device *dev,
struct cpuidle_driver *drv,
int index)
{
struct timeval before, after;
unsigned long tmp;
int idle_time;

local_irq_disable();
do_gettimeofday(&before);

/* Setup PWRCFG to enter idle mode */
tmp = __raw_readl(S3C64XX_PWR_CFG);
Expand All @@ -42,12 +37,6 @@ static int s3c64xx_enter_idle(struct cpuidle_device *dev,

cpu_do_idle();

do_gettimeofday(&after);
local_irq_enable();
idle_time = (after.tv_sec - before.tv_sec) * USEC_PER_SEC +
(after.tv_usec - before.tv_usec);

dev->last_residency = idle_time;
return index;
}

Expand All @@ -56,6 +45,7 @@ static DEFINE_PER_CPU(struct cpuidle_device, s3c64xx_cpuidle_device);
static struct cpuidle_driver s3c64xx_cpuidle_driver = {
.name = "s3c64xx_cpuidle",
.owner = THIS_MODULE,
.en_core_tk_irqen = 1,
.states = {
{
.enter = s3c64xx_enter_idle,
Expand Down

0 comments on commit aba607d

Please sign in to comment.