123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317 |
- #
- # For a description of the syntax of this configuration file,
- # see the file kconfig-language.txt in the NuttX tools repository.
- #
- if NET_6LOWPAN
- config NET_6LOWPAN_NREASSBUF
- int "Number of preallocated reassembly buffers"
- default 2
- ---help---
- Large IPv6 packets will be fragmented by 6LoWPAN into multiple
- frames and reconstitued into a reassembly buffer on the receiving
- side. Each concurrent reassembly requires one buffer. Reassembly
- buffers are large: The size of the 6LoWPAN MTU plus some overhead
- for the reassembly state.
- Some reassembly buffers may be preallocated; some may be allocated
- dynamically from the stack. The former require more static memory
- usage; the later require additional CPU cycles to perform the
- allocation and may effect deterministic behavior. So this is a
- trade-off between resources and performance. If the number of pre-
- allocated reassembly buffers are exhausted, the reassembly will
- continue with dynamically allocated reassembly buffers.
- This behavior can be changed with CONFIG_NET_6LOWPAN_REASS_STATIC
- config NET_6LOWPAN_REASS_STATIC
- bool "Static reassembly buffers"
- default n
- ---help---
- By default, reassembly buffers may be allocated dynamically from the
- stack when all of the statically allocation reassembly buffers are
- in use. This will require additional CPU cycles to perform the
- allocation and may effect deterministic behavior. This option may
- be selected to suppress all dynamica allocation of reassembly
- buffers. In that case, only static reassembly buffers are available;
- when those are exhausted, frames that require reassembly will be lost.
- 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
- 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.
- config NET_6LOWPAN_MINPORT
- hex "Minimum port number"
- default 0xf0b0
- depends on NET_6LOWPAN_COMPRESSION_HC1
- ---help---
- HC1 compression of UDP headersis feasible only if both src and dest
- ports are between CONFIG_NET_6LOWPAN_MINPORT and
- CONFIG_NET_6LOWPAN_MINPORT + 15, inclusive.
- All nodes must agree on the value of CONFIG_NET_6LOWPAN_MINPORT
- if NET_6LOWPAN_COMPRESSION_HC06
- config NET_6LOWPAN_MAXADDRCONTEXT
- int "Maximum address contexts"
- default 1
- ---help---
- If we use IPHC compression, how many address contexts do we support?
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_0_0
- hex "Address context 0 Prefix 0"
- default 0xaa
- ---help---
- Prefix 0 for address context zero (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_PREFIX_0_2
- hex "Address context 0 Prefix 2"
- default 0xaa
- ---help---
- Prefix 2 for address context 0 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 0)
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_0_3
- hex "Address context 0 Prefix 3"
- default 0xaa
- ---help---
- Prefix 3 for address context 0 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 0)
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_0_4
- hex "Address context 0 Prefix 4"
- default 0xaa
- ---help---
- Prefix 4 for address context 0 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 0)
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_0_5
- hex "Address context 0 Prefix 5"
- default 0xaa
- ---help---
- Prefix 5 for address context 0 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 0)
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_0_6
- hex "Address context 0 Prefix 6"
- default 0xaa
- ---help---
- Prefix 6 for address context 0 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 0)
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_0_7
- hex "Address context 0 Prefix 7"
- default 0xaa
- ---help---
- Prefix 7 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)
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_1_2
- hex "Address context 1 Prefix 2"
- default 0xaa
- ---help---
- Prefix 2 for address context 1 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 1)
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_1_3
- hex "Address context 1 Prefix 3"
- default 0xaa
- ---help---
- Prefix 3 for address context 1 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 1)
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_1_4
- hex "Address context 1 Prefix 4"
- default 0xaa
- ---help---
- Prefix 4 for address context 1 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 1)
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_1_5
- hex "Address context 1 Prefix 5"
- default 0xaa
- ---help---
- Prefix 5 for address context 1 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 1)
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_1_6
- hex "Address context 1 Prefix 6"
- default 0xaa
- ---help---
- Prefix 6 for address context 1 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 1)
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_1_7
- hex "Address context 1 Prefix 7"
- default 0xaa
- ---help---
- Prefix 7 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)
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_2_2
- hex "Address context 2 Prefix 2"
- default 0xaa
- ---help---
- Prefix 2 for address context 2 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 2)
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_2_3
- hex "Address context 2 Prefix 3"
- default 0xaa
- ---help---
- Prefix 3 for address context 2 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 2)
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_2_4
- hex "Address context 2 Prefix 4"
- default 0xaa
- ---help---
- Prefix 4 for address context 2 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 2)
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_2_5
- hex "Address context 2 Prefix 5"
- default 0xaa
- ---help---
- Prefix 5 for address context 2 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 2)
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_2_6
- hex "Address context 2 Prefix 6"
- default 0xaa
- ---help---
- Prefix 6 for address context 2 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 2)
- config NET_6LOWPAN_MAXADDRCONTEXT_PREFIX_2_7
- hex "Address context 2 Prefix 7"
- default 0xaa
- ---help---
- Prefix 7 for address context 2 (assumes CONFIG_NET_6LOWPAN_MAXADDRCONTEXT >= 2)
- endif # NET_6LOWPAN_MAXADDRCONTEXT_PREINIT_2
- endif # NET_6LOWPAN_COMPRESSION_HC06
- config NET_6LOWPAN_EXTENDEDADDR
- bool "Extended IEEE 802.15.4 address"
- default n
- ---help---
- By default, a 2-byte short address is used for the IEEE802.15.4 MAC
- device's link layer address. If this option is selected, then an
- 8-byte extended address will be used.
- All devices operating on a network have unique, 8-byte addresses,
- referred to as extended addresses. A device will use either the
- extended address for direct communication within the PAN or the
- short 2-byte address that was allocated by the PAN coordinator when
- the device associated.
- config NET_6LOWPAN_MAXAGE
- int "Packet reassembly timeout"
- default 20
- ---help---
- Timeout for packet reassembly at the 6lowpan layer in units of
- seconds (should be < 60s)
- config NET_6LOWPAN_MAX_MACTRANSMITS
- int "Max MAC transmissions"
- default 4
- range 1 255
- ---help---
- CONFIG_NET_6LOWPAN_MAX_MACTRANSMITS specifies how many times the MAC
- layer should resend packets if no link-layer ACK was received. This
- only makes sense with the csma_driver.
- config NET_6LOWPAN_PKTSIZE
- int "6LoWPAN packet buffer size"
- default 1294
- range 590 1518
- ---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 related to the MTU (Maximum Transmission Unit), except
- that it includes the size of the link layer header; the payload is
- the MSS (Maximum Segment Size). 6LoWPAN has no link layer header (at
- least in the packet buffer which is only used for re-assembly). So
- for 6LoWPAN the MTU is the same as the PKTSIZE.
- 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.
- config NET_6LOWPAN_DUMPBUFFER
- bool "Enable dumping of buffer data"
- default n
- depends on DEBUG_NET_INFO
- ---help---
- Enable dumping of all packet and frame buffers coming into and out
- of the 6LoWPAN logic. This will generate a large volume of data if
- selected.
- endif # NET_6LOWPAN
|