Loading...
Searching...
No Matches
conf.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2017 Freie Universität Berlin
3 * SPDX-License-Identifier: LGPL-2.1-only
4 */
5
6#pragma once
7
19
20#include "modules.h"
21
22#include "net/dhcpv6/client.h"
23#include "net/ieee802154.h"
24#include "net/ethernet/hdr.h"
26#include "thread.h"
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
35#ifndef GNRC_NETIF_PRIO
36#define GNRC_NETIF_PRIO (THREAD_PRIORITY_MAIN - 5)
37#endif
38
51#ifndef CONFIG_GNRC_NETIF_MSG_QUEUE_SIZE_EXP
52#define CONFIG_GNRC_NETIF_MSG_QUEUE_SIZE_EXP (4U)
53#endif
54
62#ifndef CONFIG_GNRC_NETIF_PKTQ_POOL_SIZE
63#define CONFIG_GNRC_NETIF_PKTQ_POOL_SIZE (16U)
64#endif
65
75#ifndef CONFIG_GNRC_NETIF_PKTQ_TIMER_US
76#define CONFIG_GNRC_NETIF_PKTQ_TIMER_US (5000U)
77#endif
78
84#ifdef MODULE_GNRC_RPL
85#define GNRC_NETIF_RPL_ADDR (1)
86#else
87#define GNRC_NETIF_RPL_ADDR (0)
88#endif
89
96#if IS_ACTIVE(CONFIG_GNRC_IPV6_NIB_ROUTER)
97#define GNRC_NETIF_IPV6_RTR_ADDR (1)
98#else
99#define GNRC_NETIF_IPV6_RTR_ADDR (0)
100#endif
101
112#ifndef CONFIG_GNRC_NETIF_IPV6_ADDRS_NUMOF
113#define CONFIG_GNRC_NETIF_IPV6_ADDRS_NUMOF (2 + \
114 DHCPV6_CLIENT_ADDRS_NUMOF)
115#endif
116
123#ifndef GNRC_NETIF_IPV6_GROUPS_NUMOF
124#define GNRC_NETIF_IPV6_GROUPS_NUMOF (CONFIG_GNRC_NETIF_IPV6_ADDRS_NUMOF + \
125 GNRC_NETIF_RPL_ADDR + \
126 GNRC_NETIF_IPV6_RTR_ADDR + 1)
127#endif
128
145#ifndef GNRC_NETIF_L2ADDR_MAXLEN
146#if defined(MODULE_NETDEV_IEEE802154) || defined(MODULE_XBEE) || defined(MODULE_SLIPDEV_L2ADDR)
147#define GNRC_NETIF_L2ADDR_MAXLEN (IEEE802154_LONG_ADDRESS_LEN)
148#elif MODULE_NETDEV_ETH
149#define GNRC_NETIF_L2ADDR_MAXLEN (ETHERNET_ADDR_LEN)
150#elif MODULE_NRF24L01P
151#define GNRC_NETIF_L2ADDR_MAXLEN (5U)
152#elif MODULE_CC110X
153#define GNRC_NETIF_L2ADDR_MAXLEN (1U)
154#else
155#define GNRC_NETIF_L2ADDR_MAXLEN (CONFIG_GNRC_IPV6_NIB_L2ADDR_MAX_LEN)
156#endif
157#endif
158
159#ifndef CONFIG_GNRC_NETIF_DEFAULT_HL
160#define CONFIG_GNRC_NETIF_DEFAULT_HL (64U)
161#endif
162
170#ifndef CONFIG_GNRC_NETIF_MIN_WAIT_AFTER_SEND_US
171#define CONFIG_GNRC_NETIF_MIN_WAIT_AFTER_SEND_US (0U)
172#endif
174
178#ifndef GNRC_NETIF_MSG_QUEUE_SIZE
179#define GNRC_NETIF_MSG_QUEUE_SIZE (1 << CONFIG_GNRC_NETIF_MSG_QUEUE_SIZE_EXP)
180#endif
181
190#ifndef CONFIG_GNRC_NETIF_NONSTANDARD_6LO_MTU
191#define CONFIG_GNRC_NETIF_NONSTANDARD_6LO_MTU 0
192#endif
193
200#if !IS_ACTIVE(CONFIG_KCONFIG_USEMODULE_GNRC_NETIF)
201#ifndef CONFIG_GNRC_NETIF_IPV6_BR_AUTO_6CTX
202#define CONFIG_GNRC_NETIF_IPV6_BR_AUTO_6CTX 1
203#endif
204#endif
205
206#ifdef __cplusplus
207}
208#endif
DHCPv6 client definitions.
Configuration macro definitions for neighbor information base.
Common macros and compiler attributes/pragmas configuration.
Ethernet header definitions.
IEEE 802.15.4 header definitions.