altos: remove monitor disable stubs from altimeter code
authorKeith Packard <keithp@keithp.com>
Thu, 11 Aug 2011 23:11:34 +0000 (16:11 -0700)
committerKeith Packard <keithp@keithp.com>
Thu, 11 Aug 2011 23:11:34 +0000 (16:11 -0700)
Monitor mode in the ground-station boards must be disabled when the
radio is going to be used for another purpose, or the radio parameters
changed. That places monitor-mode disable calls in other parts of the
system which are shared with the altimeter code.

Elide the ao_set_monitor calls for builds which do not include any
monitoring code.

Signed-off-by: Keith Packard <keithp@keithp.com>
src/ao_monitor.c
src/ao_packet_master.c
src/ao_pins.h
src/ao_radio.c
src/ao_telemetrum.c
src/ao_telemini.c
src/ao_telenano.c

index 8f1b9e12cdcc209dae9543c0a41885a68ef3bf4b..69eb58e85f8ac1373b9576b66573ecedfefd8019 100644 (file)
 #include "ao.h"
 #include "ao_telem.h"
 
 #include "ao.h"
 #include "ao_telem.h"
 
+#if !HAS_MONITOR
+#error Must define HAS_MONITOR to 1
+#endif
+
 __xdata uint8_t ao_monitoring;
 __pdata uint8_t ao_monitor_led;
 
 __xdata uint8_t ao_monitoring;
 __pdata uint8_t ao_monitor_led;
 
index e721ffba39c948a0d17a5fc35cf45ccfec664eea..b0fdf5a8804288386651c070ba6f5be8f7f703fc 100644 (file)
@@ -109,7 +109,9 @@ ao_packet_forward(void) __reentrant
        ao_cmd_white();
 
        flush();
        ao_cmd_white();
 
        flush();
+#if HAS_MONITOR
        ao_set_monitor(0);
        ao_set_monitor(0);
