Paparazzi UAS
v5.12_stable-4-g9b43e9b
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
chconf.h
Go to the documentation of this file.
1
/*
2
ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
3
4
Licensed under the Apache License, Version 2.0 (the "License");
5
you may not use this file except in compliance with the License.
6
You may obtain a copy of the License at
7
8
http://www.apache.org/licenses/LICENSE-2.0
9
10
Unless required by applicable law or agreed to in writing, software
11
distributed under the License is distributed on an "AS IS" BASIS,
12
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
See the License for the specific language governing permissions and
14
limitations under the License.
15
*/
16
28
#ifndef CHCONF_H
29
#define CHCONF_H
30
31
#define _CHIBIOS_RT_CONF_
32
33
/*===========================================================================*/
38
/*===========================================================================*/
39
44
#define CH_CFG_ST_RESOLUTION 32
45
51
#define CH_CFG_ST_FREQUENCY 10000
52
61
#define CH_CFG_ST_TIMEDELTA 0
62
65
/*===========================================================================*/
70
/*===========================================================================*/
71
84
#define CH_CFG_TIME_QUANTUM 10
85
97
#define CH_CFG_MEMCORE_SIZE 0
98
106
#define CH_CFG_NO_IDLE_THREAD FALSE
107
110
/*===========================================================================*/
115
/*===========================================================================*/
116
125
#define CH_CFG_OPTIMIZE_SPEED TRUE
126
129
/*===========================================================================*/
134
/*===========================================================================*/
135
143
#define CH_CFG_USE_TM TRUE
144
151
#define CH_CFG_USE_REGISTRY TRUE
152
160
#define CH_CFG_USE_WAITEXIT TRUE
161
168
#define CH_CFG_USE_SEMAPHORES TRUE
169
179
#define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE
180
187
#define CH_CFG_USE_MUTEXES TRUE
188
197
#define CH_CFG_USE_MUTEXES_RECURSIVE FALSE
198
207
#define CH_CFG_USE_CONDVARS TRUE
208
217
#define CH_CFG_USE_CONDVARS_TIMEOUT TRUE
218
225
#define CH_CFG_USE_EVENTS TRUE
226
235
#define CH_CFG_USE_EVENTS_TIMEOUT TRUE
236
244
#define CH_CFG_USE_MESSAGES TRUE
245
255
#define CH_CFG_USE_MESSAGES_PRIORITY FALSE
256
265
#define CH_CFG_USE_MAILBOXES TRUE
266
273
#define CH_CFG_USE_QUEUES TRUE
274
282
#define CH_CFG_USE_MEMCORE TRUE
283
294
#define CH_CFG_USE_HEAP TRUE
295
303
#define CH_CFG_USE_MEMPOOLS TRUE
304
314
#define CH_CFG_USE_DYNAMIC TRUE
315
318
/*===========================================================================*/
323
/*===========================================================================*/
324
330
#if !defined(CH_DBG_STATISTICS)
331
#define CH_DBG_STATISTICS FALSE
332
#endif
333
341
#if !defined(CH_DBG_SYSTEM_STATE_CHECK)
342
#define CH_DBG_SYSTEM_STATE_CHECK FALSE
343
#endif
344
352
#if !defined(CH_DBG_ENABLE_CHECKS)
353
#define CH_DBG_ENABLE_CHECKS FALSE
354
#endif
355
364
#if !defined(CH_DBG_ENABLE_ASSERTS)
365
#define CH_DBG_ENABLE_ASSERTS FALSE
366
#endif
367
375
#define CH_DBG_TRACE_MASK CH_DBG_TRACE_MASK_DISABLED
376
382
#define CH_DBG_TRACE_BUFFER_SIZE 128
383
394
#if !defined(CH_DBG_ENABLE_STACK_CHECK)
395
#define CH_DBG_ENABLE_STACK_CHECK FALSE
396
#endif
397
406
#if !defined(CH_DBG_FILL_THREADS)
407
#define CH_DBG_FILL_THREADS FALSE
408
#endif
409
419
#if !defined(CH_DBG_THREADS_PROFILING)
420
#define CH_DBG_THREADS_PROFILING FALSE
421
#endif
422
425
/*===========================================================================*/
430
/*===========================================================================*/
431
436
#define CH_CFG_THREAD_EXTRA_FIELDS \
437
/* Add threads custom fields here.*/
438
446
#define CH_CFG_THREAD_INIT_HOOK(tp) { \
447
/* Add threads initialization code here.*/
\
448
}
449
458
#define CH_CFG_THREAD_EXIT_HOOK(tp) { \
459
/* Add threads finalization code here.*/
\
460
}
461
466
#define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) { \
467
/* Context switch code here.*/
\
468
}
469
473
#define CH_CFG_IRQ_PROLOGUE_HOOK() { \
474
/* IRQ prologue code here.*/
\
475
}
476
480
#define CH_CFG_IRQ_EPILOGUE_HOOK() { \
481
/* IRQ epilogue code here.*/
\
482
}
483
490
#define CH_CFG_IDLE_ENTER_HOOK() { \
491
/* Idle-enter code here.*/
\
492
}
493
500
#define CH_CFG_IDLE_LEAVE_HOOK() { \
501
/* Idle-leave code here.*/
\
502
}
503
508
#define CH_CFG_IDLE_LOOP_HOOK() { \
509
/* Idle loop code here.*/
\
510
}
511
517
#define CH_CFG_SYSTEM_TICK_HOOK() { \
518
/* System tick event code here.*/
\
519
}
520
526
#define CH_CFG_SYSTEM_HALT_HOOK(reason) { \
527
/* System halt code here.*/
\
528
}
529
535
#define CH_CFG_TRACE_HOOK(tep) { \
536
/* Trace code here.*/
\
537
}
538
541
/*===========================================================================*/
542
/* Port-specific settings (override port settings defaulted in chcore.h). */
543
/*===========================================================================*/
544
545
546
547
#ifndef CORTEX_VTOR_INIT // try to find the correct init address if not defined
548
549
#if USE_ITCM // point to correct interrupt vector when using ITCM flash on F7
550
#define CORTEX_VTOR_INIT 0x00200000U
551
552
#elif LUFTBOOT // using LUFTBOOT bootloader
553
#if defined STM32F4
554
#define CORTEX_VTOR_INIT 0x00004000U
555
#else
556
#define CORTEX_VTOR_INIT 0x00002000U
557
#endif
558
559
#else // default value
560
#define CORTEX_VTOR_INIT 0x08000000U
561
#endif
562
563
#endif // CORTEX_VTOR_INIT
564
565
// allow float for the ChibiOS print function (used with logger)
566
#define CHPRINTF_USE_FLOAT 1
567
568
#endif
/* _CHCONF_H_ */
569
sw
airborne
arch
chibios
chconf.h
Generated on Sat Feb 9 2019 06:43:43 for Paparazzi UAS by
1.8.8