config.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2019 Freie Universität Berlin
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 
21 #ifndef NET_GNRC_SIXLOWPAN_CONFIG_H
22 #define NET_GNRC_SIXLOWPAN_CONFIG_H
23 
24 #include "kernel_defines.h"
25 #include "timex.h"
26 
27 #ifdef __cplusplus
28 extern "C" {
29 #endif
30 
34 #ifndef GNRC_SIXLOWPAN_STACK_SIZE
35 #define GNRC_SIXLOWPAN_STACK_SIZE (THREAD_STACKSIZE_DEFAULT)
36 #endif
37 
41 #ifndef GNRC_SIXLOWPAN_PRIO
42 #define GNRC_SIXLOWPAN_PRIO (THREAD_PRIORITY_MAIN - 4)
43 #endif
44 
52 #ifndef CONFIG_GNRC_SIXLOWPAN_MSG_QUEUE_SIZE_EXP
53 #define CONFIG_GNRC_SIXLOWPAN_MSG_QUEUE_SIZE_EXP (3U)
54 #endif
55 
65 #ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_FB_SIZE
66 #define CONFIG_GNRC_SIXLOWPAN_FRAG_FB_SIZE (1U)
67 #endif
68 
75 #ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_SIZE
76 #define CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_SIZE (4U)
77 #endif
78 
85 #ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_TIMEOUT_US
86 #define CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_TIMEOUT_US (3U * US_PER_SEC)
87 #endif
88 
101 #ifdef DOXYGEN
102 #define CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_DO_NOT_OVERRIDE
103 #endif
104 
116 #ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_DEL_TIMER
117 #define CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_DEL_TIMER (0U)
118 #endif
119 
134 #ifndef CONFIG_GNRC_SIXLOWPAN_ND_AR_LTIME
135 #define CONFIG_GNRC_SIXLOWPAN_ND_AR_LTIME (15U)
136 #endif
137 
148 #ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_SIZE
149 #define CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_SIZE (16U)
150 #endif /* CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_SIZE */
151 
160 #ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_TIMEOUT_US
161 #define CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_TIMEOUT_US (CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_TIMEOUT_US)
162 #endif /* CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_TIMEOUT_US */
163 
174 #ifndef GNRC_SIXLOWPAN_SFR_MIN_FRAG_SIZE
175 #define GNRC_SIXLOWPAN_SFR_MIN_FRAG_SIZE (96U)
176 #endif
177 
185 #ifndef GNRC_SIXLOWPAN_SFR_MAX_FRAG_SIZE
186 #define GNRC_SIXLOWPAN_SFR_MAX_FRAG_SIZE (112U)
187 #endif
188 
193 #ifndef GNRC_SIXLOWPAN_SFR_OPT_FRAG_SIZE
194 #define GNRC_SIXLOWPAN_SFR_OPT_FRAG_SIZE (GNRC_SIXLOWPAN_SFR_MAX_FRAG_SIZE)
195 #endif
196 
203 #define GNRC_SIXLOWPAN_SFR_USE_ECN (0U)
204 
209 #ifndef GNRC_SIXLOWPAN_SFR_MIN_WIN_SIZE
210 #define GNRC_SIXLOWPAN_SFR_MIN_WIN_SIZE (1U)
211 #endif
212 
219 #ifndef GNRC_SIXLOWPAN_SFR_MAX_WIN_SIZE
220 #define GNRC_SIXLOWPAN_SFR_MAX_WIN_SIZE (16U)
221 #endif
222 
227 #ifndef GNRC_SIXLOWPAN_SFR_OPT_WIN_SIZE
228 #define GNRC_SIXLOWPAN_SFR_OPT_WIN_SIZE (16U)
229 #endif
230 
243 #ifndef GNRC_SIXLOWPAN_SFR_INTER_FRAME_GAP_US
244 #define GNRC_SIXLOWPAN_SFR_INTER_FRAME_GAP_US (100U)
245 #endif
246 
252 #ifndef GNRC_SIXLOWPAN_SFR_MIN_ARQ_TIMEOUT_MS
253 #define GNRC_SIXLOWPAN_SFR_MIN_ARQ_TIMEOUT_MS (350U)
254 #endif
255 
261 #ifndef GNRC_SIXLOWPAN_SFR_MAX_ARQ_TIMEOUT_MS
262 #define GNRC_SIXLOWPAN_SFR_MAX_ARQ_TIMEOUT_MS (700U)
263 #endif
264 
270 #ifndef GNRC_SIXLOWPAN_SFR_OPT_ARQ_TIMEOUT_MS
271 #define GNRC_SIXLOWPAN_SFR_OPT_ARQ_TIMEOUT_MS (GNRC_SIXLOWPAN_SFR_MAX_ARQ_TIMEOUT_MS)
272 #endif
273 
278 #ifndef GNRC_SIXLOWPAN_SFR_FRAG_RETRIES
279 #define GNRC_SIXLOWPAN_SFR_FRAG_RETRIES (2U)
280 #endif
281 
286 #ifndef GNRC_SIXLOWPAN_SFR_DG_RETRIES
287 #define GNRC_SIXLOWPAN_SFR_DG_RETRIES (0U)
288 #endif
289 
294 #ifndef GNRC_SIXLOWPAN_MSG_QUEUE_SIZE
295 #define GNRC_SIXLOWPAN_MSG_QUEUE_SIZE (1 << CONFIG_GNRC_SIXLOWPAN_MSG_QUEUE_SIZE_EXP)
296 #endif
297 
298 #ifdef __cplusplus
299 }
300 #endif
301 
302 #endif /* NET_GNRC_SIXLOWPAN_CONFIG_H */
303 
kernel_defines.h
Common macros and compiler attributes/pragmas configuration.
timex.h
Utility library for comparing and computing timestamps.