[Tinyos-2-commits] CVS: tinyos-2.x/tos/interfaces Crc.nc, NONE,
1.1 InternalFlash.nc, NONE, 1.1
Prabal Dutta
prabal at users.sourceforge.net
Sun Apr 1 23:49:34 PDT 2007
Update of /cvsroot/tinyos/tinyos-2.x/tos/interfaces
In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv16342
Added Files:
Crc.nc InternalFlash.nc
Log Message:
Port to T2
--- NEW FILE: Crc.nc ---
/* tab:2
*
* "Copyright (c) 2000-2007 The Regents of the University of
* California. 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 UNIVERSITY OF CALIFORNIA 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 UNIVERSITY OF CALIFORNIA HAS BEEN
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* THE UNIVERSITY OF CALIFORNIA 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 UNIVERSITY OF
* CALIFORNIA HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT,
* UPDATES, ENHANCEMENTS, OR MODIFICATIONS."
*
*/
/**
* Compute the CRC-16 value of a byte array.
*
* @author Jonathan Hui <jwhui at cs.berkeley.edu>
*/
interface Crc {
/**
* Compute the CRC-16 value of a byte array.
*
* @param buf A pointer to the buffer over which to compute CRC.
* @param len The length of the buffer over which to compute CRC.
* @return The CRC-16 value.
*/
command uint16_t crc16(void* buf, uint8_t len);
}
--- NEW FILE: InternalFlash.nc ---
/* tab:2
*
* "Copyright (c) 2000-2007 The Regents of the University of
* California. 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 UNIVERSITY OF CALIFORNIA 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 UNIVERSITY OF CALIFORNIA HAS BEEN
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* THE UNIVERSITY OF CALIFORNIA 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 UNIVERSITY OF
* CALIFORNIA HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT,
* UPDATES, ENHANCEMENTS, OR MODIFICATIONS."
*
*/
/**
* A generic interface to read from and write to the internal flash of
* a microcontroller.
*
* @author Jonathan Hui <jwhui at cs.berkeley.edu>
* @author Prabal Dutta <prabal at cs.berkeley.edu> (Port to T2)
*/
interface InternalFlash {
/**
* Read <code>size</code> bytes starting from <code>addr</code> and
* return them in <code>buf</code>.
*
* @param addr A pointer to the starting address from which to read.
* @param buf A pointer to the buffer into which read bytes are
* placed.
* @param size The number of bytes to read.
* @return SUCCESS if the bytes were successfully read.
* FAIL if the call could not be completed.
*/
command error_t read(void* addr, void* buf, uint16_t size);
/**
* Write <code>size</code> bytes from <code>buf</code> into internal
* flash starting at <code>addr</code>.
*
* @param addr A pointer to the starting address to which to write.
* @param buf A pointer to the buffer from which bytes are read.
* @param size The number of bytes to write.
* @return SUCCESS if the bytes were successfully written.
* FAIL if the call could not be completed.
*/
command error_t write(void* addr, void* buf, uint16_t size);
}
More information about the Tinyos-2-commits
mailing list