altos: clean up radio abort paths. Share radio code.
[fw/altos] / src / ao_packet_slave.c
index 9b78767f55282b4e77c0f28f806124728151fccc..3040d781091fd88c0956f6258879938ec3dcbb4b 100644 (file)
 void
 ao_packet_slave(void)
 {
-       uint8_t status;
-
        ao_radio_set_packet();
        ao_tx_packet.addr = ao_serial_number;
        ao_tx_packet.len = AO_PACKET_SYN;
        while (ao_packet_enable) {
-               status = ao_packet_recv();
-               if (status & AO_DMA_DONE) {
+               if (ao_packet_recv()) {
                        memcpy(&ao_tx_packet.callsign, &ao_rx_packet.packet.callsign, AO_MAX_CALLSIGN);
                        ao_packet_send();
                }
@@ -47,7 +44,7 @@ ao_packet_slave_stop(void)
 {
        if (ao_packet_enable) {
                ao_packet_enable = 0;
-               ao_radio_abort();
+               ao_radio_recv_abort();
                while (ao_packet_task.wchan) {
                        ao_wake_task(&ao_packet_task);
                        ao_yield();