Loading...
Searching...
No Matches
config.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2019 Freie Universität Berlin
3 * SPDX-License-Identifier: LGPL-2.1-only
4 */
5
6#pragma once
7
20
21#include "modules.h"
22#include "timex.h"
23
24#ifdef __cplusplus
25extern "C" {
26#endif
27
35#ifndef GNRC_SIXLOWPAN_STACK_SIZE
36#define GNRC_SIXLOWPAN_STACK_SIZE ((THREAD_STACKSIZE_DEFAULT) - 64)
37#endif
38
42#ifndef GNRC_SIXLOWPAN_PRIO
43#define GNRC_SIXLOWPAN_PRIO (THREAD_PRIORITY_MAIN - 4)
44#endif
45
53#ifndef CONFIG_GNRC_SIXLOWPAN_MSG_QUEUE_SIZE_EXP
54#define CONFIG_GNRC_SIXLOWPAN_MSG_QUEUE_SIZE_EXP (3U)
55#endif
56
66#ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_FB_SIZE
67#if IS_USED(MODULE_GNRC_SIXLOWPAN_FRAG_SFR)
68#define CONFIG_GNRC_SIXLOWPAN_FRAG_FB_SIZE (4U)
69#else /* defined(MODULE_GNRC_SIXLOWPAN_FRAG_SFR) */
70#define CONFIG_GNRC_SIXLOWPAN_FRAG_FB_SIZE (1U)
71#endif /* defined(MODULE_GNRC_SIXLOWPAN_FRAG_SFR) */
72#endif
73
80#ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_SIZE
81#define CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_SIZE (4U)
82#endif
83
90#ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_TIMEOUT_US
91#define CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_TIMEOUT_US (3U * US_PER_SEC)
92#endif
93
106#ifdef DOXYGEN
107#define CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_DO_NOT_OVERRIDE
108#endif
109
121#ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_DEL_TIMER
122#define CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_DEL_TIMER (0U)
123#endif
124
139#ifndef CONFIG_GNRC_SIXLOWPAN_ND_AR_LTIME
140#define CONFIG_GNRC_SIXLOWPAN_ND_AR_LTIME (15U)
141#endif
142
153#ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_SIZE
154#define CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_SIZE (16U)
155#endif /* CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_SIZE */
156
165#ifndef CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_TIMEOUT_US
166#define CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_TIMEOUT_US (CONFIG_GNRC_SIXLOWPAN_FRAG_RBUF_TIMEOUT_US)
167#endif /* CONFIG_GNRC_SIXLOWPAN_FRAG_VRB_TIMEOUT_US */
168
179#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_MIN_FRAG_SIZE
180#define CONFIG_GNRC_SIXLOWPAN_SFR_MIN_FRAG_SIZE 96U
181#endif
182
190#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_MAX_FRAG_SIZE
191#define CONFIG_GNRC_SIXLOWPAN_SFR_MAX_FRAG_SIZE 112U
192#endif
193
202#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_OPT_FRAG_SIZE
203#define CONFIG_GNRC_SIXLOWPAN_SFR_OPT_FRAG_SIZE CONFIG_GNRC_SIXLOWPAN_SFR_MAX_FRAG_SIZE
204#endif
205
213#ifdef CONFIG_GNRC_SIXLOWPAN_SFR_USE_ECN
214#if IS_USED(MODULE_GNRC_SIXLOWPAN_FRAG_SFR_CONGURE)
215#define CONFIG_GNRC_SIXLOWPAN_SFR_USE_ECN 1U
216#else
217#define CONFIG_GNRC_SIXLOWPAN_SFR_USE_ECN 0U
218#endif
219#endif
220
225#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_MIN_WIN_SIZE
226#define CONFIG_GNRC_SIXLOWPAN_SFR_MIN_WIN_SIZE 1U
227#endif
228
235#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_MAX_WIN_SIZE
236#define CONFIG_GNRC_SIXLOWPAN_SFR_MAX_WIN_SIZE 16U
237#endif
238
247#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_OPT_WIN_SIZE
248#define CONFIG_GNRC_SIXLOWPAN_SFR_OPT_WIN_SIZE 16U
249#endif
250
263#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_INTER_FRAME_GAP_US
264#define CONFIG_GNRC_SIXLOWPAN_SFR_INTER_FRAME_GAP_US 100U
265#endif
266
271#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_MIN_ARQ_TIMEOUT_MS
272#define CONFIG_GNRC_SIXLOWPAN_SFR_MIN_ARQ_TIMEOUT_MS 350U
273#endif
274
279#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_MAX_ARQ_TIMEOUT_MS
280#define CONFIG_GNRC_SIXLOWPAN_SFR_MAX_ARQ_TIMEOUT_MS 700U
281#endif
282
291#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_OPT_ARQ_TIMEOUT_MS
292#define CONFIG_GNRC_SIXLOWPAN_SFR_OPT_ARQ_TIMEOUT_MS \
293 CONFIG_GNRC_SIXLOWPAN_SFR_MAX_ARQ_TIMEOUT_MS
294#endif
295
300#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_FRAG_RETRIES
301#define CONFIG_GNRC_SIXLOWPAN_SFR_FRAG_RETRIES 2U
302#endif
303
308#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_DG_RETRIES
309#define CONFIG_GNRC_SIXLOWPAN_SFR_DG_RETRIES 0U
310#endif
311
321#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_ECN_IF_IN_NUM
322#define CONFIG_GNRC_SIXLOWPAN_SFR_ECN_IF_IN_NUM 1U
323#endif
324
334#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_ECN_IF_IN_DEN
335#define CONFIG_GNRC_SIXLOWPAN_SFR_ECN_IF_IN_DEN 2U
336#endif
337
347#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_ECN_IF_OUT_NUM
348#define CONFIG_GNRC_SIXLOWPAN_SFR_ECN_IF_OUT_NUM 1U
349#endif
350
360#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_ECN_IF_OUT_DEN
361#define CONFIG_GNRC_SIXLOWPAN_SFR_ECN_IF_OUT_DEN 2U
362#endif
363
372#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_ECN_FQUEUE_NUM
373#define CONFIG_GNRC_SIXLOWPAN_SFR_ECN_FQUEUE_NUM 1U
374#endif
375
384#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_ECN_FQUEUE_DEN
385#define CONFIG_GNRC_SIXLOWPAN_SFR_ECN_FQUEUE_DEN 2U
386#endif
387
395#ifndef CONFIG_GNRC_SIXLOWPAN_SFR_MOCK_ARQ_TIMER
396#define CONFIG_GNRC_SIXLOWPAN_SFR_MOCK_ARQ_TIMER 0U
397#endif
399
403#ifndef GNRC_SIXLOWPAN_MSG_QUEUE_SIZE
404#define GNRC_SIXLOWPAN_MSG_QUEUE_SIZE (1 << CONFIG_GNRC_SIXLOWPAN_MSG_QUEUE_SIZE_EXP)
405#endif
406
407#ifdef __cplusplus
408}
409#endif
410
Common macros and compiler attributes/pragmas configuration.
Utility library for comparing and computing timestamps.