+ __critical while (!ao_radio_dma_done && !ao_radio_abort)
+ ao_sleep(&ao_radio_dma_done);
+
+ /* If recv was aborted, clean up by stopping the DMA engine
+ * and idling the radio
+ */
+ if (!ao_radio_dma_done) {
+ ao_dma_abort(ao_radio_dma);
+ ao_radio_idle();
+ }