2017-08-19 16:48:52 +02:00
|
|
|
#
|
|
|
|
# For a description of the syntax of this configuration file,
|
|
|
|
# see the file kconfig-language.txt in the NuttX tools repository.
|
|
|
|
#
|
|
|
|
|
|
|
|
menu "IEEE 802.15.4 socket support"
|
|
|
|
|
|
|
|
config NET_IEEE802154
|
|
|
|
bool "IEEE 802.15.4 socket support"
|
|
|
|
default n
|
2017-08-20 19:14:43 +02:00
|
|
|
depends on WIRELESS_IEEE802154
|
2017-08-19 16:48:52 +02:00
|
|
|
select NETDEV_IOCTL
|
|
|
|
---help---
|
|
|
|
Enable support for raw, IEEE 802.15.4 sockets.
|
|
|
|
|
2018-03-30 19:33:21 +02:00
|
|
|
Raw sockets allow receiving and transmitting IEEE 802.15.4 radio
|
2017-08-19 16:48:52 +02:00
|
|
|
frames without a layer2 protocol such as 6LoWPAN in between. Frames
|
|
|
|
received are copied into a IEEE 802.15.4 socket tap before they
|
|
|
|
enter the network. Frames written into a IEEE 802.15.4 socket will
|
|
|
|
bypass the network altogether and will be sent directly to the
|
|
|
|
IEEE 802.15.4 MAC network interface driver outgoing frame queue.
|
|
|
|
|
|
|
|
if NET_IEEE802154
|
|
|
|
|
2017-08-20 15:10:48 +02:00
|
|
|
config NET_IEEE802154_FRAMELEN
|
2018-03-30 19:33:21 +02:00
|
|
|
int "IEEE 802.15.4 Frame Length"
|
2017-08-20 15:10:48 +02:00
|
|
|
default 127
|
|
|
|
range 1 999999
|
|
|
|
---help---
|
|
|
|
For standard IEEE 802.15.4 radios, this should always be 127 bytes.
|
|
|
|
However, some IEEE 802.15.4 radios may non-standard frame lengths.
|
|
|
|
|
|
|
|
This setting is currently used only for detection data transfers
|
|
|
|
that would exceed the radio frame length.
|
|
|
|
|
2023-02-13 11:21:46 +01:00
|
|
|
config NET_IEEE802154_PREALLOC_CONNS
|
|
|
|
int "Preallocated IEEE 802.15.4 sockets"
|
2017-08-20 02:50:50 +02:00
|
|
|
default 4
|
2023-02-13 11:21:46 +01:00
|
|
|
---help---
|
|
|
|
Number of IEEE 802.15.4 connections (all tasks).
|
2023-02-25 19:14:11 +01:00
|
|
|
|
2023-02-13 11:21:46 +01:00
|
|
|
This number of connections will be pre-allocated during system boot.
|
|
|
|
If dynamic connections allocation is enabled, more connections may
|
|
|
|
be allocated at a later time, as the system needs them. Else this
|
|
|
|
will be the maximum number of connections available to the system
|
|
|
|
at all times.
|
|
|
|
|
|
|
|
Set to 0 to disable (and rely only on dynamic allocations).
|
|
|
|
|
|
|
|
config NET_IEEE802154_ALLOC_CONNS
|
|
|
|
int "Dynamic IEEE 802.15.4 connections allocation"
|
|
|
|
default 0
|
|
|
|
---help---
|
|
|
|
Dynamic memory allocations for IEEE 802.15.4.
|
|
|
|
|
|
|
|
When set to 0 all dynamic allocations are disabled.
|
|
|
|
|
|
|
|
When set to 1 a new connection will be allocated every time,
|
|
|
|
and it will be free'd when no longer needed.
|
|
|
|
|
|
|
|
Setting this to 2 or more will allocate the connections in
|
|
|
|
batches (with batch size equal to this config). When a
|
|
|
|
connection is no longer needed, it will be returned to the
|
|
|
|
free connections pool, and it will never be deallocated!
|
|
|
|
|
|
|
|
config NET_IEEE802154_MAX_CONNS
|
|
|
|
int "Maximum number of IEEE 802.15.4 connections"
|
|
|
|
default 0
|
|
|
|
depends on NET_IEEE802154_ALLOC_CONNS > 0
|
|
|
|
---help---
|
|
|
|
If dynamic connections allocation is selected (NET_IEEE802154_ALLOC_CONNS > 0)
|
|
|
|
this will limit the number of connections that can be allocated.
|
2023-02-25 19:14:11 +01:00
|
|
|
|
2023-02-13 11:21:46 +01:00
|
|
|
This is useful in case the system is under very heavy load (or
|
|
|
|
under attack), ensuring that the heap will not be exhausted.
|
2017-08-20 02:50:50 +02:00
|
|
|
|
|
|
|
config NET_IEEE802154_NCONTAINERS
|
|
|
|
int "Number of pre-allocated frame containers"
|
2017-08-21 15:52:43 +02:00
|
|
|
default 8
|
2017-08-20 02:50:50 +02:00
|
|
|
---help---
|
|
|
|
This specifies the total number of preallocated frame containers.
|
|
|
|
One must be allocated with each incoming frame.
|
2017-08-19 16:48:52 +02:00
|
|
|
|
2017-08-21 15:52:43 +02:00
|
|
|
config NET_IEEE802154_BACKLOG
|
|
|
|
int "Maximum frame backlog"
|
|
|
|
default 8
|
|
|
|
range 0 255
|
|
|
|
---help---
|
|
|
|
As frames are received, then are help in an RX queue. They remain
|
|
|
|
in the RX queue until application logic reads the queue frames. To
|
|
|
|
prevent overrun, the maximum backlog may be set to a nonzero value.
|
|
|
|
What the backlog of queue frames reaches that count, the olds frame
|
|
|
|
will be freed, preventing overrun at the cost of losing the oldest
|
|
|
|
frames.
|
|
|
|
|
2020-02-23 09:50:23 +01:00
|
|
|
NOTE: The special value of zero will disable all backlog checks.
|
2017-08-21 15:52:43 +02:00
|
|
|
|
2017-08-19 16:48:52 +02:00
|
|
|
endif # NET_IEEE802154
|
|
|
|
endmenu # IEEE 802.15.4 Socket Support
|