Re: [PATCH] clocksource: timer-atmel-pit: don't suspend/resume if unused

From: Thomas Gleixner
Date: Tue Jan 13 2015 - 05:48:13 EST


On Mon, 12 Jan 2015, Daniel Lezcano wrote:

> On 01/12/2015 03:04 PM, Nicolas Ferre wrote:
> > Le 18/12/2014 15:05, Nicolas Ferre a Ãcrit :
> > > From: Sylvain Rochet <sylvain.rochet@xxxxxxxxxxxx>
> > >
> > > Waiting for PIT to stop counting takes a long time:
> > > 1/(Master clock/prescaler/PIVR)
> > > = 1/(133 MHz /16 /2^20)
> > > = 126 ms
> > >
> > > Up to 126 ms if master clock is set to 133 MHz, skipping suspend/resume
> > > of the unused PIT device reduce (suspend time + resume time) from ~140 ms
> > > to ~17 ms.
> > >
> > > Signed-off-by: Sylvain Rochet <sylvain.rochet@xxxxxxxxxxxx>
> > > [nicolas.ferre@xxxxxxxxx: move to newer clocksource driver]
> > > Signed-off-by: Nicolas Ferre <nicolas.ferre@xxxxxxxxx>
> > > Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
> > > ---
> > > Hi Sylvain,
> > >
> > > I re-worked (and "Acked") your patch so it can be applied on the newer
> > > Mainline
> > > kernels. Beware, I changed the "subject line" as well. The PIT driver
> > > moved
> > > recently (3.18).
> > >
> > > Daniel,
> > > Can you take this patch in your tree?
> >
> > Hi Daniel,
> >
> > Anything prevents this patch from being merged (aka ping ;-))?
>
> [Cc'ed tglx].
>
> Hi Nico,
>
> thanks for the head up.
>
> Nothing prevents it but I am wondering if this change shouldn't be in the
> generic framework (kernel/time/clocksource.c and kernel/time/clockevents.c),
> so all drivers will benefit this change ?

Indeed. There is no point in calling suspend/resume for unused
clockevents. They should be stopped and disabled already.

Now with clocksources this might be different. We have no explicit
state for this, but its trivial to add one at least for those
clocksources which have enable/disable callbacks. For the other ones
not so much.

Thanks,

tglx