ARMEBS4
revision-26.06.2015
Main Page
Modules
Data Structures
Files
File List
Globals
include
heivs
config.h
Go to the documentation of this file.
1
/************************************************************************/
/**
2
* \file heivs/config.h
3
* \brief libheivs configuration file
4
*
5
* \defgroup config_h_options Project configuration
6
* @{ \ingroup config
7
*
8
* \brief Configuration options for the current project
9
*
10
***************************************************************************/
11
#ifndef HEIVS_CHECK_CONFIG_H
12
#define HEIVS_CHECK_CONFIG_H
13
14
#define _HEIVS_CHECK_CONFIG_H
15
#include "config/config.h"
16
#undef _HEIVS_CHECK_CONFIG_H
17
18
/**
19
* \def USE_FREERTOS
20
* \brief Use the FreeRTOS real time OS.
21
*
22
* Possible values:
23
* - 0 : Don't use FreeRTOS
24
* - 1 : Use FreeRTOS
25
*
26
* FIXME : examples
27
*
28
* \see FreeRTOS site : http://www.freertos.org/
29
*/
30
#if !defined(USE_FREERTOS)
31
#define USE_FREERTOS 0
32
#endif
33
#if USE_FREERTOS != 0 && USE_FREERTOS != 1
34
#error USE_FREERTOS valid values are 0 or 1, please check your config/config.h, there is a model in "heivs/samples/config.h.txt"
35
#endif
36
37
/**
38
* \def USE_UGFX
39
* \brief Use the uGFX graphical library.
40
*
41
* Possible values:
42
* - 0 : Don't use uGFX
43
* - 1 : Use uGFX
44
*
45
* FIXME : examples
46
* \see uFGX site : http://ugfx.org
47
*/
48
#if !defined(USE_UGFX)
49
#define USE_UGFX 0
50
#endif
51
#if USE_UGFX != 0 && USE_UGFX != 1
52
#error USE_UGFX valid values are 0 or 1, please check your config/config.h, there is a model in "heivs/samples/config.h.txt"
53
#endif
54
55
/**
56
* \def USE_LWIP
57
* \brief Use the lwip TCP/IP stack.
58
*
59
* Possible values:
60
* - 0 : Don't use lwip
61
* - 1 : Use lwip
62
*
63
* FIXME : examples
64
* \see uFGX site : http://lwip.org
65
*/
66
#if !defined(USE_LWIP)
67
#define USE_LWIP 0
68
#endif
69
#if USE_LWIP != 0 && USE_LWIP != 1
70
#error USE_LWIP valid values are 0 or 1, please check your config/config.h, there is a model in "heivs/samples/config.h.txt"
71
#endif
72
73
/**
74
* \def USE_STM32_LIB_ASSERT
75
* \brief Call bsp_fatal when the stm32 library detects a problem
76
*
77
* Possible values:
78
* - 0 : Call bsp_fatal in case of problem
79
* - 1 : Do nothing
80
*/
81
#if !defined(USE_STM32_LIB_ASSERT)
82
#define USE_STM32_LIB_ASSERT 0
83
#endif
84
#if USE_STM32_LIB_ASSERT != 0 && USE_STM32_LIB_ASSERT != 1
85
#error USE_STM32_LIB_ASSERT valid values are 0 or 1, please check your config/config.h, there is a model in "heivs/samples/config.h.txt"
86
#endif
87
88
/**
89
* \def USE_BOOT_TIME_CRITICAL
90
* \brief Boot as fast as possible
91
*
92
* Possible values:
93
* - 0 : Boot slower, but debugging will be easier.
94
* - 1 : Boot as fast as possible.
95
*/
96
#if !defined(USE_BOOT_TIME_CRITICAL)
97
#define USE_BOOT_TIME_CRITICAL 0
98
#endif
99
#if USE_BOOT_TIME_CRITICAL != 0 && USE_BOOT_TIME_CRITICAL != 1
100
#error USE_BOOT_TIME_CRITICAL valid values are 0 or 1, please check your config/config.h, there is a model in "heivs/samples/config.h.txt"
101
#endif
102
103
/**
104
* \def USE_STM32_USB_USE_DEVICE_MODE
105
* \brief Use the ST USB device library
106
*
107
* Possible values:
108
* - 0 : Don't use that library
109
* - 1 : Use that library
110
*
111
* FIXME : examples + config files
112
*/
113
#if !defined(USE_STM32_USB_USE_DEVICE_MODE)
114
#define USE_STM32_USB_USE_DEVICE_MODE 0
115
#endif
116
#if USE_STM32_USB_USE_DEVICE_MODE != 0 && USE_STM32_USB_USE_DEVICE_MODE != 1
117
#error USE_STM32_USB_USE_DEVICE_MODE valid values are 0 or 1, please check your config/config.h, there is a model in "heivs/samples/config.h.txt"
118
#endif
119
120
/**
121
* \def USE_STM32_USB_HOST_MODE
122
* \brief Use the ST USB host library
123
*
124
* Possible values:
125
* - 0 : Don't use that library
126
* - 1 : Use that library
127
*
128
* FIXME : examples + config files
129
*/
130
#if !defined(USE_STM32_USB_HOST_MODE)
131
#define USE_STM32_USB_HOST_MODE 0
132
#endif
133
#if USE_STM32_USB_HOST_MODE != 0 && USE_STM32_USB_HOST_MODE != 1
134
#error USE_STM32_USB_HOST_MODE valid values are 0 or 1, please check your config/config.h, there is a model in "heivs/samples/config.h.txt"
135
#endif
136
137
/**
138
* \def USE_STM32_USB_OTG_MODE
139
* \brief Use the ST USB on the go library
140
*
141
* Possible values:
142
* - 0 : Don't use that library
143
* - 1 : Use that library
144
*
145
* FIXME : examples + config files
146
* \warning This mode is untested
147
*/
148
#if !defined(USE_STM32_USB_OTG_MODE)
149
#define USE_STM32_USB_OTG_MODE 0
150
#endif
151
#if USE_STM32_USB_OTG_MODE != 0 && USE_STM32_USB_OTG_MODE != 1
152
#error USE_STM32_USB_OTG_MODE valid values are 0 or 1, please check your config/config.h, there is a model in "heivs/samples/config.h.txt"
153
#endif
154
155
#if defined(USE_STDIO_USART) && defined(USE_SEMIHOSTING)
156
#error USE_STDIO_USART & USE_SEMIHOSTING are exclusive, please check your config/config.h, there is a model in "heivs/samples/config.h.txt"
157
#endif
158
159
/**
160
* \def USE_STDIO_USART
161
* \brief Use this usart number for stdio redirection.
162
*
163
* The speed is currently fixed at 115200.
164
*
165
* FIXME : examples
166
*/
167
#if !defined(USE_STDIO_USART) && !defined(USE_SEMIHOSTING)
168
#define USE_STDIO_USART 0
169
#endif
170
/**
171
* \def USE_SEMIHOSTING
172
* \brief Use semihosting for stdio
173
*
174
* Possible values:
175
* - 0 : Don't use that library
176
* - 1 : Use that library
177
*
178
* FIXME : examples
179
*/
180
#if !defined(USE_SEMIHOSTING)
181
#define USE_SEMIHOSTING 0
182
#endif
183
#if USE_SEMIHOSTING != 0 && USE_SEMIHOSTING != 1
184
#error USE_SEMIHOSTING valid values are 0 or 1, please check your config/config.h, there is a model in "heivs/samples/config.h.txt"
185
#endif
186
187
/**
188
* \def USE_STDIO_NOBUF
189
* \brief Disable stdio buffering
190
*
191
* Possible values:
192
* - 0 : use stdio buffers
193
* - 1 : don't use stdio buffers
194
*
195
* Defaults to 1
196
*/
197
198
#if !defined(USE_STDIO_NOBUF)
199
#define USE_STDIO_NOBUF 1
200
#endif
201
202
/**
203
* \def USE_FATAL_MALLOC_FAILED
204
* \brief Call #bsp_fatal(ERROR_OUT_OF_MEMORY) when a malloc fails
205
*
206
* \see #configUSE_MALLOC_FAILED_HOOK when USE_FREERTOS = 1
207
*
208
* Possible values:
209
* - 0 : malloc will return NULL when out of memory
210
* - 1 : malloc will call #bsp_fatal(ERROR_OUT_OF_MEMORY) when out of memory
211
*
212
* Defaults to 1
213
*/
214
215
#if !defined(USE_FATAL_MALLOC_FAILED)
216
#define USE_FATAL_MALLOC_FAILED 1
217
#endif
218
/**
219
* \def USE_STDIO_ECHO
220
* \brief Enable echo for stdio
221
*
222
* Possible values:
223
* - 1 : generate echo
224
* - 0 : don't generate echo
225
*/
226
#if !defined(USE_STDIO_ECHO)
227
#define USE_STDIO_ECHO 0
228
#endif
229
230
231
/**
232
* \def USE_STDIO_AUTO_CR_BEFORE_LF
233
* \brief Put a CR ('\r') before every LF ('\n') on stdout (and stderr)
234
*
235
* Possible values:
236
* - 0 : Don't use that workaround
237
* - 1 : Use that workaround (DEFAULT)
238
*
239
* FIXME : examples
240
*
241
* This can be used to make the terminal emulator happy.
242
*/
243
#if !defined(USE_STDIO_AUTO_CR_BEFORE_LF)
244
#define USE_STDIO_AUTO_CR_BEFORE_LF 1
245
#endif
246
#if USE_STDIO_AUTO_CR_BEFORE_LF != 0 && USE_STDIO_AUTO_CR_BEFORE_LF != 1
247
#error USE_STDIO_AUTO_CR_BEFORE_LF valid values are 0 or 1, please check your config/config.h, there is a model in "heivs/samples/config.h.txt"
248
#endif
249
250
/**
251
* \def USE_LIBJPEG
252
* \brief Use the libjpeg JPEG compression and decompression library
253
*
254
* Possible values:
255
* - 0 : Don't use that library
256
* - 1 : Use that library
257
*
258
* FIXME : examples
259
*
260
* \see The Sourceforge site for libjpeg : http://libjpeg.sourceforge.net/
261
*/
262
#if !defined(USE_LIBJPEG)
263
#define USE_LIBJPEG 0
264
#endif
265
#if USE_LIBJPEG != 0 && USE_LIBJPEG != 1
266
#error USE_LIBJPEG valid values are 0 or 1, please check your config/config.h, there is a model in "heivs/samples/config.h.txt"
267
#endif
268
269
/**
270
* \def USE_FATFS
271
* \brief Use the FatFS library by ChaN
272
*
273
* Possible values:
274
* - 0 : Don't use that library
275
* - 1 : Use that library
276
*
277
* FIXME : examples
278
*
279
* \see The website for fatfs : http://elm-chan.org/fsw/ff/00index_e.html
280
*/
281
#if !defined(USE_FATFS)
282
#define USE_FATFS 0
283
#endif
284
#if USE_FATFS != 0 && USE_FATFS != 1
285
#error USE_FATFS valid values are 0 or 1, please check your config/config.h, there is a model in "heivs/samples/config.h.txt"
286
#endif
287
288
/**
289
* \def USE_GCC_STACK_PROTECTOR
290
* \brief gcc -fstack-protector and -fstack-protector-all support
291
*
292
* \ingroup automatic_config
293
*/
294
#ifdef __GNUC__
295
#if defined (USE_GCC_STACK_PROTECTOR)
296
#error USE_GCC_STACK_PROTECTOR is an automatic define
297
#endif
298
#if (defined(__SSP_ALL__) || defined (__SSP__))
299
#define USE_GCC_STACK_PROTECTOR 1
300
#else
301
#define USE_GCC_STACK_PROTECTOR 0
302
#endif
303
#else
304
#define USE_GCC_STACK_PROTECTOR 0
305
#endif
/* __GNUC__ */
306
307
/**
308
* GCC stack protections is incompatible with FreeRTOS
309
*/
310
#if USE_GCC_STACK_PROTECTOR && USE_FREERTOS
311
#error FreeRTOS is incompatible with gcc options -fstack-protector and -fstack-protector-all
312
#endif
/* USE_FREERTOS */
313
314
/**
315
* \def USE_GPL_LICENSE
316
*
317
* \brief This project has a GPL licence, so GPL libraries are enable.
318
* \see http://www.gnu.org/licenses/gpl-2.0.html
319
*
320
* Possible values:
321
* - 0 : Project is GPL
322
* - 1 : Project is not GPL
323
*
324
*/
325
#if !defined(USE_GPL_LICENSE)
326
#define USE_GPL_LICENSE 0
327
#endif
328
329
#if USE_GPL_LICENSE != 0 && USE_GPL_LICENSE != 1
330
#error USE_GPL_LICENSE valid values are 0 or 1, please check your config/config.h, there is a model in "heivs/samples/config.h.txt"
331
#endif
332
333
/**
334
* \def USE_CYASSL
335
* \brief Use the CYASSL library (requires USE_GPL_LICENSE)
336
*
337
* Possible values:
338
* - 0 : Don't use that library
339
* - 1 : Use that library
340
*/
341
#if !defined(USE_CYASSL)
342
#define USE_CYASSL 0
343
#endif
344
#if USE_CYASSL != 0 && USE_CYASSL != 1
345
#error USE_CYASSL valid values are 0 or 1, please check your config/config.h, there is a model in "heivs/samples/config.h.txt"
346
#endif
347
#if USE_CYASSL && !USE_GPL_LICENSE
348
#error USE_CYASSL requieres USE_GPL_LICENSE
349
#endif
350
351
/************************************************************************/
/**
352
* @}
353
***************************************************************************/
354
#endif
/* HEIVS_CHECK_CONFIG_H */
Generated on Fri Jun 26 2015 13:11:50 for ARMEBS4 by
1.8.9.1