Re: [PATCH] timekeeping: Move persistent clock registration code from ARM to kernel

From: Thierry Reding
Date: Fri Jan 09 2015 - 09:09:16 EST


On Fri, Jan 09, 2015 at 01:59:07PM +0000, Mark Rutland wrote:
> On Fri, Jan 09, 2015 at 09:49:14AM +0000, Thierry Reding wrote:
> > On Sat, Nov 15, 2014 at 02:38:00AM +0100, Thomas Gleixner wrote:
> > > On Sat, 15 Nov 2014, Thomas Gleixner wrote:
> > > > On Fri, 14 Nov 2014, Anatol Pomozov wrote:
> > > > > On Fri, Nov 14, 2014 at 4:18 PM, Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote:
> > > > > >> So what I suppose to do with my patch? If it does not work could
> > > > > >> anyone provide patch that removes ARM arch dependency from
> > > > > >> tegra20_timer.c?
> > > > > >
> > > > > > Huch? You want other people to solve your problems?
> > > > >
> > > > > This is not the point. I provided patch that fixes the issue. Other
> > > > > people said that they have ideas how to do it different (and better)
> > > > > way. So I am asking to share these ideas represented as a patch.
> > > >
> > > > That's not the way it works.
> > > >
> > > > You sent a patch to solve an problem which you are facing.
> > > >
> > > > Now the people who review the patch think that there is a better
> > > > approach than moving code from arm/ to the timekeeping core code.
> > > >
> > > > So it's up to you to come up with a patch which solves the problem in
> > > > the right way.
> > >
> > > And just for the record this whole thing is just hilarious.
> > >
> > > ARM64 selects ARM_ARCH_TIMER which registers the architected timer as
> > > the primary clocksource.
> > >
> > > Now that timer has the following flag set:
> > >
> > > CLOCK_SOURCE_SUSPEND_NONSTOP
> > >
> > > And that flag causes the core timekeeping code to use the clocksource
> > > to figure out the time which the machine spent in suspend.
> >
> > As I understand it the architected timer will be turned off along with
> > the rest of the CPU complex on Tegra. I'm not sure if that's specific to
> > Tegra or something that other SoCs may do as well.
>
> That doesn't sound right to me: the architecture specifies that the
> system counter must be implemented in an always-on power domain.
>
> Note that that only applies to the counter, not the timers (as the
> comparators can be turned off with the CPUs).

I'll let Paul comment on this, since I don't know the intimate details.
Of course if the system counter is indeed active across suspend/resume
then it doesn't seem like we'd need the Tegra timer at all on 64-bit.
Unless of course if we use it for something else.

Thierry

Attachment: pgpFQp7OcDKyS.pgp
Description: PGP signature