2016-02-26 00:43:51 +08:00
|
|
|
#
|
|
|
|
# For a description of the syntax of this configuration file,
|
|
|
|
# see the file kconfig-language.txt in the NuttX tools repository.
|
|
|
|
#
|
|
|
|
|
2016-02-27 21:26:20 +08:00
|
|
|
if NET_6LOWPAN
|
2016-02-26 00:43:51 +08:00
|
|
|
|
2017-03-28 23:00:25 +08:00
|
|
|
config NET_6LOWPAN_FRAG
|
|
|
|
bool "6loWPAN Fragmentation"
|
|
|
|
default y
|
|
|
|
---help---
|
|
|
|
CONFIG_NET_6LOWPAN_FRAG specifies if 6lowpan fragmentation should be
|
|
|
|
used or not. Fragmentation is on by default.
|
|
|
|
|
2017-03-30 00:17:34 +08:00
|
|
|
config NET_6LOWPAN_FRAMELEN
|
|
|
|
int "IEEE802.15.4 MAC Frame Length"
|
|
|
|
default 127
|
|
|
|
range 127 999999
|
|
|
|
---help---
|
|
|
|
Some wireless devices may use non-standard frame lengths. This
|
|
|
|
setting should never be smaller than 127.
|
|
|
|
|
2017-03-28 23:00:25 +08:00
|
|
|
choice
|
|
|
|
prompt "6loWPAN Compression"
|
|
|
|
default NET_6LOWPAN_COMPRESSION_HC06
|
|
|
|
|
|
|
|
config NET_6LOWPAN_COMPRESSION_IPv6
|
|
|
|
bool "IPv6 Dispatch"
|
|
|
|
---help---
|
|
|
|
Packets compression when only IPv6 dispatch is used. There is no
|
|
|
|
compression in this case, all fields are sent inline. We just add
|
|
|
|
the IPv6 dispatch byte before the packet.
|
|
|
|
|
|
|
|
config NET_6LOWPAN_COMPRESSION_HC1
|
|
|
|
bool "6loWPAN HC1"
|
|
|
|
---help---
|
|
|
|
Compress IP/UDP header using HC1 and HC_UDP
|
|
|
|
|
|
|
|
config NET_6LOWPAN_COMPRESSION_HC06
|
|
|
|
bool "6loWPAN HC06"
|
|
|
|
---help---
|
|
|
|
Compress IP/UDP header using HC06 compression
|
|
|
|
|
|
|
|
endchoice # 6loWPAN Compression
|
|
|
|
|
2017-03-29 01:16:28 +08:00
|
|
|
config NET_6LOWPAN_COMPRESSION_THRESHOLD
|
|
|
|
int "Lower compression threshold"
|
|
|
|
default 63
|
|
|
|
depends on !NET_6LOWPAN_COMPRESSION_IPv6
|
|
|
|
---help---
|
|
|
|
CONFIG_NET_6LOWPAN_COMPRESSION_THRESHOLD sets a lower threshold for
|
|
|
|
when packets should not be compressed.
|
|
|
|
|
2017-03-29 00:47:25 +08:00
|
|
|
if NET_6LOWPAN_COMPRESSION_HC06
|
|
|
|
|
2017-03-28 23:00:25 +08:00
|
|
|
config NET_6LOWPAN_MAXADDRCONTEXT
|
|
|
|
int "Maximum address contexts"
|
|
|
|
default 1
|
|
|
|
---help---
|
|
|
|
If we use IPHC compression, how many address contexts do we support?
|
|
|
|
|
2017-03-29 00:47:25 +08:00
|
|
|
config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_0_0
|
|
|
|
hex "Address context 0 Prefix 0"
|
|
|
|
default 0xaa
|
|
|
|
---help---
|
|
|
|
Prefix 0 for address context ze0ro (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 0)
|
|
|
|
|
|
|
|
config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_0_1
|
|
|
|
hex "Address context 0 Prefix 1"
|
|
|
|
default 0xaa
|
|
|
|
---help---
|
|
|
|
Prefix 1 for address context 0 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 0)
|
|
|
|
|
|
|
|
config NET_6LOWPAN_MAXADDRCONTEXT_PREINIT_1
|
|
|
|
bool "Pre-initialize address context 1"
|
|
|
|
default n
|
|
|
|
---help---
|
|
|
|
Preinitialize address context 1 for better header compression
|
|
|
|
(Saves up to 13 bytes per 6lowpan packet). Assumes
|
|
|
|
CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 1)
|
|
|
|
|
|
|
|
if NET_6LOWPAN_MAXADDRCONTEXT_PREINIT_1
|
|
|
|
|
|
|
|
config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_1_0
|
|
|
|
hex "Address context 1 Prefix 0"
|
|
|
|
default 0xaa
|
|
|
|
---help---
|
|
|
|
Prefix 0 for address context 1 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 1)
|
|
|
|
|
|
|
|
config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_1_1
|
|
|
|
hex "Address context 1 Prefix 1"
|
|
|
|
default 0xaa
|
|
|
|
---help---
|
|
|
|
Prefix 1 for address context 1 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 1)
|
|
|
|
|
|
|
|
endif # NET_6LOWPAN_MAXADDRCONTEXT_PREINIT_1
|
|
|
|
|
|
|
|
config NET_6LOWPAN_MAXADDRCONTEXT_PREINIT_2
|
|
|
|
bool "Pre-initialize address context 2"
|
|
|
|
default n
|
|
|
|
depends on NET_6LOWPAN_MAXADDRCONTEXT_PREINIT_1
|
|
|
|
---help---
|
|
|
|
Preinitialize any address contexts for better header compression
|
|
|
|
(Saves up to 13 bytes per 6lowpan packet). Assumes
|
|
|
|
CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 2)
|
|
|
|
|
|
|
|
if NET_6LOWPAN_MAXADDRCONTEXT_PREINIT_2
|
|
|
|
|
|
|
|
config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_2_0
|
|
|
|
hex "Address context 2 Prefix 0"
|
|
|
|
default 0xaa
|
|
|
|
---help---
|
|
|
|
Prefix 0 for address context 2 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 2)
|
|
|
|
|
|
|
|
config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_2_1
|
|
|
|
hex "Address context 2 Prefix 1"
|
|
|
|
default 0xaa
|
|
|
|
---help---
|
|
|
|
Prefix 1 for address context 2 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 2)
|
|
|
|
|
|
|
|
endif # NET_6LOWPAN_MAXADDRCONTEXT_PREINIT_0
|
|
|
|
endif # NET_6LOWPAN_COMPRESSION_HC06
|
|
|
|
|
2017-03-29 02:23:19 +08:00
|
|
|
config NET_6LOWPAN_RIMEADDR_SIZE
|
|
|
|
int "Rime address size"
|
|
|
|
default 2
|
2017-03-29 07:26:53 +08:00
|
|
|
range 2 8
|
|
|
|
---help---
|
|
|
|
Only the values 2 and 8 are supported
|
2017-03-29 02:23:19 +08:00
|
|
|
|
2017-03-31 05:38:56 +08:00
|
|
|
config NET_6LOWPAN_MAXAGE
|
2017-03-29 00:47:25 +08:00
|
|
|
int "Packet reassembly timeout"
|
|
|
|
default 20
|
|
|
|
---help---
|
|
|
|
Timeout for packet reassembly at the 6lowpan layer (should be < 60s)
|
|
|
|
|
2017-03-29 01:16:28 +08:00
|
|
|
config NET_6LOWPAN_MAX_MACTRANSMITS
|
|
|
|
int "Max MAC transmissions"
|
|
|
|
default 4
|
2016-02-26 04:01:22 +08:00
|
|
|
---help---
|
2017-03-29 01:16:28 +08:00
|
|
|
CONFIG_NET_6LOWPAN_MAX_MACTRANSMITS specifies how many times the MAC
|
|
|
|
layer should resend packets if no link-layer ACK wasreceived. This
|
|
|
|
only makes sense with the csma_driver.
|
2016-02-26 04:01:22 +08:00
|
|
|
|
2017-03-31 05:38:56 +08:00
|
|
|
config NET_6LOWPAN_MAXPAYLOAD
|
2017-03-29 01:16:28 +08:00
|
|
|
int "Max packet size"
|
|
|
|
default 102
|
|
|
|
---help---
|
2017-03-31 05:38:56 +08:00
|
|
|
NET_6LOWPAN_MAXPAYLOAD specifies the maximum size of packets
|
2017-03-29 01:16:28 +08:00
|
|
|
before they get fragmented. The default is 127 bytes (the maximum size
|
|
|
|
of a 802.15.4 frame) - 25 bytes (for the 802.15.4 MAClayer header). This
|
|
|
|
can be increased for systems with larger packet sizes.
|
2016-02-26 04:01:22 +08:00
|
|
|
|
2017-03-31 07:18:18 +08:00
|
|
|
config NET_6LOWPAN_MTU
|
|
|
|
int "6LoWPAN packet buffer size"
|
|
|
|
default 1294
|
|
|
|
range 590 1518
|
|
|
|
depends on NET_6LOWPAN_FRAG
|
|
|
|
---help---
|
|
|
|
Packet buffer size. This size includes the TCP/UDP payload plus the
|
|
|
|
size of TCP/UDP header, the IP header, and the Ethernet header.
|
|
|
|
This value is normally referred to as the MTU (Maximum Transmission
|
|
|
|
Unit); the payload is the MSS (Maximum Segment Size).
|
|
|
|
|
|
|
|
NOTE that this option depends on fragmentation support. By
|
|
|
|
supporting fragmentation, we can handle quite large "logical" packet
|
|
|
|
sizes. Without fragmentation support, the MTU is equal to the frame
|
|
|
|
size and that has already been selected.
|
|
|
|
|
2016-02-27 21:26:20 +08:00
|
|
|
config NET_6LOWPAN_TCP_RECVWNDO
|
|
|
|
int "6LoWPAN TCP receive window size"
|
2017-03-31 07:18:18 +08:00
|
|
|
default 1220 if NET_6LOWPAN_FRAG
|
|
|
|
default 102 if !NET_6LOWPAN_FRAG
|
2016-02-27 00:08:36 +08:00
|
|
|
depends on NET_TCP
|
2016-02-26 04:01:22 +08:00
|
|
|
---help---
|
|
|
|
The size of the advertised receiver's window. Should be set low
|
2017-03-31 07:18:18 +08:00
|
|
|
(i.e., to the size of the IEEE802.15.4 MTU or frame payload) if
|
|
|
|
the application is slow to process incoming data, or high (32768
|
|
|
|
bytes) if the application processes data quickly.
|
2016-02-26 00:43:51 +08:00
|
|
|
|
2016-02-27 21:26:20 +08:00
|
|
|
endif # NET_6LOWPAN
|