blob: 06c31b9a68b0bce3cc4f28224c3c23864f78e7c9 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
2# Bluetooth subsystem configuration
3#
4
5menuconfig BT
Linus Torvalds1da177e2005-04-16 15:20:36 -07006 tristate "Bluetooth subsystem support"
Marcel Holtmann1a097182009-06-14 15:21:25 +02007 depends on NET && !S390
8 depends on RFKILL || !RFKILL
Ulisses Furquimf1e91e12011-12-21 01:32:09 -02009 select CRC16
Randy Dunlapdaf4ce82011-06-22 10:08:11 -070010 select CRYPTO
Ulisses Furquimf1e91e12011-12-21 01:32:09 -020011 select CRYPTO_BLKCIPHER
12 select CRYPTO_AES
Johan Hedberg407cecf2014-05-02 14:19:47 +030013 select CRYPTO_CMAC
Ulisses Furquimf1e91e12011-12-21 01:32:09 -020014 select CRYPTO_ECB
Andrei Emeltchenko5a349182012-09-27 17:26:18 +030015 select CRYPTO_SHA256
Linus Torvalds1da177e2005-04-16 15:20:36 -070016 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/>.
22
23 Linux Bluetooth subsystem consist of several layers:
Ulisses Furquimf1e91e12011-12-21 01:32:09 -020024 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
Linus Torvalds1da177e2005-04-16 15:20:36 -070029 HCI Device drivers (Interface to the hardware)
Linus Torvalds1da177e2005-04-16 15:20:36 -070030 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)
34
35 Say Y here to compile Bluetooth support into the kernel or say M to
36 compile it as module (bluetooth).
37
38 To use Linux Bluetooth subsystem, you will need several user-space
Gustavo F. Padovana0019bc2011-02-07 19:15:43 -020039 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/>.
Linus Torvalds1da177e2005-04-16 15:20:36 -070042
Marcel Holtmann65efd2b2014-11-02 03:32:25 +010043config BT_BREDR
44 bool "Bluetooth Classic (BR/EDR) features"
45 depends on BT
46 default y
Alexander Aring97550882014-03-04 10:23:02 +010047
Linus Torvalds1da177e2005-04-16 15:20:36 -070048source "net/bluetooth/rfcomm/Kconfig"
49
50source "net/bluetooth/bnep/Kconfig"
51
52source "net/bluetooth/cmtp/Kconfig"
53
54source "net/bluetooth/hidp/Kconfig"
55
Arron Wang244bc372015-07-24 17:12:55 +080056config BT_HS
57 bool "Bluetooth High Speed (HS) features"
58 depends on BT_BREDR
59 default y
60
Marcel Holtmann65efd2b2014-11-02 03:32:25 +010061config BT_LE
62 bool "Bluetooth Low Energy (LE) features"
63 depends on BT
64 default y
65
66config BT_6LOWPAN
67 tristate "Bluetooth 6LoWPAN support"
68 depends on BT_LE && 6LOWPAN
69 help
70 IPv6 compression over Bluetooth Low Energy.
71
Heiner Kallweit6d5d2ee2016-01-08 19:28:58 +010072config BT_LEDS
73 bool "Enable LED triggers"
74 depends on BT
75 depends on LEDS_CLASS
76 select LEDS_TRIGGERS
77 help
78 This option selects a few LED triggers for different
79 Bluetooth events.
80
Marcel Holtmannee485292014-12-29 20:48:35 -080081config BT_SELFTEST
82 bool "Bluetooth self testing support"
83 depends on BT && DEBUG_KERNEL
84 help
85 Run self tests when initializing the Bluetooth subsystem. This
86 is a developer option and can cause significant delay when booting
87 the system.
88
89 When the Bluetooth subsystem is built as module, then the test
90 cases are run first thing at module load time. When the Bluetooth
91 subsystem is compiled into the kernel image, then the test cases
92 are run late in the initcall hierarchy.
93
Johan Hedberg0b6415b2014-12-29 20:48:36 -080094config BT_SELFTEST_ECDH
95 bool "ECDH test cases"
96 depends on BT_LE && BT_SELFTEST
97 help
98 Run test cases for ECDH cryptographic functionality used by the
99 Bluetooth Low Energy Secure Connections feature.
100
Johan Hedberg0a2b0f02014-12-30 09:50:39 +0200101config BT_SELFTEST_SMP
102 bool "SMP test cases"
103 depends on BT_LE && BT_SELFTEST
104 help
105 Run test cases for SMP cryptographic functionality, including both
106 legacy SMP as well as the Secure Connections features.
107
Marcel Holtmann035a07d2015-02-14 13:40:06 -0800108config BT_DEBUGFS
109 bool "Export Bluetooth internals in debugfs"
110 depends on BT && DEBUG_FS
111 default y
112 help
113 Provide extensive information about internal Bluetooth states
114 in debugfs.
115
Linus Torvalds1da177e2005-04-16 15:20:36 -0700116source "drivers/bluetooth/Kconfig"