Linuxpps notes

There is a git tree you can grab thusly (notes taken from the developer's email):

Just install the git-core package and then you need __only__ these
commands to get a patch:

   $ git clone git://git.enneenne.com/linuxpps
   $ cd linuxpps
   $ git diff linux-vanilla master > my_patch

First command downloads a copy of my repository (the repository is
huge since it holds the linux-vanilla source code too) and the last
command extracts the patch against the linux-vanilla.

Once you have cloned my repository you can get updates simply using
the command:

   $ git pull git://git.enneenne.com/linuxpps

This time will be downloaded only the differences (few bytes :).

Also sending patches to me is easy. Just modify the code and then use:

   $ git diff > patch_to_submit

Build your kernel-of-choice. For example, I've grabbed a 2.6.18-rc2 kernel and patched it with the linuxpps patch. You must install the timepps.h file in /usr/include to allow the patched ntpd to build with the linuxpps support. I've installed it as a link:
[email protected][506] ls -ld /usr/include/timepps.h 
lrwxrwxrwx 1 root root 38 Jul 29 02:25 /usr/include/timepps.h -> /usr/src/linux/include/linux/timepps.h
I'm running 2.6.18-rc2-x1 SMP PREEMPT on a k6-2 testbed. Check your new kernel:
[email protected][505] cat /proc/pps/sources 
id      mode    echo    name                    path
----    ------  ----    ----------------        ----------------
00      1133    no      pps_8250_0              /dev/ttyS0
01      1133    no      pps_8250_1              /dev/ttyS1
02      1133    no      pps_8250_2              /dev/ttyS2
03      1133    no      pps_8250_3              /dev/ttyS3
If you see doubled /dev/ttyS0, /dev/ttyS1 entries, its likely that you have enabled PNP bios support in your new kernel. Rebuild your kernel with PNP support, but disable the BIOS PNP support option. This fixed the double entry problem for me.