Additional pps-gpio

Achim Gratz Stromeko at
Thu Jan 25 21:51:50 UTC 2018

Hal Murray via devel writes:
> I'm not sure what you mean by "_creating_ a PPS".

Set up a periodic high-resolution absolute kernel timer to toggle a GPIO.

> One approach would be to flap a modem control signal from userland.

You can do that via highres timers (caution: they won't work with the
default nohz settings), but I think the timing would be too variable
since it would need to round-trip kernel-userland-kernel.  But I have
not tried it (for this purpose).  I do use the highres timer for the
temperature control since I need to adapt the load ten times per second.

> You could grab the time before and after.  If you did it shortly after
> the second tick, you could measure the time between PPS and modem
> control.  That would give you a bracket on the offset of the system
> time.

Btw, you seem to be forgetting that there aren't any modem control
signals on the rasPi.  There would be on the Tinkerboard (two at least,
potentially four by dropping other devices) if there was a usable device
tree overlay plus pinmux configuration to connect those to the header,
but if that exists somewhere I haven't found it yet.

> There are comments in the kernel PPS documentation for an echo mode.  I 
> didn't find any actual code.  But it seems like something in that area would 
> be handy for measuring interrupt latency.

It's an optional kernel driver that nobody compiles in by default.  But
it does something different: it will create a pulse out for every pulse
in so that you can measure how long the processing takes from the
outside.  It has the same problem as NTP in that you can't really figure
out any asymmetry that way.

+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

SD adaptations for KORG EX-800 and Poly-800MkII V0.9:

More information about the devel mailing list