Statistics
| Branch: | Tag: | Revision:

amiro-os / modules / LightRing_1-0 / halconf.h @ 27e4a312

History | View | Annotate | Download (16.416 KB)

1
/*
2
AMiRo-OS is an operating system designed for the Autonomous Mini Robot (AMiRo) platform.
3
Copyright (C) 2016..2018  Thomas Schöpping et al.
4

5
This program is free software: you can redistribute it and/or modify
6
it under the terms of the GNU General Public License as published by
7
the Free Software Foundation, either version 3 of the License, or
8
(at your option) any later version.
9

10
This program is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
GNU General Public License for more details.
14

15
You should have received a copy of the GNU General Public License
16
along with this program.  If not, see <http://www.gnu.org/licenses/>.
17
*/
18

    
19
/**
20
 * @file    
21
 * @brief   HAL configuration header for the LightRing v1.0 module.
22
 * @details HAL configuration file, this file allows to enable or disable the
23
 *          various device drivers from your application. You may also use
24
 *          this file in order to override the device drivers default settings.
25
 *
26
 * @addtogroup LIGHTRING_HAL_CONF
27
 * @{
28
 */
29

    
30
#ifndef _HALCONF_H_
31
#define _HALCONF_H_
32

    
33
#define _CHIBIOS_HAL_CONF_
34
#define _CHIBIOS_HAL_CONF_VER_6_0_
35

    
36
#include "mcuconf.h"
37

    
38
/**
39
 * @brief   Enables the PAL subsystem.
40
 */
41
#if !defined(HAL_USE_PAL) || defined(__DOXYGEN__)
42
#define HAL_USE_PAL                         TRUE
43
#endif
44

    
45
/**
46
 * @brief   Enables the ADC subsystem.
47
 */
48
#if !defined(HAL_USE_ADC) || defined(__DOXYGEN__)
49
#define HAL_USE_ADC                         FALSE
50
#endif
51

    
52
/**
53
 * @brief   Enables the CAN subsystem.
54
 */
55
#if !defined(HAL_USE_CAN) || defined(__DOXYGEN__)
56
#define HAL_USE_CAN                         TRUE
57
#endif
58

    
59
/**
60
 * @brief   Enables the cryptographic subsystem.
61
 */
62
#if !defined(HAL_USE_CRY) || defined(__DOXYGEN__)
63
#define HAL_USE_CRY                         FALSE
64
#endif
65

    
66
/**
67
 * @brief   Enables the DAC subsystem.
68
 */
69
#if !defined(HAL_USE_DAC) || defined(__DOXYGEN__)
70
#define HAL_USE_DAC                         FALSE
71
#endif
72

    
73
/**
74
 * @brief   Enables the EXT subsystem.
75
 */
76
#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__)
77
#define HAL_USE_EXT                         FALSE
78
#endif
79

    
80
/**
81
 * @brief   Enables the GPT subsystem.
82
 */
83
#if !defined(HAL_USE_GPT) || defined(__DOXYGEN__)
84
#define HAL_USE_GPT                         FALSE
85
#endif
86

    
87
/**
88
 * @brief   Enables the I2C subsystem.
89
 */
90
#if !defined(HAL_USE_I2C) || defined(__DOXYGEN__)
91
#define HAL_USE_I2C                         TRUE
92
#endif
93

    
94
/**
95
 * @brief   Enables the I2S subsystem.
96
 */
97
#if !defined(HAL_USE_I2S) || defined(__DOXYGEN__)
98
#define HAL_USE_I2S                         FALSE
99
#endif
100

    
101
/**
102
 * @brief   Enables the ICU subsystem.
103
 */
104
#if !defined(HAL_USE_ICU) || defined(__DOXYGEN__)
105
#define HAL_USE_ICU                         FALSE
106
#endif
107

    
108
/**
109
 * @brief   Enables the MAC subsystem.
110
 */
111
#if !defined(HAL_USE_MAC) || defined(__DOXYGEN__)
112
#define HAL_USE_MAC                         FALSE
113
#endif
114

    
115
/**
116
 * @brief   Enables the MMC_SPI subsystem.
117
 */
118
#if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__)
119
#define HAL_USE_MMC_SPI                     FALSE
120
#endif
121

    
122
/**
123
 * @brief   Enables the PWM subsystem.
124
 */
125
#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__)
126
#define HAL_USE_PWM                         FALSE
127
#endif
128

    
129
/**
130
 * @brief   Enables the QEI subsystem.
131
 */