+#endif
        ao_add_task(&ao_packet_task, ao_packet_master, "master");
        ao_add_task(&ao_packet_echo_task, ao_packet_echo, "echo");
        while ((c = getchar()) != '~') {
        ao_add_task(&ao_packet_task, ao_packet_master, "master");
        ao_add_task(&ao_packet_echo_task, ao_packet_echo, "echo");
        while ((c = getchar()) != '~') {
index bc07ad54ff26a8b8b250b6c44449ca156e6cad58..89907b9c03c3b6090084839bb29980f41cea81bb 100644 (file)
@@ -42,6 +42,7 @@
        #define HAS_ACCEL_REF           0
        #define HAS_ACCEL               1
        #define HAS_IGNITE              1
        #define HAS_ACCEL_REF           0
        #define HAS_ACCEL               1
        #define HAS_IGNITE              1
+       #define HAS_MONITOR             0
 #endif
 
 #if defined(TELEMETRUM_V_1_1)
 #endif
 
 #if defined(TELEMETRUM_V_1_1)
@@ -72,6 +73,7 @@
        #define M25_MAX_CHIPS           1
        #define HAS_ACCEL               1
        #define HAS_IGNITE              1
        #define M25_MAX_CHIPS           1
        #define HAS_ACCEL               1
        #define HAS_IGNITE              1
+       #define HAS_MONITOR             0
 #endif
 
 #if defined(TELEDONGLE_V_0_2)
 #endif
 
 #if defined(TELEDONGLE_V_0_2)
@@ -95,6 +97,7 @@
        #define SPI_CS_ON_P1            1
        #define SPI_CS_ON_P0            0
        #define HAS_IGNITE              0
        #define SPI_CS_ON_P1            1
        #define SPI_CS_ON_P0            0
        #define HAS_IGNITE              0
+       #define HAS_MONITOR             1
 #endif
 
 #if defined(TELEMINI_V_1_0)
 #endif
 
 #if defined(TELEMINI_V_1_0)
        #define HAS_EXTERNAL_TEMP       0
        #define HAS_ACCEL               0
        #define HAS_IGNITE              1
        #define HAS_EXTERNAL_TEMP       0
        #define HAS_ACCEL               0
        #define HAS_IGNITE              1
+       #define HAS_MONITOR             0
 #endif
 
 #if defined(TELENANO_V_0_1)
 #endif
 
 #if defined(TELENANO_V_0_1)
        #define HAS_EXTERNAL_TEMP       0
        #define HAS_ACCEL               0
        #define HAS_IGNITE              0
        #define HAS_EXTERNAL_TEMP       0
        #define HAS_ACCEL               0
        #define HAS_IGNITE              0
+       #define HAS_MONITOR             0
 #endif
 
 #if defined(TELEMETRUM_V_0_1)
 #endif
 
 #if defined(TELEMETRUM_V_0_1)
        #define SPI_CS_ON_P0            0
        #define HAS_ACCEL               1
        #define HAS_IGNITE              1
        #define SPI_CS_ON_P0            0
        #define HAS_ACCEL               1
        #define HAS_IGNITE              1
+       #define HAS_MONITOR             0
 #endif
 
 #if defined(TELEDONGLE_V_0_1)
 #endif
 
 #if defined(TELEDONGLE_V_0_1)
        #define SPI_CS_ON_P1            0
        #define SPI_CS_ON_P0            1
        #define HAS_IGNITE              0
        #define SPI_CS_ON_P1            0
        #define SPI_CS_ON_P0            1
        #define HAS_IGNITE              0
+       #define HAS_MONITOR             1
 #endif
 
 #if defined(TIDONGLE)
 #endif
 
 #if defined(TIDONGLE)
        #define SPI_CS_ON_P1            0
        #define SPI_CS_ON_P0            1
        #define HAS_IGNITE              0
        #define SPI_CS_ON_P1            0
        #define SPI_CS_ON_P0            1
        #define HAS_IGNITE              0
+       #define HAS_MONITOR             1
 #endif
 
 #if defined(TELEBT_V_0_0)
 #endif
 
 #if defined(TELEBT_V_0_0)
        #define BT_LINK_ON_P1           0
        #define BT_LINK_PIN_INDEX       7
        #define BT_LINK_PIN             P2_1
        #define BT_LINK_ON_P1           0
        #define BT_LINK_PIN_INDEX       7
        #define BT_LINK_PIN             P2_1
+       #define HAS_MONITOR             1
 #endif
 
 #if defined(TELEBT_V_0_1)
 #endif
 
 #if defined(TELEBT_V_0_1)
        #define BT_LINK_ON_P1           1
        #define BT_LINK_PIN_INDEX       7
        #define BT_LINK_PIN             P1_7
        #define BT_LINK_ON_P1           1
        #define BT_LINK_PIN_INDEX       7
        #define BT_LINK_PIN             P1_7
+       #define HAS_MONITOR             1
 #endif
 
 #if DBG_ON_P1
 #endif
 
 #if DBG_ON_P1
 #error Please define PACKET_HAS_SLAVE
 #endif
 
 #error Please define PACKET_HAS_SLAVE
 #endif
 
+#ifndef HAS_MONITOR
+#error Please define HAS_MONITOR
+#endif
 #endif /* _AO_PINS_H_ */
 #endif /* _AO_PINS_H_ */
index 1fb0eea6c228f81f801959912ad1b18ebceffa14..00816b33bdef4c9e784834c84c12d07a0ca3c6c9 100644 (file)
@@ -432,7 +432,9 @@ ao_radio_test(void)
        }
        mode++;
        if ((mode & 2) && !radio_on) {
        }
        mode++;
        if ((mode & 2) && !radio_on) {
+#if HAS_MONITOR
                ao_set_monitor(0);
                ao_set_monitor(0);
+#endif
 #if PACKET_HAS_SLAVE
                ao_packet_slave_stop();
 #endif
 #if PACKET_HAS_SLAVE
                ao_packet_slave_stop();
 #endif
index d9ea1fc8c5c91e475b3d511aa71697ac64027a6e..6fa70b3a45b46bc5d0225aa6028dab0d2c51f541 100644 (file)
 #include "ao.h"
 #include "ao_pins.h"
 
 #include "ao.h"
 #include "ao_pins.h"
 
-/* stub so as telemetrum doesn't have monitor mode */
-void
-ao_set_monitor(uint8_t monitoring)
-{
-       (void) monitoring;
-}
-
 void
 main(void)
 {
 void
 main(void)
 {
index 6c6124818ed6302329bb9df854beb4c6a8e9776a..fa23de018c2d5b67abfbda2a57ddf120d809fc60 100644 (file)
 #include "ao.h"
 #include "ao_pins.h"
 
 #include "ao.h"
 #include "ao_pins.h"
 
-/* stub so as telemini doesn't have monitor mode */
-void
-ao_set_monitor(uint8_t monitoring)
-{
-       (void) monitoring;
-}
-
 void
 main(void)
 {
 void
 main(void)
 {
index 40822b6e1d145d973d771bfe3eeee23e4bec0bcb..d91983d08c3ef70165d41db8d892327a2bdc2d1b 100644 (file)
 #include "ao.h"
 #include "ao_pins.h"
 
 #include "ao.h"
 #include "ao_pins.h"
 
-/* stub so as telemini doesn't have monitor mode */
-void
-ao_set_monitor(uint8_t monitoring)
-{
-       (void) monitoring;
-}
-
 void
 main(void)
 {
 void
 main(void)
 {