return datalen + sizeof(xe1205_header_t) + sizeof(xe1205_footer_t) + sizeof(xe1205_phy_header_t);
}
- task void signalPacketReceived() __attribute__ ((noinline)) {
+ task void signalPacketReceived() {
atomic {
getMetadata((message_t*) rxMsgPtr)->length = rxPhyHdr.length;
(((getHeader((message_t*)rxMsgPtr))->ack)& 0x01)==1) {
post sendAck();
} else {
- atomic rxBufPtr = NULL;
- rxMsgPtr = signal Receive.receive(rxMsgPtr, rxMsgPtr->data, getMetadata(rxMsgPtr)->length);
+ post signalPacketReceived();
}
}
interface XE1205PhyRssi {
async command error_t getRssi();
- command uint8_t readRxRssi();
+ async command uint8_t readRxRssi();
async event void rssiDone(uint8_t _rssi);
}