333 lines
8.4 KiB
Plaintext
333 lines
8.4 KiB
Plaintext
# networking.kconf - Generic networking configuration options
|
|
|
|
#
|
|
# Copyright (c) 2015 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.
|
|
#
|
|
|
|
#
|
|
# Networking options
|
|
#
|
|
|
|
menuconfig NETWORKING
|
|
bool
|
|
prompt "Generic networking support"
|
|
select NANO_TIMEOUTS
|
|
select NANO_TIMERS
|
|
default n
|
|
help
|
|
This option enabled generic networking support.
|
|
|
|
if NETWORKING
|
|
|
|
config NET_BUF_RX_SIZE
|
|
int "Number of network buffers to use when receiving data"
|
|
default 1
|
|
help
|
|
Each network buffer will contain one received IPv6 or IPv4 packet.
|
|
Each buffer will occupy 1280 bytes of memory.
|
|
|
|
config NET_BUF_TX_SIZE
|
|
int "Number of network buffers to use when sending data"
|
|
default 2
|
|
help
|
|
Each network buffer will contain one sent IPv6 or IPv4 packet.
|
|
Each buffer will occupy 1280 bytes of memory.
|
|
|
|
choice
|
|
prompt "Internet Protocol version"
|
|
depends on NETWORKING
|
|
help
|
|
The IP stack can either support IPv6 or IPv4 but
|
|
not both at the same time. The IPv6 support should
|
|
be selected by default as there is limited set of
|
|
network bearers provided that support IPv4.
|
|
default NETWORKING_WITH_IPV6
|
|
config NETWORKING_WITH_IPV6
|
|
bool "IPv6"
|
|
help
|
|
Choose this if unsure.
|
|
config NETWORKING_WITH_IPV4
|
|
bool "IPv4"
|
|
help
|
|
Legacy IP.
|
|
endchoice
|
|
|
|
config NETWORKING_STATISTICS
|
|
bool
|
|
prompt "Enable IP statistics gathering"
|
|
depends on NETWORKING
|
|
default n
|
|
help
|
|
This is only for debugging the network. Do not activate
|
|
this in live system! The option uses memory and slows
|
|
down IP packet processing.
|
|
|
|
if NETWORKING_WITH_IPV6
|
|
config NETWORKING_IPV6_NO_ND
|
|
bool
|
|
prompt "Disable IPv6 neighbor discovery"
|
|
depends on NETWORKING
|
|
depends on NETWORKING_WITH_IPV6
|
|
default y
|
|
help
|
|
Normally ND should be enabled but in order to simplify
|
|
the network setup, it is currently turned off.
|
|
endif
|
|
|
|
config NETWORKING_WITH_RPL
|
|
bool
|
|
prompt "Enable RPL (ripple) IPv6 mesh routing protocol"
|
|
depends on NETWORKING && NETWORKING_WITH_IPV6
|
|
default n
|
|
help
|
|
Enable RPL (RFC 6550) IPv6 Routing Protocol for
|
|
Low-Power and Lossy Networks.
|
|
|
|
config RPL_STATS
|
|
bool
|
|
prompt "Enable RPL statistics"
|
|
depends on NETWORKING_WITH_RPL
|
|
select NETWORKING_STATISTICS
|
|
default n
|
|
help
|
|
Enable RPL statistics support.
|
|
|
|
config RPL_PROBING
|
|
bool
|
|
prompt "Enable RPL probing"
|
|
depends on NETWORKING_WITH_RPL
|
|
default n
|
|
help
|
|
Enable RPL probing support. When enabled, probes will be sent
|
|
periodically to keep parent link estimates up to date.
|
|
|
|
choice
|
|
prompt "Objective function"
|
|
depends on NETWORKING_WITH_RPL
|
|
help
|
|
The objective function to use. All RPL nodes in a DODAG
|
|
must use the same OF.
|
|
The default is MRHOF, see RFC 6719 for details.
|
|
Other alternative is OF0, see RFC 6552 for details.
|
|
default RPL_WITH_MRHOF
|
|
config RPL_WITH_MRHOF
|
|
bool "Minimum Rank with Hysteresis, RFC 6719"
|
|
help
|
|
Choose this (MRHOF) if unsure.
|
|
config RPL_WITH_OF0
|
|
bool "OF Zero, RFC 6552"
|
|
help
|
|
Objective function zero (OF0).
|
|
endchoice
|
|
|
|
config NETWORKING_WITH_LOGGING
|
|
bool
|
|
prompt "Enable logging of the uIP stack"
|
|
depends on NETWORKING
|
|
default n
|
|
help
|
|
Enable packet and uIP stack logging
|
|
|
|
config NETWORKING_WITH_LOOPBACK
|
|
bool
|
|
prompt "Enable loopback driver"
|
|
depends on NETWORKING
|
|
default n
|
|
help
|
|
Enable a simple loopback driver that installs
|
|
IPv6 loopback addresses into routing table and
|
|
neighbor cache. All packets transmitted are
|
|
looped back to the receiving fifo/fiber.
|
|
|
|
choice
|
|
prompt "Wired networking support"
|
|
depends on NETWORKING
|
|
default NETWORKING_NO_WIRED
|
|
config NETWORKING_NO_WIRED
|
|
bool "No wired network driver"
|
|
help
|
|
Do not enable any wired network driver. It is still
|
|
possible to select other types of network drivers if
|
|
this option is selected.
|
|
config NETWORKING_UART
|
|
bool "Network UART/slip driver"
|
|
select UART_SIMPLE
|
|
help
|
|
Enable UART driver for passing IPv6 packets using slip.
|
|
This requires running tunslip6 tool in host. See README
|
|
file at net/ip/contiki/tools directory for details.
|
|
config ETHERNET
|
|
bool "Ethernet drivers"
|
|
help
|
|
Include Ethernet drivers in system config. This
|
|
option enables Ethernet support in the core network
|
|
subsystem, but it is necessary to also select a
|
|
specific Ethernet device driver.
|
|
endchoice
|
|
|
|
config NETWORKING_DEBUG_UART
|
|
bool
|
|
prompt "Network UART driver debug"
|
|
depends on NETWORKING_UART && NETWORKING_WITH_LOGGING
|
|
default n
|
|
help
|
|
This option enables debug support for network UART
|
|
driver.
|
|
|
|
config ETHERNET_DEBUG
|
|
bool
|
|
prompt "Network Ethernet driver debug"
|
|
depends on NETWORKING_WITH_LOGGING
|
|
default n
|
|
help
|
|
This option enables debug support for Ethernet drivers.
|
|
|
|
config NETWORKING_WITH_15_4
|
|
bool
|
|
prompt "Enable 802.15.4 driver"
|
|
depends on NETWORKING && NETWORKING_WITH_IPV6
|
|
default n
|
|
help
|
|
Enable 802.15.4 driver that receives the IPv6 packet,
|
|
does header compression on it and writes it to the
|
|
802.15.4 stack Tx FIFO. The 802.15.4 Tx fiber will pick up
|
|
the header compressed IPv6 6lowpan packet and fragment
|
|
it into suitable chunks ready to be sent to the 802.15.4
|
|
hw driver
|
|
|
|
config NETWORKING_WITH_15_4_PAN_ID
|
|
hex
|
|
prompt "IEEE 802.15.4 PAN id/address"
|
|
depends on NETWORKING_WITH_15_4
|
|
default 0xabcd
|
|
help
|
|
All the 802.15.4 devices that want to connect to each
|
|
other need to have same PAN id (address).
|
|
Default PAN id is 0xABCD
|
|
|
|
choice
|
|
prompt "802.15.4 Radio Driver"
|
|
depends on NETWORKING && NETWORKING_WITH_15_4
|
|
default n
|
|
help
|
|
The 802.15.4 layer can either support loopback within
|
|
or loopback with uart but not both at the same time.
|
|
config NETWORKING_WITH_15_4_LOOPBACK
|
|
bool
|
|
prompt "Enable 802.15.4 loopback radio driver"
|
|
help
|
|
Enable 802.15.4 loopback radio driver that receives
|
|
the 802.15.4 frame and put it back 802.15.4 Rx Fifo.
|
|
|
|
config NETWORKING_WITH_15_4_LOOPBACK_UART
|
|
bool
|
|
prompt "Enable 802.15.4 loopback radio uart driver"
|
|
select UART_SIMPLE
|
|
help
|
|
Enable 802.15.4 loopback radio driver that sends
|
|
802.15.4 frames out of qemu through uart and receive
|
|
frames through uart. This way one can test 802.15.4 frames
|
|
between two qemus
|
|
endchoice
|
|
|
|
config NETWORKING_WITH_6LOWPAN
|
|
bool
|
|
prompt "Enable 6LoWPAN (IPv6 compression) in the uIP stack"
|
|
depends on NETWORKING
|
|
depends on NETWORKING_WITH_15_4
|
|
default n
|
|
help
|
|
Enable 6LoWPAN in uIP stack
|
|
|
|
config NET_15_4_LOOPBACK_NUM
|
|
int
|
|
prompt "Number of times loopback runs"
|
|
depends on NETWORKING_WITH_15_4_LOOPBACK || NETWORKING_WITH_15_4_LOOPBACK_UART
|
|
default 0
|
|
help
|
|
Number of times loopback runs, 0 means infinite.
|
|
|
|
config NET_SANITY_TEST
|
|
bool
|
|
prompt "Enable networking sanity test"
|
|
depends on NETWORKING
|
|
default n
|
|
help
|
|
Enable networking sanity tests. Network sanity test
|
|
verification and test report submission will fall under
|
|
this config.
|
|
|
|
choice
|
|
prompt "6LoWPAN compression method"
|
|
depends on NETWORKING_WITH_6LOWPAN
|
|
help
|
|
Select the compression method that is used in 6LoWPAN.
|
|
default 6LOWPAN_COMPRESSION_IPV6
|
|
config 6LOWPAN_COMPRESSION_IPV6
|
|
bool "No compression"
|
|
help
|
|
Choose this if unsure.
|
|
config 6LOWPAN_COMPRESSION_IPHC
|
|
bool "IP header compression"
|
|
help
|
|
IP header compression
|
|
endchoice
|
|
|
|
config TINYDTLS
|
|
bool
|
|
prompt "Enable tinyDTLS support."
|
|
depends on NETWORKING
|
|
default n
|
|
help
|
|
Enable tinyDTLS support so that applications can use it.
|
|
This is needed at least in CoAP.
|
|
|
|
config TINYDTLS_DEBUG
|
|
bool
|
|
prompt "Enable tinyDTLS debugging support."
|
|
depends on TINYDTLS
|
|
default n
|
|
help
|
|
Enable tinyDTLS debugging support.
|
|
|
|
config ER_COAP
|
|
bool
|
|
prompt "Enable Erbium CoAP engine support."
|
|
depends on NETWORKING
|
|
default n
|
|
help
|
|
Enable Erbium CoAP engine support so that applications can use it.
|
|
|
|
config ER_COAP_WITH_DTLS
|
|
bool
|
|
prompt "Use DTLS in CoAP"
|
|
depends on ER_COAP
|
|
select TINYDTLS
|
|
default n
|
|
help
|
|
Make CoAP engine use DTLS. Note that if you activate DTLS, you
|
|
are not able to send or receive non-DTLS CoAP messages, and
|
|
vice versa.
|
|
|
|
config ER_COAP_CLIENT
|
|
bool
|
|
prompt "Enable CoAP client support"
|
|
depends on ER_COAP
|
|
default n
|
|
help
|
|
Compile in client CoAP support.
|
|
|
|
endif
|