1# 2# Bluetooth subsystem configuration 3# 4 5menuconfig BT 6 tristate "Bluetooth subsystem support" 7 depends on NET && !S390 8 depends on RFKILL || !RFKILL 9 select CRC16 10 select CRYPTO 11 select CRYPTO_BLKCIPHER 12 select CRYPTO_AES 13 select CRYPTO_CMAC 14 select CRYPTO_ECB 15 select CRYPTO_SHA256 16 select CRYPTO_ECDH 17 help 18 Bluetooth is low-cost, low-power, short-range wireless technology. 19 It was designed as a replacement for cables and other short-range 20 technologies like IrDA. Bluetooth operates in personal area range 21 that typically extends up to 10 meters. More information about 22 Bluetooth can be found at <http://www.bluetooth.com/>. 23 24 Linux Bluetooth subsystem consist of several layers: 25 Bluetooth Core 26 HCI device and connection manager, scheduler 27 SCO audio links 28 L2CAP (Logical Link Control and Adaptation Protocol) 29 SMP (Security Manager Protocol) on LE (Low Energy) links 30 HCI Device drivers (Interface to the hardware) 31 RFCOMM Module (RFCOMM Protocol) 32 BNEP Module (Bluetooth Network Encapsulation Protocol) 33 CMTP Module (CAPI Message Transport Protocol) 34 HIDP Module (Human Interface Device Protocol) 35 36 Say Y here to compile Bluetooth support into the kernel or say M to 37 compile it as module (bluetooth). 38 39 To use Linux Bluetooth subsystem, you will need several user-space 40 utilities like hciconfig and bluetoothd. These utilities and updates 41 to Bluetooth kernel modules are provided in the BlueZ packages. For 42 more information, see <http://www.bluez.org/>. 43 44config BT_BREDR 45 bool "Bluetooth Classic (BR/EDR) features" 46 depends on BT 47 default y 48 help 49 Bluetooth Classic includes support for Basic Rate (BR) 50 available with Bluetooth version 1.0b or later and support 51 for Enhanced Data Rate (EDR) available with Bluetooth 52 version 2.0 or later. 53 54source "net/bluetooth/rfcomm/Kconfig" 55 56source "net/bluetooth/bnep/Kconfig" 57 58source "net/bluetooth/cmtp/Kconfig" 59 60source "net/bluetooth/hidp/Kconfig" 61 62config BT_HS 63 bool "Bluetooth High Speed (HS) features" 64 depends on BT_BREDR 65 default y 66 help 67 Bluetooth High Speed includes support for off-loading 68 Bluetooth connections via 802.11 (wifi) physical layer 69 available with Bluetooth version 3.0 or later. 70 71config BT_LE 72 bool "Bluetooth Low Energy (LE) features" 73 depends on BT 74 default y 75 help 76 Bluetooth Low Energy includes support low-energy physical 77 layer available with Bluetooth version 4.0 or later. 78 79config BT_6LOWPAN 80 tristate "Bluetooth 6LoWPAN support" 81 depends on BT_LE && 6LOWPAN 82 help 83 IPv6 compression over Bluetooth Low Energy. 84 85config BT_LEDS 86 bool "Enable LED triggers" 87 depends on BT 88 depends on LEDS_CLASS 89 select LEDS_TRIGGERS 90 help 91 This option selects a few LED triggers for different 92 Bluetooth events. 93 94config BT_SELFTEST 95 bool "Bluetooth self testing support" 96 depends on BT && DEBUG_KERNEL 97 help 98 Run self tests when initializing the Bluetooth subsystem. This 99 is a developer option and can cause significant delay when booting 100 the system. 101 102 When the Bluetooth subsystem is built as module, then the test 103 cases are run first thing at module load time. When the Bluetooth 104 subsystem is compiled into the kernel image, then the test cases 105 are run late in the initcall hierarchy. 106 107config BT_SELFTEST_ECDH 108 bool "ECDH test cases" 109 depends on BT_LE && BT_SELFTEST 110 help 111 Run test cases for ECDH cryptographic functionality used by the 112 Bluetooth Low Energy Secure Connections feature. 113 114config BT_SELFTEST_SMP 115 bool "SMP test cases" 116 depends on BT_LE && BT_SELFTEST 117 help 118 Run test cases for SMP cryptographic functionality, including both 119 legacy SMP as well as the Secure Connections features. 120 121config BT_DEBUGFS 122 bool "Export Bluetooth internals in debugfs" 123 depends on BT && DEBUG_FS 124 default y 125 help 126 Provide extensive information about internal Bluetooth states 127 in debugfs. 128 129config BT_LEGACY_IOCTL 130 bool "Enable legacy ioctl interfaces" 131 depends on BT && BT_BREDR 132 default y 133 help 134 Enable support for legacy ioctl interfaces. This is only needed 135 for old and deprecated applications using direct ioctl calls for 136 controller management. Since Linux 3.4 all configuration and 137 setup is done via mgmt interface and this is no longer needed. 138 139source "drivers/bluetooth/Kconfig" 140