cpu_conf.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2021 Gerson Fernando Budke
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser
5  * General Public License v2.1. See the file LICENSE in the top level
6  * directory for more details.
7  */
8 
19 #ifndef CPU_CONF_H
20 #define CPU_CONF_H
21 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 
26 #define THREAD_EXTRA_STACKSIZE_PRINTF (128)
27 
36 #ifndef THREAD_STACKSIZE_DEFAULT
37 #define THREAD_STACKSIZE_DEFAULT (512)
38 #endif
39 
40 /* keep THREAD_STACKSIZE_IDLE > THREAD_EXTRA_STACKSIZE_PRINTF
41  * to avoid not printing of debug in interrupts
42  */
43 #ifndef THREAD_STACKSIZE_IDLE
44 #if MODULE_XTIMER || MODULE_ZTIMER || MODULE_ZTIMER64
45 /* For AVR no ISR stack is used, hence an IRQ will victimize the stack of
46  * whatever thread happens to be running with the IRQ kicks in. If more than
47  * trivial stuff is needed to be done in ISRs (e.g. when soft timers are used),
48  * the idle stack will overflow.
49  */
50 #define THREAD_STACKSIZE_IDLE (384)
51 #else
52 #define THREAD_STACKSIZE_IDLE (192)
53 #endif
54 #endif
60 #define HAVE_HEAP_STATS
61 
65 #define IRQ_API_INLINED (1)
66 
67 #ifndef DOXYGEN
68 #define HAS_FLASH_UTILS_ARCH 1
69 #endif
70 
71 #ifdef __cplusplus
72 }
73 #endif
74 
75 #endif /* CPU_CONF_H */