Loading...
Searching...
No Matches
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 "modules.h"
25#include "timex.h"
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
38#ifndef GNRC_SIXLOWPAN_STACK_SIZE
39#define GNRC_SIXLOWPAN_STACK_SIZE ((THREAD_STACKSIZE_DEFAULT) - 64)
40#endif
41
45#ifndef GNRC_SIXLOWPAN_PRIO
46#define GNRC_SIXLOWPAN_PRIO (THREAD_PRIORITY_MAIN - 4)
47#endif
48
56#ifndef CONFIG_GNRC_SIXLOWPAN_MSG_QUEUE_SIZE_EXP
57#define CONFIG_GNRC_SIXLOWPAN_MSG_QUEUE_SIZE_EXP (3U)
58#endif
59
69#ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_FB_SIZE
70#if IS_USED(MODULE_GNRC_SIXLOWPAN_FRAG_SFR)
71#define CONFIG_GNRC_SIXLOWPAN_FRAG_FB_SIZE (4U)
72#else /* defined(MODULE_GNRC_SIXLOWPAN_FRAG_SFR) */
73#define CONFIG_GNRC_SIXLOWPAN_FRAG_FB_SIZE (1U)
74#endif /* defined(MODULE_GNRC_SIXLOWPAN_FRAG_SFR) */
75#endif
76
83#ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_SIZE
84#define CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_SIZE (4U)
85#endif
86
93#ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_TIMEOUT_US
94#define CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_TIMEOUT_US (3U * US_PER_SEC)
95#endif
96
109#ifdef DOXYGEN
110#define CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_DO_NOT_OVERRIDE
111#endif
112
124#ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_DEL_TIMER
125#define CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_DEL_TIMER (0U)
126#endif
127
142#ifndef CONFIG_GNRC_SIXLOWPAN_ND_AR_LTIME
143#define CONFIG_GNRC_SIXLOWPAN_ND_AR_LTIME (15U)
144#endif
145
156#ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_SIZE
157#define CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_SIZE (16U)
158#endif /* CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_SIZE */
159
168#ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_TIMEOUT_US
169#define CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_TIMEOUT_US (CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_TIMEOUT_US)
170#endif /* CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_TIMEOUT_US */
171
182#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_MIN_FRAG_SIZE
183#define CONFIG_GNRC_SIXLOWPAN_SFR_MIN_FRAG_SIZE 96U
184#endif
185
193#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_MAX_FRAG_SIZE
194#define CONFIG_GNRC_SIXLOWPAN_SFR_MAX_FRAG_SIZE 112U
195#endif
196
205#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_OPT_FRAG_SIZE
206#define CONFIG_GNRC_SIXLOWPAN_SFR_OPT_FRAG_SIZE CONFIG_GNRC_SIXLOWPAN_SFR_MAX_FRAG_SIZE
207#endif
208
216#ifdef CONFIG_GNRC_SIXLOWPAN_SFR_USE_ECN
217#if IS_USED(MODULE_GNRC_SIXLOWPAN_FRAG_SFR_CONGURE)
218#define CONFIG_GNRC_SIXLOWPAN_SFR_USE_ECN 1U
219#else
220#define CONFIG_GNRC_SIXLOWPAN_SFR_USE_ECN 0U
221#endif
222#endif
223
228#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_MIN_WIN_SIZE
229#define CONFIG_GNRC_SIXLOWPAN_SFR_MIN_WIN_SIZE 1U
230#endif
231
238#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_MAX_WIN_SIZE
239#define CONFIG_GNRC_SIXLOWPAN_SFR_MAX_WIN_SIZE 16U
240#endif
241
250#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_OPT_WIN_SIZE
251#define CONFIG_GNRC_SIXLOWPAN_SFR_OPT_WIN_SIZE 16U
252#endif
253
266#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_INTER_FRAME_GAP_US
267#define CONFIG_GNRC_SIXLOWPAN_SFR_INTER_FRAME_GAP_US 100U
268#endif
269
274#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_MIN_ARQ_TIMEOUT_MS
275#define CONFIG_GNRC_SIXLOWPAN_SFR_MIN_ARQ_TIMEOUT_MS 350U
276#endif
277
282#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_MAX_ARQ_TIMEOUT_MS
283#define CONFIG_GNRC_SIXLOWPAN_SFR_MAX_ARQ_TIMEOUT_MS 700U
284#endif
285
294#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_OPT_ARQ_TIMEOUT_MS
295#define CONFIG_GNRC_SIXLOWPAN_SFR_OPT_ARQ_TIMEOUT_MS \
296 CONFIG_GNRC_SIXLOWPAN_SFR_MAX_ARQ_TIMEOUT_MS
297#endif
298
303#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_FRAG_RETRIES
304#define CONFIG_GNRC_SIXLOWPAN_SFR_FRAG_RETRIES 2U
305#endif
306
311#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_DG_RETRIES
312#define CONFIG_GNRC_SIXLOWPAN_SFR_DG_RETRIES 0U
313#endif
314
324#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_ECN_IF_IN_NUM
325#define CONFIG_GNRC_SIXLOWPAN_SFR_ECN_IF_IN_NUM 1U
326#endif
327
337#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_ECN_IF_IN_DEN
338#define CONFIG_GNRC_SIXLOWPAN_SFR_ECN_IF_IN_DEN 2U
339#endif
340
350#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_ECN_IF_OUT_NUM
351#define CONFIG_GNRC_SIXLOWPAN_SFR_ECN_IF_OUT_NUM 1U
352#endif
353
363#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_ECN_IF_OUT_DEN
364#define CONFIG_GNRC_SIXLOWPAN_SFR_ECN_IF_OUT_DEN 2U
365#endif
366
375#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_ECN_FQUEUE_NUM
376#define CONFIG_GNRC_SIXLOWPAN_SFR_ECN_FQUEUE_NUM 1U
377#endif
378
387#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_ECN_FQUEUE_DEN
388#define CONFIG_GNRC_SIXLOWPAN_SFR_ECN_FQUEUE_DEN 2U
389#endif
390
398#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_MOCK_ARQ_TIMER
399#define CONFIG_GNRC_SIXLOWPAN_SFR_MOCK_ARQ_TIMER 0U
400#endif
406#ifndef GNRC_SIXLOWPAN_MSG_QUEUE_SIZE
407#define GNRC_SIXLOWPAN_MSG_QUEUE_SIZE (1 << CONFIG_GNRC_SIXLOWPAN_MSG_QUEUE_SIZE_EXP)
408#endif
409
410#ifdef __cplusplus
411}
412#endif
413
414#endif /* NET_GNRC_SIXLOWPAN_CONFIG_H */
Common macros and compiler attributes/pragmas configuration.
Utility library for comparing and computing timestamps.