Merge branch 'master' of ssh://git.gag.com/scm/git/fw/altos
[fw/altos] / src / cc1111 / ao_radio.c
index b9821a4237ab950caecebb6bac85defb30ccbff2..cead036419f18c97a9ae7277564a849242d5866e 100644 (file)
@@ -451,13 +451,9 @@ ao_radio_recv(__xdata void *packet, uint8_t size, uint8_t timeout) __reentrant
        /* Wait for DMA to be done, for the radio receive process to
         * get aborted or for a receive timeout to fire
         */
-       if (timeout)
-               ao_alarm(timeout);
        __critical while (!ao_radio_dma_done && !ao_radio_abort)
-                          if (ao_sleep(&ao_radio_dma_done))
+                          if (ao_sleep_for(&ao_radio_dma_done, timeout))
                                   break;
-       if (timeout)
-               ao_clear_alarm();
 
        /* If recv was aborted, clean up by stopping the DMA engine
         * and idling the radio