Re: RTC subsystem and fractions of seconds

From: David Brownell
Date: Sat Jan 06 2007 - 18:53:19 EST


On Saturday 06 January 2007 3:26 pm, Philippe De Muyter wrote:
> On Fri, Jan 05, 2007 at 07:49:00PM -0800, David Brownell wrote:
> > > Those rtc's actually have a 1/100th of second
> > > register. Should the generic rtc interface not support that?
> >
> > Are you implying a new userspace API, or just an in-kernel update?
>
> My only concern at the moment is initializing linux's timeofday from the rtc
> quickly and with a good precision.

There will necessarily be a bit of fuzz there since it can take time to
get that RTC's mutex, and the task setting that time can be preempted.
Plus, there can also be delays at the I2C or SPI transaction level.


> The way it is done currently
> in drivers/rtc/hctosys.c is 0.5 sec off. We could obtain a much better
> precision by looping there until the next change (next second for old clocks,
> next 0.01 second for m41t81, maybe even better for other ones).

Hmm ... "looping" fights against "quickly"; as would "wait for next
update IRQ" (on RTCs that support that). But it would improve precision,
at least in the sense of having the system clock and that RTC spending
less time with the lowest "seconds" digit disagreeing.

This is something you could write a patch for, n'est-ce pas?

- Dave



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/