| # Kconfig - Bluetooth configuration options | 
 | # | 
 | # Copyright (c) 2016 Intel Corporation | 
 | # | 
 | # SPDX-License-Identifier: Apache-2.0 | 
 | # | 
 |  | 
 | menu "Bluetooth" | 
 |  | 
 | config BT | 
 | 	bool "Bluetooth support" | 
 | 	select NET_BUF | 
 | 	help | 
 | 	  This option enables Bluetooth support. | 
 |  | 
 | if BT | 
 |  | 
 | module = BT | 
 | module-str = bt | 
 | source "subsys/logging/Kconfig.template.log_config" | 
 |  | 
 | choice | 
 | 	prompt "Bluetooth Stack Selection" | 
 | 	default BT_HCI | 
 | 	help | 
 | 	  Select the Bluetooth stack to compile. | 
 |  | 
 | config BT_HCI | 
 | 	bool "HCI-based" | 
 | 	help | 
 | 	  HCI-based stack with optional host & controller parts and an | 
 | 	  HCI driver in between. | 
 |  | 
 | config BT_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 | 
 |  | 
 | # The Bluetooth subsystem requires the system workqueue to execute at | 
 | # a cooperative priority. | 
 | config SYSTEM_WORKQUEUE_PRIORITY | 
 | 	range -256 -1 | 
 |  | 
 | if BT_HCI | 
 |  | 
 | config BT_HCI_RAW | 
 | 	bool "RAW HCI access" | 
 | 	help | 
 | 	  This option allows to access Bluetooth controller | 
 | 	  from the application with the RAW HCI protocol. | 
 |  | 
 | config BT_PERIPHERAL | 
 | 	bool "Peripheral Role support" | 
 | 	select BT_BROADCASTER | 
 | 	select BT_CONN | 
 | 	default y if BT_HCI_RAW | 
 | 	help | 
 | 	  Select this for LE Peripheral role support. | 
 |  | 
 | config BT_CENTRAL | 
 | 	bool "Central Role support" | 
 | 	select BT_OBSERVER | 
 | 	select BT_CONN | 
 | 	default y if BT_HCI_RAW | 
 | 	help | 
 | 	  Select this for LE Central role support. | 
 |  | 
 | menu "Broadcaster" | 
 | 	visible if !BT_PERIPHERAL | 
 |  | 
 | config BT_BROADCASTER | 
 | 	bool "Broadcaster Role support" | 
 | 	default y if !BT_OBSERVER | 
 | 	help | 
 | 	  Select this for LE Broadcaster role support. | 
 |  | 
 | endmenu | 
 |  | 
 | menu "Observer" | 
 | 	visible if !BT_CENTRAL | 
 |  | 
 | config BT_OBSERVER | 
 | 	bool "Observer Role support" | 
 | 	help | 
 | 	  Select this for LE Observer role support. | 
 |  | 
 | endmenu | 
 |  | 
 | config BT_PHY_UPDATE | 
 | 	bool "PHY Update" | 
 | 	default y | 
 | 	help | 
 | 	  Enable support for Bluetooth 5.0 PHY Update Procedure. | 
 |  | 
 | config BT_DATA_LEN_UPDATE | 
 | 	bool "Data Length Update" | 
 | 	default y | 
 | 	help | 
 | 	  Enable support for Bluetooth v4.2 LE Data Length Update procedure. | 
 |  | 
 | source "subsys/bluetooth/services/Kconfig" | 
 |  | 
 | config BT_CONN | 
 | 	# Virtual/hidden option | 
 | 	bool | 
 |  | 
 | config BT_MAX_CONN | 
 | 	int "Maximum number of simultaneous connections" | 
 | 	depends on BT_CONN | 
 | 	range 1 64 | 
 | 	default 1 | 
 | 	help | 
 | 	  Maximum number of simultaneous Bluetooth connections | 
 | 	  supported. | 
 |  | 
 | if BT_CONN | 
 | config BT_HCI_ACL_FLOW_CONTROL | 
 | 	bool "Controller to Host ACL flow control support" | 
 | 	# Enable if building a Host-only build | 
 | 	default y if !BT_CTLR | 
 | 	# Enable if building a Controller-only build | 
 | 	default y if BT_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 # BT_CONN | 
 |  | 
 | config BT_CTLR_TO_HOST_UART_DEV_NAME | 
 | 	string "Device Name of UART Device to an external Bluetooth Host" | 
 | 	default "UART_0" | 
 | 	depends on BT_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 # BT_HCI | 
 |  | 
 | endif # BT | 
 |  | 
 | endmenu |