summaryrefslogtreecommitdiff
path: root/src/kernel/ao_log.c
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2014-09-01 18:12:29 -0500
committerKeith Packard <keithp@keithp.com>2014-09-01 18:12:29 -0500
commita4202b4180e77e2a39ca071d3b8b8256ff0fc7b5 (patch)
tree598f94e9075a181a5f211017d3106e69a8baf38d /src/kernel/ao_log.c
parentaa7dd289ee72f7a49a08ce0229c4e0e0404499d0 (diff)
altos: Don't add AO_LOG_FLIGHT to existing GPS logs
When appending to a TeleGPS log, don't stick another flight value into the log. That just confuses the ground station software. Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'src/kernel/ao_log.c')
-rw-r--r--src/kernel/ao_log.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/kernel/ao_log.c b/src/kernel/ao_log.c
index dc3b6486..40a96ef7 100644
--- a/src/kernel/ao_log.c
+++ b/src/kernel/ao_log.c
@@ -192,12 +192,14 @@ ao_log_find_max_erase_flight(void) __reentrant
ao_flight_number = 1;
}
-void
+uint8_t
ao_log_scan(void) __reentrant
{
uint8_t log_slot;
uint8_t log_slots;
-#if !FLIGHT_LOG_APPEND
+#if FLIGHT_LOG_APPEND
+ uint8_t ret;
+#else
uint8_t log_want;
#endif
@@ -248,9 +250,13 @@ ao_log_scan(void) __reentrant
empty = ao_log_current_pos;
}
}
+ ret = 1;
} else {
ao_log_find_max_erase_flight();
+ ret = 0;
}
+ ao_wakeup(&ao_flight_number);
+ return ret;
#else
if (ao_flight_number)
@@ -278,8 +284,9 @@ ao_log_scan(void) __reentrant
if (++log_slot >= log_slots)
log_slot = 0;
} while (log_slot != log_want);
-#endif
ao_wakeup(&ao_flight_number);
+ return 0;
+#endif
}
void