132
#if !defined(HAL_USE_QEI) || defined(__DOXYGEN__)
133
#define HAL_USE_QEI                         FALSE
134
#endif
135

    
136
/**
137
 * @brief   Enables the QSPI subsystem.
138
 */
139
#if !defined(HAL_USE_QSPI) || defined(__DOXYGEN__)
140
#define HAL_USE_QSPI                        FALSE
141
#endif
142

    
143
/**
144
 * @brief   Enables the RTC subsystem.
145
 */
146
#if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
147
#define HAL_USE_RTC                         TRUE
148
#endif
149

    
150
/**
151
 * @brief   Enables the SDC subsystem.
152
 */
153
#if !defined(HAL_USE_SDC) || defined(__DOXYGEN__)
154
#define HAL_USE_SDC                         FALSE
155
#endif
156

    
157
/**
158
 * @brief   Enables the SERIAL subsystem.
159
 */
160
#if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__)
161
#define HAL_USE_SERIAL                      TRUE
162
#endif
163

    
164
/**
165
 * @brief   Enables the SERIAL over USB subsystem.
166
 */
167
#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
168
#define HAL_USE_SERIAL_USB                  FALSE
169
#endif
170

    
171
/**
172
 * @brief   Enables the SPI subsystem.
173
 */
174
#if !defined(HAL_USE_SPI) || defined(__DOXYGEN__)
175
#define HAL_USE_SPI                         TRUE
176
#endif
177

    
178
/**
179
 * @brief   Enables the UART subsystem.
180
 */
181
#if !defined(HAL_USE_UART) || defined(__DOXYGEN__)
182
#define HAL_USE_UART                        FALSE
183
#endif
184

    
185
/**
186
 * @brief   Enables the USB subsystem.
187
 */
188
#if !defined(HAL_USE_USB) || defined(__DOXYGEN__)
189
#define HAL_USE_USB                         FALSE
190
#endif
191

    
192
/**
193
 * @brief   Enables the WDG subsystem.
194
 */
195
#if !defined(HAL_USE_WDG) || defined(__DOXYGEN__)
196
#define HAL_USE_WDG                         FALSE
197
#endif
198

    
199
/**
200
 * @brief   Enables the QEI subsystem.
201
 */
202
#if !defined(HAL_USE_QEI) || defined(__DOXYGEN__)
203
#define HAL_USE_QEI                         FALSE
204
#endif
205

    
206
/*===========================================================================*/
207
/* PAL driver related settings.                                              */
208
/*===========================================================================*/
209

    
210
/**
211
 * @brief   Enables synchronous APIs.
212
 * @note    Disabling this option saves both code and data space.
213
 */
214
#if !defined(PAL_USE_CALLBACKS) || defined(__DOXYGEN__)
215
#define PAL_USE_CALLBACKS                   TRUE
216
#endif
217

    
218
/**
219
 * @brief   Enables synchronous APIs.
220
 * @note    Disabling this option saves both code and data space.
221
 */
222
#if !defined(PAL_USE_WAIT) || defined(__DOXYGEN__)
223
#define PAL_USE_WAIT                        FALSE
224
#endif
225

    
226
/*===========================================================================*/
227
/* ADC driver related settings.                                              */
228
/*===========================================================================*/
229

    
230
/**
231
 * @brief   Enables synchronous APIs.
232
 * @note    Disabling this option saves both code and data space.
233
 */
234
#if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__)
235
#define ADC_USE_WAIT                        FALSE
236
#endif
237

    
238
/**
239
 * @brief   Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs.
240
 * @note    Disabling this option saves both code and data space.
241
 */
242
#if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
243
#define ADC_USE_MUTUAL_EXCLUSION            FALSE
244
#endif
245

    
246
/*===========================================================================*/
247
/* CAN driver related settings.                                              */
248
/*===========================================================================*/
249

    
250
/**
251
 * @brief   Sleep mode related APIs inclusion switch.
252
 */
253
#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__)
254
#define CAN_USE_SLEEP_MODE                  FALSE
255
#endif
256

    
257
/**
258
 * @brief   Enforces the driver to use direct callbacks rather than OSAL events.
259
 */
260
#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
261
#define CAN_ENFORCE_USE_CALLBACKS           FALSE
262
#endif
263

    
264
/*===========================================================================*/
265
/* CRY driver related settings.                                              */
266
/*===========================================================================*/
267

    
268
/**
269
 * @brief   Enables the SW fall-back of the cryptographic driver.
270
 * @details When enabled, this option, activates a fall-back software
271
 *          implementation for algorithms not supported by the underlying
272
 *          hardware.
273
 * @note    Fall-back implementations may not be present for all algorithms.
274
 */
