aboutsummaryrefslogtreecommitdiffstats
path: root/Projects/TempDataLogger/Lib/FATFs/diskio.h
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2010-07-13 04:32:33 +0000
committerDean Camera <dean@fourwalledcubicle.com>2010-07-13 04:32:33 +0000
commitac61b81a0b20b86a4865d5e2802f704ad1075541 (patch)
treed317751beab3b669d931f9bbff83db8680e510a9 /Projects/TempDataLogger/Lib/FATFs/diskio.h
parentd3e00ce1eca6a7736f30b2e93992d0d5a6161de6 (diff)
downloadlufa-ac61b81a0b20b86a4865d5e2802f704ad1075541.tar.gz
lufa-ac61b81a0b20b86a4865d5e2802f704ad1075541.tar.bz2
lufa-ac61b81a0b20b86a4865d5e2802f704ad1075541.zip
Add first lot of AVRStudio project files for some of the library projects.
Diffstat (limited to 'Projects/TempDataLogger/Lib/FATFs/diskio.h')
-rw-r--r--Projects/TempDataLogger/Lib/FATFs/diskio.h71
1 files changed, 71 insertions, 0 deletions
diff --git a/Projects/TempDataLogger/Lib/FATFs/diskio.h b/Projects/TempDataLogger/Lib/FATFs/diskio.h
new file mode 100644
index 000000000..ad126712d
--- /dev/null
+++ b/Projects/TempDataLogger/Lib/FATFs/diskio.h
@@ -0,0 +1,71 @@
+/*-----------------------------------------------------------------------
+/ Low level disk interface modlue include file R0.07 (C)ChaN, 2010
+/-----------------------------------------------------------------------*/
+
+#ifndef _DISKIO
+
+#define _READONLY 0 /* 1: Read-only mode */
+#define _USE_IOCTL 1
+
+#include "integer.h"
+
+#include "../DataflashManager.h"
+
+
+/* Status of Disk Functions */
+typedef BYTE DSTATUS;
+
+/* Results of Disk Functions */
+typedef enum {
+ RES_OK = 0, /* 0: Successful */
+ RES_ERROR, /* 1: R/W Error */
+ RES_WRPRT, /* 2: Write Protected */
+ RES_NOTRDY, /* 3: Not Ready */
+ RES_PARERR /* 4: Invalid Parameter */
+} DRESULT;
+
+
+/*---------------------------------------*/
+/* Prototypes for disk control functions */
+
+BOOL assign_drives (int argc, char *argv[]);
+DSTATUS disk_initialize (BYTE);
+DSTATUS disk_status (BYTE);
+DRESULT disk_read (BYTE, BYTE*, DWORD, BYTE);
+#if _READONLY == 0
+DRESULT disk_write (BYTE, const BYTE*, DWORD, BYTE);
+#endif
+DRESULT disk_ioctl (BYTE, BYTE, void*);
+
+
+/* Disk Status Bits (DSTATUS) */
+
+#define STA_NOINIT 0x01 /* Drive not initialized */
+#define STA_NODISK 0x02 /* No medium in the drive */
+#define STA_PROTECT 0x04 /* Write protected */
+
+
+/* Command code for disk_ioctrl() */
+
+/* Generic command */
+#define CTRL_SYNC 0 /* Mandatory for write functions */
+#define GET_SECTOR_COUNT 1 /* Mandatory for only f_mkfs() */
+#define GET_SECTOR_SIZE 2 /* Mandatory for multiple sector size cfg */
+#define GET_BLOCK_SIZE 3 /* Mandatory for only f_mkfs() */
+#define CTRL_POWER 4
+#define CTRL_LOCK 5
+#define CTRL_EJECT 6
+/* MMC/SDC command */
+#define MMC_GET_TYPE 10
+#define MMC_GET_CSD 11
+#define MMC_GET_CID 12
+#define MMC_GET_OCR 13
+#define MMC_GET_SDSTAT 14
+/* ATA/CF command */
+#define ATA_GET_REV 20
+#define ATA_GET_MODEL 21
+#define ATA_GET_SN 22
+
+
+#define _DISKIO
+#endif