# Bluetooth drivers configuration options # Copyright (c) 2016 Intel Corporation # SPDX-License-Identifier: Apache-2.0 comment "Bluetooth HCI Driver Options" config BT_UART bool choice BT_HCI_BUS_TYPE prompt "Bluetooth HCI driver" config BT_H4 bool "H:4 UART" select UART_INTERRUPT_DRIVEN select BT_UART select BT_RECV_IS_RX_THREAD depends on SERIAL help Bluetooth H:4 UART driver. Requires hardware flow control lines to be available. config BT_H5 bool "H:5 UART [EXPERIMENTAL]" select UART_INTERRUPT_DRIVEN select BT_UART depends on SERIAL help Bluetooth three-wire (H:5) UART driver. Implementation of HCI Three-Wire UART Transport Layer. config BT_RPMSG bool "HCI using RPMsg" help Bluetooth HCI driver for communication with another CPU using RPMsg framework. config BT_SPI bool "SPI HCI" depends on SPI help Supports Bluetooth ICs using SPI as the communication protocol. HCI packets are sent and received as single Byte transfers, prepended after a known header. Headers may vary per device, so additional platform specific knowledge may need to be added as devices are. config BT_STM32_IPM bool "IPM HCI" select USE_STM32_HAL_CORTEX select HAS_STLIB help TODO 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. config BT_NO_DRIVER bool "No default HCI driver" help This is intended for unit tests where no internal driver should be selected. endchoice # Workaround for not being able to have commas in macro arguments DT_CHOSEN_Z_BT_UART := zephyr,bt-uart config BT_UART_ON_DEV_NAME string "Device Name of UART Device for Bluetooth" default "$(dt_chosen_label,$(DT_CHOSEN_Z_BT_UART))" if HAS_DTS default "UART_0" depends on BT_UART help This option specifies the name of UART device to be used for Bluetooth. if BT_SPI 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. config BT_SPI_BLUENRG bool "Enable compatibility with BlueNRG-based devices" help Enable support for devices compatible with the BlueNRG Bluetooth Stack. Current driver supports: ST BLUENRG-MS. endif # BT_SPI if BT_RPMSG config BT_RPMSG_NRF53 bool "nRF53 configuration of RPMsg" default y if (BOARD_NRF5340_DK_NRF5340_CPUAPP || BOARD_NRF5340_DK_NRF5340_CPUAPPNS) 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