From ac43bdecf67f77e66c2c07ee1e5ea3e8c80b8402 Mon Sep 17 00:00:00 2001 From: mmaroti Date: Mon, 16 Jun 2008 19:03:53 +0000 Subject: [PATCH] move TimeSyncC to RF230TimeSyncC --- ...ncMessageC.nc => RF230TimeSyncMessageC.nc} | 28 ++++----- ...ncMessageP.nc => RF230TimeSyncMessageP.nc} | 11 ++-- tos/platforms/iris/TimeSyncMessageC.nc | 60 +++++++++++++++++++ 3 files changed, 79 insertions(+), 20 deletions(-) rename tos/chips/rf230/{TimeSyncMessageC.nc => RF230TimeSyncMessageC.nc} (68%) rename tos/chips/rf230/{TimeSyncMessageP.nc => RF230TimeSyncMessageP.nc} (93%) create mode 100644 tos/platforms/iris/TimeSyncMessageC.nc diff --git a/tos/chips/rf230/TimeSyncMessageC.nc b/tos/chips/rf230/RF230TimeSyncMessageC.nc similarity index 68% rename from tos/chips/rf230/TimeSyncMessageC.nc rename to tos/chips/rf230/RF230TimeSyncMessageC.nc index 3f23bdb5..70b6440d 100644 --- a/tos/chips/rf230/TimeSyncMessageC.nc +++ b/tos/chips/rf230/RF230TimeSyncMessageC.nc @@ -25,7 +25,7 @@ #include #include -configuration TimeSyncMessageC +configuration RF230TimeSyncMessageC { provides { @@ -46,24 +46,24 @@ configuration TimeSyncMessageC implementation { - components TimeSyncMessageP, RF230ActiveMessageC, LocalTimeMilliC, LocalTimeMicroC as LocalTimeRadioC, RF230PacketC; + components RF230TimeSyncMessageP, RF230ActiveMessageC, LocalTimeMilliC, LocalTimeMicroC as LocalTimeRadioC, RF230PacketC; - TimeSyncAMSendRadio = TimeSyncMessageP; - TimeSyncPacketRadio = TimeSyncMessageP; + TimeSyncAMSendRadio = RF230TimeSyncMessageP; + TimeSyncPacketRadio = RF230TimeSyncMessageP; - TimeSyncAMSendMilli = TimeSyncMessageP; - TimeSyncPacketMilli = TimeSyncMessageP; + TimeSyncAMSendMilli = RF230TimeSyncMessageP; + TimeSyncPacketMilli = RF230TimeSyncMessageP; - Packet = TimeSyncMessageP; - TimeSyncMessageP.SubSend -> RF230ActiveMessageC.AMSend; - TimeSyncMessageP.SubPacket -> RF230ActiveMessageC.Packet; + Packet = RF230TimeSyncMessageP; + RF230TimeSyncMessageP.SubSend -> RF230ActiveMessageC.AMSend; + RF230TimeSyncMessageP.SubPacket -> RF230ActiveMessageC.Packet; - TimeSyncMessageP.PacketTimeStampRadio -> RF230ActiveMessageC; - TimeSyncMessageP.PacketTimeStampMilli -> RF230ActiveMessageC; - TimeSyncMessageP.LocalTimeRadio -> LocalTimeRadioC; - TimeSyncMessageP.LocalTimeMilli -> LocalTimeMilliC; + RF230TimeSyncMessageP.PacketTimeStampRadio -> RF230ActiveMessageC; + RF230TimeSyncMessageP.PacketTimeStampMilli -> RF230ActiveMessageC; + RF230TimeSyncMessageP.LocalTimeRadio -> LocalTimeRadioC; + RF230TimeSyncMessageP.LocalTimeMilli -> LocalTimeMilliC; - TimeSyncMessageP.PacketTimeSyncOffset -> RF230PacketC.PacketTimeSyncOffset; + RF230TimeSyncMessageP.PacketTimeSyncOffset -> RF230PacketC.PacketTimeSyncOffset; SplitControl = RF230ActiveMessageC; Receive = RF230ActiveMessageC.Receive; diff --git a/tos/chips/rf230/TimeSyncMessageP.nc b/tos/chips/rf230/RF230TimeSyncMessageP.nc similarity index 93% rename from tos/chips/rf230/TimeSyncMessageP.nc rename to tos/chips/rf230/RF230TimeSyncMessageP.nc index c4f9ca3e..181d5c20 100644 --- a/tos/chips/rf230/TimeSyncMessageP.nc +++ b/tos/chips/rf230/RF230TimeSyncMessageP.nc @@ -24,7 +24,7 @@ #include #include -module TimeSyncMessageP +module RF230TimeSyncMessageP { provides { @@ -53,7 +53,6 @@ module TimeSyncMessageP implementation { - // TODO: change the Packet.payloadLength and Packet.maxPayloadLength commands to async inline void* getFooter(message_t* msg) { // we use the payload length that we export (the smaller one) @@ -156,14 +155,14 @@ implementation /*----------------- TimeSyncPacketRadio -----------------*/ - async command bool TimeSyncPacketRadio.isValid(message_t* msg) + command bool TimeSyncPacketRadio.isValid(message_t* msg) { timesync_relative_t* timesync = getFooter(msg); return call PacketTimeStampRadio.isValid(msg) && *timesync != 0x80000000L; } - async command uint32_t TimeSyncPacketRadio.eventTime(message_t* msg) + command uint32_t TimeSyncPacketRadio.eventTime(message_t* msg) { timesync_relative_t* timesync = getFooter(msg); @@ -172,14 +171,14 @@ implementation /*----------------- TimeSyncPacketMilli -----------------*/ - async command bool TimeSyncPacketMilli.isValid(message_t* msg) + command bool TimeSyncPacketMilli.isValid(message_t* msg) { timesync_relative_t* timesync = getFooter(msg); return call PacketTimeStampMilli.isValid(msg) && *timesync != 0x80000000L; } - async command uint32_t TimeSyncPacketMilli.eventTime(message_t* msg) + command uint32_t TimeSyncPacketMilli.eventTime(message_t* msg) { timesync_relative_t* timesync = getFooter(msg); diff --git a/tos/platforms/iris/TimeSyncMessageC.nc b/tos/platforms/iris/TimeSyncMessageC.nc new file mode 100644 index 00000000..aca670b3 --- /dev/null +++ b/tos/platforms/iris/TimeSyncMessageC.nc @@ -0,0 +1,60 @@ +/* + * Copyright (c) 2007, Vanderbilt University + * All rights reserved. + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose, without fee, and without written agreement is + * hereby granted, provided that the above copyright notice, the following + * two paragraphs and the author appear in all copies of this software. + * + * IN NO EVENT SHALL THE VANDERBILT UNIVERSITY BE LIABLE TO ANY PARTY FOR + * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT + * OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE VANDERBILT + * UNIVERSITY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * THE VANDERBILT UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS + * ON AN "AS IS" BASIS, AND THE VANDERBILT UNIVERSITY HAS NO OBLIGATION TO + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + * + * Author: Miklos Maroti + */ + +#include + +configuration TimeSyncMessageC +{ + provides + { + interface SplitControl; + + interface Receive[uint8_t id]; + interface Receive as Snoop[am_id_t id]; + interface Packet; + interface AMPacket; + + interface TimeSyncAMSend as TimeSyncAMSendRadio[am_id_t id]; + interface TimeSyncPacket as TimeSyncPacketRadio; + + interface TimeSyncAMSend as TimeSyncAMSendMilli[am_id_t id]; + interface TimeSyncPacket as TimeSyncPacketMilli; + } +} + +implementation +{ + components RF230TimeSyncMessageC; + + SplitControl = RF230TimeSyncMessageC; + + Receive = RF230TimeSyncMessageC.Receive; + Snoop = RF230TimeSyncMessageC.Snoop; + Packet = RF230TimeSyncMessageC; + AMPacket = RF230TimeSyncMessageC; + + TimeSyncAMSendRadio = RF230TimeSyncMessageC; + TimeSyncPacketRadio = RF230TimeSyncMessageC; + TimeSyncAMSendMilli = RF230TimeSyncMessageC; + TimeSyncPacketMilli = RF230TimeSyncMessageC; +} -- 2.39.2