136 lines
4.1 KiB
Plaintext
136 lines
4.1 KiB
Plaintext
# Copyright (c) 2016 Intel Corporation.
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
menuconfig NET_L2_IEEE802154
|
|
bool "IEEE 802.15.4 Radio"
|
|
select NET_L2_PHY_IEEE802154
|
|
help
|
|
Add support for low rate WPAN IEEE 802.15.4 technology.
|
|
|
|
if NET_L2_IEEE802154
|
|
|
|
config NET_L2_IEEE802154_MGMT
|
|
bool
|
|
select NET_MGMT
|
|
select NET_MGMT_EVENT
|
|
|
|
config NET_L2_IEEE802154_SUB_GHZ
|
|
bool
|
|
help
|
|
Enable support for Sub-GHz devices. This will add a tiny bit more
|
|
logic in L2 code for channel management. This option is automatically
|
|
selected when relevant device driver is enabled.
|
|
|
|
module = NET_L2_IEEE802154
|
|
module-dep = NET_LOG
|
|
module-str = Log level for IEEE 802.15.4
|
|
module-help = Enables IEEE 802.15.4 code to output debug messages.
|
|
source "subsys/net/Kconfig.template.log_config.net"
|
|
|
|
config NET_DEBUG_L2_IEEE802154_DISPLAY_PACKET
|
|
bool "IEEE 802.15.4 packet display"
|
|
depends on NET_LOG
|
|
help
|
|
Enable printing out in/out 802.15.4 packets. This is extremely
|
|
verbose, do not enable this unless you know what you are doing.
|
|
|
|
choice
|
|
prompt "Which packet do you want to print-out?"
|
|
default NET_DEBUG_L2_IEEE802154_DISPLAY_PACKET_FULL
|
|
depends on NET_DEBUG_L2_IEEE802154_DISPLAY_PACKET
|
|
|
|
config NET_DEBUG_L2_IEEE802154_DISPLAY_PACKET_FULL
|
|
bool "Print-out both RX and TX packets"
|
|
help
|
|
This will print-out both received and transmitted packets.
|
|
|
|
config NET_DEBUG_L2_IEEE802154_DISPLAY_PACKET_RX
|
|
bool "Print-out only RX packets"
|
|
help
|
|
This will print-out received packets only.
|
|
|
|
config NET_DEBUG_L2_IEEE802154_DISPLAY_PACKET_TX
|
|
bool "Print-out only TX packets"
|
|
help
|
|
This will print-out transmitted packets only.
|
|
|
|
endchoice
|
|
|
|
config NET_L2_IEEE802154_ACK_REPLY
|
|
bool "IEEE 802.15.4 ACK reply logic"
|
|
help
|
|
Enable inner stack's logic on handling ACK request. Note that
|
|
if the hw driver has an AUTOACK feature, this is then unnecessary.
|
|
|
|
choice
|
|
prompt "Device features level support"
|
|
default NET_L2_IEEE802154_RFD
|
|
help
|
|
Select which features level you want on the device. Depending on it,
|
|
the device might expose more or less 802.15.4 protocol features.
|
|
Only RFD is supported for now.
|
|
|
|
config NET_L2_IEEE802154_RFD
|
|
bool "Support Reduced Functionality Device level"
|
|
select NET_L2_IEEE802154_MGMT
|
|
help
|
|
This is the level for PAN device, not PAN coordinator. This will make
|
|
possible to do active and/or passive scans, as well as associating
|
|
and disassociating to/from a PAN. Current support is very fragile,
|
|
thus it is not set as the default level.
|
|
endchoice
|
|
|
|
config NET_L2_IEEE802154_SHELL
|
|
bool "IEEE 802.15.4 shell module"
|
|
select SHELL
|
|
depends on NET_L2_IEEE802154_RFD
|
|
help
|
|
This can be used for testing 15.4 through the console via exposing
|
|
a shell module named "ieee15_4".
|
|
|
|
config NET_L2_IEEE802154_FRAGMENT
|
|
bool "802.15.4 fragmentation support"
|
|
default y
|
|
depends on NET_6LO
|
|
help
|
|
If IPv6 packets size more than 802.15.4 MTU, packet is fragmented
|
|
and reassemble incoming packets according to RFC4944/6282.
|
|
|
|
config NET_L2_IEEE802154_FRAGMENT_REASS_CACHE_SIZE
|
|
int "IEEE 802.15.4 Reassembly cache size"
|
|
depends on NET_L2_IEEE802154_FRAGMENT
|
|
default 1
|
|
help
|
|
Simultaneously reassemble 802.15.4 fragments depending on
|
|
cache size.
|
|
|
|
config NET_L2_IEEE802154_REASSEMBLY_TIMEOUT
|
|
int "IEEE 802.15.4 Reassembly timeout in seconds"
|
|
depends on NET_L2_IEEE802154_FRAGMENT
|
|
default 5
|
|
range 1 60
|
|
help
|
|
Reassembly timer will start as soon as first packet received
|
|
from peer. Reassembly should be finished within a given time.
|
|
Otherwise all accumulated fragments are dropped.
|
|
|
|
config NET_L2_IEEE802154_SECURITY
|
|
bool "IEEE 802.15.4 security [EXPERIMENTAL]"
|
|
select EXPERIMENTAL
|
|
help
|
|
Enable 802.15.4 frame security handling, in order to bring data
|
|
confidentiality and authenticity.
|
|
|
|
config NET_L2_IEEE802154_SECURITY_CRYPTO_DEV_NAME
|
|
string "Crypto device name used for <en/de>cryption"
|
|
default ""
|
|
depends on NET_L2_IEEE802154_SECURITY
|
|
help
|
|
This option should be used to set the crypto device name that
|
|
IEEE 802.15.4 soft MAC will use to run authentication, encryption and
|
|
decryption operations on incoming/outgoing frames.
|
|
|
|
source "subsys/net/l2/ieee802154/Kconfig.radio"
|
|
|
|
endif
|