Mercurial > templog
comparison ffconf.h @ 3:888be1b234b6
Add FatFS
author | Matt Johnston <matt@ucc.asn.au> |
---|---|
date | Tue, 08 May 2012 22:51:38 +0800 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
2:ab0e30c4b344 | 3:888be1b234b6 |
---|---|
1 /*---------------------------------------------------------------------------/ | |
2 / FatFs - FAT file system module configuration file R0.09 (C)ChaN, 2011 | |
3 /----------------------------------------------------------------------------/ | |
4 / | |
5 / CAUTION! Do not forget to make clean the project after any changes to | |
6 / the configuration options. | |
7 / | |
8 /----------------------------------------------------------------------------*/ | |
9 #ifndef _FFCONF | |
10 #define _FFCONF 6502 /* Revision ID */ | |
11 | |
12 | |
13 /*---------------------------------------------------------------------------/ | |
14 / Functions and Buffer Configurations | |
15 /----------------------------------------------------------------------------*/ | |
16 | |
17 #define _FS_TINY 1 /* 0:Normal or 1:Tiny */ | |
18 /* When _FS_TINY is set to 1, FatFs uses the sector buffer in the file system | |
19 / object instead of the sector buffer in the individual file object for file | |
20 / data transfer. This reduces memory consumption 512 bytes each file object. */ | |
21 | |
22 | |
23 #define _FS_READONLY 0 /* 0:Read/Write or 1:Read only */ | |
24 /* Setting _FS_READONLY to 1 defines read only configuration. This removes | |
25 / writing functions, f_write, f_sync, f_unlink, f_mkdir, f_chmod, f_rename, | |
26 / f_truncate and useless f_getfree. */ | |
27 | |
28 | |
29 #define _FS_MINIMIZE 2 /* 0 to 3 */ | |
30 /* The _FS_MINIMIZE option defines minimization level to remove some functions. | |
31 / | |
32 / 0: Full function. | |
33 / 1: f_stat, f_getfree, f_unlink, f_mkdir, f_chmod, f_truncate and f_rename | |
34 / are removed. | |
35 / 2: f_opendir and f_readdir are removed in addition to 1. | |
36 / 3: f_lseek is removed in addition to 2. */ | |
37 | |
38 | |
39 #define _USE_STRFUNC 0 /* 0:Disable or 1-2:Enable */ | |
40 /* To enable string functions, set _USE_STRFUNC to 1 or 2. */ | |
41 | |
42 | |
43 #define _USE_MKFS 0 /* 0:Disable or 1:Enable */ | |
44 /* To enable f_mkfs function, set _USE_MKFS to 1 and set _FS_READONLY to 0 */ | |
45 | |
46 | |
47 #define _USE_FORWARD 0 /* 0:Disable or 1:Enable */ | |
48 /* To enable f_forward function, set _USE_FORWARD to 1 and set _FS_TINY to 1. */ | |
49 | |
50 | |
51 #define _USE_FASTSEEK 0 /* 0:Disable or 1:Enable */ | |
52 /* To enable fast seek feature, set _USE_FASTSEEK to 1. */ | |
53 | |
54 | |
55 | |
56 /*---------------------------------------------------------------------------/ | |
57 / Locale and Namespace Configurations | |
58 /----------------------------------------------------------------------------*/ | |
59 | |
60 #define _CODE_PAGE 932 | |
61 /* The _CODE_PAGE specifies the OEM code page to be used on the target system. | |
62 / Incorrect setting of the code page can cause a file open failure. | |
63 / | |
64 / 932 - Japanese Shift-JIS (DBCS, OEM, Windows) | |
65 / 936 - Simplified Chinese GBK (DBCS, OEM, Windows) | |
66 / 949 - Korean (DBCS, OEM, Windows) | |
67 / 950 - Traditional Chinese Big5 (DBCS, OEM, Windows) | |
68 / 1250 - Central Europe (Windows) | |
69 / 1251 - Cyrillic (Windows) | |
70 / 1252 - Latin 1 (Windows) | |
71 / 1253 - Greek (Windows) | |
72 / 1254 - Turkish (Windows) | |
73 / 1255 - Hebrew (Windows) | |
74 / 1256 - Arabic (Windows) | |
75 / 1257 - Baltic (Windows) | |
76 / 1258 - Vietnam (OEM, Windows) | |
77 / 437 - U.S. (OEM) | |
78 / 720 - Arabic (OEM) | |
79 / 737 - Greek (OEM) | |
80 / 775 - Baltic (OEM) | |
81 / 850 - Multilingual Latin 1 (OEM) | |
82 / 858 - Multilingual Latin 1 + Euro (OEM) | |
83 / 852 - Latin 2 (OEM) | |
84 / 855 - Cyrillic (OEM) | |
85 / 866 - Russian (OEM) | |
86 / 857 - Turkish (OEM) | |
87 / 862 - Hebrew (OEM) | |
88 / 874 - Thai (OEM, Windows) | |
89 / 1 - ASCII only (Valid for non LFN cfg.) | |
90 */ | |
91 | |
92 | |
93 #define _USE_LFN 0 /* 0 to 3 */ | |
94 #define _MAX_LFN 255 /* Maximum LFN length to handle (12 to 255) */ | |
95 /* The _USE_LFN option switches the LFN support. | |
96 / | |
97 / 0: Disable LFN feature. _MAX_LFN and _LFN_UNICODE have no effect. | |
98 / 1: Enable LFN with static working buffer on the BSS. Always NOT reentrant. | |
99 / 2: Enable LFN with dynamic working buffer on the STACK. | |
100 / 3: Enable LFN with dynamic working buffer on the HEAP. | |
101 / | |
102 / The LFN working buffer occupies (_MAX_LFN + 1) * 2 bytes. To enable LFN, | |
103 / Unicode handling functions ff_convert() and ff_wtoupper() must be added | |
104 / to the project. When enable to use heap, memory control functions | |
105 / ff_memalloc() and ff_memfree() must be added to the project. */ | |
106 | |
107 | |
108 #define _LFN_UNICODE 0 /* 0:ANSI/OEM or 1:Unicode */ | |
109 /* To switch the character code set on FatFs API to Unicode, | |
110 / enable LFN feature and set _LFN_UNICODE to 1. */ | |
111 | |
112 | |
113 #define _FS_RPATH 0 /* 0 to 2 */ | |
114 /* The _FS_RPATH option configures relative path feature. | |
115 / | |
116 / 0: Disable relative path feature and remove related functions. | |
117 / 1: Enable relative path. f_chdrive() and f_chdir() are available. | |
118 / 2: f_getcwd() is available in addition to 1. | |
119 / | |
120 / Note that output of the f_readdir fnction is affected by this option. */ | |
121 | |
122 | |
123 | |
124 /*---------------------------------------------------------------------------/ | |
125 / Physical Drive Configurations | |
126 /----------------------------------------------------------------------------*/ | |
127 | |
128 #define _VOLUMES 2 | |
129 /* Number of volumes (logical drives) to be used. */ | |
130 | |
131 | |
132 #define _MAX_SS 512 /* 512, 1024, 2048 or 4096 */ | |
133 /* Maximum sector size to be handled. | |
134 / Always set 512 for memory card and hard disk but a larger value may be | |
135 / required for on-board flash memory, floppy disk and optical disk. | |
136 / When _MAX_SS is larger than 512, it configures FatFs to variable sector size | |
137 / and GET_SECTOR_SIZE command must be implememted to the disk_ioctl function. */ | |
138 | |
139 | |
140 #define _MULTI_PARTITION 0 /* 0:Single partition, 1/2:Enable multiple partition */ | |
141 /* When set to 0, each volume is bound to the same physical drive number and | |
142 / it can mount only first primaly partition. When it is set to 1, each volume | |
143 / is tied to the partitions listed in VolToPart[]. */ | |
144 | |
145 | |
146 #define _USE_ERASE 0 /* 0:Disable or 1:Enable */ | |
147 /* To enable sector erase feature, set _USE_ERASE to 1. CTRL_ERASE_SECTOR command | |
148 / should be added to the disk_ioctl functio. */ | |
149 | |
150 | |
151 | |
152 /*---------------------------------------------------------------------------/ | |
153 / System Configurations | |
154 /----------------------------------------------------------------------------*/ | |
155 | |
156 #define _WORD_ACCESS 1 /* 0 or 1 */ | |
157 /* Set 0 first and it is always compatible with all platforms. The _WORD_ACCESS | |
158 / option defines which access method is used to the word data on the FAT volume. | |
159 / | |
160 / 0: Byte-by-byte access. | |
161 / 1: Word access. Do not choose this unless following condition is met. | |
162 / | |
163 / When the byte order on the memory is big-endian or address miss-aligned word | |
164 / access results incorrect behavior, the _WORD_ACCESS must be set to 0. | |
165 / If it is not the case, the value can also be set to 1 to improve the | |
166 / performance and code size. | |
167 */ | |
168 | |
169 | |
170 /* A header file that defines sync object types on the O/S, such as | |
171 / windows.h, ucos_ii.h and semphr.h, must be included prior to ff.h. */ | |
172 | |
173 #define _FS_REENTRANT 0 /* 0:Disable or 1:Enable */ | |
174 #define _FS_TIMEOUT 1000 /* Timeout period in unit of time ticks */ | |
175 #define _SYNC_t HANDLE /* O/S dependent type of sync object. e.g. HANDLE, OS_EVENT*, ID and etc.. */ | |
176 | |
177 /* The _FS_REENTRANT option switches the reentrancy (thread safe) of the FatFs module. | |
178 / | |
179 / 0: Disable reentrancy. _SYNC_t and _FS_TIMEOUT have no effect. | |
180 / 1: Enable reentrancy. Also user provided synchronization handlers, | |
181 / ff_req_grant, ff_rel_grant, ff_del_syncobj and ff_cre_syncobj | |
182 / function must be added to the project. */ | |
183 | |
184 | |
185 #define _FS_SHARE 0 /* 0:Disable or >=1:Enable */ | |
186 /* To enable file shareing feature, set _FS_SHARE to 1 or greater. The value | |
187 defines how many files can be opened simultaneously. */ | |
188 | |
189 | |
190 #endif /* _FFCONFIG */ |