CLEON
Version 1
Cloud-Offloaded GPS Receiver
Main Page
Related Pages
Data Structures
Files
File List
Globals
diskio.h
Go to the documentation of this file.
1
/*-----------------------------------------------------------------------
2
/ Low level disk interface modlue include file (C)ChaN, 2012
3
/-----------------------------------------------------------------------*/
4
5
#ifndef _DISKIO_DEFINED
6
#define _DISKIO_DEFINED
7
8
#ifdef __cplusplus
9
extern
"C"
{
10
#endif
11
12
#define _USE_WRITE 1
/* 1: Enable disk_write function */
13
#define _USE_IOCTL 1
/* 1: Enable disk_ioctl fucntion */
14
15
#include "
integer.h
"
16
17
18
/* Status of Disk Functions */
19
typedef
BYTE
DSTATUS
;
20
21
/* Results of Disk Functions */
22
typedef
enum
{
23
RES_OK
= 0,
/* 0: Successful */
24
RES_ERROR
,
/* 1: R/W Error */
25
RES_WRPRT
,
/* 2: Write Protected */
26
RES_NOTRDY
,
/* 3: Not Ready */
27
RES_PARERR
/* 4: Invalid Parameter */
28
}
DRESULT
;
29
30
31
/*---------------------------------------*/
32
/* Prototypes for disk control functions */
33
34
35
DSTATUS
disk_initialize
(
BYTE
);
36
DSTATUS
disk_status
(
BYTE
);
37
DRESULT
disk_read
(
BYTE
,
BYTE
*,
DWORD
,
BYTE
);
38
DRESULT
disk_write
(
BYTE
,
const
BYTE
*,
DWORD
,
BYTE
);
39
DRESULT
disk_ioctl
(
BYTE
,
BYTE
,
DWORD
*);
40
41
42
/* Disk Status Bits (DSTATUS) */
43
#define STA_NOINIT 0x01
/* Drive not initialized */
44
#define STA_NODISK 0x02
/* No medium in the drive */
45
#define STA_PROTECT 0x04
/* Write protected */
46
47
48
/* Command code for disk_ioctrl fucntion */
49
50
/* Generic command (used by FatFs) */
51
#define CTRL_SYNC 0
/* Flush disk cache (for write functions) */
52
#define GET_SECTOR_COUNT 1
/* Get media size (for only f_mkfs()) */
53
#define GET_SECTOR_SIZE 2
/* Get sector size (for multiple sector size (_MAX_SS >= 1024)) */
54
#define GET_BLOCK_SIZE 3
/* Get erase block size (for only f_mkfs()) */
55
#define CTRL_ERASE_SECTOR 4
/* Force erased a block of sectors (for only _USE_ERASE) */
56
57
/* Generic command (not used by FatFs) */
58
#define CTRL_POWER 5
/* Get/Set power status */
59
#define CTRL_LOCK 6
/* Lock/Unlock media removal */
60
#define CTRL_EJECT 7
/* Eject media */
61
#define CTRL_FORMAT 8
/* Create physical format on the media */
62
63
/* MMC/SDC specific ioctl command */
64
#define MMC_GET_TYPE 10
/* Get card type */
65
#define MMC_GET_CSD 11
/* Get CSD */
66
#define MMC_GET_CID 12
/* Get CID */
67
#define MMC_GET_OCR 13
/* Get OCR */
68
#define MMC_GET_SDSTAT 14
/* Get SD status */
69
70
/* ATA/CF specific ioctl command */
71
#define ATA_GET_REV 20
/* Get F/W revision */
72
#define ATA_GET_MODEL 21
/* Get model name */
73
#define ATA_GET_SN 22
/* Get serial number */
74
75
76
/* MMC card type flags (MMC_GET_TYPE) */
77
#define CT_MMC 0x01
/* MMC ver 3 */
78
#define CT_SD1 0x02
/* SD ver 1 */
79
#define CT_SD2 0x04
/* SD ver 2 */
80
#define CT_SDC (CT_SD1|CT_SD2)
/* SD */
81
#define CT_BLOCK 0x08
/* Block addressing */
82
83
84
#ifdef __cplusplus
85
}
86
#endif
87
88
#endif
fs
FatFs
diskio.h
Generated on Tue May 28 2013 15:17:19 for CLEON by
1.8.2