a stab at turning on rudimentary logging for telefiretwo
[fw/altos] / src / kernel / ao_pyro.h
index 0c5642d6ea91f2ff12e76c6b1321ff69882b3a4c..a730ef1947c21ee683cf39f2f276cdfa9a16db3d 100644 (file)
@@ -3,7 +3,8 @@
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
  *
  * This program is distributed in the hope that it will be useful, but
  * WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -45,7 +46,11 @@ enum ao_pyro_flag {
 
        ao_pyro_state_less              = 0x00004000,
        ao_pyro_state_greater_or_equal  = 0x00008000,
-};
+}
+#ifdef __GNUC__
+       __attribute__ ((packed))
+#endif
+       ;
 
 struct ao_pyro {
        enum ao_pyro_flag       flags;
@@ -61,6 +66,8 @@ struct ao_pyro {
        uint8_t                 fired;
 };
 
+#define AO_PYRO_8_BIT_VALUE    (ao_pyro_state_less|ao_pyro_state_greater_or_equal)
+
 extern uint8_t ao_pyro_wakeup;
 
 extern uint16_t        ao_pyro_fired;
@@ -77,6 +84,9 @@ ao_pyro_init(void);
 void
 ao_pyro_manual(uint8_t p);
 
+enum ao_igniter_status
+ao_pyro_status(uint8_t p);
+
 void
 ao_pyro_print_status(void);