# Kconfig - Bluetooth LE driver configuration options

#
# Copyright (c) 2015-2016 Intel Corporation
#
# SPDX-License-Identifier: Apache-2.0
#

#
# Bluetooth options
#

# Controller support is an HCI driver in itself, so these HCI driver
# options are only applicable if controller support hasn't been enabled.
if BT && ! BT_CTLR

menu "Bluetooth Drivers"

if BT_HCI
source "drivers/bluetooth/hci/Kconfig"
endif

if BT_CUSTOM
# Insert here any custom (non-HCI) offload drives
endif

endmenu

endif # BT && ! BT_CTLR
