after substantial hacking and testing I'm pleased to announce the next
"dot zero" release of PPSkit. It now features an implementation of the
still discussed "PPS API" (version 03) as well as updated patches.
The news file says:
NEWS for 0.7.0
+ ``madtime.txt'' is finally gone. Updated ``ntp.conf.PPS'' example
(used with ntpd-4.0.92h).
+ The behavior for late pulses in ``hardpps()'' was too aggressive: Be
more careful now (silently start a new calibration interval).
Changes merged into Linux-2.2.9.
+ Occasional time warps worth one tick were observed on an i386/SX
16MHz. The problem could be caused by ``lost_ticks'' being changed
while the time offset is being composed. Tried to reduce the
probability by reading the variable earlier.
+ Added workaround when ``time_constant'' exceeds its allowed range.
+ Added dynamic adjustment of ``time_tolerance'', because the default
worst-case estimate (500PPM) was too high: Simply monitor the PPS
frequency (the normal PLL/FLL frequency is not trusted enough). Do
some trickery for the first estimate to avoid excessive
``STA_PPSWANDER'' conditions.
+ Implemented ``time_pps_wait()'' to wait for events non-busily (My
first try with scheduling, interrupts and wait queues).
``enable_pps.c'' now uses this function to wait for events.
Enhanced jitter monitor.
+ Updated the test program ``enable_pps.c'' to use the PPS API.
Changed the option ``-p'' for ``polarity'' to ``-t'' for
``trigger'': To specify the event to capture use one of `a', `c', or
`b' for ``assert'', ``clear'', or ``both'' respectively. To connect
the captured event to ``hardpps()'' add an extra `h'.
+ Use a new method to capture timestamps: This should reduce jitter,
and should improve accuracy. In addition, it's easier now to
capture other events like received characters. Added a more
effective way to enable interrupts for status changes on the modem
lines (read: the mysterious jitter is gone!)
+ Updated patch for Linux 2.2.7. Merged in code contributed by Reg
Clemens to implement the (still draft status) PPS API (Experiments
with my Pentium 100 and ntpd-4-0.92h showed that we need
sub-microsecond resolution). Move closer to the standard
``hardpps()''. Adedd a new ``include/linux/timepps.h'' for the PPS
API. The old ``CIOGETEV'' is still present, but a separate
parameter setup is required now. The old constants
``ASYNC_PPS_CD_*'' are gone.
+ Added patch to support ``LDISC_PPS'' in ``ntp_refclock.c'' (a hack
that is no longer necessary in ntpd-4.0.92h). Updated
``patch-ntp-4.0''.
And finally there's a LSM entry as well. As it turned out, the package is
89kB (instead of 81):
Begin3
Title: PPSkit
Version: 0.7.0
Entered-date: 1999-05-23
Description: kernel time patch for NTP (RFC1305) and PPS support
(RFC1589)
against Linux 2.2.9+ (kernel patch, documentation, test
programs)
Keywords: NTP, PPS, PPS API, kernel, RFC1305, RFC1589, xntp, time,
clock, pulse-per-second, synchronization, calibration,
adjtimex, nanoseconds, POSIX.4, nanokernel
Author: Ulrich.Windl@rz.uni-regensburg.de (Ulrich Windl)
Maintained-by: Ulrich.Windl@rz.uni-regensburg.de (Ulrich Windl)
Primary-site: linux.kernel.org /pub/linux/daemons/ntp/PPS
81kB PPSkit-0.7.0.tar.gz
Alternate-site:
Original-site: pcphy4.physik.uni-regensburg.de /pub/wiu09524/PPS
PPSkit-0.7.0.tar.gz
Platform: RS232-compatible precision pulse-per-second with an error
less than 500PPM (0.0005%, 0.5ms)
Copying-policy: GPL, but payment welcome!
End
Regards,
Ulrich
P.S. I'm on vacation; be patient with replies for three weeks
P.P.S: Our news server's disk is full again. I can't post. Maybe someone
wants to send an anouncement to comp.protocols.time.ntp and/or c.o.l.a...
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/