2019-11-01 13:45:29 +01:00
|
|
|
# Bluetooth drivers configuration options
|
2016-10-27 20:30:52 +03:00
|
|
|
|
|
|
|
# Copyright (c) 2016 Intel Corporation
|
2017-01-18 17:01:01 -08:00
|
|
|
# SPDX-License-Identifier: Apache-2.0
|
2016-10-27 20:30:52 +03:00
|
|
|
|
2016-10-27 16:55:01 +03:00
|
|
|
comment "Bluetooth HCI Driver Options"
|
|
|
|
|
2017-08-09 09:21:11 +03:00
|
|
|
config BT_UART
|
2016-10-27 16:55:01 +03:00
|
|
|
bool
|
|
|
|
|
2018-05-15 12:55:50 +03:00
|
|
|
choice BT_HCI_BUS_TYPE
|
2016-10-27 16:55:01 +03:00
|
|
|
prompt "Bluetooth HCI driver"
|
|
|
|
|
2017-08-09 09:21:11 +03:00
|
|
|
config BT_H4
|
2016-10-27 16:55:01 +03:00
|
|
|
bool "H:4 UART"
|
|
|
|
select UART_INTERRUPT_DRIVEN
|
2017-08-09 09:21:11 +03:00
|
|
|
select BT_UART
|
|
|
|
select BT_RECV_IS_RX_THREAD
|
2016-11-08 14:25:36 +02:00
|
|
|
depends on SERIAL
|
2016-10-27 16:55:01 +03:00
|
|
|
help
|
|
|
|
Bluetooth H:4 UART driver. Requires hardware flow control
|
|
|
|
lines to be available.
|
|
|
|
|
2017-08-09 09:21:11 +03:00
|
|
|
config BT_H5
|
2016-10-27 16:55:01 +03:00
|
|
|
bool "H:5 UART [EXPERIMENTAL]"
|
|
|
|
select UART_INTERRUPT_DRIVEN
|
2017-08-09 09:21:11 +03:00
|
|
|
select BT_UART
|
2016-11-08 14:25:36 +02:00
|
|
|
depends on SERIAL
|
2016-10-27 16:55:01 +03:00
|
|
|
help
|
|
|
|
Bluetooth three-wire (H:5) UART driver. Implementation of HCI
|
|
|
|
Three-Wire UART Transport Layer.
|
|
|
|
|
2019-11-15 11:35:33 +01:00
|
|
|
config BT_RPMSG
|
|
|
|
bool "HCI using RPMsg"
|
|
|
|
help
|
|
|
|
Bluetooth HCI driver for communication with another CPU
|
|
|
|
using RPMsg framework.
|
|
|
|
|
2017-08-09 09:21:11 +03:00
|
|
|
config BT_SPI
|
2017-01-09 14:16:07 +00:00
|
|
|
bool "SPI HCI"
|
2017-06-06 21:26:14 -05:00
|
|
|
depends on SPI
|
2017-01-09 14:16:07 +00:00
|
|
|
help
|
|
|
|
Supports Bluetooth ICs using SPI as the communication protocol.
|
2017-04-21 10:29:51 -07:00
|
|
|
HCI packets are sent and received as single Byte transfers,
|
2017-01-09 14:16:07 +00:00
|
|
|
prepended after a known header. Headers may vary per device, so
|
2017-04-21 10:29:51 -07:00
|
|
|
additional platform specific knowledge may need to be added as
|
2017-01-25 22:24:45 -02:00
|
|
|
devices are.
|
2017-01-09 14:16:07 +00:00
|
|
|
|
2019-02-27 14:19:25 +01:00
|
|
|
config BT_STM32_IPM
|
|
|
|
bool "IPM HCI"
|
|
|
|
select USE_STM32_HAL_CORTEX
|
|
|
|
select HAS_STLIB
|
|
|
|
help
|
|
|
|
TODO
|
|
|
|
|
2018-05-25 13:32:34 +03:00
|
|
|
config BT_USERCHAN
|
|
|
|
bool "HCI User Channel based driver"
|
|
|
|
depends on BOARD_NATIVE_POSIX
|
|
|
|
help
|
|
|
|
This driver provides access to the local Linux host's Bluetooth
|
|
|
|
adapter using a User Channel HCI socket to the Linux kernel. It
|
|
|
|
is only intended to be used with the native POSIX build of Zephyr.
|
|
|
|
The Bluetooth adapter must be powered off in order for Zephyr to
|
|
|
|
be able to use it.
|
|
|
|
|
2017-08-09 09:21:11 +03:00
|
|
|
config BT_NO_DRIVER
|
2016-10-27 16:55:01 +03:00
|
|
|
bool "No default HCI driver"
|
|
|
|
help
|
|
|
|
This is intended for unit tests where no internal driver
|
|
|
|
should be selected.
|
|
|
|
|
|
|
|
endchoice
|
|
|
|
|
2019-08-28 09:29:26 -05:00
|
|
|
# Workaround for not being able to have commas in macro arguments
|
|
|
|
DT_CHOSEN_Z_BT_UART := zephyr,bt-uart
|
|
|
|
|
2017-08-09 09:21:11 +03:00
|
|
|
config BT_UART_ON_DEV_NAME
|
2016-10-27 16:55:01 +03:00
|
|
|
string "Device Name of UART Device for Bluetooth"
|
2019-08-28 09:29:26 -05:00
|
|
|
default "$(dt_chosen_label,$(DT_CHOSEN_Z_BT_UART))" if HAS_DTS
|
2016-10-27 16:55:01 +03:00
|
|
|
default "UART_0"
|
2017-08-09 09:21:11 +03:00
|
|
|
depends on BT_UART
|
2016-10-27 16:55:01 +03:00
|
|
|
help
|
|
|
|
This option specifies the name of UART device to be used
|
|
|
|
for Bluetooth.
|
|
|
|
|
2017-08-09 09:21:11 +03:00
|
|
|
if BT_SPI
|
2017-01-09 14:16:07 +00:00
|
|
|
|
2018-06-26 12:07:23 +02:00
|
|
|
config BT_BLUENRG_ACI
|
|
|
|
bool "Enable ACI message with with BlueNRG-based devices"
|
|
|
|
help
|
|
|
|
Enable support for devices compatible with the BlueNRG Bluetooth
|
|
|
|
Stack. Current driver supports: ST BLUENRG-MS.
|
|
|
|
|
2017-08-09 09:21:11 +03:00
|
|
|
config BT_SPI_BLUENRG
|
2017-01-25 22:24:45 -02:00
|
|
|
bool "Enable compatibility with BlueNRG-based devices"
|
|
|
|
help
|
|
|
|
Enable support for devices compatible with the BlueNRG Bluetooth
|
2018-06-26 12:07:23 +02:00
|
|
|
Stack. Current driver supports: ST BLUENRG-MS.
|
2017-01-25 22:24:45 -02:00
|
|
|
|
2017-08-09 09:21:11 +03:00
|
|
|
endif # BT_SPI
|
2019-11-15 11:35:33 +01:00
|
|
|
|
|
|
|
if BT_RPMSG
|
|
|
|
|
|
|
|
config BT_RPMSG_NRF53
|
|
|
|
bool "nRF53 configuration of RPMsg"
|
2020-01-10 14:20:04 +00:00
|
|
|
default y if (BOARD_NRF5340_DK_NRF5340_CPUAPP || BOARD_NRF5340_DK_NRF5340_CPUAPPNS)
|
2019-11-15 11:35:33 +01:00
|
|
|
select IPM
|
|
|
|
select IPM_NRFX
|
|
|
|
select IPM_MSG_CH_1_ENABLE
|
|
|
|
select IPM_MSG_CH_0_ENABLE
|
|
|
|
select IPM_MSG_CH_0_TX
|
|
|
|
select IPM_MSG_CH_1_RX
|
|
|
|
select OPENAMP
|
|
|
|
help
|
|
|
|
Enable RPMsg configuration for nRF53. Two channels of the IPM driver
|
|
|
|
are used in the HCI driver: channel 0 for TX and channel 1 for RX.
|
|
|
|
|
|
|
|
if BT_RPMSG_NRF53
|
|
|
|
|
|
|
|
config BT_RPMSG_NRF53_RX_STACK_SIZE
|
|
|
|
int "RPMsg stack size for RX thread"
|
|
|
|
default 1024
|
|
|
|
|
|
|
|
config BT_RPMSG_NRF53_RX_PRIO
|
|
|
|
int "RPMsg RX thread priority"
|
|
|
|
default 8
|
|
|
|
|
|
|
|
endif # BT_RPMSG_NRF53
|
|
|
|
|
|
|
|
endif # BT_RPMSG
|