[LinuxPPS] how to enable kernel consumer?

Hal V. Engel hvengel at astound.net
Thu Jun 17 22:48:00 CEST 2010


I am now running 2.6.34 and for a few days had just the plain kernel with no 
new patches.  Everything worked as expected.  So today I decided to try the 
patches for the kernel consumer.   I downloaded the patch-2.6.24-ts13 patch 
from the link provided by Alexander Gordeev and applied the small patch from 
Vitezslav Samel.  The patches applied although I did have to do some minor 
hand clean up (the Vitezslav Samel patch failed to put the #endif line at teh 
end of the header file for some reason).  I set CONFIG_NTP_PPS=y (Actually it 
was set to y and menuconfig would not let me change it).   Here is what this 
looks like in menuconfig:

  <*> PPS support                                                                                                                              
    [ ]   PPS debugging messages                                                                              
    -*-   PPS kernel consumer support                                                              
           *** PPS clients support ***                                                              
  <M>   Kernel timer client (Testing client, use for debug)                                      
  <*>   PPS line discipline                                                                      
  < >   Parallel port PPS client                                                                 
           *** PPS generators support ***                                                          
  < >   Parallel port PPS signal generator                                                       

And the values in the .config file appear to correspond:

# grep PPS .config
# PPS support
CONFIG_PPS=y
# CONFIG_PPS_DEBUG is not set
CONFIG_NTP_PPS=y
# PPS clients support
CONFIG_PPS_CLIENT_KTIMER=m
CONFIG_PPS_CLIENT_LDISC=y
# CONFIG_PPS_CLIENT_PARPORT is not set
# PPS generators support
# CONFIG_PPS_GENERATOR_PARPORT is not set

The build with the patches in place and the above settings went OK.  So 
presumably hardpps is enabled in the new kernel.  But when I set hardpps in my 
/etc/ntp.oncore.0 file I get the following in my /etc/log/ntp/clockstats file.

55364 73724.020 127.127.30.0 ONCORE[0]: ONCORE DRIVER -- CONFIGURING
55364 73724.020 127.127.30.0 ONCORE[0]: state = ONCORE_NO_IDEA
55364 73724.020 127.127.30.0 ONCORE[0]: Input mode = 1
55364 73724.020 127.127.30.0 ONCORE[0]: Initializing timing to Assert.
55364 73724.020 127.127.30.0 ONCORE[0]: HARDPPS Set.
55364 73724.020 127.127.30.0 ONCORE[0]: time_pps_kcbind failed: Operation not 
supported
55364 73724.020 127.127.30.0 ONCORE[0]: HARDPPS failed, abort...

So I am not sure how to get this to work or what to check to isolate the 
problem.  NTP works fine if do not set hardpps in the oncore config file.  So 
this is strictly a problem with how to get hardpps working.

Hal



More information about the LinuxPPS mailing list