# Kconfig - Bluetooth configuration options
#
# Copyright (c) 2016 Intel Corporation
#
# SPDX-License-Identifier: Apache-2.0
#

menuconfig 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_CONTROLLER
	bool "Bluetooth Controller"
	select BLUETOOTH_RECV_IS_RX_THREAD
	help
	  Enables support for SoC native controller implementation.

source "subsys/bluetooth/host/Kconfig"

if BLUETOOTH_CONTROLLER
source "subsys/bluetooth/controller/Kconfig"
endif

endif # BLUETOOTH_HCI
endif # BLUETOOTH
