[PATCH 00/12] Enable PPS API in RTEMS6

Gabriel Moyano gabriel.moyano at dlr.de
Thu Apr 7 08:35:55 UTC 2022


Ticket #2349

These commits enable the PPS API support in the master branch.
Two pointers to function were added in struct pps_state to replace dependencies which are in rtems-libbsd (as was discussed in the mailing list, see "Dependencies of PPS API in rtems-libsd").
For enabling the synchronization a configuration option was added (PPS_SYNC = True).
It is still required some code, which should be implemented in a driver, for getting the synchronization working.
Drivers that implement time synchronization through a PPS signal should have an object of the type struct pps_state and call the functions pps_capture() and pps_event().


Gabriel Moyano (12):
  kern_ntptime.c: Disable freebsd features
  kern_ntptime.c: Enable status variables when PPS_SYNC is defined
  kern_ntptime.c: Add lmax() qmin() definitions
  timepps: Add missing include for atomic type
  kern_tc.c: Replace atomic functions required by PPS API
  kern_tc.c: Replace FREEBSD event mechanism by adding pointers to
    function
  kern_tc.c: Remove verification of th_generation for pps functions
  kern_tc.c: Add definition of tc_getfrequency in kern_tc
  kern_tc.c: Add definitions required by PPS API
  kern_tc.c: Enable PPS API support
  kern_ntptime: Add define in order to remove warning
  spec/build/cpukit: Add option for enabling PPS synchronization

 cpukit/include/sys/timepps.h     | 18 ++++++++++++++
 cpukit/score/src/kern_ntptime.c  | 11 ++++++++-
 cpukit/score/src/kern_tc.c       | 40 ++++++++++++++++++++++++++++----
 spec/build/cpukit/cpuopts.yml    |  2 ++
 spec/build/cpukit/optppssync.yml | 16 +++++++++++++
 5 files changed, 82 insertions(+), 5 deletions(-)
 create mode 100644 spec/build/cpukit/optppssync.yml

-- 
2.25.1



More information about the devel mailing list