summaryrefslogtreecommitdiff
path: root/driver_sirf.c
diff options
context:
space:
mode:
authorEric S. Raymond <esr@thyrsus.com>2014-05-18 00:36:42 -0400
committerEric S. Raymond <esr@thyrsus.com>2014-05-18 00:37:08 -0400
commitf15d46ca3ae86a7adc3cd31bbdb51a61bbe3e8a0 (patch)
tree18630710f7ca091bf58067f192787c3e4586199a /driver_sirf.c
parenta734cc32cb0ba8676660ce3273f27dd3a23f991c (diff)
downloadgpsd-f15d46ca3ae86a7adc3cd31bbdb51a61bbe3e8a0.tar.gz
Cut down on the sentence mix transmitted from the device.
From a patch by Michael Tatarinov. Does no harm, and may be required for SiRF IV to work. All regressiion tests pass.
Diffstat (limited to 'driver_sirf.c')
-rw-r--r--driver_sirf.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/driver_sirf.c b/driver_sirf.c
index d9bcbbd5..b28e4673 100644
--- a/driver_sirf.c
+++ b/driver_sirf.c
@@ -1419,8 +1419,8 @@ static void sirfbin_event_hook(struct gps_device_t *session, event_t event)
break;
case 2:
- gpsd_report(session->context->debug, LOG_PROG,
- "SiRF: Requesting navigation parameters...\n");
+ gpsd_report(session->context->debug, LOG_PROG,
+ "SiRF: Requesting navigation parameters...\n");
(void)sirf_write(session, navparams);
break;
@@ -1460,7 +1460,9 @@ static void sirfbin_event_hook(struct gps_device_t *session, event_t event)
gpsd_report(session->context->debug, LOG_PROG,
"SiRF: Enabling PPS message...\n");
(void)sirf_write(session, enablemid52);
+ break;
+ case 10:
/* SiRF recommends at least 57600 for SiRF IV nav data */
if (session->gpsdata.dev.baudrate >= 57600) {
/* fast enough, turn on nav data */
@@ -1474,6 +1476,13 @@ static void sirfbin_event_hook(struct gps_device_t *session, event_t event)
(void)sirf_write(session, disablesubframe);
}
break;
+
+ case 11:
+ gpsd_report(session->context->debug, LOG_PROG, "SiRF: disable MID 7, 28, 29, 30, 31...\n");
+ putbyte(unsetmidXX, 5, 0x05);
+ (void)sirf_write(session, unsetmidXX);
+ break;
+
#endif /* RECONFIGURE_ENABLE */
default:
/* initialization is done */