conf.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2017 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 
20 #ifndef NET_GNRC_NETIF_CONF_H
21 #define NET_GNRC_NETIF_CONF_H
22 
23 #include <kernel_defines.h>
24 
25 #include "net/ieee802154.h"
26 #include "net/ethernet/hdr.h"
27 #include "net/gnrc/ipv6/nib/conf.h"
28 #include "thread.h"
29 
30 #ifdef __cplusplus
31 extern "C" {
32 #endif
33 
37 #ifndef GNRC_NETIF_PRIO
38 #define GNRC_NETIF_PRIO (THREAD_PRIORITY_MAIN - 5)
39 #endif
40 
53 #ifndef CONFIG_GNRC_NETIF_MSG_QUEUE_SIZE_EXP
54 #define CONFIG_GNRC_NETIF_MSG_QUEUE_SIZE_EXP (4U)
55 #endif
56 
64 #ifndef CONFIG_GNRC_NETIF_PKTQ_POOL_SIZE
65 #define CONFIG_GNRC_NETIF_PKTQ_POOL_SIZE (16U)
66 #endif
67 
77 #ifndef CONFIG_GNRC_NETIF_PKTQ_TIMER_US
78 #define CONFIG_GNRC_NETIF_PKTQ_TIMER_US (5000U)
79 #endif
80 
86 #ifdef MODULE_GNRC_RPL
87 #define GNRC_NETIF_RPL_ADDR (1)
88 #else
89 #define GNRC_NETIF_RPL_ADDR (0)
90 #endif
91 
98 #if IS_ACTIVE(CONFIG_GNRC_IPV6_NIB_ROUTER)
99 #define GNRC_NETIF_IPV6_RTR_ADDR (1)
100 #else
101 #define GNRC_NETIF_IPV6_RTR_ADDR (0)
102 #endif
103 
113 #ifndef CONFIG_GNRC_NETIF_IPV6_ADDRS_NUMOF
114 #define CONFIG_GNRC_NETIF_IPV6_ADDRS_NUMOF (2)
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)
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_CC110X
151 #define GNRC_NETIF_L2ADDR_MAXLEN (1U)
152 #else
153 #define GNRC_NETIF_L2ADDR_MAXLEN (CONFIG_GNRC_IPV6_NIB_L2ADDR_MAX_LEN)
154 #endif
155 #endif
156 
157 #ifndef CONFIG_GNRC_NETIF_DEFAULT_HL
158 #define CONFIG_GNRC_NETIF_DEFAULT_HL (64U)
159 #endif
160 
168 #ifndef CONFIG_GNRC_NETIF_MIN_WAIT_AFTER_SEND_US
169 #define CONFIG_GNRC_NETIF_MIN_WAIT_AFTER_SEND_US (0U)
170 #endif
171 
176 #ifndef GNRC_NETIF_MSG_QUEUE_SIZE
177 #define GNRC_NETIF_MSG_QUEUE_SIZE (1 << CONFIG_GNRC_NETIF_MSG_QUEUE_SIZE_EXP)
178 #endif
179 
188 #ifndef CONFIG_GNRC_NETIF_NONSTANDARD_6LO_MTU
189 #define CONFIG_GNRC_NETIF_NONSTANDARD_6LO_MTU 0
190 #endif
191 
192 #ifdef __cplusplus
193 }
194 #endif
195 
196 #endif /* NET_GNRC_NETIF_CONF_H */
ieee802154.h
IEEE 802.15.4 header definitions.
kernel_defines.h
Common macros and compiler attributes/pragmas configuration.
hdr.h
Ethernet header definitions.
conf.h
Configuration macro definitions for neighbor information base.