summaryrefslogtreecommitdiff
path: root/driver_proto.c
Commit message (Collapse)AuthorAgeFilesLines
* Drop the obsolete tag field from JSON output. Bump the minor protocol number.Eric S. Raymond2014-08-241-7/+0
| | | | | | | Required a regression-test rebuild, of course. The field is still set by the TSIP and SiRF drivers; the SiRF driver actually uses it. It may be possible to eliminate the TSIP uses, but so far attempting this has produced odd regression-test failures.
* More consistent ise of LOG_PROG.Eric S. Raymond2013-11-121-1/+1
| | | | This logging level is intended to directly explain accompanying I/O messages.
* Reduce gpsd log verbosity a lot.Eric S. Raymond2013-11-121-10/+20
| | | | | | | | | | Way too much logging was happening at LOG_IO level, which is intended for watching data traffic in and out of the daemon rather than all the minutiae of data analysis - that's LOG_DATA. Also, LOG_DATA gets pushed down two levels. The effect is that -D 5 means exactly what it did, but for purposes other than driver debugging -D 4 now suffices.
* Rename and rationalize driver table instances. No logic changes.Eric S. Raymond2013-11-121-2/+2
|
* Contain the assumption that time hinting is done to NTPD.Eric S. Raymond2013-10-311-6/+6
| | | | | | | Because it might be going to chrony. Or something else. No logic changes, just name changes and one new derived #define, TIMEHINT_ENABLE.
* Revert "Separate ntpd support from chrony support, step 1."Eric S. Raymond2013-10-301-6/+6
| | | | We'll have to sneak up on this change more slowly.
* Separate ntpd support from chrony support, step 1.Eric S. Raymond2013-10-301-6/+6
| | | | | | | | | | | | | ntp_offset becomes time_offset. There is a new config symbol CHRONY_ENABLE; most time service code is npw controlled by TIMESERVICE_ENABLE. The file ntpshm.c becomes timeexport.c This change is not complete. More disentanglement has to be done inside timeexport.c itself; at the moment enabling one but not both of ntpshm or chrony will probably break its compile. The point of getting this commit out is so Gary will see the new baseline code ASAP. All regression tests pass.
* Clean up an archaism in the prototype driver.Eric S. Raymond2013-10-151-7/+2
|
* OK, visualize as a method was a bad idea. All regression tests pass.Eric S. Raymond2013-10-141-3/+0
|
* Create driver slot and scons option for a visualizer driver method.Eric S. Raymond2013-10-131-0/+3
|
* Change the logic for managing the drive mode bit to report reality...Eric S. Raymond2013-10-041-10/+2
| | | | ...rather than setting it ad-hoc on a per-driver basis.
* Change gpsd_report to no longer use a global. All regression tests pass.Eric S. Raymond2013-09-291-11/+11
| | | | | | | | This is a large, ugly change. But without it we can't troubleshoot the ICP/IP-source initialization bug properly - colliding definitions of gpsd_report() were interfering with error reporting early in gpsd runs. More cleanup work remains to be done, but at least this is working.
* Nuke trailing whitespace in C source.Eric S. Raymond2012-09-071-13/+13
|
* Adjust comment for scons.Eric S. Raymond2012-05-081-1/+1
|
* Typo fix.Eric S. Raymond2012-05-081-1/+1
|
* splint and cppcheck cleanup. All regression tests pass.Eric S. Raymond2011-06-271-1/+1
|
* Remove gpsd_hexdump_wrapper() from everything outside the packet sniffer.Eric S. Raymond2011-06-171-2/+1
|
* Cut down on gpsd_hexdump_wrapper() calls.Eric S. Raymond2011-06-171-5/+2
| | | | | | | | | | | | | | | This awkward construct seems to have triggered some sort of toolchain bug. The symptom is that gpsd_hexdump_level has different values depending on whether we test it inside or outside of hex.c. As a first step towards eliminating this global, we throw out a bunch of hex logging that is duplicative or not really needed for production drivers. Experimental drivers can call the hex dumper unconditionally. The goal is to reduce the number of uses of this variable to eliminate it withoud doing violence to the internal APIs. This is a first step. All regression tests pass.
* Regularize some names.Eric S. Raymond2011-04-011-8/+8
|
* gps_maskdump() has been a CPU hog. Drastically reduce the number of calls...Eric S. Raymond2011-03-311-3/+2
| | | | | ...and guard them with debug level so they won't be done when the output would never be shipped anywhere.
* Re-identify most *_IS flags with corresponding *_SET flags.Eric S. Raymond2011-03-271-7/+7
| | | | | | | | | | | Required so clients looking at flag masks in data exported via the shared-memory interface will see the right thing. These were separated originally in order to avoid pushing the reqyuired width of the gpsdata.set flag mask over 32 bits. It became 64 bits in the Version 5 API change, so that constraint went away. All regression tests pass.
* Make all drivers set the PPSTIME_IS mask where appropriate. It's not yet used.Eric S. Raymond2011-03-231-1/+1
| | | | All regression tests pass.
* Minor fixup to driver prototype example.Eric S. Raymond2011-03-181-1/+1
|
* Verbosity suppression. All regression tests pass.Eric S. Raymond2011-02-281-0/+3
|
* Match debug levels passed into gpsd_hexdump_wrapper with gpsd_report() calls.Jon Schlueter2011-02-261-1/+1
| | | | Signed-off-by: Eric S. Raymond <esr@thyrsus.com>
* Refactor time handling yet again. All regression tests pass.Eric S. Raymond2011-01-211-1/+1
|
* Added a driver-type flags member to the driver method structure.Eric S. Raymond2011-01-191-0/+2
| | | | All regression tests pass.
* Refactor time resolution. All regression tests pass.Eric S. Raymond2011-01-171-8/+1
|
* Introduce GPS_TIME_VALID flag for GPS time validation.Eric S. Raymond2011-01-171-0/+1
|
* More deheader testing.Eric S. Raymond2011-01-121-0/+1
|
* We longer send wakeup probes to USB devices.Eric S. Raymond2011-01-091-4/+4
| | | | | | | The two known cases where wakeup probes are indispencible (TNT and AC12) are serial devices. Therefore, by simply suppressing wakeup emission on USB sources, we avoid both spamming USB devices and requiring special setup with gpsctl.
* sizeof(long) is not portableChris Kuethe2010-12-251-1/+3
| | | | | | | | | More Commits from the Caribbean. The geostar driver operates on 4-byte words, so change increments to 4 bytes. Add a note to the prototype driver and the hacking guide to indicate that the sizeof(<std int type>) should be avoided for extracting fixed size blocks from a packet.
* Insert SuS headers required for portablity, as revealed by deheader.Eric S. Raymond2010-12-221-0/+2
|
* Remove a few more unneeded headers.Eric S. Raymond2010-12-201-4/+0
|
* Insert GPS week rollover checks everywhere we rely on GPS time.Eric S. Raymond2010-12-201-0/+1
| | | | All regression tests pass.
* Unused-header removals by deheader. All regression tests pass.Eric S. Raymond2010-12-011-9/+0
|
* sample raw data extractionChris Kuethe2010-05-131-1/+47
|
* XXX -> FIX-ME: Avoids false matches with autoconf cruft.Eric S. Raymond2010-05-121-3/+3
| | | | | | | So we can grep for things that need to be cleaned up without a lot of noise. All regression tests pass.
* a bit of armor for variable length packet decodesChris Kuethe2010-05-101-4/+8
| | | | after discussion with sanooj
* Clear DOPs only when we get a skyview report.Eric S. Raymond2010-04-201-5/+9
| | | | | | | | | | | | | | | This solves the disappearing epx/epy bug on SiRFs, but it was actually a systemic problem that affected several drivers. Navigation solution messages were clearing DOPs, making it impossible for the error modeller to compute estimates. New logic: Clear DOPs only when we get a skyview report. They'll be regenerated by our visibility-matrix calculation when the skyview sentence is analyzed. If a sentence from the device supplies a DOP between the time the visibility calculation is done and when the next fix is reported, it will override our computed value. This might change later! This change required a regression-test rebuild.
* Eliminate a lot of private copies of gps_tow for one global copy inGary E. Miller2010-04-181-1/+3
| | | | sesion->context.
* Collapse various copies of gps_week into one in gps_contxt_t.Gary E. Miller2010-04-161-0/+1
|
* Protect more displayed structures from indent.Eric S. Raymond2010-04-131-0/+2
|
* Typo fix.Eric S. Raymond2010-04-121-1/+1
|
* Note some changed behavior.Eric S. Raymond2010-04-121-3/+4
|
* Refactor serial ntpshm_put() calls.Eric S. Raymond2010-04-121-0/+19
| | | | | | | | | | | | | | | These calls move out of scattered places in the drivers into one spot in libgpsd_core.c where they can be guarded with consistent validity checks. Time offset is now computed by a new driver method, ntp_offset(), which has access through the session structure to the baud rate, the tag of the sentence last received, etc. If the ntp_offset() method returns NAN, no notification is shipped. The logic of these methods replicates the sentence and baud-rate specific computations that were embedded in individual sentence methods before. All regression tests pass.
* Make the client library and daemon use different sets of state-flag masks.Eric S. Raymond2010-04-091-10/+10
| | | | | | | | | | | | | | | | | Large patch, no actual executable code changes except in three debug dumpers. Breaks up the *_SET status macros so the client side continues to use them, but the daemon uses a similarly-named set with an _IS suffix. This frees up two mask bits in both sets - the client side no longer needs to have REPORT_SET and CLEAR_SET bits, and the daemon side no longer needs to have VERSION_SET and POLICY_SET. The only actual code change is that the maskdump.c module, generated by maskaudit.py, splits in half - one child now dumps client-side flags, the other daemon-side flags. One other function call in a debug dumper in libgps_core.c changes. All regression tests pass.
* Drivers now put their per-packet new data into a session->newdata member.Eric S. Raymond2010-04-051-12/+12
| | | | | | | This is so they won't overwrite session->gpsdata.fix, which is going to move back to being where the current fix has been reported. All regression tests pass.
* Refactoring step. Change the signature of ecef_to_wgs84fix().Eric S. Raymond2010-04-051-1/+2
| | | | All regression tests pass.
* Merge branch 'master' of git.berlios.de:/gitroot/gpsdEric S. Raymond2010-03-131-1/+0
| | | | | Conflicts: driver_proto.c