summaryrefslogtreecommitdiff
path: root/driver_navcom.c
diff options
context:
space:
mode:
authorEric S. Raymond <esr@thyrsus.com>2015-03-07 11:51:15 -0500
committerEric S. Raymond <esr@thyrsus.com>2015-03-07 11:51:15 -0500
commitdf34a3add8df382eb852a67635c6859ee8cc657f (patch)
treec52183ba41403d093ad1ac971fa45c4ba1289f0c /driver_navcom.c
parent9c49083f2afe799343a610912b0ed404b2ffad05 (diff)
downloadgpsd-df34a3add8df382eb852a67635c6859ee8cc657f.tar.gz
gpsd-report() -> gpsd_log()
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.
Diffstat (limited to 'driver_navcom.c')
-rw-r--r--driver_navcom.c406
1 files changed, 204 insertions, 202 deletions
diff --git a/driver_navcom.c b/driver_navcom.c
index 925b7b61..5554f03b 100644
--- a/driver_navcom.c
+++ b/driver_navcom.c
@@ -104,9 +104,9 @@ static void navcom_cmd_0x20(struct gps_device_t *session, uint8_t block_id,
putbyte(msg, 16, checksum(msg + 3, 13));
putbyte(msg, 17, 0x03);
(void)navcom_send_cmd(session, msg, 18);
- gpsd_report(&session->context->errout, LOG_PROG,
- "Navcom: sent command 0x20 (Data Request) "
- "- data block id = %02x at rate %02x\n", block_id, rate);
+ gpsd_log(&session->context->errout, LOG_PROG,
+ "Navcom: sent command 0x20 (Data Request) "
+ "- data block id = %02x at rate %02x\n", block_id, rate);
}
/*@ unused @*/
@@ -127,8 +127,8 @@ static void UNUSED navcom_cmd_0x3f(struct gps_device_t *session)
putbyte(msg, 10, checksum(msg + 3, 7));
putbyte(msg, 11, 0x03);
(void)navcom_send_cmd(session, msg, 12);
- gpsd_report(&session->context->errout, LOG_PROG,
- "Navcom: sent command 0x3f (LED Configuration Block)\n");
+ gpsd_log(&session->context->errout, LOG_PROG,
+ "Navcom: sent command 0x3f (LED Configuration Block)\n");
}
/* Test Support Block - Blinks the LEDs */
@@ -148,11 +148,11 @@ static void navcom_cmd_0x1c(struct gps_device_t *session, uint8_t mode,
putbyte(msg, 10, checksum(msg + 3, 7));
putbyte(msg, 11, 0x03);
(void)navcom_send_cmd(session, msg, 12);
- gpsd_report(&session->context->errout, LOG_PROG,
- "Navcom: sent command 0x1c (Test Support Block)\n");
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: command 0x1c mode = %02x, length = %u\n",
- mode, length);
+ gpsd_log(&session->context->errout, LOG_PROG,
+ "Navcom: sent command 0x1c (Test Support Block)\n");
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: command 0x1c mode = %02x, length = %u\n",
+ mode, length);
}
#ifdef RECONFIGURE_ENABLE
@@ -175,10 +175,10 @@ static void navcom_cmd_0x11(struct gps_device_t *session,
putbyte(msg, 10, checksum(msg + 3, 7));
putbyte(msg, 11, 0x03);
(void)navcom_send_cmd(session, msg, 12);
- gpsd_report(&session->context->errout, LOG_PROG,
- "Navcom: sent command 0x11 (Serial Port Configuration)\n");
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: serial port selection: 0x%02x\n", port_selection);
+ gpsd_log(&session->context->errout, LOG_PROG,
+ "Navcom: sent command 0x11 (Serial Port Configuration)\n");
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: serial port selection: 0x%02x\n", port_selection);
}
#endif /* RECONFIGURE_ENABLE */
@@ -276,29 +276,29 @@ static gps_mask_t handle_0x83(struct gps_device_t *session)
}
/*@ -relaxtypes -charint @*/
- gpsd_report(&session->context->errout, LOG_PROG,
- "Navcom: received packet type 0x83 (Ionosphere and UTC Data)\n");
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: Scaled parameters follow:\n");
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: GPS Week: %u, GPS Time of Week: %u (GPS Time: %f)\n",
- week, tow, week * 604800 + tow / 1000.0);
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: a0: %12.4E, a1: %12.4E, a2: %12.4E, a3: %12.4E, "
- "b0: %12.4E, b1: %12.4E, b2: %12.4E, b3: %12.4E\n",
- (double)alpha0 * SF_ALPHA0, (double)alpha1 * SF_ALPHA1,
- (double)alpha2 * SF_ALPHA2, (double)alpha3 * SF_ALPHA3,
- (double)beta0 * SF_BETA0, (double)beta1 * SF_BETA1,
- (double)beta2 * SF_BETA2, (double)beta3 * SF_BETA3);
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: A0: %19.12E, A1: %19.12E\n", (double)a0 * SF_A0,
- (double)a1 * SF_A1);
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: UTC Ref. Time: %lu, UTC Ref. Week: %u, dTls: %d\n",
- (unsigned long)tot * SF_TOT, wnt, dtls);
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: Week of leap seconds: %u, Day number of leap seconds: %u, dTlsf: %d\n",
- wnlsf, dn, dtlsf);
+ gpsd_log(&session->context->errout, LOG_PROG,
+ "Navcom: received packet type 0x83 (Ionosphere and UTC Data)\n");
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: Scaled parameters follow:\n");
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: GPS Week: %u, GPS Time of Week: %u (GPS Time: %f)\n",
+ week, tow, week * 604800 + tow / 1000.0);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: a0: %12.4E, a1: %12.4E, a2: %12.4E, a3: %12.4E, "
+ "b0: %12.4E, b1: %12.4E, b2: %12.4E, b3: %12.4E\n",
+ (double)alpha0 * SF_ALPHA0, (double)alpha1 * SF_ALPHA1,
+ (double)alpha2 * SF_ALPHA2, (double)alpha3 * SF_ALPHA3,
+ (double)beta0 * SF_BETA0, (double)beta1 * SF_BETA1,
+ (double)beta2 * SF_BETA2, (double)beta3 * SF_BETA3);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: A0: %19.12E, A1: %19.12E\n", (double)a0 * SF_A0,
+ (double)a1 * SF_A1);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: UTC Ref. Time: %lu, UTC Ref. Week: %u, dTls: %d\n",
+ (unsigned long)tot * SF_TOT, wnt, dtls);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: Week of leap seconds: %u, Day number of leap seconds: %u, dTlsf: %d\n",
+ wnlsf, dn, dtlsf);
return 0; /* No flag for update of leap seconds (Not part of a fix) */
@@ -322,12 +322,12 @@ static gps_mask_t handle_0x06(struct gps_device_t *session)
uint8_t cmd_id = getub(buf, 3);
uint8_t port = getub(buf, 4);
session->driver.navcom.physical_port = port; /* This tells us which serial port was used last */
- gpsd_report(&session->context->errout, LOG_PROG,
- "Navcom: received packet type 0x06 (Acknowledgement (without error))\n");
+ gpsd_log(&session->context->errout, LOG_PROG,
+ "Navcom: received packet type 0x06 (Acknowledgement (without error))\n");
/*@ -type @*/
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: acknowledged command id 0x%02x on port %c\n",
- cmd_id, (port == 0 ? 'A' : (port == 1 ? 'B' : '?')));
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: acknowledged command id 0x%02x on port %c\n",
+ cmd_id, (port == 0 ? 'A' : (port == 1 ? 'B' : '?')));
/*@ +type @*/
return 0; /* Nothing updated */
}
@@ -340,19 +340,19 @@ static gps_mask_t handle_0x15(struct gps_device_t *session)
size_t msg_len = (size_t) getleu16(buf, 1);
/*@ -type @*/
uint8_t port, cmd_id = getub(buf, 3);
- gpsd_report(&session->context->errout, LOG_PROG,
- "Navcom: received packet type 0x15 (Negative Acknowledge)\n");
+ gpsd_log(&session->context->errout, LOG_PROG,
+ "Navcom: received packet type 0x15 (Negative Acknowledge)\n");
for (n = 4; n < (msg_len - 2); n += 2) {
uint8_t err_id = getub(buf, n);
uint8_t err_desc = getub(buf, n + 1);
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: error id = 0x%02x, error description = 0x%02x\n",
- err_id, err_desc);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: error id = 0x%02x, error description = 0x%02x\n",
+ err_id, err_desc);
}
port = getub(buf, n);
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: negative acknowledge was for command id 0x%02x on port %c\n",
- cmd_id, (port == 0 ? 'A' : (port == 1 ? 'B' : '?')));
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: negative acknowledge was for command id 0x%02x on port %c\n",
+ cmd_id, (port == 0 ? 'A' : (port == 1 ? 'B' : '?')));
/*@ -type @*/
return 0; /* Nothing updated */
}
@@ -483,22 +483,22 @@ static gps_mask_t handle_0xb1(struct gps_device_t *session)
if (tdop != DOP_UNDEFINED)
session->gpsdata.dop.tdop = tdop / 10.0;
- gpsd_report(&session->context->errout, LOG_PROG,
- "Navcom: received packet type 0xb1 (PVT Report)\n");
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: navigation mode %s (0x%02x) - %s - %s\n",
- ((-nav_mode & 0x80)!='\0' ? "invalid" : "valid"), nav_mode,
- ((nav_mode & 0x40)!='\0' ? "3D" : "2D"),
- ((nav_mode & 0x03)!='\0' ? "DGPS" : "GPS"));
+ gpsd_log(&session->context->errout, LOG_PROG,
+ "Navcom: received packet type 0xb1 (PVT Report)\n");
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: navigation mode %s (0x%02x) - %s - %s\n",
+ ((-nav_mode & 0x80)!='\0' ? "invalid" : "valid"), nav_mode,
+ ((nav_mode & 0x40)!='\0' ? "3D" : "2D"),
+ ((nav_mode & 0x03)!='\0' ? "DGPS" : "GPS"));
/*@ +type @*/
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: latitude = %f, longitude = %f, altitude = %f, geoid = %f\n",
- session->newdata.latitude, session->newdata.longitude,
- session->newdata.altitude, session->gpsdata.separation);
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: velocities: north = %f, east = %f, up = %f (track = %f, speed = %f)\n",
- vel_north * VEL_RES, vel_east * VEL_RES, vel_up * VEL_RES,
- session->newdata.track, session->newdata.speed);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: latitude = %f, longitude = %f, altitude = %f, geoid = %f\n",
+ session->newdata.latitude, session->newdata.longitude,
+ session->newdata.altitude, session->gpsdata.separation);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: velocities: north = %f, east = %f, up = %f (track = %f, speed = %f)\n",
+ vel_north * VEL_RES, vel_east * VEL_RES, vel_up * VEL_RES,
+ session->newdata.track, session->newdata.speed);
#undef D_RES
#undef LL_RES
#undef LL_FRAC_RES
@@ -510,29 +510,29 @@ static gps_mask_t handle_0xb1(struct gps_device_t *session)
| STATUS_SET | MODE_SET | USED_IS | HERR_SET | VERR_SET
| TIMERR_SET | DOP_SET
| TIME_SET | PPSTIME_IS;
- gpsd_report(&session->context->errout, LOG_DATA,
- "PVT 0xb1: time=%.2f, lat=%.2f lon=%.2f alt=%.f "
- "speed=%.2f track=%.2f climb=%.2f mode=%d status=%d "
- "epx=%.2f epy=%.2f epv=%.2f "
- "gdop=%.2f pdop=%.2f hdop=%.2f vdop=%.2f tdop=%.2f "
- "mask={LATLON|ALTITUDE|CLIMB|SPEED|TRACK|TIME|STATUS|MODE|"
- "USED|HERR|VERR|TIMERR|DOP}\n",
- session->newdata.time,
- session->newdata.latitude,
- session->newdata.longitude,
- session->newdata.altitude,
- session->newdata.speed,
- session->newdata.track,
- session->newdata.climb,
- session->newdata.mode,
- session->gpsdata.status,
- session->newdata.epx,
- session->newdata.epy,
- session->newdata.epv,
- session->gpsdata.dop.gdop,
- session->gpsdata.dop.pdop,
- session->gpsdata.dop.hdop,
- session->gpsdata.dop.vdop, session->gpsdata.dop.tdop);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "PVT 0xb1: time=%.2f, lat=%.2f lon=%.2f alt=%.f "
+ "speed=%.2f track=%.2f climb=%.2f mode=%d status=%d "
+ "epx=%.2f epy=%.2f epv=%.2f "
+ "gdop=%.2f pdop=%.2f hdop=%.2f vdop=%.2f tdop=%.2f "
+ "mask={LATLON|ALTITUDE|CLIMB|SPEED|TRACK|TIME|STATUS|MODE|"
+ "USED|HERR|VERR|TIMERR|DOP}\n",
+ session->newdata.time,
+ session->newdata.latitude,
+ session->newdata.longitude,
+ session->newdata.altitude,
+ session->newdata.speed,
+ session->newdata.track,
+ session->newdata.climb,
+ session->newdata.mode,
+ session->gpsdata.status,
+ session->newdata.epx,
+ session->newdata.epy,
+ session->newdata.epv,
+ session->gpsdata.dop.gdop,
+ session->gpsdata.dop.pdop,
+ session->gpsdata.dop.hdop,
+ session->gpsdata.dop.vdop, session->gpsdata.dop.tdop);
return mask;
}
@@ -636,41 +636,42 @@ static gps_mask_t handle_0x81(struct gps_device_t *session)
session->context->gps_week = (unsigned short)wn;
session->context->gps_tow = (double)(toc * SF_TOC);
/* leap second? */
- gpsd_report(&session->context->errout, LOG_PROG,
- "Navcom: received packet type 0x81 (Packed Ephemeris Data)\n");
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: PRN: %u, Week: %u, TOW: %.3f SV clock bias/drift/drift rate: %#19.12E/%#19.12E/%#19.12E\n",
- prn,
- session->context->gps_week,
- session->context->gps_tow,
- ((double)af0) * SF_AF0,
- ((double)af1) * SF_AF1, ((double)af2) * SF_AF2);
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: IODE (!AODE): %u Crs: %19.12e, Delta n: %19.12e, M0: %19.12e\n",
- iode, (double)crs * SF_CRS,
- (double)delta_n * SF_DELTA_N * GPS_PI,
- (double)m0 * SF_M0 * GPS_PI);
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: Cuc: %19.12e, Eccentricity: %19.12e, Cus: %19.12e, A^1/2: %19.12e\n",
- (double)cuc * SF_CUC, (double)e * SF_E, (double)cus * SF_CUS,
- (double)sqrt_a * SF_SQRT_A);
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: TOE: %u, Cic: %19.12e, Omega %19.12e, Cis: %19.12e\n",
- toe * SF_TOE, (double)cic * SF_CIC,
- (double)Omega0 * SF_OMEGA0 * GPS_PI, (double)cis * SF_CIS);
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: i0: %19.12e, Crc: %19.12e, omega: %19.12e, Omega dot: %19.12e\n",
- (double)i0 * SF_I0 * GPS_PI, (double)crc * SF_CRC,
- (double)omega * SF_OMEGA * GPS_PI,
- (double)Omegadot * SF_OMEGADOT * GPS_PI);
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: IDOT: %19.12e, Codes on L2: 0x%x, GPS Week: %u, L2 P data flag: %x\n",
- (double)idot * SF_IDOT * GPS_PI, cl2,
- week - (week % 1024) + wn, l2pd);
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: SV accuracy: 0x%x, SV health: 0x%x, TGD: %f, IODC (!AODC): %u\n",
- ura, svh, (double)tgd * SF_TGD, iodc);
- gpsd_report(&session->context->errout, LOG_DATA, "Navcom: Transmission time: %u\n", tow);
+ gpsd_log(&session->context->errout, LOG_PROG,
+ "Navcom: received packet type 0x81 (Packed Ephemeris Data)\n");
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: PRN: %u, Week: %u, TOW: %.3f SV clock bias/drift/drift rate: %#19.12E/%#19.12E/%#19.12E\n",
+ prn,
+ session->context->gps_week,
+ session->context->gps_tow,
+ ((double)af0) * SF_AF0,
+ ((double)af1) * SF_AF1, ((double)af2) * SF_AF2);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: IODE (!AODE): %u Crs: %19.12e, Delta n: %19.12e, M0: %19.12e\n",
+ iode, (double)crs * SF_CRS,
+ (double)delta_n * SF_DELTA_N * GPS_PI,
+ (double)m0 * SF_M0 * GPS_PI);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: Cuc: %19.12e, Eccentricity: %19.12e, Cus: %19.12e, A^1/2: %19.12e\n",
+ (double)cuc * SF_CUC, (double)e * SF_E, (double)cus * SF_CUS,
+ (double)sqrt_a * SF_SQRT_A);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: TOE: %u, Cic: %19.12e, Omega %19.12e, Cis: %19.12e\n",
+ toe * SF_TOE, (double)cic * SF_CIC,
+ (double)Omega0 * SF_OMEGA0 * GPS_PI, (double)cis * SF_CIS);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: i0: %19.12e, Crc: %19.12e, omega: %19.12e, Omega dot: %19.12e\n",
+ (double)i0 * SF_I0 * GPS_PI, (double)crc * SF_CRC,
+ (double)omega * SF_OMEGA * GPS_PI,
+ (double)Omegadot * SF_OMEGADOT * GPS_PI);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: IDOT: %19.12e, Codes on L2: 0x%x, GPS Week: %u, L2 P data flag: %x\n",
+ (double)idot * SF_IDOT * GPS_PI, cl2,
+ week - (week % 1024) + wn, l2pd);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: SV accuracy: 0x%x, SV health: 0x%x, TGD: %f, IODC (!AODC): %u\n",
+ ura, svh, (double)tgd * SF_TGD, iodc);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: Transmission time: %u\n", tow);
#undef SF_TGD
#undef SF_TOC
@@ -736,10 +737,10 @@ static gps_mask_t handle_0x86(struct gps_device_t *session)
}
/*@ -predboolothers @*/
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: engine status = 0x%x, almanac = %s, time = 0x%x, pos = 0x%x\n",
- eng_status & 0x07, (eng_status & 0x08 ? "valid" : "invalid"),
- eng_status & 0x30 >> 4, eng_status & 0xc0 >> 6);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: engine status = 0x%x, almanac = %s, time = 0x%x, pos = 0x%x\n",
+ eng_status & 0x07, (eng_status & 0x08 ? "valid" : "invalid"),
+ eng_status & 0x30 >> 4, eng_status & 0xc0 >> 6);
/*@ +predboolothers @*/
/* Satellite details */
@@ -748,8 +749,8 @@ static gps_mask_t handle_0x86(struct gps_device_t *session)
uint8_t prn, ele, ca_snr, p2_snr, log_channel, hw_channel, s, stat;
uint16_t azm, dgps_age;
if (i >= MAXCHANNELS) {
- gpsd_report(&session->context->errout, LOG_ERROR,
- "Navcom: packet type 0x86: too many satellites!\n");
+ gpsd_log(&session->context->errout, LOG_ERROR,
+ "Navcom: packet type 0x86: too many satellites!\n");
gpsd_zero_satellites(&session->gpsdata);
return 0;
}
@@ -800,26 +801,26 @@ static gps_mask_t handle_0x86(struct gps_device_t *session)
nsu++;
}
session->gpsdata.satellites_used = (int)nsu;
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: prn = %3u, ele = %02u, azm = %03u, snr = %d (%s), "
- "dgps age = %.1fs, log ch = %d, hw ch = 0x%02x\n",
- prn, ele, azm, s, (p2_snr ? "P2" : "C/A"),
- (double)dgps_age * 0.1, log_channel & 0x3f, hw_channel);
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: sol. valid = %c, clock = %s, pos. = %s, "
- "height = %s, err. code = 0x%x\n",
- (sol_status & 0x01 ? 'Y' : 'N'),
- (sol_status & 0x02 ? "stable" : "unstable"),
- (sol_status & 0x04 ? "dgps" : "unaided"),
- (sol_status & 0x08 ? "solved" : "constrained"),
- (sol_status & 0x01 ? 0x00 : sol_status & 0x0f00 >> 8));
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: prn = %3u, ele = %02u, azm = %03u, snr = %d (%s), "
+ "dgps age = %.1fs, log ch = %d, hw ch = 0x%02x\n",
+ prn, ele, azm, s, (p2_snr ? "P2" : "C/A"),
+ (double)dgps_age * 0.1, log_channel & 0x3f, hw_channel);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: sol. valid = %c, clock = %s, pos. = %s, "
+ "height = %s, err. code = 0x%x\n",
+ (sol_status & 0x01 ? 'Y' : 'N'),
+ (sol_status & 0x02 ? "stable" : "unstable"),
+ (sol_status & 0x04 ? "dgps" : "unaided"),
+ (sol_status & 0x08 ? "solved" : "constrained"),
+ (sol_status & 0x01 ? 0x00 : sol_status & 0x0f00 >> 8));
/*@ +predboolothers -charint @*/
}
- gpsd_report(&session->context->errout, LOG_DATA,
- "CS 0x86: visible=%d, used=%d, mask={SATELLITE|STATUS}\n",
- session->gpsdata.satellites_visible,
- session->gpsdata.satellites_used);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "CS 0x86: visible=%d, used=%d, mask={SATELLITE|STATUS}\n",
+ session->gpsdata.satellites_visible,
+ session->gpsdata.satellites_used);
return SATELLITE_SET | STATUS_SET;
}
@@ -839,17 +840,17 @@ static gps_mask_t handle_0xb0(struct gps_device_t *session)
session->context->gps_week = (unsigned short)week;
session->context->gps_tow = (double)tow / 1000.0;
- gpsd_report(&session->context->errout, LOG_PROG,
- "Navcom: received packet type 0xb0 (Raw Meas. Data Block)\n");
+ gpsd_log(&session->context->errout, LOG_PROG,
+ "Navcom: received packet type 0xb0 (Raw Meas. Data Block)\n");
/*@ -predboolothers @*/
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: week = %u, tow = %.3f, time slew accumulator = %u (1/1023mS), status = 0x%02x "
- "(%sclock %s - %u blocks follow)\n",
- session->context->gps_week,
- session->context->gps_tow,
- tm_slew_acc, status,
- (status & 0x80 ? "channel time set - " : ""),
- (status & 0x40 ? "stable" : "not stable"), status & 0x0f);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: week = %u, tow = %.3f, time slew accumulator = %u (1/1023mS), status = 0x%02x "
+ "(%sclock %s - %u blocks follow)\n",
+ session->context->gps_week,
+ session->context->gps_tow,
+ tm_slew_acc, status,
+ (status & 0x80 ? "channel time set - " : ""),
+ (status & 0x40 ? "stable" : "not stable"), status & 0x0f);
/*@ +predboolothers @*/
for (n = 11; n < msg_len - 1; n += 16) {
uint8_t sv_status = getub(buf, n);
@@ -880,19 +881,19 @@ static gps_mask_t handle_0xb0(struct gps_device_t *session)
double p2 =
(sv_status & 0x20 ? c1 +
(double)p2_ca_pseudorange / 16.0 * LAMBDA_L1 : NAN);
- gpsd_report(&session->context->errout, LOG_DATA + 1,
- "Navcom: >> sv status = 0x%02x (PRN %u - C/A & L1 %s - P1 %s - P2 & L2 %s)\n",
- sv_status, (sv_status & 0x1f),
- (sv_status & 0x80 ? "valid" : "invalid"),
- (sv_status & 0x40 ? "valid" : "invalid"),
- (sv_status & 0x20 ? "valid" : "invalid"));
- gpsd_report(&session->context->errout, LOG_DATA + 1,
- "Navcom: >>> ch status = 0x%02x (Logical channel: %u - CA C/No: %u dBHz) "
- "sL1: %u, sL2: %u\n", ch_status, ch_status & 0x0f,
- ((ch_status & 0xf0) >> 4) + 35, l1_slips, l2_slips);
- gpsd_report(&session->context->errout, LOG_DATA + 1,
- "Navcom: >>> C1: %14.3f, L1: %14.3f, L2: %14.3f, P1: %14.3f, P2: %14.3f\n",
- c1, l1, l2, p1, p2);
+ gpsd_log(&session->context->errout, LOG_DATA + 1,
+ "Navcom: >> sv status = 0x%02x (PRN %u - C/A & L1 %s - P1 %s - P2 & L2 %s)\n",
+ sv_status, (sv_status & 0x1f),
+ (sv_status & 0x80 ? "valid" : "invalid"),
+ (sv_status & 0x40 ? "valid" : "invalid"),
+ (sv_status & 0x20 ? "valid" : "invalid"));
+ gpsd_log(&session->context->errout, LOG_DATA + 1,
+ "Navcom: >>> ch status = 0x%02x (Logical channel: %u - CA C/No: %u dBHz) "
+ "sL1: %u, sL2: %u\n", ch_status, ch_status & 0x0f,
+ ((ch_status & 0xf0) >> 4) + 35, l1_slips, l2_slips);
+ gpsd_log(&session->context->errout, LOG_DATA + 1,
+ "Navcom: >>> C1: %14.3f, L1: %14.3f, L2: %14.3f, P1: %14.3f, P2: %14.3f\n",
+ c1, l1, l2, p1, p2);
/*@ +predboolothers -charint @*/
}
#undef LAMBDA_L1
@@ -931,17 +932,17 @@ static gps_mask_t handle_0xb5(struct gps_device_t *session)
session->newdata.time = gpsd_gpstime_resolve(session,
(unsigned short)week,
(double)tow / 1000.0f);
- gpsd_report(&session->context->errout, LOG_PROG,
- "Navcom: received packet type 0xb5 (Pseudorange Noise Statistics)\n");
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: epe = %f\n", session->gpsdata.epe);
+ gpsd_log(&session->context->errout, LOG_PROG,
+ "Navcom: received packet type 0xb5 (Pseudorange Noise Statistics)\n");
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: epe = %f\n", session->gpsdata.epe);
return mask;
} else {
/* Ignore this message block */
if (!session->driver.navcom.warned) {
- gpsd_report(&session->context->errout, LOG_WARN,
- "Navcom: received packet type 0xb5 (Pseudorange Noise Statistics) ignored "
- " - sizeof(double) == 64 bits required\n");
+ gpsd_log(&session->context->errout, LOG_WARN,
+ "Navcom: received packet type 0xb5 (Pseudorange Noise Statistics) ignored "
+ " - sizeof(double) == 64 bits required\n");
session->driver.navcom.warned = true;
}
return 0; /* Block ignored - wrong sizeof(double) */
@@ -1062,22 +1063,22 @@ static gps_mask_t handle_0xae(struct gps_device_t *session)
asicstr = "?";
}
- gpsd_report(&session->context->errout, LOG_PROG,
- "Navcom: received packet type 0xae (Identification Block)\n");
+ gpsd_log(&session->context->errout, LOG_PROG,
+ "Navcom: received packet type 0xae (Identification Block)\n");
if (msg_len == 0x0037) {
- gpsd_report(&session->context->errout, LOG_INF, "Navcom: ID Data: "
- "%s %s Ver. %u.%u.%u, DC S/N: %u.%u, RF S/N: %u.%u, "
- "Build ID: %s, Boot software: %s\n",
- engconfstr, asicstr, swvermaj, swvermin, slsbn, dcser,
- dcclass, rfcser, rfcclass, softtm, bootstr);
+ gpsd_log(&session->context->errout, LOG_INF, "Navcom: ID Data: "
+ "%s %s Ver. %u.%u.%u, DC S/N: %u.%u, RF S/N: %u.%u, "
+ "Build ID: %s, Boot software: %s\n",
+ engconfstr, asicstr, swvermaj, swvermin, slsbn, dcser,
+ dcclass, rfcser, rfcclass, softtm, bootstr);
} else {
- gpsd_report(&session->context->errout, LOG_INF, "Navcom: ID Data: "
- "%s %s Ver. %u.%u.%u, DC S/N: %u.%u, RF S/N: %u.%u, "
- "Build ID: %s, Boot software: %s, "
- "IOP Ver.: %u.%u.%u, PIC: %u, IOP Build ID: %s\n",
- engconfstr, asicstr, swvermaj, swvermin, slsbn, dcser,
- dcclass, rfcser, rfcclass, softtm, bootstr, iopvermaj,
- iopvermin, iopsbn, picver, ioptm);
+ gpsd_log(&session->context->errout, LOG_INF, "Navcom: ID Data: "
+ "%s %s Ver. %u.%u.%u, DC S/N: %u.%u, RF S/N: %u.%u, "
+ "Build ID: %s, Boot software: %s, "
+ "IOP Ver.: %u.%u.%u, PIC: %u, IOP Build ID: %s\n",
+ engconfstr, asicstr, swvermaj, swvermin, slsbn, dcser,
+ dcclass, rfcser, rfcclass, softtm, bootstr, iopvermaj,
+ iopvermin, iopsbn, picver, ioptm);
}
/*@ -formattype @*/
@@ -1115,14 +1116,14 @@ static gps_mask_t handle_0xef(struct gps_device_t *session)
osc_filter_drift_est = NAN;
}
- gpsd_report(&session->context->errout, LOG_DATA,
- "Navcom: oscillator temp. = %d, nav. status = 0x%02x, "
- "nav. clock offset = %f, nav. clock drift = %f, "
- "osc. filter drift est. = %f, acc.time slew value = %d\n",
- osc_temp, nav_status, nav_clock_offset, nav_clock_drift,
- osc_filter_drift_est, time_slew);
- gpsd_report(&session->context->errout, LOG_DATA,
- "CDO 0xef: time=%.2f mask={TIME}\n", session->newdata.time);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "Navcom: oscillator temp. = %d, nav. status = 0x%02x, "
+ "nav. clock offset = %f, nav. clock drift = %f, "
+ "osc. filter drift est. = %f, acc.time slew value = %d\n",
+ osc_temp, nav_status, nav_clock_offset, nav_clock_drift,
+ osc_filter_drift_est, time_slew);
+ gpsd_log(&session->context->errout, LOG_DATA,
+ "CDO 0xef: time=%.2f mask={TIME}\n", session->newdata.time);
return 0;
}
@@ -1142,7 +1143,8 @@ gps_mask_t navcom_parse(struct gps_device_t * session, unsigned char *buf,
msg_len = (uint) getleu16(buf, 4);
/*@ -usedef -compdef @*/
- gpsd_report(&session->context->errout, LOG_RAW, "Navcom: packet type 0x%02x\n", cmd_id);
+ gpsd_log(&session->context->errout, LOG_RAW,
+ "Navcom: packet type 0x%02x\n", cmd_id);
/*@ +usedef +compdef @*/
session->cycle_end_reliable = true;
@@ -1171,9 +1173,9 @@ gps_mask_t navcom_parse(struct gps_device_t * session, unsigned char *buf,
case 0xef:
return handle_0xef(session);
default:
- gpsd_report(&session->context->errout, LOG_PROG,
- "Navcom: received packet type 0x%02x, length %d - unknown or unimplemented\n",
- cmd_id, msg_len);
+ gpsd_log(&session->context->errout, LOG_PROG,
+ "Navcom: received packet type 0x%02x, length %d - unknown or unimplemented\n",
+ cmd_id, msg_len);
return 0;
}
}