[LinuxPPS] how to enable kernel consumer?

Alexander Gordeev lasaine at lvk.cs.msu.su
Thu Jun 17 23:10:16 CEST 2010


В Thu, 17 Jun 2010 13:48:00 -0700
"Hal V. Engel" <hvengel at astound.net> пишет:

> 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.

You have a wrong timepps.h that actually doesn't ask kernel to enable
kernel consumer but just returns error. You can get the right one here:
http://github.com/ago/pps-tools/raw/master/timepps.h

You should probably also update /usr/include/linux/pps.h for your
kernel sources after the patches are applied.

I hope this mess will be history one day...

-- 
  Alexander
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 490 bytes
Desc: not available
Url : http://ml.enneenne.com/pipermail/linuxpps/attachments/20100618/a66e3297/attachment.pgp 


More information about the LinuxPPS mailing list