2016-11-11 23:46:28 +02:00
|
|
|
# Kconfig - IP stack config
|
2016-04-29 15:52:09 +03:00
|
|
|
|
|
|
|
#
|
|
|
|
# Copyright (c) 2016 Intel Corporation.
|
|
|
|
#
|
2017-01-18 17:01:01 -08:00
|
|
|
# SPDX-License-Identifier: Apache-2.0
|
2016-04-29 15:52:09 +03:00
|
|
|
#
|
2016-05-02 09:02:04 +02:00
|
|
|
|
2016-11-12 00:13:24 +02:00
|
|
|
menu "IP stack"
|
2016-06-14 15:31:30 +02:00
|
|
|
|
2016-09-27 15:45:09 +03:00
|
|
|
# Hidden option
|
2017-11-16 11:11:51 +01:00
|
|
|
config NET_RAW_MODE
|
2016-09-27 15:45:09 +03:00
|
|
|
bool
|
2017-11-16 11:11:51 +01:00
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
This is a very specific option used to built only the very minimal
|
|
|
|
part of the net stack in order to get network drivers working without
|
|
|
|
any net stack above: core, L2 etc... Basically this will build only
|
|
|
|
net_pkt part. It is currently used only by IEEE 802.15.4 drivers,
|
|
|
|
though any type of net drivers could use it.
|
2016-09-27 15:45:09 +03:00
|
|
|
|
2017-11-16 11:11:51 +01:00
|
|
|
if !NET_RAW_MODE
|
2016-09-27 15:45:09 +03:00
|
|
|
|
2016-05-09 14:31:12 +03:00
|
|
|
config NET_INIT_PRIO
|
2016-08-24 10:49:14 +02:00
|
|
|
int
|
|
|
|
default 90
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
Network initialization priority level. This number tells how
|
|
|
|
early in the boot the network stack is initialized.
|
2016-05-03 08:33:34 +03:00
|
|
|
|
2016-11-11 23:46:28 +02:00
|
|
|
source "subsys/net/ip/Kconfig.debug"
|
2016-08-24 11:58:29 +02:00
|
|
|
|
2016-11-11 23:46:28 +02:00
|
|
|
source "subsys/net/ip/Kconfig.ipv6"
|
2016-06-23 16:06:24 +03:00
|
|
|
|
2016-11-11 23:46:28 +02:00
|
|
|
source "subsys/net/ip/Kconfig.ipv4"
|
2016-05-17 14:13:17 +03:00
|
|
|
|
2016-12-30 13:00:55 +01:00
|
|
|
config NET_SHELL
|
|
|
|
bool "Enable network shell utilities"
|
|
|
|
select CONSOLE_SHELL
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
Activate shell module that provides network commands like
|
|
|
|
ping to the console.
|
2016-12-30 13:00:55 +01:00
|
|
|
|
2018-02-07 15:00:08 +02:00
|
|
|
config NET_TC_TX_COUNT
|
|
|
|
int "How many Tx traffic classes to have for each network device"
|
|
|
|
default 1
|
|
|
|
range 1 8
|
|
|
|
help
|
|
|
|
Define how many Tx traffic classes (queues) the system should have
|
|
|
|
when sending a network packet. The network packet priority can then
|
2018-04-05 15:07:00 -07:00
|
|
|
be mapped to this traffic class so that higher prioritized packets
|
|
|
|
can be processed before lower prioritized ones. Each queue is handled
|
2018-02-07 15:00:08 +02:00
|
|
|
by a separate thread which will need RAM for stack space.
|
|
|
|
Only increase the value from 1 if you really need this feature.
|
|
|
|
The default value is 1 which means that all the network traffic is
|
|
|
|
handled equally. In this implementation, the higher traffic class
|
|
|
|
value corresponds to lower thread priority.
|
|
|
|
|
|
|
|
config NET_TC_RX_COUNT
|
|
|
|
int "How many Rx traffic classes to have for each network device"
|
|
|
|
default 1
|
|
|
|
range 1 8
|
|
|
|
help
|
|
|
|
Define how many Rx traffic classes (queues) the system should have
|
|
|
|
when receiving a network packet. The network packet priority can then
|
2018-04-05 15:07:00 -07:00
|
|
|
be mapped to this traffic class so that higher prioritized packets
|
|
|
|
can be processed before lower prioritized ones. Each queue is handled
|
2018-02-07 15:00:08 +02:00
|
|
|
by a separate thread which will need RAM for stack space.
|
|
|
|
Only increase the value from 1 if you really need this feature.
|
|
|
|
The default value is 1 which means that all the network traffic is
|
|
|
|
handled equally. In this implementation, the higher traffic class
|
|
|
|
value corresponds to lower thread priority.
|
|
|
|
|
2018-08-02 13:41:24 +02:00
|
|
|
choice
|
|
|
|
prompt "Priority to traffic class mapping"
|
|
|
|
help
|
|
|
|
Select mapping to use to map network packet priorities to traffic
|
|
|
|
classes.
|
|
|
|
|
|
|
|
config NET_TC_MAPPING_STRICT
|
|
|
|
bool "Strict priority mapping"
|
|
|
|
help
|
|
|
|
This is the recommended default priority to traffic class mapping.
|
|
|
|
Use it for implementations that do not support the credit-based
|
|
|
|
sharper transmission selection algorithm.
|
|
|
|
See 802.1Q, chapter 8.6.6 for more information.
|
|
|
|
|
|
|
|
config NET_TC_MAPPING_SR_CLASS_A_AND_B
|
|
|
|
bool "SR class A and class B mapping"
|
|
|
|
depends on NET_TC_TX_COUNT >= 2
|
|
|
|
depends on NET_TC_RX_COUNT >= 2
|
|
|
|
help
|
|
|
|
This is the recommended priority to traffic class mapping for a
|
|
|
|
system that supports SR (Stream Reservation) class A and SR class B.
|
|
|
|
See 802.1Q, chapter 34.5 for more information.
|
|
|
|
|
|
|
|
config NET_TC_MAPPING_SR_CLASS_B_ONLY
|
|
|
|
bool "SR class B only mapping"
|
|
|
|
depends on NET_TC_TX_COUNT >= 2
|
|
|
|
depends on NET_TC_RX_COUNT >= 2
|
|
|
|
help
|
|
|
|
This is the recommended priority to traffic class mapping for a
|
|
|
|
system that supports SR (Stream Reservation) class B only.
|
|
|
|
See 802.1Q, chapter 34.5 for more information.
|
|
|
|
endchoice
|
|
|
|
|
2018-02-07 15:00:08 +02:00
|
|
|
config NET_TX_DEFAULT_PRIORITY
|
|
|
|
int "Default network packet priority if none have been set"
|
|
|
|
default 1
|
|
|
|
range 0 7
|
|
|
|
help
|
|
|
|
What is the default network packet priority if user has not specified
|
|
|
|
one. The value 0 means lowest priority and 7 is the highest.
|
|
|
|
|
2016-11-12 13:02:27 +02:00
|
|
|
config NET_IP_ADDR_CHECK
|
|
|
|
bool "Check IP address validity before sending IP packet"
|
|
|
|
default y
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
Check that either the source or destination address is
|
|
|
|
correct before sending either IPv4 or IPv6 network packet.
|
2016-11-12 13:02:27 +02:00
|
|
|
|
2016-06-10 10:31:21 +03:00
|
|
|
config NET_MAX_ROUTERS
|
2016-08-24 10:11:58 +02:00
|
|
|
int "How many routers are supported"
|
|
|
|
default 2 if NET_IPV4 && NET_IPV6
|
|
|
|
default 1 if NET_IPV4 && !NET_IPV6
|
|
|
|
default 1 if !NET_IPV4 && NET_IPV6
|
|
|
|
range 1 254
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
The value depends on your network needs.
|
2016-06-10 10:31:21 +03:00
|
|
|
|
2017-03-17 12:36:55 +02:00
|
|
|
# Normally the route support is enabled by RPL or similar technology
|
|
|
|
# that needs to use the routing infrastructure.
|
2016-09-19 15:09:37 +03:00
|
|
|
config NET_ROUTE
|
|
|
|
bool
|
2017-03-17 12:36:55 +02:00
|
|
|
depends on NET_IPV6_NBR_CACHE
|
|
|
|
default y if NET_IPV6_NBR_CACHE
|
2016-09-19 15:09:37 +03:00
|
|
|
|
2017-08-16 17:13:47 +03:00
|
|
|
config NET_ROUTING
|
|
|
|
bool "IP routing between interfaces"
|
|
|
|
depends on NET_ROUTE
|
|
|
|
help
|
2018-02-15 07:36:16 -06:00
|
|
|
Allow IPv6 routing between different network interfaces and
|
|
|
|
technologies.
|
2017-08-16 17:13:47 +03:00
|
|
|
|
2016-09-19 15:09:37 +03:00
|
|
|
config NET_MAX_ROUTES
|
|
|
|
int "Max number of routing entries stored."
|
|
|
|
default NET_IPV6_MAX_NEIGHBORS
|
|
|
|
depends on NET_ROUTE
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
This determines how many entries can be stored in routing table.
|
2016-09-19 15:09:37 +03:00
|
|
|
|
|
|
|
config NET_MAX_NEXTHOPS
|
|
|
|
int "Max number of next hop entries stored."
|
|
|
|
default NET_MAX_ROUTES
|
|
|
|
depends on NET_ROUTE
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
This determines how many entries can be stored in nexthop table.
|
2016-10-04 12:10:23 +03:00
|
|
|
|
|
|
|
config NET_ROUTE_MCAST
|
|
|
|
bool
|
|
|
|
depends on NET_ROUTE
|
|
|
|
|
|
|
|
config NET_MAX_MCAST_ROUTES
|
|
|
|
int "Max number of multicast routing entries stored."
|
|
|
|
default 1
|
|
|
|
depends on NET_ROUTE_MCAST
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
This determines how many entries can be stored in multicast
|
|
|
|
routing table.
|
2016-09-19 15:09:37 +03:00
|
|
|
|
2016-08-24 10:49:14 +02:00
|
|
|
config NET_TCP
|
2016-08-18 10:08:04 +03:00
|
|
|
bool "Enable TCP"
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
The value depends on your network needs.
|
2016-08-18 10:08:04 +03:00
|
|
|
|
2017-05-17 10:43:18 +03:00
|
|
|
config NET_TCP_CHECKSUM
|
|
|
|
bool "Check TCP checksum"
|
|
|
|
default y
|
|
|
|
depends on NET_TCP
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
Enables TCP handler to check TCP checksum. If the checksum is invalid,
|
|
|
|
then the packet is discarded.
|
2017-05-17 10:43:18 +03:00
|
|
|
|
2016-08-18 10:08:04 +03:00
|
|
|
config NET_DEBUG_TCP
|
|
|
|
bool "Debug TCP"
|
|
|
|
depends on NET_TCP && NET_LOG
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
Enables TCP handler output debug messages
|
2016-08-24 10:49:14 +02:00
|
|
|
|
2017-06-28 17:33:34 +03:00
|
|
|
config NET_TCP_BACKLOG_SIZE
|
|
|
|
int "Number of simultaneous incoming TCP connections"
|
|
|
|
depends on NET_TCP
|
|
|
|
default 1
|
|
|
|
range 1 128
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
The number of simultaneous TCP connection attempts, i.e. outstanding
|
|
|
|
TCP connections waiting for initial ACK.
|
2017-06-28 17:33:34 +03:00
|
|
|
|
2018-05-11 14:17:48 +03:00
|
|
|
config NET_TCP_TIME_WAIT_DELAY
|
|
|
|
int "How long to wait in TIME_WAIT state (in milliseconds)"
|
2017-03-27 15:38:50 +03:00
|
|
|
depends on NET_TCP
|
2018-05-11 14:17:48 +03:00
|
|
|
default 250
|
|
|
|
help
|
|
|
|
To avoid a (low-probability) issue when delayed packets from
|
|
|
|
previous connection get delivered to next connection reusing
|
|
|
|
the same local/remote ports, RFC 793 (TCP) suggests to keep
|
|
|
|
an old, closed connection in a special "TIME_WAIT" state for
|
|
|
|
the duration of 2*MSL (Maximum Segment Lifetime). The RFC
|
|
|
|
suggests to use MSL of 2 minutes, but notes "This is an
|
|
|
|
engineering choice, and may be changed if experience indicates
|
|
|
|
it is desirable to do so." For low-resource systems, having
|
|
|
|
large MSL may lead to quick resource exhaustion (and related
|
2018-05-23 11:53:20 -07:00
|
|
|
DoS attacks). At the same time, the issue of packet misdelivery
|
2018-05-11 14:17:48 +03:00
|
|
|
is largely alleviated in the modern TCP stacks by using random,
|
|
|
|
non-repeating port numbers and initial sequence numbers. Due
|
|
|
|
to this, Zephyr uses much lower value of 250ms by default.
|
|
|
|
Value of 0 disables TIME_WAIT state completely.
|
2017-03-27 15:38:50 +03:00
|
|
|
|
2017-05-18 11:27:30 +03:00
|
|
|
config NET_TCP_ACK_TIMEOUT
|
|
|
|
int "How long to wait for ACK (in milliseconds)"
|
|
|
|
depends on NET_TCP
|
|
|
|
default 1000
|
|
|
|
range 1 2147483647
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
This value affects the timeout when waiting ACK to arrive in
|
|
|
|
various TCP states. The value is in milliseconds. Note that
|
|
|
|
having a very low value here could prevent connectivity.
|
2017-05-18 11:27:30 +03:00
|
|
|
|
2017-10-26 11:44:21 +03:00
|
|
|
config NET_TCP_INIT_RETRANSMISSION_TIMEOUT
|
|
|
|
int "Initial value of Retransmission Timeout (RTO) (in milliseconds)"
|
|
|
|
depends on NET_TCP
|
|
|
|
default 200
|
2017-10-31 11:57:56 -02:00
|
|
|
range 100 60000
|
2017-10-26 11:44:21 +03:00
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
This value affects the timeout between initial retransmission
|
|
|
|
of TCP data packets. The value is in milliseconds.
|
2017-10-26 11:44:21 +03:00
|
|
|
|
2017-05-31 14:32:53 -07:00
|
|
|
config NET_TCP_RETRY_COUNT
|
|
|
|
int "Maximum number of TCP segment retransmissions"
|
|
|
|
depends on NET_TCP
|
|
|
|
default 9
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
The following formula can be used to determine the time (in ms)
|
|
|
|
that a segment will be be buffered awaiting retransmission:
|
|
|
|
n=NET_TCP_RETRY_COUNT
|
|
|
|
Sum((1<<n) * NET_TCP_INIT_RETRANSMISSION_TIMEOUT)
|
|
|
|
n=0
|
|
|
|
With the default value of 9, the IP stack will try to
|
|
|
|
retransmit for up to 1:42 minutes. This is as close as possible
|
|
|
|
to the minimum value recommended by RFC1122 (1:40 minutes).
|
|
|
|
Only 5 bits are dedicated for the retransmission count, so accepted
|
|
|
|
values are in the 0-31 range. It's highly recommended to not go
|
|
|
|
below 9, though.
|
|
|
|
Should a retransmission timeout occur, the receive callback is
|
|
|
|
called with -ECONNRESET error code and the context is dereferenced.
|
2017-05-31 14:32:53 -07:00
|
|
|
|
2016-06-14 10:00:55 +03:00
|
|
|
config NET_UDP
|
2016-08-24 10:49:14 +02:00
|
|
|
bool "Enable UDP"
|
|
|
|
default y
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
The value depends on your network needs.
|
2016-06-14 10:00:55 +03:00
|
|
|
|
2017-05-17 10:43:18 +03:00
|
|
|
config NET_UDP_CHECKSUM
|
|
|
|
bool "Check UDP checksum"
|
|
|
|
default y
|
|
|
|
depends on NET_UDP
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
Enables UDP handler to check UDP checksum. If the checksum is invalid,
|
|
|
|
then the packet is discarded.
|
2017-05-17 10:43:18 +03:00
|
|
|
|
2016-09-07 16:03:10 +03:00
|
|
|
config NET_DEBUG_UDP
|
|
|
|
bool "Debug UDP"
|
|
|
|
depends on NET_UDP && NET_LOG
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
Enables UDP handler output debug messages
|
2016-09-07 16:03:10 +03:00
|
|
|
|
2016-06-14 09:56:50 +03:00
|
|
|
config NET_MAX_CONN
|
2016-08-24 10:49:14 +02:00
|
|
|
int "How many network connections are supported"
|
|
|
|
depends on NET_UDP || NET_TCP
|
|
|
|
default 4
|
2016-11-23 10:36:40 +02:00
|
|
|
default 8 if NET_IPV6 && NET_IPV4
|
2016-08-24 10:49:14 +02:00
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
The value depends on your network needs. The value
|
|
|
|
should include both UDP and TCP connections.
|
2016-06-14 09:56:50 +03:00
|
|
|
|
|
|
|
config NET_CONN_CACHE
|
2016-08-24 10:49:14 +02:00
|
|
|
bool "Cache network connections"
|
|
|
|
depends on NET_UDP || NET_TCP
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
Caching takes slight more memory but will speedup connection
|
|
|
|
handling of UDP and TCP connections.
|
2016-06-14 09:56:50 +03:00
|
|
|
|
2016-06-22 16:44:55 +03:00
|
|
|
config NET_MAX_CONTEXTS
|
2016-05-09 15:49:48 +03:00
|
|
|
int "Number of network contexts to allocate"
|
2017-01-30 10:57:55 +02:00
|
|
|
default 6
|
2016-05-09 15:49:48 +03:00
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
Each network context is used to describe a network 5-tuple that
|
|
|
|
is used when listening or sending network traffic. This is very
|
|
|
|
similar as one could call a network socket in some other systems.
|
2016-06-22 16:44:55 +03:00
|
|
|
|
2017-04-03 17:14:35 +02:00
|
|
|
config NET_CONTEXT_NET_PKT_POOL
|
2017-02-15 21:41:44 +02:00
|
|
|
bool "Enable net_buf TX pool / context"
|
2017-04-07 12:30:52 +03:00
|
|
|
default y if NET_TCP && NET_6LO
|
2017-02-15 21:41:44 +02:00
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
If enabled, then it is possible to fine-tune network packet pool
|
|
|
|
for each context when sending network data. If this setting is
|
|
|
|
enabled, then you should define the context pools in your application
|
|
|
|
using NET_PKT_TX_POOL_DEFINE() and NET_PKT_DATA_POOL_DEFINE()
|
|
|
|
macros and tie these pools to desired context using the
|
|
|
|
net_context_setup_pools() function.
|
2017-02-15 21:41:44 +02:00
|
|
|
|
2016-06-22 16:44:55 +03:00
|
|
|
config NET_CONTEXT_SYNC_RECV
|
|
|
|
bool "Support synchronous functionality in net_context_recv() API"
|
|
|
|
default y
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
You can disable sync support to save some memory if you are calling
|
|
|
|
net_context_recv() in async way only when timeout is set to 0.
|
2016-06-22 16:44:55 +03:00
|
|
|
|
|
|
|
config NET_CONTEXT_CHECK
|
|
|
|
bool "Check options when calling various net_context functions"
|
|
|
|
default y
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
If you know that the options passed to net_context...() functions
|
|
|
|
are ok, then you can disable the checks to save some memory.
|
2016-05-09 15:49:48 +03:00
|
|
|
|
2018-02-07 14:44:04 +02:00
|
|
|
config NET_CONTEXT_PRIORITY
|
|
|
|
bool "Add priority support to net_context"
|
|
|
|
help
|
|
|
|
It is possible to prioritize network traffic. This requires
|
|
|
|
also traffic class support to work as expected.
|
|
|
|
|
2017-07-26 08:45:13 -04:00
|
|
|
config NET_TEST
|
|
|
|
bool "Network Testing"
|
2016-08-31 16:38:06 -03:00
|
|
|
help
|
2017-07-26 08:45:13 -04:00
|
|
|
Used for self-contained networking tests that do not require a
|
|
|
|
network device.
|
2017-06-30 08:36:19 -04:00
|
|
|
|
2016-08-31 16:38:06 -03:00
|
|
|
config NET_SLIP_TAP
|
|
|
|
bool "TAP SLIP driver"
|
|
|
|
select SLIP
|
|
|
|
select UART_PIPE
|
|
|
|
select UART_INTERRUPT_DRIVEN
|
|
|
|
select SLIP_TAP
|
2017-08-09 09:21:11 +03:00
|
|
|
default y if (QEMU_TARGET && !NET_TEST && !NET_L2_BT)
|
2016-08-31 16:38:06 -03:00
|
|
|
help
|
2017-07-27 14:09:11 +03:00
|
|
|
SLIP TAP support is necessary when testing with QEMU. The host
|
|
|
|
needs to have tunslip6 with TAP support running in order to
|
|
|
|
communicate via the SLIP driver. See net-tools project at
|
|
|
|
https://github.com/zephyrproject-rtos/net-tools for more details.
|
2016-05-09 17:39:09 +03:00
|
|
|
|
2016-08-05 15:13:33 +03:00
|
|
|
config NET_TRICKLE
|
|
|
|
bool "Enable Trickle library"
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
Normally this is enabled automatically if needed,
|
|
|
|
so say 'n' if unsure.
|
2016-08-05 15:13:33 +03:00
|
|
|
|
2016-08-24 11:58:29 +02:00
|
|
|
config NET_DEBUG_TRICKLE
|
|
|
|
bool "Debug Trickle algorithm"
|
|
|
|
depends on NET_TRICKLE && NET_LOG
|
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
Enables Trickle library output debug messages
|
2016-06-14 15:31:30 +02:00
|
|
|
|
2017-11-16 11:11:51 +01:00
|
|
|
endif # NET_RAW_MODE
|
2016-09-27 15:45:09 +03:00
|
|
|
|
2017-04-03 17:14:35 +02:00
|
|
|
config NET_PKT_RX_COUNT
|
|
|
|
int "How many packet receives can be pending at the same time"
|
2017-01-21 15:38:31 +03:00
|
|
|
default 4
|
2018-03-29 14:33:49 +03:00
|
|
|
default 14 if NET_L2_ETHERNET
|
2016-09-27 15:45:09 +03:00
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
Each RX buffer will occupy smallish amount of memory.
|
|
|
|
See include/net/net_pkt.h and the sizeof(struct net_pkt)
|
2016-09-27 15:45:09 +03:00
|
|
|
|
2017-04-03 17:14:35 +02:00
|
|
|
config NET_PKT_TX_COUNT
|
|
|
|
int "How many packet sends can be pending at the same time"
|
2018-03-29 14:33:49 +03:00
|
|
|
default 4
|
|
|
|
default 14 if NET_L2_ETHERNET
|
2016-09-27 15:45:09 +03:00
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
Each TX buffer will occupy smallish amount of memory.
|
|
|
|
See include/net/net_pkt.h and the sizeof(struct net_pkt)
|
2016-09-27 15:45:09 +03:00
|
|
|
|
2017-04-03 17:14:35 +02:00
|
|
|
config NET_BUF_RX_COUNT
|
|
|
|
int "How many network buffers are allocated for receiving data"
|
2017-02-23 23:53:59 +02:00
|
|
|
default 16
|
2018-03-29 14:33:49 +03:00
|
|
|
default 36 if NET_L2_ETHERNET
|
2017-02-23 23:53:59 +02:00
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
Each data buffer will occupy CONFIG_NET_BUF_DATA_SIZE + smallish
|
|
|
|
header (sizeof(struct net_buf)) amount of data.
|
2017-02-23 23:53:59 +02:00
|
|
|
|
2017-04-03 17:14:35 +02:00
|
|
|
config NET_BUF_TX_COUNT
|
|
|
|
int "How many network buffers are allocated for sending data"
|
2016-09-27 15:45:09 +03:00
|
|
|
default 16
|
2018-03-29 14:33:49 +03:00
|
|
|
default 36 if NET_L2_ETHERNET
|
2016-09-27 15:45:09 +03:00
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
Each data buffer will occupy CONFIG_NET_BUF_DATA_SIZE + smallish
|
|
|
|
header (sizeof(struct net_buf)) amount of data.
|
2016-09-27 15:45:09 +03:00
|
|
|
|
2017-04-03 17:14:35 +02:00
|
|
|
config NET_BUF_DATA_SIZE
|
2016-09-27 15:45:09 +03:00
|
|
|
int "Size of each network data fragment"
|
|
|
|
default 128
|
2016-11-15 15:30:23 +01:00
|
|
|
default 125 if NET_L2_IEEE802154
|
2016-09-27 15:45:09 +03:00
|
|
|
help
|
2017-12-13 10:08:21 -05:00
|
|
|
This value tells what is the size of the data fragment that is
|
|
|
|
received from the network.
|
|
|
|
Example: For IEEE 802.15.4, the network packet is 127 bytes long,
|
|
|
|
which leaves in worst case 81 bytes for user data (MTU).
|
|
|
|
In order to be able to receive at least full IPv6 packet which
|
|
|
|
has a size of 1280 bytes, the one should allocate 16 fragments here.
|
2016-09-27 15:45:09 +03:00
|
|
|
|
2018-01-23 13:47:03 +02:00
|
|
|
choice
|
|
|
|
prompt "Default Network Interface"
|
|
|
|
default NET_DEFAULT_IF_FIRST
|
|
|
|
help
|
|
|
|
If system has multiple interfaces enabled, then user shall be able
|
|
|
|
to choose default interface. Otherwise first interface will be the
|
|
|
|
default interface.
|
|
|
|
|
|
|
|
config NET_DEFAULT_IF_FIRST
|
|
|
|
bool "First available interface"
|
|
|
|
|
|
|
|
config NET_DEFAULT_IF_ETHERNET
|
|
|
|
bool "Ethernet"
|
|
|
|
depends on NET_L2_ETHERNET
|
|
|
|
|
|
|
|
config NET_DEFAULT_IF_BLUETOOTH
|
|
|
|
bool "Bluetooth"
|
|
|
|
depends on NET_L2_BT
|
|
|
|
|
|
|
|
config NET_DEFAULT_IF_IEEE802154
|
|
|
|
bool "IEEE 802.15.4"
|
|
|
|
depends on NET_L2_IEEE802154
|
|
|
|
|
|
|
|
config NET_DEFAULT_IF_OFFLOAD
|
|
|
|
bool "Offloaded interface"
|
2018-05-24 10:16:43 +03:00
|
|
|
depends on NET_OFFLOAD
|
2018-01-23 13:47:03 +02:00
|
|
|
|
|
|
|
config NET_DEFAULT_IF_DUMMY
|
|
|
|
bool "Dummy testing interface"
|
|
|
|
depends on NET_L2_DUMMY
|
|
|
|
|
|
|
|
endchoice
|
|
|
|
|
2018-01-24 15:20:21 +02:00
|
|
|
config NET_PKT_TIMESTAMP
|
|
|
|
bool "Enable network packet timestamp support"
|
|
|
|
help
|
|
|
|
Enable network packet timestamp support. This is needed for
|
|
|
|
example in gPTP which needs to know how long it takes to send
|
|
|
|
a network packet.
|
|
|
|
|
|
|
|
config NET_PKT_TIMESTAMP_STACK_SIZE
|
|
|
|
int "Timestamp thread stack size"
|
|
|
|
default 1024
|
|
|
|
depends on NET_PKT_TIMESTAMP
|
|
|
|
help
|
|
|
|
Set the timestamp thread stack size in bytes. The timestamp
|
|
|
|
thread waits for timestamped TX frames and calls registered
|
|
|
|
callbacks.
|
|
|
|
|
2018-07-23 14:03:11 +03:00
|
|
|
config NET_PROMISCUOUS_MODE
|
|
|
|
bool "Enable promiscuous mode support [EXPERIMENTAL]"
|
|
|
|
select NET_MGMT
|
|
|
|
select NET_MGMT_EVENT
|
|
|
|
select NET_L2_ETHERNET_MGMT if NET_L2_ETHERNET
|
|
|
|
help
|
|
|
|
Enable promiscuous mode support. This only works if the network
|
|
|
|
device driver supports promiscuous mode. The user application
|
|
|
|
also needs to read the promiscuous mode data.
|
|
|
|
|
2016-11-11 23:46:28 +02:00
|
|
|
source "subsys/net/ip/Kconfig.stack"
|
2016-11-18 12:56:43 +02:00
|
|
|
|
2016-11-11 23:46:28 +02:00
|
|
|
source "subsys/net/ip/Kconfig.mgmt"
|
2016-09-21 11:11:47 +02:00
|
|
|
|
2016-11-11 23:46:28 +02:00
|
|
|
source "subsys/net/ip/Kconfig.rpl"
|
2016-10-26 13:57:30 +03:00
|
|
|
|
2016-12-13 15:19:28 +01:00
|
|
|
source "subsys/net/ip/Kconfig.stats"
|
|
|
|
|
2016-06-14 15:31:30 +02:00
|
|
|
endmenu
|