[layer23] Fix of GPS states

This commit is contained in:
Andreas.Eversberg 2010-10-24 12:20:08 +00:00
parent ece1463f6f
commit e7f6f749c4
3 changed files with 9 additions and 1 deletions

View File

@ -35,5 +35,6 @@ extern struct gps gps;
int gps_open(void);
void gps_close(void);
void gps_init(void);

View File

@ -173,6 +173,7 @@ int l23_app_init(struct osmocom_ms *ms)
srand(time(NULL));
gps_init();
gsm_support_init(ms);
gsm_sim_init(ms);
gsm_settings_init(ms);

View File

@ -65,6 +65,7 @@ static int gps_line(char *line)
if (line[36] != 'A') {
LOGP(DGPS, LOGL_INFO, "%s (invalid)\n", line);
gps.valid = 0;
return 0;
}
gps.valid = 1;
@ -112,7 +113,7 @@ static int gps_line(char *line)
longitude = 360.0 - longitude;
gps.longitude = longitude;
LOGP(DGPS, LOGL_INFO, "%s\n", line);
LOGP(DGPS, LOGL_DEBUG, "%s\n", line);
LOGP(DGPS, LOGL_INFO, " time=%02d:%02d:%02d %04d-%02d-%02d, "
"diff-to-host=%d, latitude=%do%.4f, longitude=%do%.4f\n",
tm->tm_hour, tm->tm_min, tm->tm_sec, tm->tm_year + 1900,
@ -242,4 +243,9 @@ void gps_close(void)
gps_bfd.fd = -1; /* -1 or 0 indicates: 'close' */
}
void gps_init(void)
{
memset(&gps_bfd, 0, sizeof(gps_bfd));
}