]> oss.titaniummirror.com Git - tinyos-2.x.git/blobdiff - tos/platforms/shimmer/chips/sd/SD.h
Added SD and mma7260 (3-axis accelerometer) support
[tinyos-2.x.git] / tos / platforms / shimmer / chips / sd / SD.h
diff --git a/tos/platforms/shimmer/chips/sd/SD.h b/tos/platforms/shimmer/chips/sd/SD.h
new file mode 100644 (file)
index 0000000..80a6aaa
--- /dev/null
@@ -0,0 +1,134 @@
+/* ***********************************************************
+* THIS PROGRAM IS PROVIDED "AS IS". TI MAKES NO WARRANTIES OR
+* REPRESENTATIONS, EITHER EXPRESS, IMPLIED OR STATUTORY, 
+* INCLUDING ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS 
+* FOR A PARTICULAR PURPOSE, LACK OF VIRUSES, ACCURACY OR 
+* COMPLETENESS OF RESPONSES, RESULTS AND LACK OF NEGLIGENCE. 
+* TI DISCLAIMS ANY WARRANTY OF TITLE, QUIET ENJOYMENT, QUIET 
+* POSSESSION, AND NON-INFRINGEMENT OF ANY THIRD PARTY 
+* INTELLECTUAL PROPERTY RIGHTS WITH REGARD TO THE PROGRAM OR 
+* YOUR USE OF THE PROGRAM.
+*
+* IN NO EVENT SHALL TI BE LIABLE FOR ANY SPECIAL, INCIDENTAL, 
+* CONSEQUENTIAL OR INDIRECT DAMAGES, HOWEVER CAUSED, ON ANY 
+* THEORY OF LIABILITY AND WHETHER OR NOT TI HAS BEEN ADVISED 
+* OF THE POSSIBILITY OF SUCH DAMAGES, ARISING IN ANY WAY OUT 
+* OF THIS AGREEMENT, THE PROGRAM, OR YOUR USE OF THE PROGRAM. 
+* EXCLUDED DAMAGES INCLUDE, BUT ARE NOT LIMITED TO, COST OF 
+* REMOVAL OR REINSTALLATION, COMPUTER TIME, LABOR COSTS, LOSS 
+* OF GOODWILL, LOSS OF PROFITS, LOSS OF SAVINGS, OR LOSS OF 
+* USE OR INTERRUPTION OF BUSINESS. IN NO EVENT WILL TI'S 
+* AGGREGATE LIABILITY UNDER THIS AGREEMENT OR ARISING OUT OF 
+* YOUR USE OF THE PROGRAM EXCEED FIVE HUNDRED DOLLARS 
+* (U.S.$500).
+*
+* Unless otherwise stated, the Program written and copyrighted 
+* by Texas Instruments is distributed as "freeware".  You may, 
+* only under TI's copyright in the Program, use and modify the 
+* Program without any charge or restriction.  You may 
+* distribute to third parties, provided that you transfer a 
+* copy of this license to the third party and the third party 
+* agrees to these terms by its first use of the Program. You 
+* must reproduce the copyright notice and any other legend of 
+* ownership on each copy or partial copy, of the Program.
+*
+* You acknowledge and agree that the Program contains 
+* copyrighted material, trade secrets and other TI proprietary 
+* information and is protected by copyright laws, 
+* international copyright treaties, and trade secret laws, as 
+* well as other intellectual property laws.  To protect TI's 
+* rights in the Program, you agree not to decompile, reverse 
+* engineer, disassemble or otherwise translate any object code 
+* versions of the Program to a human-readable form.  You agree 
+* that in no event will you alter, remove or destroy any 
+* copyright notice included in the Program.  TI reserves all 
+* rights not specifically granted under this license. Except 
+* as specifically provided herein, nothing in this agreement 
+* shall be construed as conferring by implication, estoppel, 
+* or otherwise, upon you, any license or other right under any 
+* TI patents, copyrights or trade secrets.
+*
+* You may not use the Program in non-TI devices.
+* ********************************************************* */
+
+/*
+ * Copyright (c) 2006, Intel Corporation
+ * All rights reserved.
+ * 
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * 
+ * Redistributions of source code must retain the above copyright notice, 
+ * this list of conditions and the following disclaimer. 
+ *
+ * Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution. 
+ *
+ * Neither the name of the Intel Corporation nor the names of its contributors
+ * may be used to endorse or promote products derived from this software 
+ * without specific prior written permission. 
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
+ * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
+ * POSSIBILITY OF SUCH DAMAGE.
+ *
+ * copied and edited from Texas Instruments sample code
+ *
+ * @author Steve Ayer
+ * @date May 2006
+ */
+#ifndef SD_H
+#define SD_H
+
+#define MMC_START_DATA_BLOCK_TOKEN          0xfe   // Data token start byte, Start Single Block Read
+
+#define MMC_R1_RESPONSE       0x00
+
+typedef uint8_t mmcerror_t;
+#define MMC_SUCCESS           0x00
+#define MMC_BLOCK_SET_ERROR   0x01
+#define MMC_RESPONSE_ERROR    0x02
+#define MMC_DATA_TOKEN_ERROR  0x03
+#define MMC_INIT_ERROR        0x04
+#define MMC_CRC_ERROR         0x10
+#define MMC_WRITE_ERROR       0x11
+#define MMC_OTHER_ERROR       0x12
+#define MMC_TIMEOUT_ERROR     0xFF
+
+#define MMC_GO_IDLE_STATE          0x40     //CMD0
+#define MMC_SEND_OP_COND           0x41     //CMD1
+#define MMC_READ_CSD               0x49     //CMD9
+#define MMC_SEND_CID               0x4a     //CMD10
+#define MMC_STOP_TRANSMISSION      0x4c     //CMD12
+#define MMC_SEND_STATUS            0x4d     //CMD13
+#define MMC_SET_BLOCKLEN           0x50     //CMD16 Set block length for next read/write
+#define MMC_READ_SINGLE_BLOCK      0x51     //CMD17 Read block from memory
+#define MMC_READ_MULTIPLE_BLOCK    0x52     //CMD18
+#define MMC_CMD_WRITEBLOCK         0x54     //CMD20 Write block to memory
+#define MMC_WRITE_BLOCK            0x58     //CMD24
+#define MMC_WRITE_MULTIPLE_BLOCK   0x59     //CMD25
+#define MMC_WRITE_CSD              0x5b     //CMD27 PROGRAM_CSD
+#define MMC_SET_WRITE_PROT         0x5c     //CMD28
+#define MMC_CLR_WRITE_PROT         0x5d     //CMD29
+#define MMC_SEND_WRITE_PROT        0x5e     //CMD30
+#define MMC_TAG_SECTOR_START       0x60     //CMD32
+#define MMC_TAG_SECTOR_END         0x61     //CMD33
+#define MMC_UNTAG_SECTOR           0x62     //CMD34
+#define MMC_TAG_EREASE_GROUP_START 0x63     //CMD35
+#define MMC_TAG_EREASE_GROUP_END   0x64     //CMD36
+#define MMC_UNTAG_EREASE_GROUP     0x65     //CMD37
+#define MMC_EREASE                 0x66     //CMD38
+#define MMC_READ_OCR               0x67     //CMD39
+#define MMC_CRC_ON_OFF             0x68     //CMD40
+
+
+#endif