980 lines
28 KiB
Plaintext
980 lines
28 KiB
Plaintext
# Bluetooth Controller configuration options
|
|
|
|
# Copyright (c) 2016-2017 Nordic Semiconductor ASA
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
# The following symbols are enabled depending if the controller actually
|
|
# supports the respective features.
|
|
|
|
config BT_CTLR_LE_ENC_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_CONN_PARAM_REQ_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_EXT_REJ_IND_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_PER_INIT_FEAT_XCHG_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_DATA_LEN_UPDATE_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_PRIVACY_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_EXT_SCAN_FP_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_PHY_UPDATE_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_PHY_2M_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_PHY_CODED_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_ADV_EXT_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_ADV_PERIODIC_SUPPORT
|
|
depends on BT_CTLR_ADV_EXT_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_ADV_PERIODIC_RSP_SUPPORT
|
|
depends on BT_CTLR_ADV_PERIODIC_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_SYNC_PERIODIC_SUPPORT
|
|
depends on BT_CTLR_ADV_EXT_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_SYNC_PERIODIC_RSP_SUPPORT
|
|
depends on BT_CTLR_SYNC_PERIODIC_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_SYNC_TRANSFER_SENDER_SUPPORT
|
|
depends on BT_CTLR_SYNC_PERIODIC_SUPPORT || BT_CTLR_ADV_PERIODIC_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_SYNC_TRANSFER_RECEIVER_SUPPORT
|
|
depends on BT_CTLR_SYNC_PERIODIC_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_ADV_ISO_SUPPORT
|
|
depends on BT_CTLR_ADV_PERIODIC_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_SYNC_ISO_SUPPORT
|
|
depends on BT_CTLR_SYNC_PERIODIC_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_CENTRAL_ISO_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_PERIPHERAL_ISO_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_CHAN_SEL_2_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_MIN_USED_CHAN_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_SMI_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_SCA_UPDATE_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_CONN_RSSI_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_ECDH_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR_READ_ISO_LINK_QUALITY_SUPPORT
|
|
depends on BT_CTLR_SYNC_ISO_SUPPORT || \
|
|
BT_CTLR_CENTRAL_ISO_SUPPORT || \
|
|
BT_CTLR_PERIPHERAL_ISO_SUPPORT
|
|
bool
|
|
|
|
config BT_CTLR
|
|
bool "Bluetooth Controller"
|
|
help
|
|
Enables support for SoC native controller implementations.
|
|
|
|
if BT_CTLR
|
|
|
|
choice BT_LL_CHOICE
|
|
prompt "Bluetooth Link Layer Selection"
|
|
help
|
|
Select the Bluetooth Link Layer to compile.
|
|
|
|
config BT_LL_SW_SPLIT
|
|
bool "Software-based BLE Link Layer"
|
|
select ENTROPY_GENERATOR
|
|
help
|
|
Use Zephyr software BLE Link Layer ULL LLL split implementation.
|
|
|
|
endchoice
|
|
|
|
comment "BLE Controller configuration"
|
|
|
|
config BT_CTLR_CRYPTO
|
|
bool "Crypto functions in Controller"
|
|
default y
|
|
select ENTROPY_GENERATOR
|
|
help
|
|
Use random number generation and AES encryption support functions
|
|
provided by the controller.
|
|
|
|
config BT_CTLR_HCI_VS_BUILD_INFO
|
|
string "Zephyr HCI VS Build Info string"
|
|
default ""
|
|
depends on BT_HCI_VS_EXT
|
|
help
|
|
User-defined string that will be returned by the Zephyr VS Read Build
|
|
Information command after the Zephyr version and build time. When
|
|
setting this to a value different from an empty string, a space
|
|
character is required at the beginning to separate it from the
|
|
already included information.
|
|
|
|
config BT_CTLR_DUP_FILTER_LEN
|
|
int "Number of addresses in the scan duplicate filter"
|
|
depends on BT_OBSERVER
|
|
depends on BT_LL_SW_SPLIT
|
|
default 16
|
|
help
|
|
Set the number of unique BLE addresses that can be filtered as
|
|
duplicates while scanning.
|
|
|
|
config BT_CTLR_DUP_FILTER_ADV_SET_MAX
|
|
int "Number of Extended Advertising Sets in the scan duplicate filter"
|
|
depends on BT_OBSERVER && BT_CTLR_ADV_EXT && (BT_CTLR_DUP_FILTER_LEN > 0)
|
|
depends on BT_LL_SW_SPLIT
|
|
range 1 16
|
|
default 1
|
|
help
|
|
Set the number of unique Advertising Set ID per Bluetooth Low Energy
|
|
addresses that can be filtered as duplicates while Extended Scanning.
|
|
|
|
config BT_CTLR_RX_BUFFERS
|
|
int "Number of Rx buffers"
|
|
depends on BT_LL_SW_SPLIT
|
|
default 6 if BT_HCI_RAW
|
|
default 1
|
|
range 1 18
|
|
help
|
|
Set the number of Rx PDUs to be buffered in the controller. In a 7.5ms
|
|
connection interval and 2M PHY, maximum 18 packets with L2CAP payload
|
|
size of 1 byte can be received.
|
|
|
|
config BT_CTLR_ISO_RX_BUFFERS
|
|
int "Number of Isochronous Rx buffers"
|
|
depends on BT_CTLR_SYNC_ISO || BT_CTLR_CONN_ISO
|
|
default 8
|
|
range 1 30
|
|
help
|
|
Set the number of Isochronous Rx PDUs to be buffered in the
|
|
controller. Number of required RX buffers would worst-case be
|
|
the number of RX nodes prepared in one ISO event for each
|
|
active ISO group. This depends on the number of bursts in an
|
|
ISO group and number of groups, and may need to be set lower
|
|
that the theoretical maximum. Default of 8 is for supporting
|
|
two groups of 4 payloads, e.g. 2 CIGs with 2 CISes of BN=2.
|
|
|
|
config BT_CTLR_ISO_TX_BUFFERS
|
|
int "Number of Isochronous Tx buffers"
|
|
depends on BT_CTLR_ADV_ISO || BT_CTLR_CONN_ISO
|
|
range 1 255
|
|
default BT_ISO_TX_BUF_COUNT if BT_ISO
|
|
default 3
|
|
help
|
|
Set the number of Isochronous Tx PDUs to be queued for transmission
|
|
in the controller.
|
|
|
|
config BT_CTLR_ISO_TX_BUFFER_SIZE
|
|
int "Isochronous Tx buffer size"
|
|
depends on BT_CTLR_ADV_ISO || BT_CTLR_CONN_ISO
|
|
range 1 4095
|
|
default BT_ISO_TX_MTU if BT_ISO
|
|
default 1
|
|
help
|
|
Size of the Isochronous Tx buffers and the value returned in HCI LE
|
|
Read Buffer Size V2 command response.
|
|
|
|
config BT_CTLR_ISOAL_LOG_DBG_VERBOSE
|
|
bool "ISO-AL verbose debug logging"
|
|
depends on BT_CTLR_ISOAL_LOG_LEVEL = 4
|
|
default n
|
|
help
|
|
Use this option to enable ISO-AL verbose debug logging.
|
|
|
|
config BT_CTLR_ISOAL_SOURCES
|
|
int "Number of Isochronous Adaptation Layer sources"
|
|
depends on BT_CTLR_ADV_ISO || BT_CTLR_CONN_ISO
|
|
range 1 64
|
|
default 1
|
|
help
|
|
Set the number of concurrently active sources supported by the
|
|
ISO AL.
|
|
|
|
config BT_CTLR_ISOAL_SINKS
|
|
int "Number of Isochronous Adaptation Layer sinks"
|
|
depends on BT_CTLR_SYNC_ISO || BT_CTLR_CONN_ISO
|
|
range 1 64
|
|
default 1
|
|
help
|
|
Set the number of concurrently active sinks supported by the
|
|
ISO AL.
|
|
|
|
config BT_CTLR_ISO_RX_SDU_BUFFERS
|
|
int "Number of SDU fragments that the ISO-AL can buffer"
|
|
depends on BT_CTLR_SYNC_ISO || BT_CTLR_CONN_ISO
|
|
default 0
|
|
range 0 64
|
|
help
|
|
Set the number of Isochronous Rx SDU fragments to be buffered in the
|
|
ISO-AL per sink. Buffering is required to compute the size and status
|
|
of the received SDU across all the fragments before each is released.
|
|
The number of buffers and maximum SDU fragment size will limit the
|
|
maximum size of an SDU that can be accurately declared in the HCI ISO
|
|
Data header.
|
|
|
|
config BT_CTLR_ISO_TX_SEG_PLAYLOAD_MIN
|
|
int "Minimum number of playload data bytes in a new segment"
|
|
depends on BT_CTLR_ADV_ISO || BT_CTLR_CONN_ISO
|
|
default 1
|
|
range 1 64
|
|
help
|
|
Minimum number of payload bytes that would make inserting a new
|
|
segment into a PDU worthwhile.
|
|
|
|
config BT_CTLR_ISO_VENDOR_DATA_PATH
|
|
bool "Vendor-specific ISO data path"
|
|
depends on BT_CTLR_SYNC_ISO || BT_CTLR_CONN_ISO
|
|
select BT_CTLR_HCI_CODEC_AND_DELAY_INFO
|
|
|
|
choice BT_CTLR_TX_PWR
|
|
prompt "Tx Power"
|
|
default BT_CTLR_TX_PWR_0
|
|
depends on BT_CTLR_TX_PWR_ANTENNA = 0 || BT_LL_SW_SPLIT
|
|
help
|
|
Select a supported BLE Radio transmit power level in dBm.
|
|
Only values supported natively by the SoC are available.
|
|
The value set here represents the actual default power level fed
|
|
to the antenna.
|
|
|
|
config BT_CTLR_TX_PWR_PLUS_8
|
|
bool "+8 dBm"
|
|
depends on HAS_HW_NRF_RADIO_TX_PWR_HIGH
|
|
|
|
config BT_CTLR_TX_PWR_PLUS_7
|
|
bool "+7 dBm"
|
|
depends on HAS_HW_NRF_RADIO_TX_PWR_HIGH
|
|
|
|
config BT_CTLR_TX_PWR_PLUS_6
|
|
bool "+6 dBm"
|
|
depends on HAS_HW_NRF_RADIO_TX_PWR_HIGH
|
|
|
|
config BT_CTLR_TX_PWR_PLUS_5
|
|
bool "+5 dBm"
|
|
depends on HAS_HW_NRF_RADIO_TX_PWR_HIGH
|
|
|
|
config BT_CTLR_TX_PWR_PLUS_4
|
|
bool "+4 dBm"
|
|
depends on SOC_SERIES_NRF51X || SOC_COMPATIBLE_NRF52X
|
|
|
|
config BT_CTLR_TX_PWR_PLUS_3
|
|
bool "+3 dBm"
|
|
depends on SOC_COMPATIBLE_NRF52X || SOC_SERIES_NRF53X
|
|
|
|
config BT_CTLR_TX_PWR_PLUS_2
|
|
bool "+2 dBm"
|
|
depends on HAS_HW_NRF_RADIO_TX_PWR_HIGH || SOC_SERIES_NRF53X
|
|
|
|
config BT_CTLR_TX_PWR_PLUS_1
|
|
bool "+1 dBm"
|
|
depends on SOC_SERIES_NRF53X
|
|
|
|
config BT_CTLR_TX_PWR_0
|
|
bool "0 dBm"
|
|
|
|
config BT_CTLR_TX_PWR_MINUS_1
|
|
bool "-1 dBm"
|
|
depends on SOC_SERIES_NRF53X
|
|
|
|
config BT_CTLR_TX_PWR_MINUS_2
|
|
bool "-2 dBm"
|
|
depends on SOC_SERIES_NRF53X
|
|
|
|
config BT_CTLR_TX_PWR_MINUS_3
|
|
bool "-3 dBm"
|
|
depends on SOC_SERIES_NRF53X
|
|
|
|
config BT_CTLR_TX_PWR_MINUS_4
|
|
bool "-4 dBm"
|
|
|
|
config BT_CTLR_TX_PWR_MINUS_5
|
|
bool "-5 dBm"
|
|
depends on SOC_SERIES_NRF53X
|
|
|
|
config BT_CTLR_TX_PWR_MINUS_6
|
|
bool "-6 dBm"
|
|
depends on SOC_SERIES_NRF53X
|
|
|
|
config BT_CTLR_TX_PWR_MINUS_7
|
|
bool "-7 dBm"
|
|
depends on SOC_SERIES_NRF53X
|
|
|
|
config BT_CTLR_TX_PWR_MINUS_8
|
|
bool "-8 dBm"
|
|
|
|
config BT_CTLR_TX_PWR_MINUS_12
|
|
bool "-12 dBm"
|
|
|
|
config BT_CTLR_TX_PWR_MINUS_16
|
|
bool "-16 dBm"
|
|
|
|
config BT_CTLR_TX_PWR_MINUS_20
|
|
bool "-20 dBm"
|
|
|
|
config BT_CTLR_TX_PWR_MINUS_30
|
|
bool "-30 dBm"
|
|
depends on SOC_SERIES_NRF51X
|
|
|
|
config BT_CTLR_TX_PWR_MINUS_40
|
|
bool "-40 dBm"
|
|
depends on SOC_COMPATIBLE_NRF52X || SOC_SERIES_NRF53X
|
|
|
|
endchoice
|
|
|
|
config BT_CTLR_TX_PWR_DBM
|
|
int
|
|
default 8 if BT_CTLR_TX_PWR_PLUS_8
|
|
default 7 if BT_CTLR_TX_PWR_PLUS_7
|
|
default 6 if BT_CTLR_TX_PWR_PLUS_6
|
|
default 5 if BT_CTLR_TX_PWR_PLUS_5
|
|
default 4 if BT_CTLR_TX_PWR_PLUS_4
|
|
default 3 if BT_CTLR_TX_PWR_PLUS_3
|
|
default 2 if BT_CTLR_TX_PWR_PLUS_2
|
|
default 1 if BT_CTLR_TX_PWR_PLUS_1
|
|
default 0 if BT_CTLR_TX_PWR_0
|
|
default -1 if BT_CTLR_TX_PWR_MINUS_1
|
|
default -2 if BT_CTLR_TX_PWR_MINUS_2
|
|
default -3 if BT_CTLR_TX_PWR_MINUS_3
|
|
default -4 if BT_CTLR_TX_PWR_MINUS_4
|
|
default -5 if BT_CTLR_TX_PWR_MINUS_5
|
|
default -6 if BT_CTLR_TX_PWR_MINUS_6
|
|
default -7 if BT_CTLR_TX_PWR_MINUS_7
|
|
default -8 if BT_CTLR_TX_PWR_MINUS_8
|
|
default -12 if BT_CTLR_TX_PWR_MINUS_12
|
|
default -16 if BT_CTLR_TX_PWR_MINUS_16
|
|
default -20 if BT_CTLR_TX_PWR_MINUS_20
|
|
default -30 if BT_CTLR_TX_PWR_MINUS_30
|
|
default -40 if BT_CTLR_TX_PWR_MINUS_40
|
|
|
|
config BT_CTLR_TX_PWR_ANTENNA
|
|
int "Set TX power (dBm)"
|
|
range -127 127
|
|
default 0
|
|
depends on !BT_LL_SW_SPLIT
|
|
help
|
|
Request a TX power in dBm. The power level set will be equal to or
|
|
less than the one requested, based on the values supported by the
|
|
hardware used. Values outside the supported range will be set to the
|
|
nearest supported value.
|
|
The value set here represents the actual power level fed to the
|
|
antenna. When a Front-End Module is used, gain values for the SoC and
|
|
FEM are calculated automatically to guarantee the closest possible
|
|
match to the value requested by the user at the RF output.
|
|
|
|
config BT_CTLR_TX_PWR_DYNAMIC_CONTROL
|
|
bool "Tx Power Dynamic Control"
|
|
depends on BT_HCI_VS_EXT
|
|
help
|
|
Enable dynamic control of Tx power per role/connection.
|
|
Provides HCI VS commands to set and get the current Tx
|
|
power on an individual role/connection basis.
|
|
|
|
comment "BLE Controller features"
|
|
|
|
if BT_CONN
|
|
|
|
config BT_CTLR_LE_ENC
|
|
bool "LE Encryption"
|
|
depends on BT_CTLR_LE_ENC_SUPPORT
|
|
default y
|
|
help
|
|
Enable support for Bluetooth v4.0 LE Encryption feature in the
|
|
Controller.
|
|
|
|
config BT_CTLR_ECDH
|
|
bool "Elliptic Curve Diffie-Hellman (ECDH)"
|
|
depends on BT_CTLR_ECDH_SUPPORT
|
|
default y
|
|
help
|
|
Enable support for Bluetooth v4.2 Elliptic Curve Diffie-Hellman
|
|
feature in the controller.
|
|
|
|
config BT_CTLR_CONN_PARAM_REQ
|
|
bool "Connection Parameter Request"
|
|
depends on BT_CTLR_CONN_PARAM_REQ_SUPPORT
|
|
select BT_CTLR_EXT_REJ_IND
|
|
default y
|
|
help
|
|
Enable support for Bluetooth v4.1 Connection Parameter Request feature
|
|
in the Controller.
|
|
|
|
config BT_CTLR_EXT_REJ_IND
|
|
bool "Extended Reject Indication"
|
|
depends on BT_CTLR_EXT_REJ_IND_SUPPORT
|
|
default y
|
|
help
|
|
Enable support for Bluetooth v4.1 Extended Reject Indication feature
|
|
in the Controller.
|
|
|
|
config BT_CTLR_PER_INIT_FEAT_XCHG
|
|
bool "Peripheral-initiated Features Exchange"
|
|
depends on BT_CTLR_PER_INIT_FEAT_XCHG_SUPPORT
|
|
default y
|
|
help
|
|
Enable support for Bluetooth v4.1 Peripheral-initiated Features Exchange
|
|
feature in the Controller.
|
|
|
|
config BT_CTLR_LE_PING
|
|
bool "LE Ping"
|
|
depends on BT_CTLR_LE_ENC
|
|
default y
|
|
help
|
|
Enable support for Bluetooth v4.1 LE Ping feature in the Controller.
|
|
|
|
config BT_CTLR_DATA_LENGTH
|
|
# Hidden option to enable support for Bluetooth v4.2 LE Data Length
|
|
# Update procedure in the Controller.
|
|
bool
|
|
depends on BT_DATA_LEN_UPDATE && BT_CTLR_DATA_LEN_UPDATE_SUPPORT
|
|
default y
|
|
|
|
config BT_CTLR_DATA_LENGTH_MAX
|
|
int "Maximum data length supported"
|
|
depends on BT_CTLR_DATA_LENGTH
|
|
default BT_BUF_ACL_RX_SIZE if BT_BUF_ACL_RX_SIZE < 251
|
|
default 27
|
|
range 27 BT_BUF_ACL_RX_SIZE if BT_BUF_ACL_RX_SIZE < 251
|
|
range 27 251
|
|
help
|
|
Set the maximum data length of PDU supported in the Controller.
|
|
|
|
config BT_CTLR_PHY
|
|
# Hidden option to enable support for Bluetooth 5.0 PHY Update
|
|
# Procedure in the Controller.
|
|
bool
|
|
depends on BT_PHY_UPDATE && BT_CTLR_PHY_UPDATE_SUPPORT
|
|
select BT_CTLR_EXT_REJ_IND
|
|
default y
|
|
|
|
config BT_CTLR_MIN_USED_CHAN
|
|
bool "Minimum Number of Used Channels"
|
|
depends on BT_CTLR_MIN_USED_CHAN_SUPPORT
|
|
default y
|
|
help
|
|
Enable support for Bluetooth 5.0 Minimum Number of Used Channels
|
|
Procedure in the Controller.
|
|
|
|
config BT_CTLR_SCA_UPDATE
|
|
bool "Sleep Clock Accuracy Update procedure"
|
|
depends on BT_SCA_UPDATE && BT_CTLR_SCA_UPDATE_SUPPORT
|
|
default y if BT_CTLR_CONN_ISO
|
|
help
|
|
Enable support for Bluetooth 5.1 Sleep Clock Accuracy
|
|
Update procedure in the Controller.
|
|
|
|
config BT_CTLR_CONN_RSSI
|
|
bool "Connection RSSI"
|
|
depends on BT_CTLR_CONN_RSSI_SUPPORT
|
|
default y if BT_HCI_RAW
|
|
help
|
|
Enable connection RSSI measurement.
|
|
|
|
endif # BT_CONN
|
|
|
|
config BT_CTLR_FILTER_ACCEPT_LIST
|
|
bool "Filter Accept List Support"
|
|
default y if BT_HCI_RAW || BT_FILTER_ACCEPT_LIST
|
|
help
|
|
Enable support for controller Filter Accept List feature
|
|
|
|
config BT_CTLR_PRIVACY
|
|
bool "LE Controller-based Privacy"
|
|
depends on BT_CTLR_PRIVACY_SUPPORT
|
|
select BT_CTLR_FILTER_ACCEPT_LIST if BT_LL_SW_SPLIT
|
|
select BT_RPA
|
|
default y if BT_HCI_RAW || BT_SMP
|
|
help
|
|
Enable support for Bluetooth v4.2 LE Controller-based Privacy feature
|
|
in the Controller.
|
|
|
|
config BT_CTLR_FAL_SIZE
|
|
int "LE Controller-based Privacy White List size"
|
|
depends on BT_CTLR_FILTER_ACCEPT_LIST
|
|
default 8
|
|
range 1 8 if (SOC_COMPATIBLE_NRF || SOC_OPENISA_RV32M1_RISCV32)
|
|
range 1 16 if !(SOC_COMPATIBLE_NRF || SOC_OPENISA_RV32M1_RISCV32)
|
|
help
|
|
Set the size of the Filter Accept List for LE Controller-based Privacy.
|
|
On nRF5x-based controllers, the hardware imposes a limit of 8 devices.
|
|
On OpenISA-based controllers, the hardware imposes a limit of 8 devices.
|
|
|
|
config BT_CTLR_RL_SIZE
|
|
int "LE Controller-based Privacy Resolving List size"
|
|
depends on BT_CTLR_PRIVACY
|
|
default 8
|
|
range 1 8 if SOC_COMPATIBLE_NRF
|
|
range 1 8 if SOC_OPENISA_RV32M1_RISCV32
|
|
help
|
|
Set the size of the Resolving List for LE Controller-based Privacy.
|
|
On nRF5x-based controllers, the hardware imposes a limit of 8 devices.
|
|
On OpenISA-based controllers, the hardware imposes a limit of 8 devices.
|
|
|
|
config BT_CTLR_EXT_SCAN_FP
|
|
bool "LE Extended Scanner Filter Policies"
|
|
depends on BT_OBSERVER && BT_CTLR_EXT_SCAN_FP_SUPPORT
|
|
default y
|
|
help
|
|
Enable support for Bluetooth v4.2 LE Extended Scanner Filter Policies
|
|
in the Controller.
|
|
|
|
config BT_CTLR_PHY_2M
|
|
bool "2Mbps PHY Support"
|
|
depends on (BT_CTLR_PHY || BT_CTLR_ADV_EXT) && BT_CTLR_PHY_2M_SUPPORT
|
|
default y
|
|
help
|
|
Enable support for Bluetooth 5.0 2Mbps PHY in the Controller.
|
|
|
|
config BT_CTLR_PHY_CODED
|
|
bool "Coded PHY Support"
|
|
depends on (BT_CTLR_PHY || BT_CTLR_ADV_EXT) && BT_CTLR_PHY_CODED_SUPPORT
|
|
default y if BT_HCI_RAW
|
|
help
|
|
Enable support for Bluetooth 5.0 Coded PHY in the Controller.
|
|
|
|
config BT_CTLR_CHAN_SEL_2
|
|
bool "Channel Selection Algorithm #2"
|
|
depends on (BT_CONN || (BT_BROADCASTER && BT_CTLR_ADV_EXT) || BT_CTLR_ADV_PERIODIC || BT_CTLR_SYNC_PERIODIC) && BT_CTLR_CHAN_SEL_2_SUPPORT
|
|
default y
|
|
help
|
|
Enable support for Bluetooth 5.0 LE Channel Selection Algorithm #2 in
|
|
the Controller.
|
|
|
|
config BT_CTLR_ADV_EXT
|
|
bool "LE Advertising Extensions"
|
|
depends on BT_CTLR_ADV_EXT_SUPPORT
|
|
select BT_CTLR_CHAN_SEL_2 if BT_LL_SW_SPLIT && BT_BROADCASTER
|
|
select BT_CTLR_SCAN_REQ_NOTIFY if BT_LL_SW_SPLIT && BT_BROADCASTER
|
|
default y if BT_EXT_ADV
|
|
help
|
|
Enable support for Bluetooth 5.0 LE Advertising Extensions in the
|
|
Controller.
|
|
|
|
if BT_CTLR_ADV_EXT
|
|
|
|
config BT_CTLR_ADV_SET
|
|
int "LE Advertising Extensions Sets"
|
|
depends on BT_BROADCASTER
|
|
range 1 64
|
|
default BT_EXT_ADV_MAX_ADV_SET if BT_EXT_ADV
|
|
help
|
|
Maximum supported advertising sets.
|
|
|
|
config BT_CTLR_ADV_INTERVAL_MAX
|
|
hex "Primary Advertising Interval Maximum"
|
|
depends on BT_BROADCASTER
|
|
range 0x000020 0x004000 if BT_LL_SW_SPLIT
|
|
range 0x000020 0xFFFFFF
|
|
default 0x004000 if BT_LL_SW_SPLIT
|
|
default 0xFFFFFF
|
|
help
|
|
Supported Primary Advertising Interval Maximum value.
|
|
Bluetooth Core Specification v5.3 permitted range is 0x000020 to
|
|
0xFFFFFF in 0.625 ms units.
|
|
|
|
config BT_CTLR_ADV_DATA_LEN_MAX
|
|
int "Maximum Advertising Data Length"
|
|
depends on BT_BROADCASTER
|
|
range 31 191 if BT_LL_SW_SPLIT && !BT_CTLR_ADV_DATA_CHAIN
|
|
range 31 1650
|
|
help
|
|
Maximum Extended Advertising Data Length.
|
|
|
|
config BT_CTLR_ADV_PERIODIC
|
|
bool "LE Periodic Advertising in Advertising State"
|
|
depends on BT_BROADCASTER && BT_CTLR_ADV_PERIODIC_SUPPORT
|
|
select BT_CTLR_CHAN_SEL_2
|
|
default y if BT_PER_ADV
|
|
help
|
|
Enable support for Bluetooth 5.0 LE Periodic Advertising in the
|
|
Controller.
|
|
|
|
config BT_CTLR_ADV_PERIODIC_RSP
|
|
bool "LE Periodic Advertising with Responses in Advertising State"
|
|
depends on BT_BROADCASTER && BT_CTLR_ADV_PERIODIC_RSP_SUPPORT
|
|
select BT_CTLR_CHAN_SEL_2
|
|
default y if BT_PER_ADV_RSP
|
|
help
|
|
Enable support for Bluetooth 5.4 LE Periodic Advertising with
|
|
Responses in the Controller.
|
|
|
|
if BT_CTLR_ADV_PERIODIC
|
|
|
|
config BT_CTLR_ADV_PERIODIC_ADI_SUPPORT
|
|
bool "Periodic Advertising ADI support"
|
|
default y
|
|
help
|
|
Enable support for adding AdvDataInfo in Periodic Advertising PDUs.
|
|
|
|
config BT_CTLR_ADV_PERIODIC_INTERVAL_MAX
|
|
hex "Periodic Advertising Interval Maximum"
|
|
range 0x0006 0x2000 if BT_LL_SW_SPLIT
|
|
range 0x0006 0xFFFF
|
|
default 0x2000 if BT_LL_SW_SPLIT
|
|
default 0xFFFF
|
|
help
|
|
Supported Periodic Advertising Interval Maximum value.
|
|
Bluetooth Core Specification v5.3 permitted range is 0x0006 to
|
|
0xFFFF in 1.25 ms units.
|
|
|
|
endif # BT_CTLR_ADV_PERIODIC
|
|
|
|
config BT_CTLR_SYNC_PERIODIC
|
|
bool "LE Periodic Advertising in Synchronization State"
|
|
depends on BT_OBSERVER && BT_CTLR_SYNC_PERIODIC_SUPPORT
|
|
select BT_CTLR_CHAN_SEL_2
|
|
default y if BT_PER_ADV_SYNC
|
|
help
|
|
Enable support for Bluetooth 5.0 LE Periodic Advertising in
|
|
Synchronization state in the Controller.
|
|
|
|
config BT_CTLR_SYNC_PERIODIC_RSP
|
|
bool "LE Periodic Advertising with Responses in Synchronization State"
|
|
depends on BT_OBSERVER && BT_CTLR_SYNC_PERIODIC_RSP_SUPPORT
|
|
select BT_CTLR_CHAN_SEL_2
|
|
default y if BT_PER_ADV_SYNC_RSP
|
|
help
|
|
Enable support for Bluetooth 5.4 LE Periodic Advertising with
|
|
Responses in Synchronization state in the Controller.
|
|
|
|
if BT_CTLR_SYNC_PERIODIC
|
|
|
|
config BT_CTLR_SYNC_PERIODIC_ADV_LIST
|
|
bool "LE Periodic Advertiser List support"
|
|
default y
|
|
help
|
|
Enable support for LE Periodic Advertiser List support.
|
|
|
|
config BT_CTLR_SYNC_PERIODIC_ADV_LIST_SIZE
|
|
int "LE Periodic Advertiser List size"
|
|
depends on BT_CTLR_SYNC_PERIODIC_ADV_LIST
|
|
range 1 255
|
|
default 8
|
|
help
|
|
Set Periodic Advertiser List size, this will be return in the HCI LE
|
|
Read Periodic Advertiser List Command.
|
|
|
|
config BT_CTLR_SYNC_PERIODIC_ADI_SUPPORT
|
|
bool "Periodic Advertising Sync with ADI support (duplicate filtering)"
|
|
default y
|
|
help
|
|
Enable support for duplicate filtering using AdvDataInfo present in
|
|
Periodic Advertising PDUs.
|
|
|
|
config BT_CTLR_SYNC_PERIODIC_CTE_TYPE_FILTERING
|
|
bool "LE Periodic Advertiser filtering by CTE type"
|
|
default y
|
|
help
|
|
Enable filtering of periodic advertisements depending on type of
|
|
Constant Tone Extension.
|
|
|
|
config BT_CTLR_SYNC_TRANSFER_RECEIVER
|
|
bool "Periodic Advertising Sync Transfer receiver"
|
|
depends on BT_CTLR_SYNC_TRANSFER_RECEIVER_SUPPORT
|
|
default BT_PER_ADV_SYNC_TRANSFER_RECEIVER
|
|
help
|
|
Enable support for the Periodic Advertising Sync Transfer control procedure
|
|
as a receiver of the LL_PERIODIC_SYNC_IND. See Core_v5.3, Vol 6, Part B,
|
|
Section 5.1.13
|
|
|
|
endif # BT_CTLR_SYNC_PERIODIC
|
|
|
|
config BT_CTLR_SYNC_TRANSFER_SENDER
|
|
bool "Periodic Advertising Sync Transfer sender"
|
|
depends on BT_CTLR_SYNC_TRANSFER_SENDER_SUPPORT
|
|
default BT_PER_ADV_SYNC_TRANSFER_SENDER
|
|
help
|
|
Enable support for the Periodic Advertising Sync Transfer control procedure
|
|
as a transmitter of the LL_PERIODIC_SYNC_IND. See Core_v5.3, Vol 6, Part B,
|
|
Section 5.1.13
|
|
|
|
config BT_CTLR_ADV_ISO
|
|
bool "LE Broadcast Isochronous Channel advertising" if !BT_LL_SW_SPLIT
|
|
depends on BT_BROADCASTER && BT_CTLR_ADV_ISO_SUPPORT
|
|
select BT_CTLR_ADV_PERIODIC
|
|
select BT_CTLR_SET_HOST_FEATURE
|
|
default y if BT_ISO_BROADCASTER
|
|
help
|
|
Enable support for Bluetooth 5.2 LE Isochronous Advertising in the
|
|
Controller.
|
|
|
|
config BT_CTLR_ADV_ISO
|
|
bool "LE Broadcast Isochronous Channel advertising (Split Link Layer) [EXPERIMENTAL]" if BT_LL_SW_SPLIT
|
|
select EXPERIMENTAL if BT_LL_SW_SPLIT
|
|
|
|
config BT_CTLR_SYNC_ISO
|
|
bool "LE Broadcast Isochronous Channel advertising sync" if !BT_LL_SW_SPLIT
|
|
depends on BT_OBSERVER && BT_CTLR_SYNC_ISO_SUPPORT
|
|
select BT_CTLR_SYNC_PERIODIC
|
|
select BT_CTLR_SET_HOST_FEATURE
|
|
default y if BT_ISO_SYNC_RECEIVER
|
|
help
|
|
Enable support for Bluetooth 5.2 LE Isochronous Advertising sync in
|
|
the Controller.
|
|
|
|
config BT_CTLR_SYNC_ISO
|
|
bool "LE Broadcast Isochronous Channel advertising sync (Split Link Layer) [EXPERIMENTAL]" if BT_LL_SW_SPLIT
|
|
select EXPERIMENTAL if BT_LL_SW_SPLIT
|
|
|
|
config BT_CTLR_BROADCAST_ISO
|
|
bool
|
|
select BT_CRYPTO if BT_LL_SW_SPLIT
|
|
default BT_CTLR_ADV_ISO || BT_CTLR_SYNC_ISO
|
|
|
|
config BT_CTLR_ADV_ISO_SET
|
|
int "LE Isochronous Channel advertising sets"
|
|
depends on BT_CTLR_ADV_ISO
|
|
range 1 32
|
|
help
|
|
Maximum supported advertising sets.
|
|
|
|
config BT_CTLR_ADV_ISO_STREAM_MAX
|
|
int "Maximum supported Broadcast ISO Streams per Broadcast ISO group"
|
|
depends on BT_CTLR_ADV_ISO
|
|
range 1 31
|
|
help
|
|
Maximum supported Broadcast ISO Streams per Broadcast ISO group.
|
|
|
|
config BT_CTLR_ADV_ISO_STREAM_COUNT
|
|
int "Maximum Broadcast ISO Streams"
|
|
depends on BT_CTLR_ADV_ISO
|
|
range BT_CTLR_ADV_ISO_STREAM_MAX 64
|
|
help
|
|
Maximum Broadcast ISO Streams supported in the the Controller across
|
|
all Broadcast ISO groups.
|
|
|
|
config BT_CTLR_ADV_ISO_PDU_LEN_MAX
|
|
int "Maximum Broadcast Isochronous Channel PDU Length"
|
|
depends on BT_CTLR_ADV_ISO
|
|
range 1 251
|
|
default 251
|
|
help
|
|
Maximum Broadcast Isochronous Channel PDU Length.
|
|
|
|
config BT_CTLR_SCAN_SYNC_ISO_SET
|
|
int "LE ISO Broadcast Isochronous Groups Sync Sets"
|
|
depends on BT_CTLR_SYNC_ISO
|
|
range 1 64
|
|
default 1
|
|
help
|
|
Maximum supported broadcast isochronous groups (BIGs) sync sets.
|
|
|
|
config BT_CTLR_SYNC_ISO_STREAM_MAX
|
|
int "Maximum supported ISO Synchronized Receiver Streams per Broadcast ISO group"
|
|
depends on BT_CTLR_SYNC_ISO
|
|
range 1 31
|
|
help
|
|
Maximum supported ISO Synchronized Receiver Streams per Broadcast ISO
|
|
group.
|
|
|
|
config BT_CTLR_SYNC_ISO_STREAM_COUNT
|
|
int "Maximum ISO Synchronized Receiver Streams"
|
|
depends on BT_CTLR_SYNC_ISO
|
|
range BT_CTLR_SYNC_ISO_STREAM_MAX 64
|
|
help
|
|
Maximum ISO Synchronized Receiver Streams supported in the the
|
|
Controller across all Broadcast ISO groups.
|
|
|
|
config BT_CTLR_SYNC_ISO_PDU_LEN_MAX
|
|
int "Maximum Synchronized Isochronous Channel PDU Length"
|
|
depends on BT_CTLR_SYNC_ISO
|
|
range 251 251 if BT_HCI_RAW
|
|
range 1 251
|
|
default 251
|
|
help
|
|
Maximum Synchronized Receiver Isochronous Channel PDU Length.
|
|
|
|
endif # BT_CTLR_ADV_EXT
|
|
|
|
config BT_CTLR_SET_HOST_FEATURE
|
|
bool "LE Set Host Feature Command [EXPERIMENTAL]"
|
|
select EXPERIMENTAL
|
|
help
|
|
Enables optional LE Set Host Feature Command
|
|
|
|
config BT_CTLR_CENTRAL_ISO
|
|
bool "LE Connected Isochronous Stream Central" if !BT_LL_SW_SPLIT
|
|
depends on BT_CTLR_CENTRAL_ISO_SUPPORT && BT_CENTRAL
|
|
default y if BT_ISO_CENTRAL
|
|
help
|
|
Enable support for Bluetooth 5.2 LE Connected Isochronous Stream
|
|
Central role in the Controller.
|
|
|
|
config BT_CTLR_CENTRAL_ISO
|
|
bool "LE Connected Isochronous Stream Central (Split Link Layer) [EXPERIMENTAL]" if BT_LL_SW_SPLIT
|
|
select BT_CTLR_SET_HOST_FEATURE
|
|
select EXPERIMENTAL if BT_LL_SW_SPLIT
|
|
|
|
config BT_CTLR_PERIPHERAL_ISO
|
|
bool "LE Connected Isochronous Stream Peripheral" if !BT_LL_SW_SPLIT
|
|
depends on BT_CTLR_PERIPHERAL_ISO_SUPPORT && BT_PERIPHERAL
|
|
default y if BT_ISO_PERIPHERAL
|
|
help
|
|
Enable support for Bluetooth 5.2 LE Connected Isochronous Stream
|
|
Peripheral role in the Controller.
|
|
|
|
config BT_CTLR_PERIPHERAL_ISO
|
|
bool "LE Connected Isochronous Stream Peripheral (Split Link Layer) [EXPERIMENTAL]" if BT_LL_SW_SPLIT
|
|
select BT_CTLR_SET_HOST_FEATURE
|
|
select EXPERIMENTAL if BT_LL_SW_SPLIT
|
|
|
|
config BT_CTLR_CONN_ISO
|
|
bool
|
|
default BT_CTLR_CENTRAL_ISO || BT_CTLR_PERIPHERAL_ISO
|
|
|
|
config BT_CTLR_CONN_ISO_STREAMS
|
|
int "LE Connected Isochronous Streams"
|
|
depends on BT_CTLR_CONN_ISO
|
|
range 1 64
|
|
default 2
|
|
help
|
|
Maximum supported total number of CISes.
|
|
|
|
config BT_CTLR_CONN_ISO_GROUPS
|
|
int "LE Connected Isochronous Groups"
|
|
depends on BT_CTLR_CONN_ISO
|
|
range 1 240
|
|
default 1
|
|
help
|
|
Maximum supported CIGs.
|
|
|
|
config BT_CTLR_CONN_ISO_STREAMS_PER_GROUP
|
|
int "LE Connected Isochronous Streams per Group"
|
|
depends on BT_CTLR_CONN_ISO
|
|
range 1 31
|
|
default 2
|
|
help
|
|
Maximum supported CISes per CIG.
|
|
|
|
config BT_CTLR_CONN_ISO_PDU_LEN_MAX
|
|
int "Maximum Connected Isochronous Channel PDU Length"
|
|
depends on BT_CTLR_CONN_ISO
|
|
range 251 251 if BT_HCI_RAW
|
|
range 1 251
|
|
default 251
|
|
help
|
|
Maximum Connected Isochronous Channel PDU Length.
|
|
|
|
config BT_CTLR_CONN_ISO_SDU_LEN_MAX
|
|
int "Maximum Connected Isochronous Channel SDU Length"
|
|
depends on BT_CTLR_CONN_ISO
|
|
range BT_CTLR_CONN_ISO_PDU_LEN_MAX 4095
|
|
default 251
|
|
help
|
|
Maximum Connected Isochronous Channel SDU Length.
|
|
|
|
config BT_CTLR_CONN_ISO_STREAMS_MAX_NSE
|
|
int "LE Connected Isochronous Streams max number of subevents"
|
|
depends on BT_CTLR_CONN_ISO
|
|
range 1 31
|
|
default 31
|
|
help
|
|
Maximum number of CIS subevents.
|
|
|
|
config BT_CTLR_CONN_ISO_STREAMS_MAX_FT
|
|
int "LE Connected Isochronous Streams max flush timeout"
|
|
depends on BT_CTLR_CONN_ISO
|
|
range 1 255
|
|
default 255
|
|
help
|
|
Maximum number of CIS flush timeout events.
|
|
|
|
config BT_CTLR_CONN_ISO_AVOID_SEGMENTATION
|
|
bool "Avoid SDU fragmentation for framed mode"
|
|
depends on BT_CTLR_CENTRAL_ISO
|
|
help
|
|
When creating a CIG, the Max_PDU size is calculated according to BT
|
|
Core 5.4 Vol 6, Part G, Section 2.2. However, HAP specifies a need for
|
|
avoiding segmentation by forcing the Max_PDU to the appropriate value.
|
|
Since there is no way to control the Max_PDU using the non-test
|
|
interface, the config provides a way to force the Max_PDU to Max_SDU +
|
|
5 (header + offset).
|
|
|
|
config BT_CTLR_ISO
|
|
bool
|
|
default BT_CTLR_BROADCAST_ISO || BT_CTLR_CONN_ISO
|
|
|
|
config BT_CTLR_READ_ISO_LINK_QUALITY
|
|
bool "LE Read ISO Link Quality"
|
|
depends on BT_CTLR_READ_ISO_LINK_QUALITY_SUPPORT
|
|
depends on BT_CTLR_SYNC_ISO || BT_CTLR_CONN_ISO
|
|
help
|
|
Enable support for LE Read ISO Link Quality command.
|
|
|
|
config BT_CTLR_SMI_RX
|
|
bool "Stable modulation index - Receiver"
|
|
depends on BT_CTLR_SMI_SUPPORT
|
|
help
|
|
Enable support for Bluetooth 5.0 SMI RX in the Controller.
|
|
|
|
config BT_CTLR_SMI_TX
|
|
bool "Stable modulation index - Transmitter"
|
|
depends on BT_CTLR_SMI_SUPPORT
|
|
help
|
|
Enable support for Bluetooth 5.0 SMI TX in the Controller.
|
|
|
|
config BT_CTLR_SMI_TX_SETTING
|
|
bool "Stable modulation index - Transmitter as setting"
|
|
depends on BT_CTLR_SMI_TX && BT_CTLR_SETTINGS
|
|
help
|
|
Enable support for Bluetooth 5.0 SMI TX through a system setting.
|
|
|
|
config BT_CTLR_HCI_CODEC_AND_DELAY_INFO
|
|
bool "Codecs and controller delay information commands"
|
|
help
|
|
Enable HCI commands to read information about supported
|
|
codecs, codec capabilities, and controller delay.
|
|
|
|
rsource "Kconfig.df"
|
|
rsource "Kconfig.ll_sw_split"
|
|
rsource "Kconfig.dtm"
|
|
|
|
config BT_CTLR_ASSERT_HANDLER
|
|
bool "Application Defined Assertion Handler"
|
|
help
|
|
This option enables an application-defined sink for the
|
|
controller assertion mechanism. This must be defined in
|
|
application code as void \"bt_ctlr_assert_handle(char \*, int)\"
|
|
and will be invoked whenever the controller code encounters
|
|
an unrecoverable error.
|
|
|
|
endif # BT_CTLR
|
|
|
|
config BT_CTLR_DEBUG_PINS_CPUAPP
|
|
bool "Bluetooth Controller Debug Pins"
|
|
depends on BOARD_NRF5340DK_NRF5340_CPUAPP
|
|
help
|
|
Route debug GPIO toggling for the BLE Controller. Enable this when
|
|
using Bluetooth Controller Debug Pins in co-processor and the main
|
|
processor needs to setup and/or route the signals.
|