LKM Timemark Driver

Gary E. Miller gem at
Mon Aug 27 22:38:12 UTC 2018

Yo MLewis!

On Mon, 27 Aug 2018 18:24:01 -0400
MLewis via devel <devel at> wrote:

> Not me. I looked at it and having it as a patch didn't make sense to
> me.

I hope someone picks it up, my TODO list already long.

> So I'm developing a LKM to trigger Timemarks with timespec timestamps 
> and sequence number. Anyone will be able to modify the source to suit 
> their needs. My first LKM, so it's taking some time, and I only have 
> spare time available to work on it, but I like how it's shaping up.

The key thing I, and others, want from the Lukas patch is the
PPS out when the kernel detects the PPS.  Without out, nothing much
else matters.

What is your definition of "Timemark"?  I thought that was the
time stamp from the u-blox on receipt of  the PPS out from linux?

>  From user space, various commands, including: open port, High, Low, 
> Toggle, Pulse is Positive, Pulse is Negative, Pulse, Pulse at ms past 
> TOS, Pulse every ms, and pulsing available specifying nanoseconds.


> Send commands from user space or load it with a param of 
> "OPN017Tm1;PPS017;OPN018Tm2;PPS018;PAT017.165.250;PAT018.165.580;"
> Open GPIO 17 as "Tm1"
> GPIO 17 use positive pulses
> Open GPIO 18 as "Tm2"

What is "Tm1" and "Tm2"?

> GPIO 18 use positive pulses
> PAT017.165.250 will pulse GPIO 17 at 250 ms from tos, width 165 ms
> PAT018.165.580 will pulse GPIO 18 at 580 ms from tos, width 165 ms

Which 'tos'?

> Then something in user space to receive the TM2 messages and the
> LKM's timestamps and match up the Timemarks with the triggering
> timestamps.

How does a daemon get the LKM timestamp?  In the base case, as
Lukas had it setup, no need for such a thing.

I already have a private UBX-TIM-TM2 decoder.  Something I hope to
release soon.  Adding a TM2 decoder to gpsd, and using it to adjust the
KPPS would not be too hard.

Right now gpsd sends a SHM() message with the KPPS timestamp as soon as
it gets it.  gpsd would have to delay, hoping to get a TM2, then
send the timestamp deleayd.

Gary E. Miller Rellim 109 NW Wilmington Ave., Suite E, Bend, OR 97703
	gem at  Tel:+1 541 382 8588

	    Veritas liberabit vos. -- Quid est veritas?
    "If you can’t measure it, you can’t improve it." - Lord Kelvin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 851 bytes
Desc: OpenPGP digital signature
URL: <>

More information about the devel mailing list