Toggle navigation
Documentation
The friendly Operating System for the Internet of Things
Loading...
Searching...
No Matches
cpu_conf.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2014 Freie Universität Berlin, Hinnerk van Bruinehsen
3
* 2017 RWTH Aachen, Josua Arndt
4
* 2018 Matthew Blue
5
* 2023 Hugues Larrive
6
*
7
* This file is subject to the terms and conditions of the GNU Lesser
8
* General Public License v2.1. See the file LICENSE in the top level
9
* directory for more details.
10
*/
11
27
#ifndef CPU_CONF_H
28
#define CPU_CONF_H
29
30
#include "
atmega_regs_common.h
"
31
32
#ifdef __cplusplus
33
extern
"C"
{
34
#endif
35
36
#ifndef THREAD_EXTRA_STACKSIZE_PRINTF
37
#define THREAD_EXTRA_STACKSIZE_PRINTF (64)
38
#endif
39
48
#ifndef THREAD_STACKSIZE_DEFAULT
49
#define THREAD_STACKSIZE_DEFAULT (128)
50
#endif
51
52
/* keep THREAD_STACKSIZE_IDLE > THREAD_EXTRA_STACKSIZE_PRINTF
53
* to avoid not printing of debug in interrupts
54
*/
55
#ifndef THREAD_STACKSIZE_IDLE
56
#if MODULE_XTIMER || MODULE_ZTIMER || MODULE_ZTIMER64
57
/* For AVR no ISR stack is used, hence an IRQ will victimize the stack of
58
* whatever thread happens to be running with the IRQ kicks in. If more than
59
* trivial stuff is needed to be done in ISRs (e.g. when soft timers are used),
60
* the idle stack will overflow.
61
*/
62
#define THREAD_STACKSIZE_IDLE (192)
63
#else
64
#define THREAD_STACKSIZE_IDLE (96)
65
#endif
66
#endif
72
#define PUF_SRAM_ATTRIBUTES __attribute__((used, section(".noinit")))
73
77
#define HAVE_HEAP_STATS
78
82
#define IRQ_API_INLINED (1)
83
84
#ifndef DOXYGEN
85
#define HAS_FLASH_UTILS_ARCH 1
86
#endif
87
88
#ifdef __cplusplus
89
}
90
#endif
91
92
#endif
/* CPU_CONF_H */
atmega_regs_common.h
CMSIS style register definitions for the atmega family.
Generated on Fri Nov 15 2024 22:46:35 by
1.9.8