altos: SPI slave code is now per-product
[fw/altos] / src / core / ao.h
index 8b978272349607e8c9dc493fcd29cfa1d81fe9c3..1d5769cb0f6b5c62f77588e9341aec59c6ea4e76 100644 (file)
@@ -974,12 +974,23 @@ ao_spi_init(void);
  * ao_spi_slave.c
  */
 
+uint8_t
+ao_spi_read(uint8_t *buf, uint8_t len);
+
 void
-ao_spi_slave_debug(void);
+ao_spi_write(uint8_t *buf, uint8_t len);
 
 void
 ao_spi_slave_init(void);
 
+/* This must be defined by the product; it will get called when chip
+ * select goes low, at which point it should use ao_spi_read and
+ * ao_spi_write to deal with the request
+ */
+
+void
+ao_spi_slave(void);
+
 /*
  * ao_telemetry.c
  */
@@ -1360,6 +1371,7 @@ extern __xdata union ao_monitor ao_monitor_ring[AO_MONITOR_RING];
 
 #define ao_monitor_ring_next(n)        (((n) + 1) & (AO_MONITOR_RING - 1))
 
+extern __data uint8_t ao_monitoring;
 extern __data uint8_t ao_monitor_head;
 
 void
@@ -1435,6 +1447,8 @@ extern __xdata struct ao_ignition ao_ignition[2];
 enum ao_igniter_status
 ao_igniter_status(enum ao_igniter igniter);
 
+extern __pdata uint8_t ao_igniter_present;
+
 void
 ao_ignite_set_pins(void);