| # networking.kconf - Generic networking configuration options |
| |
| # |
| # Copyright (c) 2015 Intel Corporation. |
| # |
| # Redistribution and use in source and binary forms, with or without |
| # modification, are permitted provided that the following conditions are met: |
| # |
| # 1) Redistributions of source code must retain the above copyright notice, |
| # this list of conditions and the following disclaimer. |
| # |
| # 2) Redistributions in binary form must reproduce the above copyright notice, |
| # this list of conditions and the following disclaimer in the documentation |
| # and/or other materials provided with the distribution. |
| # |
| # 3) Neither the name of Intel Corporation nor the names of its contributors |
| # may be used to endorse or promote products derived from this software without |
| # specific prior written permission. |
| # |
| # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
| # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
| # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
| # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE |
| # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
| # POSSIBILITY OF SUCH DAMAGE. |
| # |
| |
| # |
| # 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. |
| |
| config NETWORKING_UART |
| bool |
| prompt "Network UART/slip driver" |
| depends on NETWORKING |
| select UART_SIMPLE |
| default n |
| 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 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 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 |
| |
| 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 |