1# Copyright (c) 2016 Intel Corporation. 2# SPDX-License-Identifier: Apache-2.0 3 4menuconfig NET_L2_IEEE802154 5 bool "IEEE 802.15.4 Radio" 6 select NET_L2_PHY_IEEE802154 7 help 8 Add support for low rate WPAN IEEE 802.15.4 technology. 9 10if NET_L2_IEEE802154 11 12config NET_L2_IEEE802154_MGMT 13 bool 14 select NET_MGMT 15 select NET_MGMT_EVENT 16 17module = NET_L2_IEEE802154 18module-dep = NET_LOG 19module-str = Log level for IEEE 802.15.4 20module-help = Enables IEEE 802.15.4 code to output debug messages. 21source "subsys/net/Kconfig.template.log_config.net" 22 23config NET_DEBUG_L2_IEEE802154_DISPLAY_PACKET 24 bool "IEEE 802.15.4 packet display" 25 depends on NET_LOG 26 help 27 Enable printing out in/out 802.15.4 packets. This is extremely 28 verbose, do not enable this unless you know what you are doing. 29 30choice 31 prompt "Which packet do you want to print-out?" 32 default NET_DEBUG_L2_IEEE802154_DISPLAY_PACKET_FULL 33 depends on NET_DEBUG_L2_IEEE802154_DISPLAY_PACKET 34 35config NET_DEBUG_L2_IEEE802154_DISPLAY_PACKET_FULL 36 bool "Print-out both RX and TX packets" 37 help 38 This will print-out both received and transmitted packets. 39 40config NET_DEBUG_L2_IEEE802154_DISPLAY_PACKET_RX 41 bool "Print-out only RX packets" 42 help 43 This will print-out received packets only. 44 45config NET_DEBUG_L2_IEEE802154_DISPLAY_PACKET_TX 46 bool "Print-out only TX packets" 47 help 48 This will print-out transmitted packets only. 49 50endchoice 51 52choice 53 prompt "Device features level support" 54 default NET_L2_IEEE802154_RFD 55 help 56 Select which features level you want on the device. Depending on it, 57 the device might expose more or less 802.15.4 protocol features. 58 Only RFD is supported for now. 59 60config NET_L2_IEEE802154_RFD 61 bool "Support Reduced Functionality Device level" 62 select NET_L2_IEEE802154_MGMT 63 help 64 This is the level for PAN device, not PAN coordinator. This will make 65 possible to do active and/or passive scans, as well as associating 66 and disassociating to/from a PAN. Current support is very fragile, 67 thus it is not set as the default level. 68endchoice 69 70config NET_L2_IEEE802154_SHELL 71 bool "IEEE 802.15.4 shell module" 72 select SHELL 73 depends on NET_L2_IEEE802154_RFD 74 help 75 This can be used for testing 15.4 through the console via exposing 76 a shell module named "ieee15_4". 77 78config NET_L2_IEEE802154_FRAGMENT 79 bool "802.15.4 fragmentation support" 80 default y 81 depends on NET_6LO 82 help 83 If IPv6 packets size more than 802.15.4 MTU, packet is fragmented 84 and reassemble incoming packets according to RFC4944/6282. 85 86if NET_L2_IEEE802154_FRAGMENT 87 88config NET_L2_IEEE802154_FRAGMENT_REASS_CACHE_SIZE 89 int "IEEE 802.15.4 Reassembly cache size" 90 default 1 91 help 92 Simultaneously reassemble 802.15.4 fragments depending on 93 cache size. 94 95config NET_L2_IEEE802154_REASSEMBLY_TIMEOUT 96 int "IEEE 802.15.4 Reassembly timeout in seconds" 97 default 5 98 range 1 60 99 help 100 Reassembly timer will start as soon as first packet received 101 from peer. Reassembly should be finished within a given time. 102 Otherwise all accumulated fragments are dropped. 103 104endif # NET_L2_IEEE802154_FRAGMENT 105 106config NET_L2_IEEE802154_SECURITY 107 bool "IEEE 802.15.4 security [EXPERIMENTAL]" 108 select EXPERIMENTAL 109 help 110 Enable 802.15.4 frame security handling, in order to bring data 111 confidentiality and authenticity. The implementation is incomplete 112 (only implicit key mode, no key/device specific state, incoming 113 and outgoing security procedures only partially implemented, etc.). 114 Therefore the feature is to be considered EXPERIMENTAL work in 115 progress. 116 117config NET_L2_IEEE802154_SECURITY_CRYPTO_DEV_NAME 118 string "Crypto device name used for <en/de>cryption" 119 default "" 120 depends on NET_L2_IEEE802154_SECURITY 121 help 122 This option should be used to set the crypto device name that 123 IEEE 802.15.4 soft MAC will use to run authentication, encryption and 124 decryption operations on incoming/outgoing frames. 125 126source "subsys/net/l2/ieee802154/Kconfig.radio" 127 128endif 129