This document lists known publicly-available implementations of the Pulse Per Second (PPS) API described in draft-mogul-pps-api-05.txt.
The most recent version of this document may be found at http://www.ntp.org/ppsapi/PPSImpList.html
A prototype implementation for NetBSD, based on an earlier draft of this specification, using the "com" serial driver for NS8250, NS16450, and NS16650 UARTS is available in NetBSD-current.
Note: This implementation currently corresponds to an earlier version of the API specification, and should NOT be used in production environments.
The relevant source files are:
src/sys/sys/timepps.h src/sys/dev/ic/com.c src/sys/dev/ic/comvar.h
Information valid as of: 10 June 1998 URL: http://www.NetBSD.ORG Contact: Jonathan Stone, jonathan@NetBSD.ORG
An implementation of draft-mogul-pps-api-05.txt for Linux 2.2.12 is available as an extension package. The API has been implemented for the serial driver, using the Carrier Detect (CD) pin. The optional time_pps_kcbind() is implemented for hardpps(). At the time of writing the most current version is contained in PPSkit-0.8.0.tar.gz (The packages adds general PPS capabilities, as well as a kernel upgrade to nanoseconds, the newer NTP algorithms, and the PPS API).
The relevant source files for the PPS API are:
/usr/src/linux/include/linux/timepps.h /usr/src/linux/drivers/char/serial.c
The implementation supports a signal on the carrier detect pin of any interrupt-driven serial port. Supported capabilities currently are:
PPS_CAPTUREASSERT PPS_CAPTURECLEAR PPS_OFFSETASSERT PPS_OFFSETCLEAR PPS_ECHOASSERT PPS_ECHOCLEAR PS_CANWAIT PPS_TSFMT_TSPEC PPS_KC_HARDPPS
Information valid as of: 10 October 1999 URL: ftp://linux.kernel.org/pub/linux/daemons/ntp/PPS/ Contact: Ulrich Windl, Ulrich.Windl@rz.uni-regensburg.de
The PPS-API based on draft-mogul-pps-api-05.txt is a standard part of FreeBSD. It is included in FreeBSD-CURRENT as of 10 Oct 1999, FreeBSD-3.3-STABLE as of 16 Oct 1999 and releases built after these dates. (Until the specification changes.)
The implementation includes driver support for parallel ports and async serial ports.
The relevant source files are:
src/sys/sys/timepps.h src/sys/kern/kern_clock.c src/sys/i386/isa/sio.c src/sys/dev/ppbus/pps.c
Information valid as of: 16 October 1999 URL: http://www.freebsd.org Contact: jhay@FreeBSD.org
This page was last updated 18 October 1999 at 15:03 by Jeff Mogul, mogul@pa.dec.com.