275
#if !defined(HAL_CRY_USE_FALLBACK) || defined(__DOXYGEN__)
276
#define HAL_CRY_USE_FALLBACK                FALSE
277
#endif
278

    
279
/**
280
 * @brief   Makes the driver forcibly use the fall-back implementations.
281
 */
282
#if !defined(HAL_CRY_ENFORCE_FALLBACK) || defined(__DOXYGEN__)
283
#define HAL_CRY_ENFORCE_FALLBACK            FALSE
284
#endif
285

    
286
/*===========================================================================*/
287
/* DAC driver related settings.                                              */
288
/*===========================================================================*/
289

    
290
/**
291
 * @brief   Enables synchronous APIs.
292
 * @note    Disabling this option saves both code and data space.
293
 */
294
#if !defined(DAC_USE_WAIT) || defined(__DOXYGEN__)
295
#define DAC_USE_WAIT                        TRUE
296
#endif
297

    
298
/**
299
 * @brief   Enables the @p dacAcquireBus() and @p dacReleaseBus() APIs.
300
 * @note    Disabling this option saves both code and data space.
301
 */
302
#if !defined(DAC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
303
#define DAC_USE_MUTUAL_EXCLUSION            TRUE
304
#endif
305

    
306
/*===========================================================================*/
307
/* I2C driver related settings.                                              */
308
/*===========================================================================*/
309

    
310
/**
311
 * @brief   Enables the mutual exclusion APIs on the I2C bus.
312
 */
313
#if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
314
#define I2C_USE_MUTUAL_EXCLUSION            TRUE
315
#endif
316

    
317
/*===========================================================================*/
318
/* MAC driver related settings.                                              */
319
/*===========================================================================*/
320

    
321
/**
322
 * @brief   Enables the zero-copy API.
323
 */
324
#if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__)
325
#define MAC_USE_ZERO_COPY                   FALSE
326
#endif
327

    
328
/**
329
 * @brief   Enables an event sources for incoming packets.
330
 */
331
#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__)
332
#define MAC_USE_EVENTS                      FALSE
333
#endif
334

    
335
/*===========================================================================*/
336
/* MMC_SPI driver related settings.                                          */
337
/*===========================================================================*/
338

    
339
/**
340
 * @brief   Delays insertions.
341
 * @details If enabled this options inserts delays into the MMC waiting
342
 *          routines releasing some extra CPU time for the threads with
343
 *          lower priority, this may slow down the driver a bit however.
344
 *          This option is recommended also if the SPI driver does not
345
 *          use a DMA channel and heavily loads the CPU.
346
 */
347
#if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__)
348
#define MMC_NICE_WAITING                    FALSE
349
#endif
350

    
351
/*===========================================================================*/
352
/* QSPI driver related settings.                                             */
353
/*===========================================================================*/
354

    
355
/**
356
 * @brief   Enables synchronous APIs.
357
 * @note    Disabling this option saves both code and data space.
358
 */
359
#if !defined(QSPI_USE_WAIT) || defined(__DOXYGEN__)
360
#define QSPI_USE_WAIT                       TRUE
361
#endif
362

    
363
/**
364
 * @brief   Enables the @p qspiAcquireBus() and @p qspiReleaseBus() APIs.
365
 * @note    Disabling this option saves both code and data space.
366
 */
367
#if !defined(QSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
368
#define QSPI_USE_MUTUAL_EXCLUSION           TRUE
369
#endif
370

    
371
/*===========================================================================*/
372
/* SDC driver related settings.                                              */
373
/*===========================================================================*/
374

    
375
/**
376
 * @brief   Number of initialization attempts before rejecting the card.
377
 * @note    Attempts are performed at 10mS intervals.
378
 */
379
#if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__)
380
#define SDC_INIT_RETRY                      100
381
#endif
382

    
383
/**
384
 * @brief   Include support for MMC cards.
385
 * @note    MMC support is not yet implemented so this option must be kept
386
 *          at @p FALSE.
387
 */
388
#if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__)
389
#define SDC_MMC_SUPPORT                     FALSE
390
#endif
391

    
392
/**
393
 * @brief   Delays insertions.
394
 * @details If enabled this options inserts delays into the MMC waiting
395
 *          routines releasing some extra CPU time for the threads with
396
 *          lower priority, this may slow down the driver a bit however.
397
 */
