Subversion Repositories chibiosIgnition

Rev

Rev 6 | Rev 18 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 mjames 1
/*
2
    ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010,
3
                 2011,2012 Giovanni Di Sirio.
4
 
5
    This file is part of ChibiOS/RT.
6
 
7
    ChibiOS/RT is free software; you can redistribute it and/or modify
8
    it under the terms of the GNU General Public License as published by
9
    the Free Software Foundation; either version 3 of the License, or
10
    (at your option) any later version.
11
 
12
    ChibiOS/RT is distributed in the hope that it will be useful,
13
    but WITHOUT ANY WARRANTY; without even the implied warranty of
14
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15
    GNU General Public License for more details.
16
 
17
    You should have received a copy of the GNU General Public License
18
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
19
 
20
                                      ---
21
 
22
    A special exception to the GPL can be applied should you wish to distribute
23
    a combined work that includes ChibiOS/RT, without being obliged to provide
24
    the source code for any proprietary components. See the file exception.txt
25
    for full details of how and when the exception can be applied.
26
*/
27
 
28
/**
29
 * @file    templates/halconf.h
30
 * @brief   HAL configuration header.
31
 * @details HAL configuration file, this file allows to enable or disable the
32
 *          various device drivers from your application. You may also use
33
 *          this file in order to override the device drivers default settings.
34
 *
35
 * @addtogroup HAL_CONF
36
 * @{
37
 */
38
 
39
#ifndef _HALCONF_H_
40
#define _HALCONF_H_
41
 
42
#include "mcuconf.h"
43
 
7 mjames 44
/* Need to do this somewhere */
45
 
2 mjames 46
/**
47
 * @brief   Enables the TM subsystem.
48
 */
49
#if !defined(HAL_USE_TM) || defined(__DOXYGEN__)
50
#define HAL_USE_TM                  TRUE
51
#endif
52
 
53
/**
54
 * @brief   Enables the PAL subsystem.
55
 */
56
#if !defined(HAL_USE_PAL) || defined(__DOXYGEN__)
57
#define HAL_USE_PAL                 TRUE
58
#endif
59
 
60
/**
61
 * @brief   Enables the ADC subsystem.
62
 */
63
#if !defined(HAL_USE_ADC) || defined(__DOXYGEN__)
6 mjames 64
#define HAL_USE_ADC                 TRUE
2 mjames 65
#endif
66
 
67
/**
68
 * @brief   Enables the CAN subsystem.
69
 */
70
#if !defined(HAL_USE_CAN) || defined(__DOXYGEN__)
71
#define HAL_USE_CAN                 FALSE
72
#endif
73
 
74
/**
75
 * @brief   Enables the EXT subsystem.
76
 */
77
#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__)
78
#define HAL_USE_EXT                 FALSE
79
#endif
80
 
81
/**
82
 * @brief   Enables the GPT subsystem.
83
 */
84
#if !defined(HAL_USE_GPT) || defined(__DOXYGEN__)
85
#define HAL_USE_GPT                 FALSE
86
#endif
87
 
88
/**
89
 * @brief   Enables the I2C subsystem.
90
 */
91
#if !defined(HAL_USE_I2C) || defined(__DOXYGEN__)
92
#define HAL_USE_I2C                 FALSE
93
#endif
94
 
95
/**
96
 * @brief   Enables the ICU subsystem.
97
 */
98
#if !defined(HAL_USE_ICU) || defined(__DOXYGEN__)
99
#define HAL_USE_ICU                 FALSE
100
#endif
101
 
102
/**
103
 * @brief   Enables the MAC subsystem.
104
 */
105
#if !defined(HAL_USE_MAC) || defined(__DOXYGEN__)
106
#define HAL_USE_MAC                 FALSE
107
#endif
108
 
109
/**
110
 * @brief   Enables the MMC_SPI subsystem.
111
 */
