# Kconfig - Bluetooth configuration options # # Copyright (c) 2016 Intel Corporation # # SPDX-License-Identifier: Apache-2.0 # menu "Bluetooth" config BLUETOOTH bool "Bluetooth support" select NET_BUF help This option enables Bluetooth support. if BLUETOOTH choice prompt "Bluetooth Stack Selection" default BLUETOOTH_HCI help Select the Bluetooth stack to compile. config BLUETOOTH_HCI bool "HCI-based" help HCI-based stack with optional host & controller parts and an HCI driver in between. config BLUETOOTH_CUSTOM bool "Custom" help Select a custom, non-HCI based stack. If you're not sure what this is, you probably want the HCI-based stack instead. endchoice if BLUETOOTH_HCI config BLUETOOTH_HCI_RAW bool "RAW HCI access" help This option allows to access Bluetooth controller from the application with the RAW HCI protocol. config BLUETOOTH_PERIPHERAL bool "Peripheral Role support" select BLUETOOTH_BROADCASTER select BLUETOOTH_CONN default y if BLUETOOTH_HCI_RAW help Select this for LE Peripheral role support. config BLUETOOTH_CENTRAL bool "Central Role support" select BLUETOOTH_OBSERVER select BLUETOOTH_CONN default y if BLUETOOTH_HCI_RAW help Select this for LE Central role support. menu "Broadcaster" visible if !BLUETOOTH_PERIPHERAL config BLUETOOTH_BROADCASTER bool "Broadcaster Role support" default y if !BLUETOOTH_OBSERVER help Select this for LE Broadcaster role support. endmenu menu "Observer" visible if !BLUETOOTH_CENTRAL config BLUETOOTH_OBSERVER bool "Observer Role support" help Select this for LE Observer role support. endmenu config BLUETOOTH_CONN # Virtual/hidden option bool config BLUETOOTH_MAX_CONN int "Maximum number of simultaneous connections" depends on BLUETOOTH_CONN range 1 64 default 1 help Maximum number of simultaneous Bluetooth connections supported. if BLUETOOTH_CONN config BLUETOOTH_HCI_ACL_FLOW_CONTROL bool "Controller to Host ACL flow control support" default n # Enable if building a Host-only build default y if !BLUETOOTH_CONTROLLER # Enable if building a Controller-only build default y if BLUETOOTH_HCI_RAW select POLL help Enable support for throttling ACL buffers from the controller to the host. This is particularly useful when the host and controller are on separate cores since it ensures that we do not run out of incoming ACL buffers. endif # BLUETOOTH_CONN config BLUETOOTH_CONTROLLER_TO_HOST_UART_DEV_NAME string "Device Name of UART Device to an external Bluetooth Host" default "UART_0" depends on BLUETOOTH_HCI_RAW help This option specifies the name of UART device to be used to connect to an external Bluetooth Host when Zephyr is acting as a Bluetooth Controller. source "subsys/bluetooth/common/Kconfig" source "subsys/bluetooth/host/Kconfig" source "subsys/bluetooth/controller/Kconfig" source "subsys/bluetooth/shell/Kconfig" endif # BLUETOOTH_HCI endif # BLUETOOTH endmenu