cpu_conf.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: 2013 Ludwig Knüpfer <ludwig.knuepfer@fu-berlin.de>
3  * SPDX-License-Identifier: LGPL-2.1-only
4  */
5 
6 #pragma once
7 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22 
23 /* MARK: - CPU-specific default stack sizes */
31 #if !defined(THREAD_STACKSIZE_DEFAULT) || defined(DOXYGEN)
35 # if (__SIZEOF_POINTER__ == 8)
36 # define THREAD_STACKSIZE_DEFAULT (16384)
37 # else
38 # define THREAD_STACKSIZE_DEFAULT (8192)
39 # endif
40 #endif
44 #if !defined(THREAD_STACKSIZE_IDLE) || defined(DOXYGEN)
45 # define THREAD_STACKSIZE_IDLE (THREAD_STACKSIZE_DEFAULT)
46 #endif
50 #if !defined(THREAD_EXTRA_STACKSIZE_PRINTF) || defined(DOXYGEN)
51 # define THREAD_EXTRA_STACKSIZE_PRINTF (4096)
52 #endif
56 #if !defined(THREAD_EXTRA_STACKSIZE_PRINTF_FLOAT) || defined(DOXYGEN)
57 # define THREAD_EXTRA_STACKSIZE_PRINTF_FLOAT (4096)
58 #endif
59 /* for core/include/thread.h */
63 #if !defined(THREAD_STACKSIZE_MINIMUM) || defined(DOXYGEN)
64 # define THREAD_STACKSIZE_MINIMUM (THREAD_STACKSIZE_DEFAULT)
65 #endif
66 /* native internal */
70 #if !defined(ISR_STACKSIZE) || defined(DOXYGEN)
71 # define ISR_STACKSIZE (THREAD_STACKSIZE_DEFAULT)
72 #endif
75 /* MARK: - Networking constants */
83 #define NATIVE_ETH_PROTO 0x1234
84 
85 #if (defined(CONFIG_GNRC_PKTBUF_SIZE)) && (CONFIG_GNRC_PKTBUF_SIZE < 2048)
86 # undef CONFIG_GNRC_PKTBUF_SIZE
87 # define CONFIG_GNRC_PKTBUF_SIZE (2048)
88 #endif
91 /* MARK: - Native flash emulation */
100 #if !defined(FLASHPAGE_SIZE) || defined(DOXYGEN)
101 # define FLASHPAGE_SIZE (512)
102 #endif
103 
107 #if !defined(FLASHPAGE_NUMOF) || defined(DOXYGEN)
108 # define FLASHPAGE_NUMOF (32)
109 #endif
110 
116 #if !defined(FLASHPAGE_WRITE_BLOCK_ALIGNMENT) || defined(DOXYGEN)
117 # define FLASHPAGE_WRITE_BLOCK_ALIGNMENT (8)
118 #endif
126 #if !defined(FLASHPAGE_WRITE_BLOCK_SIZE) || defined(DOXYGEN)
127 # define FLASHPAGE_WRITE_BLOCK_SIZE (16)
128 #endif
129 
135 #if !defined(FLASHPAGE_ERASE_STATE) || defined(DOXYGEN)
136 # define FLASHPAGE_ERASE_STATE (0x0)
137 #endif
138 
143 
147 #define CPU_FLASH_BASE ((uintptr_t)_native_flash)
150 #ifdef __cplusplus
151 }
152 #endif
153 
char _native_flash[FLASHPAGE_SIZE *FLASHPAGE_NUMOF]
Emulated flash buffer.
#define FLASHPAGE_NUMOF
Total number of emulated flash pages.
Definition: cpu_conf.h:108
#define FLASHPAGE_SIZE
Size of a single emulated flash page.
Definition: cpu_conf.h:101