Boot Linux faster!

Check our new training course

Boot Linux faster!

Check our new training course
and Creative Commons CC-BY-SA
lecture and lab materials

Bootlin logo

Elixir Cross Referencer

# Kconfig - Bluetooth LE driver configuration options

#
# Copyright (c) 2015 Intel Corporation
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

#
# Bluetooth options
#

if BLUETOOTH

menu "Bluetooth Drivers"

if BLUETOOTH_STACK_HCI

comment "Bluetooth HCI Driver Options"

config BLUETOOTH_UART
	bool
	default n

choice
	prompt "Bluetooth HCI driver"
	default BLUETOOTH_H4

config	BLUETOOTH_H4
	bool "H:4 UART"
	select SERIAL
	select UART_INTERRUPT_DRIVEN
	select BLUETOOTH_UART
	help
	  Bluetooth H:4 UART driver. Requires hardware flow control
	  lines to be available.

config BLUETOOTH_H5
	bool "H:5 UART [EXPERIMENTAL]"
	select SERIAL
	select UART_INTERRUPT_DRIVEN
	select BLUETOOTH_UART
	help
	  Bluetooth three-wire (H:5) UART driver. Implementation of HCI
	  Three-Wire UART Transport Layer.

config BLUETOOTH_NO_DRIVER
	bool "No default HCI driver"
	help
	  This is intended for unit tests where no internal driver
	  should be selected.

endchoice

config	BLUETOOTH_DEBUG_DRIVER
	bool "Bluetooth driver debug"
	depends on BLUETOOTH_DEBUG && BLUETOOTH_UART
	default n
	help
	  This option enables debug support for the chosen
	  Bluetooth HCI driver

config  BLUETOOTH_UART_ON_DEV_NAME
	string "Device Name of UART Device for Bluetooth"
	default "UART_0"
	depends on BLUETOOTH_UART
	help
	  This option specifies the name of UART device to be used
	  for Bluetooth.

# Headroom that the driver needs for sending and receiving buffers.
# Add a new 'default' entry for each new driver.

# Needed headroom for outgoing buffers (to controller)
config BLUETOOTH_HCI_SEND_RESERVE
	int
	# Even if no driver is selected the following default is still
	# needed e.g. for unit tests.
	default 0
	default 0 if BLUETOOTH_H4
	default 1 if BLUETOOTH_H5

# Needed headroom for incoming buffers (from controller)
config BLUETOOTH_HCI_RECV_RESERVE
	int
	# Even if no driver is selected the following default is still
	# needed e.g. for unit tests.
	default 0
	default 0 if BLUETOOTH_H4
	default 0 if BLUETOOTH_H5

endif # BLUETOOTH_STACK_HCI

source "drivers/nble/Kconfig"

endmenu

endif # BLUETOOTH