398
#if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__)
399
#define SDC_NICE_WAITING                    FALSE
400
#endif
401

    
402
/**
403
 * @brief   OCR initialization constant for V20 cards.
404
 */
405
#if !defined(SDC_INIT_OCR_V20) || defined(__DOXYGEN__)
406
#define SDC_INIT_OCR_V20                    0x50FF8000U
407
#endif
408

    
409
/**
410
 * @brief   OCR initialization constant for non-V20 cards.
411
 */
412
#if !defined(SDC_INIT_OCR) || defined(__DOXYGEN__)
413
#define SDC_INIT_OCR                        0x80100000U
414
#endif
415

    
416
/*===========================================================================*/
417
/* SERIAL driver related settings.                                           */
418
/*===========================================================================*/
419

    
420
/**
421
 * @brief   Default bit rate.
422
 * @details Configuration parameter, this is the baud rate selected for the
423
 *          default configuration.
424
 */
425
#if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__)
426
#define SERIAL_DEFAULT_BITRATE              115200
427
#endif
428

    
429
/**
430
 * @brief   Serial buffers size.
431
 * @details Configuration parameter, you can change the depth of the queue
432
 *          buffers depending on the requirements of your application.
433
 * @note    The default is 16 bytes for both the transmission and receive
434
 *          buffers.
435
 */
436
#if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__)
437
#define SERIAL_BUFFERS_SIZE                 16
438
#endif
439

    
440
/*===========================================================================*/
441
/* SERIAL_USB driver related setting.                                        */
442
/*===========================================================================*/
443

    
444
/**
445
 * @brief   Serial over USB buffers size.
446
 * @details Configuration parameter, the buffer size must be a multiple of
447
 *          the USB data endpoint maximum packet size.
448
 * @note    The default is 256 bytes for both the transmission and receive
449
 *          buffers.
450
 */
451
#if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__)
452
#define SERIAL_USB_BUFFERS_SIZE             256
453
#endif
454

    
455
/**
456
 * @brief   Serial over USB number of buffers.
457
 * @note    The default is 2 buffers.
458
 */
459
#if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__)
460
#define SERIAL_USB_BUFFERS_NUMBER           2
461
#endif
462

    
463
/*===========================================================================*/
464
/* SPI driver related settings.                                              */
465
/*===========================================================================*/
466

    
467
/**
468
 * @brief   Enables synchronous APIs.
469
 * @note    Disabling this option saves both code and data space.
470
 */
471
#if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__)
472
#define SPI_USE_WAIT                        TRUE
473
#endif
474

    
475
/**
476
 * @brief   Enables circular transfers APIs.
477
 * @note    Disabling this option saves both code and data space.
478
 */
479
#if !defined(SPI_USE_CIRCULAR) || defined(__DOXYGEN__)
480
#define SPI_USE_CIRCULAR                    FALSE
481
#endif
482

    
483

    
484
/**
485
 * @brief   Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs.
486
 * @note    Disabling this option saves both code and data space.
487
 */
488
#if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
489
#define SPI_USE_MUTUAL_EXCLUSION            TRUE
490
#endif
491

    
492
/**
493
 * @brief   Handling method for SPI CS line.
494
 * @note    Disabling this option saves both code and data space.
495
 */
496
#if !defined(SPI_SELECT_MODE) || defined(__DOXYGEN__)
497
#define SPI_SELECT_MODE                     SPI_SELECT_MODE_PAD
498
#endif
499

    
500
/*===========================================================================*/
501
/* UART driver related settings.                                             */
502
/*===========================================================================*/
503

    
504
/**
505
 * @brief   Enables synchronous APIs.
506
 * @note    Disabling this option saves both code and data space.
507
 */
508
#if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
509
#define UART_USE_WAIT                       FALSE
510
#endif
511

    
512
/**
513
 * @brief   Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
514
 * @note    Disabling this option saves both code and data space.
515
 */
516
#if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
517
#define UART_USE_MUTUAL_EXCLUSION           FALSE
518
#endif
519

    
520
/*===========================================================================*/
521
/* USB driver related settings.                                              */
522
/*===========================================================================*/
523

    
524
/**
525
 * @brief   Enables synchronous APIs.
526
 * @note    Disabling this option saves both code and data space.
527
 */
528
#if !defined(USB_USE_WAIT) || defined(__DOXYGEN__)
529
#define USB_USE_WAIT                        FALSE
530
#endif
531

    
532
#endif /* _HALCONF_H_ */
533

    
534
/** @} */