Add ao_wake_task and ao_exit
[fw/altos] / src / ao.h
index 0f3f0ea7394e57a66061cac9adade96a55deb0d0..132711091de385a36a0abe562cb570fbf883a5b6 100644 (file)
--- a/src/ao.h
+++ b/src/ao.h
@@ -63,6 +63,10 @@ ao_sleep(__xdata void *wchan);
 void
 ao_wakeup(__xdata void *wchan);
 
+/* Wake up a specific task */
+void
+ao_wake_task(__xdata struct ao_task *task);
+
 /* Yield the processor to another task */
 void
 ao_yield(void) _naked;
@@ -71,6 +75,10 @@ ao_yield(void) _naked;
 void
 ao_add_task(__xdata struct ao_task * task, void (*start)(void), __code char *name) __reentrant;
 
+/* Terminate the current task */
+void
+ao_exit(void);
+
 /* Dump task info to console */
 void
 ao_task_info(void);
@@ -861,7 +869,7 @@ ao_igniter_init(void);
  */
 
 #define AO_CONFIG_MAJOR        1
-#define AO_CONFIG_MINOR        0
+#define AO_CONFIG_MINOR        1
 
 struct ao_config {
        uint8_t         major;
@@ -870,6 +878,7 @@ struct ao_config {
        int16_t         accel_zero_g;
        uint8_t         radio_channel;
        char            callsign[AO_MAX_CALLSIGN + 1];
+       uint8_t         apogee_delay;
 };
 
 extern __xdata struct ao_config ao_config;