Paparazzi UAS
v5.10_stable-5-g83a0da5-dirty
Paparazzi is a free software Unmanned Aircraft System.
Main Page
Related Pages
Modules
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Modules
Pages
ffconf.h
Go to the documentation of this file.
1
/* CHIBIOS FIX */
2
#include "ch.h"
3
4
/*---------------------------------------------------------------------------/
5
/ FatFs - FAT file system module configuration file R0.10b (C)ChaN, 2014
6
/---------------------------------------------------------------------------*/
7
8
#ifndef _FFCONF
9
#define _FFCONF 8051
/* Revision ID */
10
11
12
/*---------------------------------------------------------------------------/
13
/ Functions and Buffer Configurations
14
/---------------------------------------------------------------------------*/
15
16
#define _FS_TINY 0
/* 0:Normal or 1:Tiny */
17
/* When _FS_TINY is set to 1, it reduces memory consumption _MAX_SS bytes each
18
/ file object. For file data transfer, FatFs uses the common sector buffer in
19
/ the file system object (FATFS) instead of private sector buffer eliminated
20
/ from the file object (FIL). */
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(),
26
/ f_rename(), f_truncate() and useless f_getfree(). */
27
28
29
#define _FS_MINIMIZE 0
/* 0 to 3 */
30
/* The _FS_MINIMIZE option defines minimization level to remove API functions.
31
/
32
/ 0: All basic functions are enabled.
33
/ 1: f_stat(), f_getfree(), f_unlink(), f_mkdir(), f_chmod(), f_utime(),
34
/ f_truncate() and f_rename() function are removed.
35
/ 2: f_opendir(), f_readdir() and f_closedir() are removed in addition to 1.
36
/ 3: f_lseek() function is removed in addition to 2. */
37
38
39
#define _USE_STRFUNC 2
/* 0:Disable or 1-2:Enable */
40
/* To enable string functions, set _USE_STRFUNC to 1 or 2. */
41
42
43
#define _USE_MKFS 1
/* 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_FASTSEEK 0
/* 0:Disable or 1:Enable */
48
/* To enable fast seek feature, set _USE_FASTSEEK to 1. */
49
50
51
#define _USE_LABEL 0
/* 0:Disable or 1:Enable */
52
/* To enable volume label functions, set _USE_LAVEL to 1 */
53
54
55
#define _USE_FORWARD 0
/* 0:Disable or 1:Enable */
56
/* To enable f_forward() function, set _USE_FORWARD to 1 and set _FS_TINY to 1. */
57
58
59
/*---------------------------------------------------------------------------/
60
/ Locale and Namespace Configurations
61
/---------------------------------------------------------------------------*/
62
63
#define _CODE_PAGE 1252
64
/* The _CODE_PAGE specifies the OEM code page to be used on the target system.
65
/ Incorrect setting of the code page can cause a file open failure.
66
/
67
/ 932 - Japanese Shift_JIS (DBCS, OEM, Windows)
68
/ 936 - Simplified Chinese GBK (DBCS, OEM, Windows)
69
/ 949 - Korean (DBCS, OEM, Windows)
70
/ 950 - Traditional Chinese Big5 (DBCS, OEM, Windows)
71
/ 1250 - Central Europe (Windows)
72
/ 1251 - Cyrillic (Windows)
73
/ 1252 - Latin 1 (Windows)
74
/ 1253 - Greek (Windows)
75
/ 1254 - Turkish (Windows)
76
/ 1255 - Hebrew (Windows)
77
/ 1256 - Arabic (Windows)
78
/ 1257 - Baltic (Windows)
79
/ 1258 - Vietnam (OEM, Windows)
80
/ 437 - U.S. (OEM)
81
/ 720 - Arabic (OEM)
82
/ 737 - Greek (OEM)
83
/ 775 - Baltic (OEM)
84
/ 850 - Multilingual Latin 1 (OEM)
85
/ 858 - Multilingual Latin 1 + Euro (OEM)
86
/ 852 - Latin 2 (OEM)
87
/ 855 - Cyrillic (OEM)
88
/ 866 - Russian (OEM)
89
/ 857 - Turkish (OEM)
90
/ 862 - Hebrew (OEM)
91
/ 874 - Thai (OEM, Windows)
92
/ 1 - ASCII (Valid for only non-LFN configuration) */
93
94
95
#define _USE_LFN 2
/* 0 to 3 */
96
#define _MAX_LFN 255
/* Maximum LFN length to handle (12 to 255) */
97
/* The _USE_LFN option switches the LFN feature.
98
/
99
/ 0: Disable LFN feature. _MAX_LFN has no effect.
100
/ 1: Enable LFN with static working buffer on the BSS. Always NOT thread-safe.
101
/ 2: Enable LFN with dynamic working buffer on the STACK.
102
/ 3: Enable LFN with dynamic working buffer on the HEAP.
103
/
104
/ When enable LFN feature, Unicode handling functions ff_convert() and ff_wtoupper()
105
/ function must be added to the project.
106
/ The LFN working buffer occupies (_MAX_LFN + 1) * 2 bytes. When use stack for the
107
/ working buffer, take care on stack overflow. When use heap memory for the working
108
/ buffer, memory management functions, ff_memalloc() and ff_memfree(), must be added
109
/ to the project. */
110
111
112
#define _LFN_UNICODE 0
/* 0:ANSI/OEM or 1:Unicode */
113
/* To switch the character encoding on the FatFs API (TCHAR) to Unicode, enable LFN
114
/ feature and set _LFN_UNICODE to 1. This option affects behavior of string I/O
115
/ functions. This option must be 0 when LFN feature is not enabled. */
116
117
118
#define _STRF_ENCODE 3
/* 0:ANSI/OEM, 1:UTF-16LE, 2:UTF-16BE, 3:UTF-8 */
119
/* When Unicode API is enabled by _LFN_UNICODE option, this option selects the character
120
/ encoding on the file to be read/written via string I/O functions, f_gets(), f_putc(),
121
/ f_puts and f_printf(). This option has no effect when Unicode API is not enabled. */
122
123
124
#define _FS_RPATH 2
/* 0 to 2 */
125
/* The _FS_RPATH option configures relative path feature.
126
/
127
/ 0: Disable relative path feature and remove related functions.
128
/ 1: Enable relative path. f_chdrive() and f_chdir() function are available.
129
/ 2: f_getcwd() function is available in addition to 1.
130
/
131
/ Note that output of the f_readdir() fnction is affected by this option. */
132
133
134
/*---------------------------------------------------------------------------/
135
/ Drive/Volume Configurations
136
/---------------------------------------------------------------------------*/
137
138
#define _VOLUMES 1
139
/* Number of volumes (logical drives) to be used. */
140
141
142
#define _STR_VOLUME_ID 0
/* 0:Use only 0-9 for drive ID, 1:Use strings for drive ID */
143
#define _VOLUME_STRS "RAM","NAND","CF","SD1","SD2","USB1","USB2","USB3"
144
/* When _STR_VOLUME_ID is set to 1, also pre-defined strings can be used as drive
145
/ number in the path name. _VOLUME_STRS defines the drive ID strings for each logical
146
/ drives. Number of items must be equal to _VOLUMES. Valid characters for the drive ID
147
/ strings are: 0-9 and A-Z. */
148
149
150
#define _MULTI_PARTITION 0
/* 0:Single partition, 1:Enable multiple partition */
151
/* By default(0), each logical drive number is bound to the same physical drive number
152
/ and only a FAT volume found on the physical drive is mounted. When it is set to 1,
153
/ each logical drive number is bound to arbitrary drive/partition listed in VolToPart[].
154
*/
155
156
157
#define _MIN_SS 512
158
#define _MAX_SS 512
159
/* These options configure the range of sector size to be supported. (512, 1024, 2048 or
160
/ 4096) Always set both 512 for most systems, all memory card and harddisk. But a larger
161
/ value may be required for on-board flash memory and some type of optical media.
162
/ When _MAX_SS is larger than _MIN_SS, FatFs is configured to variable sector size and
163
/ GET_SECTOR_SIZE command must be implemented to the disk_ioctl() function. */
164
165
166
#define _USE_ERASE 1
/* 0:Disable or 1:Enable */
167
/* To enable sector erase feature, set _USE_ERASE to 1. Also CTRL_ERASE_SECTOR command
168
/ should be added to the disk_ioctl() function. */
169
170
171
#define _FS_NOFSINFO 0
/* 0 to 3 */
172
/* If you need to know correct free space on the FAT32 volume, set bit 0 of this option
173
/ and f_getfree() function at first time after volume mount will force a full FAT scan.
174
/ Bit 1 controls the last allocated cluster number as bit 0.
175
/
176
/ bit0=0: Use free cluster count in the FSINFO if available.
177
/ bit0=1: Do not trust free cluster count in the FSINFO.
178
/ bit1=0: Use last allocated cluster number in the FSINFO if available.
179
/ bit1=1: Do not trust last allocated cluster number in the FSINFO.
180
*/
181
182
183
184
/*---------------------------------------------------------------------------/
185
/ System Configurations
186
/---------------------------------------------------------------------------*/
187
188
#define _FS_REENTRANT 1
/* 0:Disable or 1:Enable */
189
#define _FS_TIMEOUT MS2ST(1000)
/* Timeout period in unit of time tick */
190
#define _SYNC_t semaphore_t*
/* O/S dependent sync object type. e.g. HANDLE, OS_EVENT*, ID, SemaphoreHandle_t and etc.. */
191
/* The _FS_REENTRANT option switches the re-entrancy (thread safe) of the FatFs module.
192
/
193
/ 0: Disable re-entrancy. _FS_TIMEOUT and _SYNC_t have no effect.
194
/ 1: Enable re-entrancy. Also user provided synchronization handlers,
195
/ ff_req_grant(), ff_rel_grant(), ff_del_syncobj() and ff_cre_syncobj()
196
/ function must be added to the project.
197
*/
198
199
200
#define _WORD_ACCESS 1
/* 0 or 1 */
201
/* The _WORD_ACCESS option is an only platform dependent option. It defines
202
/ which access method is used to the word data on the FAT volume.
203
/
204
/ 0: Byte-by-byte access. Always compatible with all platforms.
205
/ 1: Word access. Do not choose this unless under both the following conditions.
206
/
207
/ * Address misaligned memory access is always allowed for ALL instructions.
208
/ * Byte order on the memory is little-endian.
209
/
210
/ If it is the case, _WORD_ACCESS can also be set to 1 to improve performance and
211
/ reduce code size. Following table shows an example of some processor types.
212
/
213
/ ARM7TDMI 0 ColdFire 0 V850E2 0
214
/ Cortex-M3 0 Z80 0/1 V850ES 0/1
215
/ Cortex-M0 0 RX600(LE) 0/1 TLCS-870 0/1
216
/ AVR 0/1 RX600(BE) 0 TLCS-900 0/1
217
/ AVR32 0 RL78 0 R32C 0
218
/ PIC18 0/1 SH-2 0 M16C 0/1
219
/ PIC24 0 H8S 0 MSP430 0
220
/ PIC32 0 H8/300H 0 x86 0/1
221
*/
222
223
224
225
226
#define _FS_LOCK 0
/* 0:Disable or >=1:Enable */
227
/* To enable file lock control feature, set _FS_LOCK to non-zero value.
228
/ The value defines how many files/sub-directories can be opened simultaneously
229
/ with file lock control. This feature uses bss _FS_LOCK * 12 bytes.
230
/
231
/ IMPORTANT NOTE:
232
/ For Paparazzi, we don't need file locking since all file are written sequentially
233
/ from one thread (thdSdLog)
234
/
235
*/
236
237
238
239
#endif
/* _FFCONF */
sw
airborne
boards
apogee
chibios
v1.0
ffconf.h
Generated on Wed Aug 28 2019 16:28:55 for Paparazzi UAS by
1.8.8