Linux 4.4.84
[linux/fpc-iii.git] / net / bluetooth / Kconfig
blob95d1a66ba03aa20095932a1c45f9f76af2cc1393
2 # Bluetooth subsystem configuration
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         help
17           Bluetooth is low-cost, low-power, short-range wireless technology.
18           It was designed as a replacement for cables and other short-range
19           technologies like IrDA.  Bluetooth operates in personal area range
20           that typically extends up to 10 meters.  More information about
21           Bluetooth can be found at <http://www.bluetooth.com/>.
23           Linux Bluetooth subsystem consist of several layers:
24              Bluetooth Core
25                 HCI device and connection manager, scheduler
26                 SCO audio links
27                 L2CAP (Logical Link Control and Adaptation Protocol)
28                 SMP (Security Manager Protocol) on LE (Low Energy) links
29              HCI Device drivers (Interface to the hardware)
30              RFCOMM Module (RFCOMM Protocol)  
31              BNEP Module (Bluetooth Network Encapsulation Protocol)
32              CMTP Module (CAPI Message Transport Protocol)
33              HIDP Module (Human Interface Device Protocol)
35           Say Y here to compile Bluetooth support into the kernel or say M to
36           compile it as module (bluetooth).
38           To use Linux Bluetooth subsystem, you will need several user-space
39           utilities like hciconfig and bluetoothd.  These utilities and updates
40           to Bluetooth kernel modules are provided in the BlueZ packages.  For
41           more information, see <http://www.bluez.org/>.
43 config BT_BREDR
44         bool "Bluetooth Classic (BR/EDR) features"
45         depends on BT
46         default y
48 source "net/bluetooth/rfcomm/Kconfig"
50 source "net/bluetooth/bnep/Kconfig"
52 source "net/bluetooth/cmtp/Kconfig"
54 source "net/bluetooth/hidp/Kconfig"
56 config BT_HS
57         bool "Bluetooth High Speed (HS) features"
58         depends on BT_BREDR
59         default y
61 config BT_LE
62         bool "Bluetooth Low Energy (LE) features"
63         depends on BT
64         default y
66 config BT_6LOWPAN
67         tristate "Bluetooth 6LoWPAN support"
68         depends on BT_LE && 6LOWPAN
69         help
70           IPv6 compression over Bluetooth Low Energy.
72 config BT_SELFTEST
73         bool "Bluetooth self testing support"
74         depends on BT && DEBUG_KERNEL
75         help
76           Run self tests when initializing the Bluetooth subsystem.  This
77           is a developer option and can cause significant delay when booting
78           the system.
80           When the Bluetooth subsystem is built as module, then the test
81           cases are run first thing at module load time.  When the Bluetooth
82           subsystem is compiled into the kernel image, then the test cases
83           are run late in the initcall hierarchy.
85 config BT_SELFTEST_ECDH
86         bool "ECDH test cases"
87         depends on BT_LE && BT_SELFTEST
88         help
89           Run test cases for ECDH cryptographic functionality used by the
90           Bluetooth Low Energy Secure Connections feature.
92 config BT_SELFTEST_SMP
93         bool "SMP test cases"
94         depends on BT_LE && BT_SELFTEST
95         help
96           Run test cases for SMP cryptographic functionality, including both
97           legacy SMP as well as the Secure Connections features.
99 config BT_DEBUGFS
100         bool "Export Bluetooth internals in debugfs"
101         depends on BT && DEBUG_FS
102         default y
103         help
104           Provide extensive information about internal Bluetooth states
105           in debugfs.
107 source "drivers/bluetooth/Kconfig"