112
#if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__)
113
#define HAL_USE_MMC_SPI            FALSE
114
#endif
115
 
116
/**
117
 * @brief   Enables the PWM subsystem.
118
 */
119
#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__)
120
#define HAL_USE_PWM                 FALSE
121
#endif
122
 
123
/**
124
 * @brief   Enables the RTC subsystem.
125
 */
126
#if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
127
#define HAL_USE_RTC                 FALSE
128
#endif
129
 
130
/**
131
 * @brief   Enables the SDC subsystem.
132
 */
133
#if !defined(HAL_USE_SDC) || defined(__DOXYGEN__)
134
#define HAL_USE_SDC                 FALSE
135
#endif
136
 
137
/**
138
 * @brief   Enables the SERIAL subsystem.
139
 */
140
#if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__)
141
#define HAL_USE_SERIAL              TRUE
142
#endif
143
 
144
/**
145
 * @brief   Enables the SERIAL over USB subsystem.
146
 */
147
#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
7 mjames 148
#define HAL_USE_SERIAL_USB          TRUE
2 mjames 149
#endif
150
 
7 mjames 151
#define HAL_USE_BULK_USB TRUE
152
 
2 mjames 153
/**
154
 * @brief   Enables the SPI subsystem.
155
 */
156
#if !defined(HAL_USE_SPI) || defined(__DOXYGEN__)
157
#define HAL_USE_SPI                 TRUE
158
#endif
159
 
160
/**
161
 * @brief   Enables the UART subsystem.
162
 */
163
#if !defined(HAL_USE_UART) || defined(__DOXYGEN__)
164
#define HAL_USE_UART                FALSE
165
#endif
166
 
167
/**
168
 * @brief   Enables the USB subsystem.
169
 */
170
#if !defined(HAL_USE_USB) || defined(__DOXYGEN__)
7 mjames 171
#define HAL_USE_USB                 TRUE
2 mjames 172
#endif
173
 
174
/*===========================================================================*/
175
/* ADC driver related settings.                                              */
176
/*===========================================================================*/
177
 
178
/**
179
 * @brief   Enables synchronous APIs.
180
 * @note    Disabling this option saves both code and data space.
181
 */
182
#if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__)
183
#define ADC_USE_WAIT                TRUE
184
#endif
185
 
186
/**
187
 * @brief   Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs.
188
 * @note    Disabling this option saves both code and data space.
189
 */
190
#if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
191
#define ADC_USE_MUTUAL_EXCLUSION    TRUE
192
#endif
193
 
194
/*===========================================================================*/
195
/* CAN driver related settings.                                              */
196
/*===========================================================================*/
197
 
198
/**
199
 * @brief   Sleep mode related APIs inclusion switch.
200
 */
201
#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__)
202
#define CAN_USE_SLEEP_MODE          TRUE
203
#endif
204
 
205
/*===========================================================================*/
206
/* I2C driver related settings.                                              */
207
/*===========================================================================*/
208
 
209
/**
210
 * @brief   Enables the mutual exclusion APIs on the I2C bus.
211
 */
212
#if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
213
#define I2C_USE_MUTUAL_EXCLUSION    TRUE
214
#endif
215
 
216
/*===========================================================================*/
217
/* MAC driver related settings.                                              */
218
/*===========================================================================*/
219
 
220
/**
221
 * @brief   Enables an event sources for incoming packets.
222
 */
223
#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__)
224
#define MAC_USE_EVENTS              TRUE
225
#endif
226
 
227
/*===========================================================================*/
228
/* MMC_SPI driver related settings.                                          */
229
/*===========================================================================*/
230
 
231
/**
232
 * @brief   Block size for MMC transfers.
233
 */
234
#if !defined(MMC_SECTOR_SIZE) || defined(__DOXYGEN__)
235
#define MMC_SECTOR_SIZE             512
236
#endif
237
 
