diff options
author | Eric S. Raymond <esr@thyrsus.com> | 2006-11-07 03:25:41 +0000 |
---|---|---|
committer | Eric S. Raymond <esr@thyrsus.com> | 2006-11-07 03:25:41 +0000 |
commit | a961236300450960213ee2432c500c48c016ef4d (patch) | |
tree | 1d29870bdf0e98cc91e075b4775776cd55ab8b00 /gpsd.h | |
parent | 4e901caa5b1a0417009f9c50e554153d5c60ffab (diff) | |
download | gpsd-a961236300450960213ee2432c500c48c016ef4d.tar.gz |
Interleave NMEA subtype probes with received packets. This seems to
*immediately* improve detection of SiRF devices in NMEA mode, and probably
solves Davor Emard's Garmin GPS-10 bug as well (though this is not yet proven.
Diffstat (limited to 'gpsd.h')
-rw-r--r-- | gpsd.h | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -79,7 +79,7 @@ struct gps_type_t { int channels; /*@null@*/bool (*probe_detect)(struct gps_device_t *session); /*@null@*/void (*probe_wakeup)(struct gps_device_t *session); - /*@null@*/void (*probe_subtype)(struct gps_device_t *session); + /*@null@*/void (*probe_subtype)(struct gps_device_t *session, int seq); /*@null@*/void (*configurator)(struct gps_device_t *session); /*@null@*/ssize_t (*get_packet)(struct gps_device_t *session); /*@null@*/gps_mask_t (*parse_packet)(struct gps_device_t *session); @@ -149,6 +149,7 @@ struct gps_device_t { size_t outbuflen; unsigned long char_counter; /* count characters processed */ unsigned long retry_counter; /* count sniff retries */ + unsigned packet_counter; /* packets since last driver switch */ char subtype[64]; /* firmware version or subtype ID */ double poll_times[FD_SETSIZE]; /* last daemon poll time */ #ifdef NTPSHM_ENABLE |