1 # SPDX-License-Identifier: GPL-2.0-only 1 # SPDX-License-Identifier: GPL-2.0-only 2 # 2 # 3 # Bluetooth subsystem configuration 3 # Bluetooth subsystem configuration 4 # 4 # 5 5 6 menuconfig BT 6 menuconfig BT 7 tristate "Bluetooth subsystem support" 7 tristate "Bluetooth subsystem support" 8 depends on !S390 !! 8 depends on NET && !S390 9 depends on RFKILL || !RFKILL 9 depends on RFKILL || !RFKILL 10 select CRC16 10 select CRC16 11 select CRYPTO 11 select CRYPTO 12 select CRYPTO_SKCIPHER !! 12 select CRYPTO_BLKCIPHER 13 select CRYPTO_LIB_AES !! 13 select CRYPTO_AES 14 imply CRYPTO_AES << 15 select CRYPTO_CMAC 14 select CRYPTO_CMAC 16 select CRYPTO_ECB 15 select CRYPTO_ECB 17 select CRYPTO_SHA256 16 select CRYPTO_SHA256 18 select CRYPTO_ECDH 17 select CRYPTO_ECDH 19 help 18 help 20 Bluetooth is low-cost, low-power, sh 19 Bluetooth is low-cost, low-power, short-range wireless technology. 21 It was designed as a replacement for 20 It was designed as a replacement for cables and other short-range 22 technologies like IrDA. Bluetooth o 21 technologies like IrDA. Bluetooth operates in personal area range 23 that typically extends up to 10 mete 22 that typically extends up to 10 meters. More information about 24 Bluetooth can be found at <https://w !! 23 Bluetooth can be found at <http://www.bluetooth.com/>. 25 24 26 Linux Bluetooth subsystem consist of 25 Linux Bluetooth subsystem consist of several layers: 27 Bluetooth Core 26 Bluetooth Core 28 HCI device and connection mana 27 HCI device and connection manager, scheduler 29 SCO audio links 28 SCO audio links 30 L2CAP (Logical Link Control an 29 L2CAP (Logical Link Control and Adaptation Protocol) 31 SMP (Security Manager Protocol 30 SMP (Security Manager Protocol) on LE (Low Energy) links 32 ISO isochronous links << 33 HCI Device drivers (Interface to 31 HCI Device drivers (Interface to the hardware) 34 RFCOMM Module (RFCOMM Protocol) 32 RFCOMM Module (RFCOMM Protocol) 35 BNEP Module (Bluetooth Network En 33 BNEP Module (Bluetooth Network Encapsulation Protocol) 36 CMTP Module (CAPI Message Transpo 34 CMTP Module (CAPI Message Transport Protocol) 37 HIDP Module (Human Interface Devi 35 HIDP Module (Human Interface Device Protocol) 38 36 39 Say Y here to compile Bluetooth supp 37 Say Y here to compile Bluetooth support into the kernel or say M to 40 compile it as module (bluetooth). 38 compile it as module (bluetooth). 41 39 42 To use Linux Bluetooth subsystem, yo 40 To use Linux Bluetooth subsystem, you will need several user-space 43 utilities like hciconfig and bluetoo 41 utilities like hciconfig and bluetoothd. These utilities and updates 44 to Bluetooth kernel modules are prov 42 to Bluetooth kernel modules are provided in the BlueZ packages. For 45 more information, see <http://www.bl 43 more information, see <http://www.bluez.org/>. 46 44 47 config BT_BREDR 45 config BT_BREDR 48 bool "Bluetooth Classic (BR/EDR) featu 46 bool "Bluetooth Classic (BR/EDR) features" 49 depends on BT 47 depends on BT 50 default y 48 default y 51 help 49 help 52 Bluetooth Classic includes support f 50 Bluetooth Classic includes support for Basic Rate (BR) 53 available with Bluetooth version 1.0 51 available with Bluetooth version 1.0b or later and support 54 for Enhanced Data Rate (EDR) availab 52 for Enhanced Data Rate (EDR) available with Bluetooth 55 version 2.0 or later. 53 version 2.0 or later. 56 54 57 source "net/bluetooth/rfcomm/Kconfig" 55 source "net/bluetooth/rfcomm/Kconfig" 58 56 59 source "net/bluetooth/bnep/Kconfig" 57 source "net/bluetooth/bnep/Kconfig" 60 58 61 source "net/bluetooth/cmtp/Kconfig" 59 source "net/bluetooth/cmtp/Kconfig" 62 60 63 source "net/bluetooth/hidp/Kconfig" 61 source "net/bluetooth/hidp/Kconfig" 64 62 >> 63 config BT_HS >> 64 bool "Bluetooth High Speed (HS) features" >> 65 depends on BT_BREDR >> 66 default y >> 67 help >> 68 Bluetooth High Speed includes support for off-loading >> 69 Bluetooth connections via 802.11 (wifi) physical layer >> 70 available with Bluetooth version 3.0 or later. >> 71 65 config BT_LE 72 config BT_LE 66 bool "Bluetooth Low Energy (LE) featur 73 bool "Bluetooth Low Energy (LE) features" 67 depends on BT 74 depends on BT 68 default y 75 default y 69 help 76 help 70 Bluetooth Low Energy includes suppor 77 Bluetooth Low Energy includes support low-energy physical 71 layer available with Bluetooth versi 78 layer available with Bluetooth version 4.0 or later. 72 79 73 config BT_LE_L2CAP_ECRED << 74 bool "Bluetooth L2CAP Enhanced Credit << 75 depends on BT_LE << 76 default y << 77 help << 78 Bluetooth Low Energy L2CAP Enhanced << 79 Bluetooth version 5.2 or later. << 80 << 81 This can be overridden by passing bl << 82 on the kernel commandline. << 83 << 84 config BT_6LOWPAN 80 config BT_6LOWPAN 85 tristate "Bluetooth 6LoWPAN support" 81 tristate "Bluetooth 6LoWPAN support" 86 depends on BT_LE && 6LOWPAN 82 depends on BT_LE && 6LOWPAN 87 help 83 help 88 IPv6 compression over Bluetooth Low 84 IPv6 compression over Bluetooth Low Energy. 89 85 90 config BT_LEDS 86 config BT_LEDS 91 bool "Enable LED triggers" 87 bool "Enable LED triggers" 92 depends on BT 88 depends on BT 93 depends on LEDS_CLASS 89 depends on LEDS_CLASS 94 select LEDS_TRIGGERS 90 select LEDS_TRIGGERS 95 help 91 help 96 This option selects a few LED trigge 92 This option selects a few LED triggers for different 97 Bluetooth events. 93 Bluetooth events. 98 94 99 config BT_MSFTEXT << 100 bool "Enable Microsoft extensions" << 101 depends on BT << 102 help << 103 This options enables support for the << 104 vendor extensions. << 105 << 106 config BT_AOSPEXT << 107 bool "Enable Android Open Source Proje << 108 depends on BT << 109 help << 110 This options enables support for the << 111 Project defined HCI vendor extension << 112 << 113 config BT_DEBUGFS << 114 bool "Export Bluetooth internals in de << 115 depends on BT && DEBUG_FS << 116 default y << 117 help << 118 Provide extensive information about << 119 in debugfs. << 120 << 121 config BT_SELFTEST 95 config BT_SELFTEST 122 bool "Bluetooth self testing support" 96 bool "Bluetooth self testing support" 123 depends on BT && DEBUG_KERNEL 97 depends on BT && DEBUG_KERNEL 124 help 98 help 125 Run self tests when initializing the 99 Run self tests when initializing the Bluetooth subsystem. This 126 is a developer option and can cause 100 is a developer option and can cause significant delay when booting 127 the system. 101 the system. 128 102 129 When the Bluetooth subsystem is buil 103 When the Bluetooth subsystem is built as module, then the test 130 cases are run first thing at module 104 cases are run first thing at module load time. When the Bluetooth 131 subsystem is compiled into the kerne 105 subsystem is compiled into the kernel image, then the test cases 132 are run late in the initcall hierarc 106 are run late in the initcall hierarchy. 133 107 134 config BT_SELFTEST_ECDH 108 config BT_SELFTEST_ECDH 135 bool "ECDH test cases" 109 bool "ECDH test cases" 136 depends on BT_LE && BT_SELFTEST 110 depends on BT_LE && BT_SELFTEST 137 help 111 help 138 Run test cases for ECDH cryptographi 112 Run test cases for ECDH cryptographic functionality used by the 139 Bluetooth Low Energy Secure Connecti 113 Bluetooth Low Energy Secure Connections feature. 140 114 141 config BT_SELFTEST_SMP 115 config BT_SELFTEST_SMP 142 bool "SMP test cases" 116 bool "SMP test cases" 143 depends on BT_LE && BT_SELFTEST 117 depends on BT_LE && BT_SELFTEST 144 help 118 help 145 Run test cases for SMP cryptographic 119 Run test cases for SMP cryptographic functionality, including both 146 legacy SMP as well as the Secure Con 120 legacy SMP as well as the Secure Connections features. 147 121 148 config BT_FEATURE_DEBUG !! 122 config BT_DEBUGFS 149 bool "Enable runtime option for debugg !! 123 bool "Export Bluetooth internals in debugfs" 150 depends on BT && !DYNAMIC_DEBUG !! 124 depends on BT && DEBUG_FS >> 125 default y 151 help 126 help 152 This provides an option to enable/di !! 127 Provide extensive information about internal Bluetooth states 153 at runtime via the experimental feat !! 128 in debugfs. 154 129 155 source "drivers/bluetooth/Kconfig" 130 source "drivers/bluetooth/Kconfig"
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.