2017-05-10 22:27:16 +08:00
|
|
|
# Kconfig - Bluetooth common configuration options
|
|
|
|
#
|
|
|
|
# Copyright (c) 2017 Nordic Semiconductor ASA
|
|
|
|
# Copyright (c) 2016 Intel Corporation
|
|
|
|
#
|
|
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
#
|
|
|
|
|
2019-02-21 22:20:57 +08:00
|
|
|
config BT_HAS_HCI_VS
|
|
|
|
bool
|
|
|
|
help
|
|
|
|
This option is set by the Bluetooth controller to indicate support
|
|
|
|
for the Zephyr HCI Vendor-Specific Commands and Event.
|
|
|
|
|
2018-09-11 19:22:43 +08:00
|
|
|
config BT_HCI_VS
|
|
|
|
bool "Zephyr HCI Vendor-Specific Commands"
|
2019-02-21 22:20:57 +08:00
|
|
|
depends on BT_HAS_HCI_VS
|
2018-09-11 19:22:43 +08:00
|
|
|
default y
|
|
|
|
help
|
2018-11-03 03:09:45 +08:00
|
|
|
Enable support for the Zephyr HCI Vendor-Specific Commands in the
|
2018-09-11 19:22:43 +08:00
|
|
|
Host and/or Controller. This enables Set Version Information,
|
|
|
|
Supported Commands, Supported Features vendor commands.
|
|
|
|
|
2017-10-03 20:37:06 +08:00
|
|
|
config BT_HCI_VS_EXT
|
|
|
|
bool "Zephyr HCI Vendor-Specific Extensions"
|
2018-09-11 19:22:43 +08:00
|
|
|
depends on BT_HCI_VS
|
2017-10-03 20:37:06 +08:00
|
|
|
default y
|
|
|
|
help
|
|
|
|
Enable support for the Zephyr HCI Vendor-Specific Extensions in the
|
2018-09-11 19:22:43 +08:00
|
|
|
Host and/or Controller. This enables Write BD_ADDR, Read Build Info,
|
|
|
|
Read Static Addresses and Read Key Hierarchy Roots vendor commands.
|
2017-10-03 20:37:06 +08:00
|
|
|
|
2017-11-02 02:31:36 +08:00
|
|
|
config BT_HCI_VS_EXT_DETECT
|
|
|
|
bool "Use heuristics to guess HCI vendor extensions support in advance"
|
|
|
|
depends on BT_HCI_VS_EXT && !BT_CTLR
|
2018-05-25 18:32:34 +08:00
|
|
|
default y if BOARD_QEMU_X86 || BOARD_QEMU_CORTEX_M3 || BOARD_NATIVE_POSIX
|
2017-11-02 02:31:36 +08:00
|
|
|
help
|
|
|
|
Use some heuristics to try to guess in advance whether the controller
|
|
|
|
supports the HCI vendor extensions in advance, in order to prevent
|
|
|
|
sending vendor commands to controller which may interpret them in
|
|
|
|
completely different ways.
|
|
|
|
|
2019-01-09 23:55:14 +08:00
|
|
|
config BT_HCI_MESH_EXT
|
|
|
|
bool "Mesh HCI Command support"
|
|
|
|
depends on BT_BROADCASTER && BT_OBSERVER && !BT_LL_SW_SPLIT
|
|
|
|
help
|
|
|
|
Enable support for the Bluetooth Mesh HCI Commands.
|
|
|
|
|
2019-03-19 23:51:06 +08:00
|
|
|
config BT_WAIT_NOP
|
|
|
|
bool "Wait for \"NOP\" Command Complete event during init"
|
|
|
|
help
|
|
|
|
Emit a Command Complete event from the Controller (and wait for it
|
|
|
|
from the Host) for the NOP opcode to indicate that the Controller is
|
|
|
|
ready to receive commands.
|
|
|
|
|
2017-08-09 14:21:11 +08:00
|
|
|
config BT_RPA
|
2017-05-10 22:27:16 +08:00
|
|
|
# Virtual/hidden option
|
|
|
|
bool
|
2017-06-16 18:59:22 +08:00
|
|
|
select TINYCRYPT
|
|
|
|
select TINYCRYPT_AES
|
2017-05-10 22:27:16 +08:00
|
|
|
|
2019-08-19 18:38:12 +08:00
|
|
|
config BT_ASSERT
|
|
|
|
bool "Custom Bluetooth assert implementation"
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
Use a custom Bluetooth assert implementation instead of the
|
|
|
|
kernel-wide __ASSERT(), which is enabled by CONFIG_ASSERT and is
|
|
|
|
disabled by default.
|
|
|
|
|
|
|
|
if BT_ASSERT
|
|
|
|
|
|
|
|
config BT_ASSERT_VERBOSE
|
|
|
|
bool "Print out an assert string when using BT_ASSERT"
|
|
|
|
default y
|
|
|
|
help
|
|
|
|
When CONFIG_BT_ASSERT is enabled, this option turns on printing the
|
|
|
|
cause of the assert to the console using printk().
|
|
|
|
|
|
|
|
config BT_ASSERT_PANIC
|
|
|
|
bool "Use k_panic() instead of k_oops()"
|
|
|
|
help
|
|
|
|
When CONFIG_BT_ASSERT is enabled, this option makes the code call
|
|
|
|
k_panic() instead of k_oops() when an assertion is triggered.
|
|
|
|
|
|
|
|
endif # BT_ASSERT
|
|
|
|
|
2017-08-09 14:21:11 +08:00
|
|
|
config BT_DEBUG
|
2017-05-10 22:27:16 +08:00
|
|
|
# Virtual/hidden option to make the conditions more intuitive
|
|
|
|
bool
|
|
|
|
|
|
|
|
choice
|
|
|
|
prompt "Bluetooth debug type"
|
2017-08-09 14:21:11 +08:00
|
|
|
default BT_DEBUG_NONE
|
2017-05-10 22:27:16 +08:00
|
|
|
|
2017-08-09 14:21:11 +08:00
|
|
|
config BT_DEBUG_NONE
|
2017-05-10 22:27:16 +08:00
|
|
|
bool "No debug log"
|
|
|
|
help
|
|
|
|
Select this to disable all Bluetooth debug logs.
|
|
|
|
|
2017-08-09 14:21:11 +08:00
|
|
|
config BT_DEBUG_LOG
|
2017-05-10 22:27:16 +08:00
|
|
|
bool "Normal printf-style to console"
|
2017-08-09 14:21:11 +08:00
|
|
|
select BT_DEBUG
|
2018-07-17 15:35:52 +08:00
|
|
|
select LOG
|
2017-05-10 22:27:16 +08:00
|
|
|
help
|
|
|
|
This option enables Bluetooth debug going to standard
|
|
|
|
serial console.
|
|
|
|
|
2017-08-09 14:21:11 +08:00
|
|
|
config BT_DEBUG_MONITOR
|
2017-05-10 22:27:16 +08:00
|
|
|
bool "Monitor protocol over UART"
|
2017-08-09 14:21:11 +08:00
|
|
|
select BT_DEBUG
|
2018-10-19 00:32:41 +08:00
|
|
|
select LOG
|
2017-05-10 22:27:16 +08:00
|
|
|
select CONSOLE_HAS_DRIVER
|
|
|
|
help
|
|
|
|
Use a custom logging protocol over the console UART
|
|
|
|
instead of plain-text output. Requires a special application
|
|
|
|
on the host side that can decode this protocol. Currently
|
|
|
|
the 'btmon' tool from BlueZ is capable of doing this.
|
|
|
|
|
|
|
|
If the target board has two or more external UARTs it is
|
|
|
|
possible to keep using UART_CONSOLE together with this option,
|
|
|
|
however if there is only a single external UART then
|
|
|
|
UART_CONSOLE needs to be disabled (in which case printk/printf
|
|
|
|
will get encoded into the monitor protocol).
|
|
|
|
|
|
|
|
endchoice
|
|
|
|
|
2017-08-09 14:21:11 +08:00
|
|
|
if BT_DEBUG
|
2017-05-10 22:27:16 +08:00
|
|
|
|
2019-08-28 22:29:26 +08:00
|
|
|
# Workaround for not being able to have commas in macro arguments
|
|
|
|
DT_CHOSEN_Z_BT_MON_UART := zephyr,bt-mon-uart
|
|
|
|
|
2017-08-09 14:21:11 +08:00
|
|
|
config BT_MONITOR_ON_DEV_NAME
|
2017-05-10 22:27:16 +08:00
|
|
|
string "Device Name of Bluetooth monitor logging UART"
|
2017-08-09 14:21:11 +08:00
|
|
|
depends on BT_DEBUG_MONITOR
|
2019-08-28 22:29:26 +08:00
|
|
|
default "$(dt_chosen_label,$(DT_CHOSEN_Z_BT_MON_UART))" if HAS_DTS
|
2017-05-10 22:27:16 +08:00
|
|
|
default "UART_0"
|
|
|
|
help
|
|
|
|
This option specifies the name of UART device to be used
|
|
|
|
for the Bluetooth monitor logging.
|
|
|
|
|
2017-08-09 14:21:11 +08:00
|
|
|
config BT_DEBUG_HCI_DRIVER
|
2017-05-10 22:27:16 +08:00
|
|
|
bool "Bluetooth HCI driver debug"
|
|
|
|
help
|
|
|
|
This option enables debug support for the active
|
|
|
|
Bluetooth HCI driver, including the Controller-side HCI layer
|
|
|
|
when included in the build.
|
|
|
|
|
2017-08-09 14:21:11 +08:00
|
|
|
config BT_DEBUG_RPA
|
2017-05-10 22:27:16 +08:00
|
|
|
bool "Bluetooth Resolvable Private Address (RPA) debug"
|
2017-08-09 14:21:11 +08:00
|
|
|
depends on BT_RPA
|
2017-05-10 22:27:16 +08:00
|
|
|
help
|
|
|
|
This option enables debug support for the Bluetooth
|
|
|
|
Resolvable Private Address (RPA) generation and resolution.
|
|
|
|
|
2019-03-07 12:06:32 +08:00
|
|
|
endif # BT_DEBUG
|