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
*
6
* This file is subject to the terms and conditions of the GNU Lesser
7
* General Public License v2.1. See the file LICENSE in the top level
8
* directory for more details.
9
*/
10
25
#ifndef CPU_CONF_H
26
#define CPU_CONF_H
27
28
#include "
atmega_regs_common.h
"
29
30
#ifdef __cplusplus
31
extern
"C"
{
32
#endif
33
34
#ifndef THREAD_EXTRA_STACKSIZE_PRINTF
35
#define THREAD_EXTRA_STACKSIZE_PRINTF (132)
36
#endif
37
46
#ifndef THREAD_STACKSIZE_DEFAULT
47
#define THREAD_STACKSIZE_DEFAULT (512)
48
#endif
49
50
/* keep THREAD_STACKSIZE_IDLE > THREAD_EXTRA_STACKSIZE_PRINTF
51
* to avoid not printing of debug in interrupts
52
*/
53
#ifndef THREAD_STACKSIZE_IDLE
54
#if MODULE_XTIMER || MODULE_ZTIMER || MODULE_ZTIMER64
55
/* For AVR no ISR stack is used, hence an IRQ will victimize the stack of
56
* whatever thread happens to be running with the IRQ kicks in. If more than
57
* trivial stuff is needed to be done in ISRs (e.g. when soft timers are used),
58
* the idle stack will overflow.
59
*/
60
#define THREAD_STACKSIZE_IDLE (192)
61
#else
62
#define THREAD_STACKSIZE_IDLE (128)
63
#endif
64
#endif
70
#define PUF_SRAM_ATTRIBUTES __attribute__((used, section(".noinit")))
71
75
#define HAVE_HEAP_STATS
76
80
#define IRQ_API_INLINED (1)
81
82
#ifndef DOXYGEN
83
#define HAS_FLASH_UTILS_ARCH 1
84
#endif
85
86
#ifdef __cplusplus
87
}
88
#endif
89
90
#endif
/* CPU_CONF_H */
atmega_regs_common.h
CMSIS style register definitions for the atmega family.
Generated on Sat Nov 23 2024 01:58:06 by
1.9.8