X-Git-Url: https://oss.titaniummirror.com/gitweb/?a=blobdiff_plain;f=tos%2Flib%2Fnet%2FDeluge%2FFlashVolumeManager%2FFlashVolumeManagerC.nc;h=19b769d3c45e4191287566b604df91bd531ece08;hb=e014c5d251e1706ee383c01597ed49173c00c8f3;hp=7ef0c385ac711e4c81d07b211793ecfe3a8ead59;hpb=3c0edd88ca1663f859090a7c33e720628bef5d61;p=tinyos-2.x.git diff --git a/tos/lib/net/Deluge/FlashVolumeManager/FlashVolumeManagerC.nc b/tos/lib/net/Deluge/FlashVolumeManager/FlashVolumeManagerC.nc index 7ef0c385..19b769d3 100644 --- a/tos/lib/net/Deluge/FlashVolumeManager/FlashVolumeManagerC.nc +++ b/tos/lib/net/Deluge/FlashVolumeManager/FlashVolumeManagerC.nc @@ -27,51 +27,46 @@ #include "AM.h" #include "StorageVolumes.h" -generic configuration FlashVolumeManagerC(am_id_t AMId) -{ -#ifdef DELUGE - provides interface Notify as DissNotify; - provides interface Notify as ReprogNotify; -#endif - uses { - interface BlockRead[uint8_t img_num]; - interface BlockWrite[uint8_t img_num]; -#ifdef DELUGE - interface DelugeStorage[uint8_t img_num]; -#endif - } -} +generic configuration FlashVolumeManagerC(am_id_t AMId) {} implementation { - components new SerialAMSenderC(AMId), - new SerialAMReceiverC(AMId), - new FlashVolumeManagerP(), - NoLedsC, LedsC; + components new SerialAMSenderC(AMId); + components new SerialAMReceiverC(AMId); + components new FlashVolumeManagerP(); + components new TimerMilliC() as TimeoutTimer; + components NoLedsC, LedsC; + components BlockStorageLockC; + + components new BlockReaderC(VOLUME_GOLDENIMAGE) as BlockReaderGoldenImage; + components new BlockReaderC(VOLUME_DELUGE1) as BlockReaderDeluge1; + components new BlockReaderC(VOLUME_DELUGE2) as BlockReaderDeluge2; + components new BlockReaderC(VOLUME_DELUGE3) as BlockReaderDeluge3; + + components new BlockWriterC(VOLUME_GOLDENIMAGE) as BlockWriterGoldenImage; + components new BlockWriterC(VOLUME_DELUGE1) as BlockWriterDeluge1; + components new BlockWriterC(VOLUME_DELUGE2) as BlockWriterDeluge2; + components new BlockWriterC(VOLUME_DELUGE3) as BlockWriterDeluge3; - FlashVolumeManagerP.BlockRead[VOLUME_GOLDENIMAGE] = BlockRead[VOLUME_GOLDENIMAGE]; - FlashVolumeManagerP.BlockWrite[VOLUME_GOLDENIMAGE] = BlockWrite[VOLUME_GOLDENIMAGE]; - FlashVolumeManagerP.BlockRead[VOLUME_DELUGE1] = BlockRead[VOLUME_DELUGE1]; - FlashVolumeManagerP.BlockWrite[VOLUME_DELUGE1] = BlockWrite[VOLUME_DELUGE1]; - FlashVolumeManagerP.BlockRead[VOLUME_DELUGE2] = BlockRead[VOLUME_DELUGE2]; - FlashVolumeManagerP.BlockWrite[VOLUME_DELUGE2] = BlockWrite[VOLUME_DELUGE2]; - FlashVolumeManagerP.BlockRead[VOLUME_DELUGE3] = BlockRead[VOLUME_DELUGE3]; - FlashVolumeManagerP.BlockWrite[VOLUME_DELUGE3] = BlockWrite[VOLUME_DELUGE3]; + FlashVolumeManagerP.BlockRead[VOLUME_GOLDENIMAGE] -> BlockReaderGoldenImage; + FlashVolumeManagerP.BlockRead[VOLUME_DELUGE1] -> BlockReaderDeluge1; + FlashVolumeManagerP.BlockRead[VOLUME_DELUGE2] -> BlockReaderDeluge2; + FlashVolumeManagerP.BlockRead[VOLUME_DELUGE3] -> BlockReaderDeluge3; + + FlashVolumeManagerP.BlockWrite[VOLUME_GOLDENIMAGE] -> BlockWriterGoldenImage; + FlashVolumeManagerP.BlockWrite[VOLUME_DELUGE1] -> BlockWriterDeluge1; + FlashVolumeManagerP.BlockWrite[VOLUME_DELUGE2] -> BlockWriterDeluge2; + FlashVolumeManagerP.BlockWrite[VOLUME_DELUGE3] -> BlockWriterDeluge3; + + FlashVolumeManagerP.Resource[VOLUME_GOLDENIMAGE] -> BlockWriterGoldenImage; + FlashVolumeManagerP.Resource[VOLUME_DELUGE1] -> BlockWriterDeluge1; + FlashVolumeManagerP.Resource[VOLUME_DELUGE2] -> BlockWriterDeluge2; + FlashVolumeManagerP.Resource[VOLUME_DELUGE3] -> BlockWriterDeluge3; + + FlashVolumeManagerP.ArbiterInfo -> BlockStorageLockC; + FlashVolumeManagerP.TimeoutTimer -> TimeoutTimer; FlashVolumeManagerP.SerialAMSender -> SerialAMSenderC; FlashVolumeManagerP.SerialAMReceiver -> SerialAMReceiverC; - FlashVolumeManagerP.Leds -> NoLedsC; - -#ifdef DELUGE - components NetProgC, new TimerMilliC(); - - FlashVolumeManagerP.NetProg -> NetProgC; - FlashVolumeManagerP.Timer -> TimerMilliC; - FlashVolumeManagerP.DelugeStorage[VOLUME_GOLDENIMAGE] = DelugeStorage[VOLUME_GOLDENIMAGE]; - FlashVolumeManagerP.DelugeStorage[VOLUME_DELUGE1] = DelugeStorage[VOLUME_DELUGE1]; - FlashVolumeManagerP.DelugeStorage[VOLUME_DELUGE2] = DelugeStorage[VOLUME_DELUGE2]; - FlashVolumeManagerP.DelugeStorage[VOLUME_DELUGE3] = DelugeStorage[VOLUME_DELUGE3]; - DissNotify = FlashVolumeManagerP.DissNotify; - ReprogNotify = FlashVolumeManagerP.ReprogNotify; -#endif + FlashVolumeManagerP.Leds -> LedsC; }