summaryrefslogtreecommitdiff
path: root/ppsthread.c
Commit message (Collapse)AuthorAgeFilesLines
* Last splint thing in ppsthread.cGary E. Miller2015-03-281-1/+1
|
* ppsthread.c is splint clean, but one thing. YMMV.Gary E. Miller2015-03-281-30/+49
|
* work around incorrect definition of struct timespec in splint 3.12Eric S. Raymond2015-03-281-0/+6
|
* Remove the last of no longer needed splint cruft from ppsthread.cGary E. Miller2015-03-251-34/+2
| | | | scons splint runs fine, no code changes
* Remove unneeded splint overridesGary E. Miller2015-03-251-13/+0
| | | | splint still happy
* Brain damaged pps-gpio sometimes never fills in PPS clear timestamp.Gary E. Miller2015-03-251-1/+9
|
* add yet a tad more PPS trace logging.Gary E. Miller2015-03-251-0/+9
|
* Remove unneeded -#ifndef S_SPLINT_SGary E. Miller2015-03-251-9/+8
| | | | Cruft be gone!
* Splint fixes.Gary E. Miller2015-03-251-10/+4
|
* Fix another nit that bothers splint.Gary E. Miller2015-03-251-1/+1
|
* Make cppcheck happy, reduce scope of pther_errGary E. Miller2015-03-251-1/+2
|
* gpsd no longer needs TIOCMIWAIT if it has RFC2783 PPS_CANWAITGary E. Miller2015-03-251-10/+45
| | | | Next step is to ensure gpsd can compile and run without TIOCMIWAIT
* Pull out RFC2783 edge finding into a new function: get_edge_rfc2783()Gary E. Miller2015-03-251-194/+269
| | | | Still depends on TIOCMIWAIT, but not for much longer.
* Clean up a binary and.Gary E. Miller2015-03-241-1/+1
|
* ppsthread.c broken on non-LinuxHal Murray2015-03-241-1/+1
| | | | Signed-off-by: Gary E. Miller <gem@rellim.com>
* Fix segfault in split off TIOCMIWAIT support.Gary E. Miller2015-03-241-1/+1
|
* Move TIOMCIWAIT to its own function.Gary E. Miller2015-03-241-83/+126
| | | | Soo it will be optional at run time.
* Remove a bit of temporary debug logging.Gary E. Miller2015-03-241-3/+0
|
* Disable the new PPS_CANWAIT code to allow shipping the ppsthread changes.Gary E. Miller2015-03-231-3/+4
|
* If we have PPS_CANWAIT, no need for TIOCMIWAITGary E. Miller2015-03-231-92/+122
|
* Comment typosGary E. Miller2015-03-211-1/+1
|
* Move istty() and PPS caps tests to where they are needed.Gary E. Miller2015-03-201-14/+50
|
* init_kernel_pps() has no need to know if device is a tty.Gary E. Miller2015-03-201-10/+8
| | | | Also log if we have PPS_CANWAIT
* Doc & interface cleanup of ppsthread code. PPS observed live.Eric S. Raymond2015-03-201-5/+8
|
* Add code to handle less than perfect RFC2783 drivers.Gary E. Miller2015-03-201-38/+59
| | | | | The Linux pps-gpio driver only track the clear edge. Fair warning your PPS may be offset by the pulse width.
* Remove redundant define.Gary E. Miller2015-03-201-1/+0
|
* PPS_TSFMT_TSPEC is the default, make it obvious.Gary E. Miller2015-03-201-1/+3
|
* Tell time_pps_setparam() what version API to use.Gary E. Miller2015-03-191-0/+2
|
* Improve logging of time_pps_setparams() and time_pps_getcap()Gary E. Miller2015-03-191-5/+5
| | | | Direct open of /dev/pps0 still fails. Old functionality still good.
* Add root device name to PPS debug output.Gary E. Miller2015-03-191-44/+89
| | | | | | | | With more than one PPS thread going at a time hard to know which is which without help. Also remove restriction that devicename is a tty since /dev/ppsX is not a tty.
* Drop an unneeded root check.Gary E. Miller2015-03-191-6/+3
|
* It only makes sense to look for 1PPS on DCE signals. Add an explanation.Eric S. Raymond2015-03-181-2/+19
| | | | All regressiion tests pass.
* In ppsthread.c, add TIOCM_RTS to the PPS mask.Eric S. Raymond2015-03-171-1/+1
| | | | | | | Motivation: I happen to have been looking at RS-232 level-shifter boards recently. The second most common set of supported data lines (after TX/RX alone and before the full set CD/RX/TX/DTR/DSR/RTS/CTS/RI) is TX/RX/CTS/RTS.
* splint/cppcheck/coverity prerelease cleanup.Eric S. Raymond2015-03-131-2/+2
|
* In ppsthread.c, ensure errno thread-safety. All regression tests pass.Eric S. Raymond2015-03-111-0/+1
|
* Simplify the thread-monitor interface.Eric S. Raymond2015-03-111-15/+12
| | | | PPS observed live on GR601W.
* Remove a redundancy.Eric S. Raymond2015-03-111-3/+3
|
* Take a whack at addressing pre-existing /dev/ppsN devices.Eric S. Raymond2015-03-111-56/+64
| | | | | | PPS observed live on GR-601W, but code not tested on anything like the Raspberry Pi that would invoke the new case.
* splint cleanup of new code.Eric S. Raymond2015-03-081-2/+3
|
* ppsthread.c is now fully decoupled from the libgpsd_core.c structures.Eric S. Raymond2015-03-081-1/+51
| | | | | | | | | | | | | | | | | The files ntpshm.h ntpshmread.c ntpshmwrite.c ppsthread.[ch] timespec_str.[ch] now form a standalone group which can be used for NTP communication and PPS thread monitoring. Separation is not yet perfect, as ppsthread.c requires gpsd_config.h for HAVE_SYS_TIMEPPS_H and npshmread.c/ntpshmwrite.c both require compiler.h. All regression tests pass. PPS is live on a GR-601W.
* Break timespec_str out of gpsutils.c.Eric S. Raymond2015-03-081-0/+1
| | | | | | It's not used on the client side, and it's needed separately for ntplib. All regression tesrs pass. PPS is live.
* Eliminate timestamp-T use from PPS thread code.Eric S. Raymond2015-03-081-12/+13
| | | | PPS observed live on GR-601W. All regression yests pass.
* Clean up minor ppsthread.c dependencies. No code changes.Eric S. Raymond2015-03-081-2/+4
|
* Eliminate a potential source of defects by using static mutex initialization.Eric S. Raymond2015-03-081-17/+1
|
* Decouple (mostly) the PPS thread-monitor from the session structure.Eric S. Raymond2015-03-081-81/+80
| | | | | | | | | | | | This is the big step towards ntplib. A couple of minor issues remain to be ironed out, the most significant of which is what to do about the timestamp_t type. This changes some field offsets of private fields in struct gps_device_t. Probably does not require a version bump as access to them is all through the libgpsd API. All regression tests pass. PPS observed live in gpsmon direct mode.
* Thread monitor factoring step.Eric S. Raymond2015-03-071-14/+15
| | | | All regression tests pass. PPS observed live in gpsmon.
* gpsd-report() -> gpsd_log()Eric S. Raymond2015-03-071-43/+43
| | | | | | | | | | | | | | | | This change is done so we can add a "log" hook to the pps_thread_t structure (this is not done yet) and harmonize with the name of the outer logging function. If that name had been left as gpsd_report() there would have been scope for bad confusion with the report_hook member. Also, remove two stray duplicative printf calls from the NMEA2000 driver (drivers shouldn't have printfs!) and fix one typo. This is a step towards factoring out ntplib. For that to happen, the PPS thread code needs to be decoupled from the core session structure. No logic changes. Object compatibility preserved. All regression tests pass.
* Factor PPS-related members of struct gps_device_t into a pps_thread_t structure.Eric S. Raymond2015-03-071-25/+25
| | | | | | | | | | | No logic changes, though it looks like there are two because two guards that would always have failed when the code was compiled with pps=off are now conditioned out. Also, this code is offset-preserving so as not to break link-time compatibility of libgpsd. (This is the subtler approach...) All regression tests pass.
* Revert "Another step in prying ntplib loose. Partly decouple ppsthread.c ↵Eric S. Raymond2015-03-071-23/+30
| | | | | | fom sessions." Previous approch was a bit too frontal.
* Revert "ntplib extraction requires libgpsd object format bump to 23."Eric S. Raymond2015-03-071-11/+10
| | | | We need to sneak up on this in a more subtle way.