rjw | 1f88458 | 2022-01-06 17:20:42 +0800 | [diff] [blame^] | 1 | # |
| 2 | # Bluetooth subsystem configuration |
| 3 | # |
| 4 | |
| 5 | menuconfig 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 | |
| 44 | config 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 | |
| 54 | source "net/bluetooth/rfcomm/Kconfig" |
| 55 | |
| 56 | source "net/bluetooth/bnep/Kconfig" |
| 57 | |
| 58 | source "net/bluetooth/cmtp/Kconfig" |
| 59 | |
| 60 | source "net/bluetooth/hidp/Kconfig" |
| 61 | |
| 62 | config 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 | |
| 71 | config 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 | |
| 79 | config BT_6LOWPAN |
| 80 | tristate "Bluetooth 6LoWPAN support" |
| 81 | depends on BT_LE && 6LOWPAN |
| 82 | help |
| 83 | IPv6 compression over Bluetooth Low Energy. |
| 84 | |
| 85 | config 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 | |
| 94 | config 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 | |
| 107 | config 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 | |
| 114 | config 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 | |
| 121 | config 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 | |
| 129 | source "drivers/bluetooth/Kconfig" |