summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/drivers/ao_companion.c2
-rw-r--r--src/drivers/ao_gps_skytraq.c4
-rw-r--r--src/drivers/ao_ms5607.c6
-rw-r--r--src/drivers/ao_packet.c2
-rw-r--r--src/drivers/ao_pad.c2
-rw-r--r--src/kernel/ao.h11
-rw-r--r--src/kernel/ao_balloon.c4
-rw-r--r--src/kernel/ao_config.c6
-rw-r--r--src/kernel/ao_data.h4
-rw-r--r--src/kernel/ao_flight.c16
-rw-r--r--src/kernel/ao_flight_nano.c6
-rw-r--r--src/kernel/ao_forward.c2
-rw-r--r--src/kernel/ao_host.h6
-rw-r--r--src/kernel/ao_log_telem.c4
-rw-r--r--src/kernel/ao_log_tiny.c4
-rw-r--r--src/kernel/ao_monitor.c16
-rw-r--r--src/kernel/ao_report.c4
-rw-r--r--src/kernel/ao_sample.c4
-rw-r--r--src/kernel/ao_telemetry.c2
-rw-r--r--src/product/ao_terraui.c2
-rw-r--r--src/test/ao_flight_test.c2
21 files changed, 48 insertions, 61 deletions
diff --git a/src/drivers/ao_companion.c b/src/drivers/ao_companion.c
index f82558a3..598b5815 100644
--- a/src/drivers/ao_companion.c
+++ b/src/drivers/ao_companion.c
@@ -107,7 +107,7 @@ ao_companion(void)
break;
}
while (ao_companion_running) {
- if (ao_sleep_for(DATA_TO_XDATA(&ao_flight_state), ao_companion_setup.update_period))
+ if (ao_sleep_for(&ao_flight_state, ao_companion_setup.update_period))
ao_companion_get_data();
else
ao_companion_notify();
diff --git a/src/drivers/ao_gps_skytraq.c b/src/drivers/ao_gps_skytraq.c
index c483382e..3ecae435 100644
--- a/src/drivers/ao_gps_skytraq.c
+++ b/src/drivers/ao_gps_skytraq.c
@@ -298,7 +298,7 @@ ao_nmea_gga(void)
ao_mutex_get(&ao_gps_mutex);
ao_gps_new |= AO_GPS_NEW_DATA;
ao_gps_tick = ao_gps_next_tick;
- ao_xmemcpy(&ao_gps_data, PDATA_TO_XDATA(&ao_gps_next), sizeof (ao_gps_data));
+ ao_xmemcpy(&ao_gps_data, &ao_gps_next, sizeof (ao_gps_data));
ao_mutex_put(&ao_gps_mutex);
ao_wakeup(&ao_gps_new);
}
@@ -357,7 +357,7 @@ ao_nmea_gsv(void)
else if (done) {
ao_mutex_get(&ao_gps_mutex);
ao_gps_new |= AO_GPS_NEW_TRACKING;
- ao_xmemcpy(&ao_gps_tracking_data, PDATA_TO_XDATA(&ao_gps_tracking_next), sizeof(ao_gps_tracking_data));
+ ao_xmemcpy(&ao_gps_tracking_data, &ao_gps_tracking_next, sizeof(ao_gps_tracking_data));
ao_mutex_put(&ao_gps_mutex);
ao_wakeup(&ao_gps_new);
}
diff --git a/src/drivers/ao_ms5607.c b/src/drivers/ao_ms5607.c
index 53ed992a..4bfc17db 100644
--- a/src/drivers/ao_ms5607.c
+++ b/src/drivers/ao_ms5607.c
@@ -45,7 +45,7 @@ ao_ms5607_reset(void) {
cmd = AO_MS5607_RESET;
ao_ms5607_start();
- ao_spi_send(DATA_TO_XDATA(&cmd), 1, AO_MS5607_SPI_INDEX);
+ ao_spi_send(&cmd, 1, AO_MS5607_SPI_INDEX);
ao_delay(AO_MS_TO_TICKS(10));
ao_ms5607_stop();
}
@@ -106,7 +106,7 @@ ao_ms5607_prom_read(__xdata struct ao_ms5607_prom *prom)
for (addr = 0; addr < 8; addr++) {
uint8_t cmd = AO_MS5607_PROM_READ(addr);
ao_ms5607_start();
- ao_spi_send(DATA_TO_XDATA(&cmd), 1, AO_MS5607_SPI_INDEX);
+ ao_spi_send(&cmd, 1, AO_MS5607_SPI_INDEX);
ao_spi_recv(r, 2, AO_MS5607_SPI_INDEX);
ao_ms5607_stop();
r++;
@@ -156,7 +156,7 @@ ao_ms5607_get_sample(uint8_t cmd) {
ao_ms5607_done = 0;
ao_ms5607_start();
- ao_spi_send(DATA_TO_XDATA(&cmd), 1, AO_MS5607_SPI_INDEX);
+ ao_spi_send(&cmd, 1, AO_MS5607_SPI_INDEX);
ao_exti_enable(AO_MS5607_MISO_PORT, AO_MS5607_MISO_PIN);
diff --git a/src/drivers/ao_packet.c b/src/drivers/ao_packet.c
index 008af5db..1c931921 100644
--- a/src/drivers/ao_packet.c
+++ b/src/drivers/ao_packet.c
@@ -91,7 +91,7 @@ ao_packet_recv(uint16_t timeout)
if (ao_xmemcmp(ao_rx_packet.packet.callsign,
ao_config.callsign,
AO_MAX_CALLSIGN) != 0 &&
- ao_xmemcmp(ao_config.callsign, CODE_TO_XDATA("N0CALL"), 7) != 0)
+ ao_xmemcmp(ao_config.callsign, "N0CALL", 7) != 0)
return 0;
/* SYN packets carry no data */
diff --git a/src/drivers/ao_pad.c b/src/drivers/ao_pad.c
index c6efc311..208841fb 100644
--- a/src/drivers/ao_pad.c
+++ b/src/drivers/ao_pad.c
@@ -203,7 +203,7 @@ ao_pad_monitor(void)
ao_arch_critical(
while (sample == ao_data_head)
- ao_sleep((void *) DATA_TO_XDATA(&ao_data_head));
+ ao_sleep((void *) &ao_data_head);
);
diff --git a/src/kernel/ao.h b/src/kernel/ao.h
index 204eaae7..520f6ef2 100644
--- a/src/kernel/ao.h
+++ b/src/kernel/ao.h
@@ -38,17 +38,6 @@ extern char ao_getchar(void);
#define TRUE 1
#define FALSE 0
-/* Convert a __data pointer into an __xdata pointer */
-#ifndef DATA_TO_XDATA
-#define DATA_TO_XDATA(a) (a)
-#endif
-#ifndef PDATA_TO_XDATA
-#define PDATA_TO_XDATA(a) (a)
-#endif
-#ifndef CODE_TO_XDATA
-#define CODE_TO_XDATA(a) (a)
-#endif
-
#ifndef HAS_TASK
#define HAS_TASK 1
#endif
diff --git a/src/kernel/ao_balloon.c b/src/kernel/ao_balloon.c
index 47b69e25..d0f80a5d 100644
--- a/src/kernel/ao_balloon.c
+++ b/src/kernel/ao_balloon.c
@@ -96,7 +96,7 @@ ao_flight(void)
ao_led_off(AO_LED_RED);
}
/* wakeup threads due to state change */
- ao_wakeup(DATA_TO_XDATA(&ao_flight_state));
+ ao_wakeup(&ao_flight_state);
break;
case ao_flight_pad:
@@ -118,7 +118,7 @@ ao_flight(void)
ao_wakeup(&ao_gps_new);
#endif
- ao_wakeup(DATA_TO_XDATA(&ao_flight_state));
+ ao_wakeup(&ao_flight_state);
}
break;
default:
diff --git a/src/kernel/ao_config.c b/src/kernel/ao_config.c
index 86d4838f..10a67116 100644
--- a/src/kernel/ao_config.c
+++ b/src/kernel/ao_config.c
@@ -135,7 +135,7 @@ _ao_config_get(void)
/* Version 0 stuff */
ao_config.main_deploy = AO_CONFIG_DEFAULT_MAIN_DEPLOY;
ao_xmemset(&ao_config.callsign, '\0', sizeof (ao_config.callsign));
- ao_xmemcpy(&ao_config.callsign, CODE_TO_XDATA(AO_CONFIG_DEFAULT_CALLSIGN),
+ ao_xmemcpy(&ao_config.callsign, AO_CONFIG_DEFAULT_CALLSIGN,
sizeof(AO_CONFIG_DEFAULT_CALLSIGN) - 1);
ao_config._legacy_radio_channel = 0;
}
@@ -246,7 +246,7 @@ _ao_config_get(void)
#if HAS_RADIO_RATE
ao_config.radio_rate = AO_CONFIG_DEFAULT_RADIO_RATE;
#endif
- ao_xmemcpy(&ao_config.callsign, CODE_TO_XDATA(AO_CONFIG_DEFAULT_CALLSIGN),
+ ao_xmemcpy(&ao_config.callsign, AO_CONFIG_DEFAULT_CALLSIGN,
sizeof(AO_CONFIG_DEFAULT_CALLSIGN) - 1);
}
#endif
@@ -421,7 +421,7 @@ ao_config_accel_calibrate_auto(char *orientation) __reentrant
accel_total = 0;
cal_data_ring = ao_sample_data;
while (i) {
- ao_sleep(DATA_TO_XDATA(&ao_sample_data));
+ ao_sleep(&ao_sample_data);
while (i && cal_data_ring != ao_sample_data) {
accel_total += (int32_t) ao_data_accel(&ao_data_ring[cal_data_ring]);
#if HAS_GYRO
diff --git a/src/kernel/ao_data.h b/src/kernel/ao_data.h
index 88d0e916..30616ef0 100644
--- a/src/kernel/ao_data.h
+++ b/src/kernel/ao_data.h
@@ -113,9 +113,7 @@ extern volatile __data uint8_t ao_data_count;
* Wait until it is time to write a sensor sample; this is
* signaled by the timer tick
*/
-#define AO_DATA_WAIT() do { \
- ao_sleep(DATA_TO_XDATA ((void *) &ao_data_count)); \
- } while (0)
+#define AO_DATA_WAIT() ao_sleep((void *) &ao_data_count)
#endif /* AO_DATA_RING */
diff --git a/src/kernel/ao_flight.c b/src/kernel/ao_flight.c
index c2700d20..170396ff 100644
--- a/src/kernel/ao_flight.c
+++ b/src/kernel/ao_flight.c
@@ -175,7 +175,7 @@ ao_flight(void)
#endif
}
/* wakeup threads due to state change */
- ao_wakeup(DATA_TO_XDATA(&ao_flight_state));
+ ao_wakeup(&ao_flight_state);
break;
case ao_flight_pad:
@@ -219,7 +219,7 @@ ao_flight(void)
ao_wakeup(&ao_gps_new);
#endif
- ao_wakeup(DATA_TO_XDATA(&ao_flight_state));
+ ao_wakeup(&ao_flight_state);
}
break;
case ao_flight_boost:
@@ -244,7 +244,7 @@ ao_flight(void)
ao_flight_state = ao_flight_coast;
#endif
++ao_motor_number;
- ao_wakeup(DATA_TO_XDATA(&ao_flight_state));
+ ao_wakeup(&ao_flight_state);
}
break;
#if HAS_ACCEL
@@ -257,7 +257,7 @@ ao_flight(void)
if (ao_speed < AO_MS_TO_SPEED(AO_MAX_BARO_SPEED))
{
ao_flight_state = ao_flight_coast;
- ao_wakeup(DATA_TO_XDATA(&ao_flight_state));
+ ao_wakeup(&ao_flight_state);
} else
goto check_re_boost;
break;
@@ -306,7 +306,7 @@ ao_flight(void)
/* and enter drogue state */
ao_flight_state = ao_flight_drogue;
- ao_wakeup(DATA_TO_XDATA(&ao_flight_state));
+ ao_wakeup(&ao_flight_state);
}
#if HAS_ACCEL
else {
@@ -315,7 +315,7 @@ ao_flight(void)
if (ao_coast_avg_accel > AO_MSS_TO_ACCEL(20)) {
ao_boost_tick = ao_sample_tick;
ao_flight_state = ao_flight_boost;
- ao_wakeup(DATA_TO_XDATA(&ao_flight_state));
+ ao_wakeup(&ao_flight_state);
}
}
#endif
@@ -352,7 +352,7 @@ ao_flight(void)
ao_interval_min_height = ao_interval_max_height = ao_avg_height;
ao_flight_state = ao_flight_main;
- ao_wakeup(DATA_TO_XDATA(&ao_flight_state));
+ ao_wakeup(&ao_flight_state);
}
break;
@@ -379,7 +379,7 @@ ao_flight(void)
ao_timer_set_adc_interval(0);
#endif
- ao_wakeup(DATA_TO_XDATA(&ao_flight_state));
+ ao_wakeup(&ao_flight_state);
}
ao_interval_min_height = ao_interval_max_height = ao_avg_height;
ao_interval_end = ao_sample_tick + AO_INTERVAL_TICKS;
diff --git a/src/kernel/ao_flight_nano.c b/src/kernel/ao_flight_nano.c
index d849dc64..797ea344 100644
--- a/src/kernel/ao_flight_nano.c
+++ b/src/kernel/ao_flight_nano.c
@@ -70,7 +70,7 @@ ao_flight_nano(void)
ao_led_off(AO_LED_RED);
/* wakeup threads due to state change */
- ao_wakeup(DATA_TO_XDATA(&ao_flight_state));
+ ao_wakeup(&ao_flight_state);
break;
case ao_flight_pad:
if (ao_height> AO_M_TO_HEIGHT(20)) {
@@ -80,7 +80,7 @@ ao_flight_nano(void)
/* start logging data */
ao_log_start();
- ao_wakeup(DATA_TO_XDATA(&ao_flight_state));
+ ao_wakeup(&ao_flight_state);
}
break;
case ao_flight_drogue:
@@ -101,7 +101,7 @@ ao_flight_nano(void)
/* turn off the ADC capture */
ao_timer_set_adc_interval(0);
- ao_wakeup(DATA_TO_XDATA(&ao_flight_state));
+ ao_wakeup(&ao_flight_state);
}
ao_interval_min_height = ao_interval_max_height = ao_height;
ao_interval_end = ao_sample_tick + AO_INTERVAL_TICKS;
diff --git a/src/kernel/ao_forward.c b/src/kernel/ao_forward.c
index 721b52d0..b1ab3f54 100644
--- a/src/kernel/ao_forward.c
+++ b/src/kernel/ao_forward.c
@@ -27,7 +27,7 @@ ao_monitor_forward(void)
for (;;) {
while (ao_monitoring)
- ao_sleep(DATA_TO_XDATA(&ao_monitoring));
+ ao_sleep(&ao_monitoring);
if (!ao_radio_recv(&packet, sizeof(packet), 0))
continue;
diff --git a/src/kernel/ao_host.h b/src/kernel/ao_host.h
index 50583f52..638dba99 100644
--- a/src/kernel/ao_host.h
+++ b/src/kernel/ao_host.h
@@ -47,9 +47,9 @@ struct ao_adc {
#define __code
#define __reentrant
-#define DATA_TO_XDATA(a) (a)
-#define PDATA_TO_XDATA(a) (a)
-#define CODE_TO_XDATA(a) (a)
+#define a (a)
+#define a (a)
+#define a (a)
enum ao_flight_state {
ao_flight_startup = 0,
diff --git a/src/kernel/ao_log_telem.c b/src/kernel/ao_log_telem.c
index 1305a84d..8969e029 100644
--- a/src/kernel/ao_log_telem.c
+++ b/src/kernel/ao_log_telem.c
@@ -50,7 +50,7 @@ ao_log_telem_track() {
ao_flight_state = ao_log_single_write_data.telemetry.sensor.state;
if (ao_flight_state == ao_flight_pad)
ao_max_height = 0;
- ao_wakeup(DATA_TO_XDATA(&ao_flight_state));
+ ao_wakeup(&ao_flight_state);
}
}
}
@@ -111,7 +111,7 @@ ao_log_single(void)
ao_log_telem_track();
}
/* Wait for more telemetry data to arrive */
- ao_sleep(DATA_TO_XDATA(&ao_monitor_head));
+ ao_sleep(&ao_monitor_head);
}
}
}
diff --git a/src/kernel/ao_log_tiny.c b/src/kernel/ao_log_tiny.c
index 0b8e39d6..046b7b20 100644
--- a/src/kernel/ao_log_tiny.c
+++ b/src/kernel/ao_log_tiny.c
@@ -41,7 +41,7 @@ static void ao_log_tiny_data(uint16_t d)
if (ao_log_current_pos >= ao_log_end_pos && ao_log_running)
ao_log_stop();
if (ao_log_running) {
- ao_storage_write(ao_log_current_pos, DATA_TO_XDATA(&d), 2);
+ ao_storage_write(ao_log_current_pos, &d, 2);
ao_log_current_pos += 2;
}
}
@@ -102,7 +102,7 @@ ao_log(void)
/*
* Add in pending sample data
*/
- ao_sleep(DATA_TO_XDATA(&ao_sample_data));
+ ao_sleep(&ao_sample_data);
while (ao_log_data != ao_sample_data) {
sum += ao_data_pres(&ao_data_ring[ao_log_data]);
count++;
diff --git a/src/kernel/ao_monitor.c b/src/kernel/ao_monitor.c
index 7cbee288..b9a39bfc 100644
--- a/src/kernel/ao_monitor.c
+++ b/src/kernel/ao_monitor.c
@@ -59,7 +59,7 @@ _ao_monitor_adjust(void)
else
ao_monitoring = ao_internal_monitoring;
}
- ao_wakeup(DATA_TO_XDATA(&ao_monitoring));
+ ao_wakeup(&ao_monitoring);
}
void
@@ -70,7 +70,7 @@ ao_monitor_get(void)
for (;;) {
switch (ao_monitoring) {
case 0:
- ao_sleep(DATA_TO_XDATA(&ao_monitoring));
+ ao_sleep(&ao_monitoring);
continue;
#if LEGACY_MONITOR
case AO_MONITORING_ORIG:
@@ -86,7 +86,7 @@ ao_monitor_get(void)
if (!ao_radio_recv(&ao_monitor_ring[ao_monitor_head], size + 2, 0))
continue;
ao_monitor_head = ao_monitor_ring_next(ao_monitor_head);
- ao_wakeup(DATA_TO_XDATA(&ao_monitor_head));
+ ao_wakeup(&ao_monitor_head);
}
}
@@ -100,7 +100,7 @@ ao_monitor_blink(void)
uint8_t *recv;
#endif
for (;;) {
- ao_sleep(DATA_TO_XDATA(&ao_monitor_head));
+ ao_sleep(&ao_monitor_head);
#ifdef AO_MONITOR_BAD
recv = (uint8_t *) &ao_monitor_ring[ao_monitor_ring_prev(ao_monitor_head)];
if (ao_monitoring && !(recv[ao_monitoring + 1] & AO_RADIO_STATUS_CRC_OK))
@@ -142,9 +142,9 @@ ao_monitor_put(void)
ao_monitor_tail = ao_monitor_head;
for (;;) {
while (!ao_external_monitoring)
- ao_sleep(DATA_TO_XDATA(&ao_external_monitoring));
+ ao_sleep(&ao_external_monitoring);
while (ao_monitor_tail == ao_monitor_head && ao_external_monitoring)
- ao_sleep(DATA_TO_XDATA(&ao_monitor_head));
+ ao_sleep(&ao_monitor_head);
if (!ao_external_monitoring)
continue;
m = &ao_monitor_ring[ao_monitor_tail];
@@ -298,8 +298,8 @@ set_monitor(void)
{
ao_cmd_hex();
ao_external_monitoring = ao_cmd_lex_i;
- ao_wakeup(DATA_TO_XDATA(&ao_external_monitoring));
- ao_wakeup(DATA_TO_XDATA(&ao_monitor_head));
+ ao_wakeup(&ao_external_monitoring);
+ ao_wakeup(&ao_monitor_head);
_ao_monitor_adjust();
}
diff --git a/src/kernel/ao_report.c b/src/kernel/ao_report.c
index af48b390..73f87cdd 100644
--- a/src/kernel/ao_report.c
+++ b/src/kernel/ao_report.c
@@ -183,7 +183,7 @@ ao_report_battery(void)
ao_data_get(&packet);
if (packet.adc.v_batt != 0)
break;
- ao_sleep(DATA_TO_XDATA(&ao_sample_data));
+ ao_sleep(&ao_sample_data);
}
ao_report_number(ao_battery_decivolt(packet.adc.v_batt));
}
@@ -281,7 +281,7 @@ ao_report(void)
}
#endif
while (ao_report_state == ao_flight_state)
- ao_sleep(DATA_TO_XDATA(&ao_flight_state));
+ ao_sleep(&ao_flight_state);
}
}
diff --git a/src/kernel/ao_sample.c b/src/kernel/ao_sample.c
index f8012e34..9f5082bb 100644
--- a/src/kernel/ao_sample.c
+++ b/src/kernel/ao_sample.c
@@ -321,8 +321,8 @@ static gyro_t inline ao_gyro(void) {
uint8_t
ao_sample(void)
{
- ao_wakeup(DATA_TO_XDATA(&ao_sample_data));
- ao_sleep((void *) DATA_TO_XDATA(&ao_data_head));
+ ao_wakeup(&ao_sample_data);
+ ao_sleep((void *) &ao_data_head);
while (ao_sample_data != ao_data_head) {
__xdata struct ao_data *ao_data;
diff --git a/src/kernel/ao_telemetry.c b/src/kernel/ao_telemetry.c
index 9ed612ce..8ff28fde 100644
--- a/src/kernel/ao_telemetry.c
+++ b/src/kernel/ao_telemetry.c
@@ -337,7 +337,7 @@ ao_send_configuration(void)
ao_config.callsign,
AO_MAX_CALLSIGN);
ao_xmemcpy (telemetry.configuration.version,
- CODE_TO_XDATA(ao_version),
+ ao_version,
AO_MAX_VERSION);
ao_telemetry_config_cur = ao_telemetry_config_max;
ao_telemetry_send();
diff --git a/src/product/ao_terraui.c b/src/product/ao_terraui.c
index c2bbc30e..f8f23a0f 100644
--- a/src/product/ao_terraui.c
+++ b/src/product/ao_terraui.c
@@ -588,7 +588,7 @@ ao_terramonitor(void)
monitor = ao_monitor_ring_next(monitor))
{
while (monitor == ao_monitor_head)
- ao_sleep(DATA_TO_XDATA(&ao_monitor_head));
+ ao_sleep(&ao_monitor_head);
if (ao_monitoring != sizeof (union ao_telemetry_all))
continue;
if (!(ao_monitor_ring[monitor].all.status & PKT_APPEND_STATUS_1_CRC_OK))
diff --git a/src/test/ao_flight_test.c b/src/test/ao_flight_test.c
index 746a6814..0913e7ba 100644
--- a/src/test/ao_flight_test.c
+++ b/src/test/ao_flight_test.c
@@ -362,7 +362,7 @@ struct ao_ms5607_prom ao_ms5607_prom;
struct ao_config ao_config;
-#define DATA_TO_XDATA(x) (x)
+#define x (x)
extern int16_t ao_ground_accel, ao_flight_accel;