238
/**
239
 * @brief   Delays insertions.
240
 * @details If enabled this options inserts delays into the MMC waiting
241
 *          routines releasing some extra CPU time for the threads with
242
 *          lower priority, this may slow down the driver a bit however.
243
 *          This option is recommended also if the SPI driver does not
244
 *          use a DMA channel and heavily loads the CPU.
245
 */
246
#if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__)
247
#define MMC_NICE_WAITING            TRUE
248
#endif
249
 
250
/**
251
 * @brief   Number of positive insertion queries before generating the
252
 *          insertion event.
253
 */
254
#if !defined(MMC_POLLING_INTERVAL) || defined(__DOXYGEN__)
255
#define MMC_POLLING_INTERVAL        10
256
#endif
257
 
258
/**
259
 * @brief   Interval, in milliseconds, between insertion queries.
260
 */
261
#if !defined(MMC_POLLING_DELAY) || defined(__DOXYGEN__)
262
#define MMC_POLLING_DELAY           10
263
#endif
264
 
265
/**
266
 * @brief   Uses the SPI polled API for small data transfers.
267
 * @details Polled transfers usually improve performance because it
268
 *          saves two context switches and interrupt servicing. Note
269
 *          that this option has no effect on large transfers which
270
 *          are always performed using DMAs/IRQs.
271
 */
272
#if !defined(MMC_USE_SPI_POLLING) || defined(__DOXYGEN__)
273
#define MMC_USE_SPI_POLLING         TRUE
274
#endif
275
 
276
/*===========================================================================*/
277
/* SDC driver related settings.                                              */
278
/*===========================================================================*/
279
 
280
/**
281
 * @brief   Number of initialization attempts before rejecting the card.
282
 * @note    Attempts are performed at 10mS intervals.
283
 */
284
#if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__)
285
#define SDC_INIT_RETRY              100
286
#endif
287
 
288
/**
289
 * @brief   Include support for MMC cards.
290
 * @note    MMC support is not yet implemented so this option must be kept
291
 *          at @p FALSE.
292
 */
293
#if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__)
294
#define SDC_MMC_SUPPORT             FALSE
295
#endif
296
 
297
/**
298
 * @brief   Delays insertions.
299
 * @details If enabled this options inserts delays into the MMC waiting
300
 *          routines releasing some extra CPU time for the threads with
301
 *          lower priority, this may slow down the driver a bit however.
302
 */
303
#if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__)
304
#define SDC_NICE_WAITING            TRUE
305
#endif
306
 
307
/*===========================================================================*/
308
/* SERIAL driver related settings.                                           */
309
/*===========================================================================*/
310
 
311
/**
312
 * @brief   Default bit rate.
313
 * @details Configuration parameter, this is the baud rate selected for the
314
 *          default configuration.
315
 */
316
#if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__)
317
#define SERIAL_DEFAULT_BITRATE      38400
318
#endif
319
 
320
/**
321
 * @brief   Serial buffers size.
322
 * @details Configuration parameter, you can change the depth of the queue
323
 *          buffers depending on the requirements of your application.
324
 * @note    The default is 64 bytes for both the transmission and receive
325
 *          buffers.
326
 */
327
#if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__)
328
#define SERIAL_BUFFERS_SIZE         16
329
#endif
330
 
331
/*===========================================================================*/
332
/* SPI driver related settings.                                              */
333
/*===========================================================================*/
334
 
335
/**
336
 * @brief   Enables synchronous APIs.
337
 * @note    Disabling this option saves both code and data space.
338
 */
339
#if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__)
340
#define SPI_USE_WAIT                TRUE
341
#endif
342
 
343
/**
344
 * @brief   Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs.
345
 * @note    Disabling this option saves both code and data space.
346
 */
347
#if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
348
#define SPI_USE_MUTUAL_EXCLUSION    TRUE
349
#endif
350
 
351
#endif /* _HALCONF_H_ */
352
 
353
/** @} */