2016-04-29 15:52:09 +03:00
|
|
|
# Kconfig.yaip - Yet another IP stack config
|
|
|
|
|
|
|
|
#
|
|
|
|
# Copyright (c) 2016 Intel Corporation.
|
|
|
|
#
|
|
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
# you may not use this file except in compliance with the License.
|
|
|
|
# You may obtain a copy of the License at
|
|
|
|
#
|
|
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
#
|
|
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
# See the License for the specific language governing permissions and
|
|
|
|
# limitations under the License.
|
|
|
|
#
|
2016-05-02 09:02:04 +02:00
|
|
|
|
2016-06-22 09:21:53 +02:00
|
|
|
menu "New IP stack [EXPERIMENTAL]"
|
2016-06-14 15:31:30 +02:00
|
|
|
depends on NET_YAIP
|
|
|
|
|
2016-05-09 14:31:12 +03:00
|
|
|
config NET_INIT_PRIO
|
2016-05-02 09:02:04 +02:00
|
|
|
int
|
2016-06-10 09:41:16 +03:00
|
|
|
default 90
|
2016-05-09 14:31:12 +03:00
|
|
|
help
|
|
|
|
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-05-09 14:27:43 +03:00
|
|
|
config NET_IPV6
|
|
|
|
bool "Enable IPv6"
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
Enable IPv6 support. This should be selected by default as there is
|
|
|
|
limited set of network bearers provided that support IPv4.
|
|
|
|
|
2016-05-31 12:48:36 +02:00
|
|
|
config NET_IF_UNICAST_IPV6_ADDR_COUNT
|
|
|
|
int "Max number of unicast IPv6 addresses per network interface"
|
2016-05-17 14:13:17 +03:00
|
|
|
depends on NET_IPV6
|
2016-06-22 16:38:56 +03:00
|
|
|
default 2
|
2016-05-03 08:35:02 +03:00
|
|
|
|
2016-05-31 12:48:36 +02:00
|
|
|
config NET_IF_MCAST_IPV6_ADDR_COUNT
|
|
|
|
int "Max number of multicast IPv6 addresses per network interface"
|
2016-05-17 14:13:17 +03:00
|
|
|
depends on NET_IPV6
|
2016-05-03 08:35:02 +03:00
|
|
|
default 1
|
2016-05-03 08:35:41 +03:00
|
|
|
|
2016-05-31 12:48:36 +02:00
|
|
|
config NET_IF_IPV6_PREFIX_COUNT
|
|
|
|
int "Max number of IPv6 prefixes per network interface"
|
2016-05-17 14:13:17 +03:00
|
|
|
depends on NET_IPV6
|
2016-05-03 08:35:41 +03:00
|
|
|
default 2
|
2016-05-03 09:34:45 +03:00
|
|
|
|
2016-05-19 11:26:06 +03:00
|
|
|
config NET_INITIAL_HOP_LIMIT
|
|
|
|
int "Initial hop limit for a connection"
|
|
|
|
depends on NET_IPV6
|
|
|
|
default 64
|
|
|
|
help
|
|
|
|
The value should be > 0
|
|
|
|
|
2016-06-01 15:25:22 +03:00
|
|
|
config NET_IPV6_MAX_NEIGHBORS
|
|
|
|
int "How many IPv6 neighbors are supported"
|
|
|
|
depends on NET_IPV6
|
|
|
|
default 8
|
|
|
|
range 1 254
|
|
|
|
help
|
|
|
|
The value depends on your network needs.
|
|
|
|
|
2016-06-16 11:01:40 +03:00
|
|
|
config NET_IPV6_ND
|
|
|
|
bool "Activate neighbor discovery"
|
2016-06-10 15:27:52 +03:00
|
|
|
depends on NET_IPV6
|
2016-06-16 11:01:40 +03:00
|
|
|
default y
|
2016-06-10 15:27:52 +03:00
|
|
|
help
|
|
|
|
The value depends on your network needs. ND should normally
|
|
|
|
be active.
|
|
|
|
|
2016-06-16 11:01:40 +03:00
|
|
|
config NET_IPV6_DAD
|
|
|
|
bool "Activate duplicate address detection"
|
|
|
|
depends on NET_IPV6
|
|
|
|
default y
|
|
|
|
default n if !NET_IPV6_ND
|
2016-06-07 16:34:49 +03:00
|
|
|
help
|
|
|
|
The value depends on your network needs. DAD should normally
|
|
|
|
be active.
|
|
|
|
|
2016-06-07 10:16:58 +03:00
|
|
|
config NET_IPV6_RA_RDNSS
|
|
|
|
bool "Support RA RDNSS option"
|
2016-06-10 15:27:52 +03:00
|
|
|
depends on NET_IPV6 && !NET_IPV6_NO_ND
|
2016-06-07 10:16:58 +03:00
|
|
|
default y
|
|
|
|
help
|
|
|
|
Support Router Advertisement Recursive DNS Server option.
|
|
|
|
See RFC 6106 for details. The value depends on your network needs.
|
|
|
|
|
2016-06-23 16:06:24 +03:00
|
|
|
config NET_6LO
|
|
|
|
bool "Enable 6lowpan IPv6 Compression library"
|
|
|
|
depends on NET_IPV6
|
|
|
|
help
|
|
|
|
6lowpan compression and fragmentation.
|
|
|
|
|
|
|
|
config NET_6LO_DEBUG
|
|
|
|
bool "Enable 6lowpan debug"
|
|
|
|
depends on NET_6LO
|
|
|
|
|
2016-05-17 14:13:17 +03:00
|
|
|
config NET_IPV4
|
|
|
|
bool "Enable IPv4"
|
|
|
|
default n
|
|
|
|
help
|
|
|
|
Enable IPv4 support. If this is enabled then the device is
|
|
|
|
able to send and receive IPv4 network packets.
|
|
|
|
|
2016-06-14 09:31:34 +03:00
|
|
|
config NET_INITIAL_TTL
|
|
|
|
int "Initial time to live for a connection"
|
|
|
|
depends on NET_IPV4
|
|
|
|
default 64
|
|
|
|
help
|
|
|
|
The value should be > 0
|
|
|
|
|
2016-05-31 12:48:36 +02:00
|
|
|
config NET_IF_UNICAST_IPV4_ADDR_COUNT
|
|
|
|
int "Max number of unicast IPv4 addresses per network interface"
|
2016-05-17 14:13:17 +03:00
|
|
|
depends on NET_IPV4
|
|
|
|
default 1
|
|
|
|
|
2016-05-31 12:48:36 +02:00
|
|
|
config NET_IF_MCAST_IPV4_ADDR_COUNT
|
|
|
|
int "Max number of multicast IPv4 addresses per network interface"
|
2016-05-17 14:13:17 +03:00
|
|
|
depends on NET_IPV4
|
|
|
|
default 1
|
|
|
|
|
2016-06-10 10:31:21 +03:00
|
|
|
config NET_MAX_ROUTERS
|
|
|
|
int "How many routers are supported"
|
2016-06-07 10:16:58 +03:00
|
|
|
default 2 if NET_IPV4 && NET_IPV6
|
|
|
|
default 1 if NET_IPV4 && !NET_IPV6
|
|
|
|
default 1 if !NET_IPV4 && NET_IPV6
|
2016-06-10 10:31:21 +03:00
|
|
|
range 1 254
|
|
|
|
help
|
|
|
|
The value depends on your network needs.
|
|
|
|
|
2016-06-14 10:00:55 +03:00
|
|
|
config NET_UDP
|
|
|
|
bool "Enable UDP"
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
The value depends on your network needs.
|
|
|
|
|
2016-06-14 09:56:50 +03:00
|
|
|
config NET_MAX_CONN
|
|
|
|
int "How many network connections are supported"
|
|
|
|
depends on NET_UDP || NET_TCP
|
|
|
|
default 4
|
|
|
|
help
|
|
|
|
The value depends on your network needs. The value
|
|
|
|
should include both UDP and TCP connections.
|
|
|
|
|
|
|
|
config NET_CONN_CACHE
|
|
|
|
bool "Cache network connections"
|
|
|
|
depends on NET_UDP || NET_TCP
|
|
|
|
default n
|
|
|
|
help
|
|
|
|
Caching takes slight more memory but will speedup connection
|
|
|
|
handling of UDP and TCP connections.
|
|
|
|
|
2016-05-03 09:34:45 +03:00
|
|
|
config NET_TX_STACK_SIZE
|
|
|
|
int "TX fiber stack size"
|
|
|
|
default 1024
|
|
|
|
help
|
|
|
|
Set the TX fiber stack size in bytes. The TX fiber is waiting
|
|
|
|
data from application. Each network interface will start one
|
|
|
|
TX fiber for sending network packets destined to it.
|
2016-05-03 09:57:50 +03:00
|
|
|
|
|
|
|
config NET_RX_STACK_SIZE
|
|
|
|
int "RX fiber stack size"
|
|
|
|
default 1024
|
|
|
|
help
|
|
|
|
Set the RX fiber stack size in bytes. The RX fiber is waiting
|
|
|
|
data from network. There is one RX fiber in the system.
|
2016-05-09 14:12:14 +03:00
|
|
|
|
|
|
|
config NET_NBUF_RX_COUNT
|
|
|
|
int "How many network receives can be pending at the same time"
|
|
|
|
default 2
|
|
|
|
help
|
|
|
|
Each RX buffer will occupy smallish amount of memory.
|
|
|
|
See include/net/nbuf.h and the sizeof(struct nbuf)
|
|
|
|
|
|
|
|
config NET_NBUF_TX_COUNT
|
|
|
|
int "How many network sends can be pending at the same time"
|
|
|
|
default 2
|
|
|
|
help
|
|
|
|
Each TX buffer will occupy smallish amount of memory.
|
|
|
|
See include/net/nbuf.h and the sizeof(struct nbuf)
|
|
|
|
|
|
|
|
config NET_NBUF_DATA_COUNT
|
|
|
|
int "How many network data buffers are allocated"
|
|
|
|
default 16
|
|
|
|
help
|
|
|
|
Each data buffer will occupy CONFIG_NBUF_DATA_SIZE + smallish
|
|
|
|
header (sizeof(struct net_buf)) amount of data.
|
|
|
|
|
|
|
|
config NET_NBUF_DATA_SIZE
|
|
|
|
int "Size of each network data fragment"
|
|
|
|
default 128
|
|
|
|
help
|
|
|
|
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-05-09 12:26:52 +03:00
|
|
|
|
2016-05-09 15:49:48 +03:00
|
|
|
config CONFIG_NET_MAX_CONTEXTS
|
|
|
|
int "Number of network contexts to allocate"
|
|
|
|
default 6
|
|
|
|
help
|
|
|
|
Each network context is used to describe a network 5-tuple that
|
|
|
|
is used when listening or sending network traffic.
|
|
|
|
|
2016-05-09 12:26:52 +03:00
|
|
|
config NET_SLIP
|
|
|
|
bool "Use SLIP connectivity with Qemu"
|
|
|
|
default n
|
|
|
|
select SLIP
|
|
|
|
select UART_PIPE
|
|
|
|
select UART_INTERRUPT_DRIVEN
|
|
|
|
help
|
|
|
|
The SLIP support is only used when the application is
|
|
|
|
run inside Qemu and the network peer is run in your
|
|
|
|
host. The host needs to have tunslip running in order
|
|
|
|
to receive and send network packets via the SLIP driver.
|
|
|
|
The SLIP driver Kconfig options can be tweaked in drivers
|
|
|
|
section.
|
2016-05-09 17:39:09 +03:00
|
|
|
|
|
|
|
config NET_STATISTICS
|
|
|
|
bool "Print network statistics"
|
|
|
|
default n
|
|
|
|
help
|
|
|
|
Print network send/receive statistics to console.
|
|
|
|
This takes memory so say 'n' if unsure.
|
2016-06-01 15:06:27 +02:00
|
|
|
|
2016-06-14 15:31:30 +02:00
|
|
|
source "net/yaip/l2/Kconfig"
|
|
|
|
|
|
|
|
source "net/ip/Kconfig.debug"
|
|
|
|
|
|
|
|
endmenu
|