blob: 9acb811e6b60254994e33c54840fbc8ba7be8ff6 [file] [log] [blame]
# Nordic Semiconductor nRF5 802.15.4 configuration options
# Copyright (c) 2017 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0
menuconfig IEEE802154_NRF5
bool "nRF52 series IEEE 802.15.4 Driver"
default y
depends on DT_HAS_NORDIC_NRF_IEEE802154_ENABLED
select NRF_802154_RADIO_DRIVER if HAS_HW_NRF_RADIO_IEEE802154
select NRF_802154_SER_HOST if !HAS_HW_NRF_RADIO_IEEE802154
if IEEE802154_NRF5
config IEEE802154_NRF5_RX_STACK_SIZE
int "Driver's internal RX thread stack size"
default 800
help
This option sets the driver's stack size for its internal RX thread.
The default value should be sufficient, but in case it proves to be
a too little one, this option makes it easy to play with the size.
config IEEE802154_NRF5_INIT_PRIO
int "nRF52 IEEE 802.15.4 initialization priority"
default 80
help
Set the initialization priority number. Do not mess with it unless
you know what you are doing.
config IEEE802154_NRF5_EXT_IRQ_MGMT
bool
help
The driver may manage radio IRQs by itself, or use an external
radio IRQ provider. When radio IRQs are managed by an external
provider, the driver shall not configure radio IRQs.
Enable this option when external radio IRQ provider is enabled in
the system. One example of external radio IRQ provider could be
a radio arbiter used in dynamic multiprotocol applications.
config IEEE802154_NRF5_UICR_EUI64_ENABLE
bool "Support usage of EUI64 value stored in UICR registers"
depends on !IEEE802154_VENDOR_OUI_ENABLE
depends on SOC_SERIES_NRF52X || SOC_SERIES_NRF53X
help
This option enables setting custom vendor EUI64 value
stored in User information configuration registers (UICR).
Notice that this disables the default setting of EUI64
value from Factory information configuration registers
(FICR).
if IEEE802154_NRF5_UICR_EUI64_ENABLE
config IEEE802154_NRF5_UICR_EUI64_REG
int "UICR base register for the EUI64 value"
range 0 30 if SOC_SERIES_NRF52X
range 0 190 if SOC_SERIES_NRF53X
default 0
help
Base of the two consecutive registers from the UICR customer
section in which custom EUI64 is stored.
endif # IEEE802154_NRF5_UICR_EUI64_ENABLE
config IEEE802154_NRF5_FCS_IN_LENGTH
bool "Include FCS field in the overall packet length"
default y if IEEE802154_RAW_MODE || NET_L2_OPENTHREAD
help
Some 802.15.4 L2 implementations expect that FCS length is included in
the overall packet length while others not. Allow to configure this
behavior, based on the selected upper layer.
config IEEE802154_NRF5_DELAY_TRX_ACC
int "Clock accuracy for delayed operations"
default CLOCK_CONTROL_NRF_ACCURACY if CLOCK_CONTROL_NRF_ACCURACY < 255
default 255
help
Accuracy of the clock used for scheduling radio delayed operations (delayed transmission
or delayed reception), in ppm.
config IEEE802154_NRF5_LOG_RX_FAILURES
bool "Frame reception failures logging"
help
There are few cases where the frame reception failure can happen because of
internal cause. These cases are reported forward by general code error.
This options enables logging the reason of frame reception failure.
It can be helpful for the network traffic analyze but it generates also
a lot of log records in a stress environment.
config IEEE802154_NRF5_MULTIPLE_CCA
bool "Support for multiple CCA attempts before transmission"
help
When this option is enabled the OpenThread capability
IEEE802154_OPENTHREAD_HW_MULTIPLE_CCA is supported by the ieee802154_nrf5.
endif