# 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 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 select EXPERIMENTAL 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" select BT_HAS_HCI_VS select IPC_SERVICE select MBOX 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_STM32LIB 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_ESP32 bool "ESP32 HCI driver" help Espressif HCI bluetooth interface config BT_B91 bool "Telink B91 HCI driver" help Telink B91 HCI bluetooth interface config BT_NO_DRIVER bool "No default HCI driver" help This is intended for unit tests where no internal driver should be selected. endchoice if BT_SPI config BT_SPI_INIT_PRIORITY int "BT SPI init priority" default 75 config BT_BLUENRG_ACI bool "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 "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 config BT_STM32_IPM_RX_STACK_SIZE int "STM32 IPM stack size for RX thread" depends on BT_STM32_IPM default 512 config BT_DRIVER_QUIRK_NO_AUTO_DLE bool "Host auto-initiated Data Length Update quirk" depends on BT_AUTO_DATA_LEN_UPDATE default y if BT_RPMSG || BT_ESP32 help Enable the quirk wherein BT Host stack will auto-initiate Data Length Update procedure for new connections for controllers that do not auto-initiate the procedure if the default data length parameters are not equal to the initial parameters. This has to be enabled when the BLE controller connected is Zephyr open source controller. config BT_HCI_SETUP bool help Enable the HCI vendor-specific Setup function. This option has to be enabled when the BT Controller requires execution of the vendor-specific commands sequence to initialize the BT Controller before the BT Host executes a Reset sequence. The user should generally avoid changing it via menuconfig or in configuration files. This option are enabled by the vendor-specific HCI extension, where the Setup function is implemented.