]> oss.titaniummirror.com Git - tinyos-2.x.git/blobdiff - tos/lib/serial/SerialPacketInfo802_15_4P.nc
add support for IRIS (it was CC2420 only)
[tinyos-2.x.git] / tos / lib / serial / SerialPacketInfo802_15_4P.nc
index ead437a6b6d4238546ac4f07a69be8b154ea5829..45cafe162375cf1f99de327b58f16bf54d71e6e7 100644 (file)
  *
  */
 
-#include "802_15_4.h"
 module SerialPacketInfo802_15_4P {
   provides interface SerialPacketInfo as Info;
 }
 implementation {
+#ifdef PLATFORM_IRIS
+  enum {
+    HEADER_SIZE = sizeof(rf230packet_header_t),
+    FOOTER_SIZE = sizeof(rf230packet_footer_t),
+  };
+#else
+  enum {
+    HEADER_SIZE = sizeof(cc2420_header_t),
+    FOOTER_SIZE = sizeof(cc2420_footer_t),
+  };
+#endif
+
   async command uint8_t Info.offset() {
-    return sizeof(TOSRadioHeader) - sizeof(TOS802Header);
+    return sizeof(message_header_t)-HEADER_SIZE;
   }
   async command uint8_t Info.dataLinkLength(message_t* msg, uint8_t upperLen) {
-    return upperLen + sizeof(TOS802Header) + sizeof(TOS802Footer);
+    return upperLen + HEADER_SIZE + FOOTER_SIZE;
   }
   async command uint8_t Info.upperLength(message_t* msg, uint8_t dataLinkLen) {
-    return dataLinkLen - (sizeof(TOS802Header) + sizeof(TOS802Footer));
+    return dataLinkLen - (HEADER_SIZE + FOOTER_SIZE);
   }
 }