Linux Audio

Check our new training course

Loading...
v6.8
  1# SPDX-License-Identifier: GPL-2.0-only
  2#
  3# Bluetooth subsystem configuration
  4#
  5
  6menuconfig BT
  7	tristate "Bluetooth subsystem support"
  8	depends on !S390
  9	depends on RFKILL || !RFKILL
 10	select CRC16
 11	select CRYPTO
 12	select CRYPTO_SKCIPHER
 13	select CRYPTO_LIB_AES
 14	imply CRYPTO_AES
 15	select CRYPTO_CMAC
 16	select CRYPTO_ECB
 17	select CRYPTO_SHA256
 18	select CRYPTO_ECDH
 19	help
 20	  Bluetooth is low-cost, low-power, short-range wireless technology.
 21	  It was designed as a replacement for cables and other short-range
 22	  technologies like IrDA.  Bluetooth operates in personal area range
 23	  that typically extends up to 10 meters.  More information about
 24	  Bluetooth can be found at <https://www.bluetooth.com/>.
 25
 26	  Linux Bluetooth subsystem consist of several layers:
 27	     Bluetooth Core
 28		HCI device and connection manager, scheduler
 29		SCO audio links
 30		L2CAP (Logical Link Control and Adaptation Protocol)
 31		SMP (Security Manager Protocol) on LE (Low Energy) links
 32		ISO isochronous links
 33	     HCI Device drivers (Interface to the hardware)
 
 
 34	     RFCOMM Module (RFCOMM Protocol)  
 35	     BNEP Module (Bluetooth Network Encapsulation Protocol)
 36	     CMTP Module (CAPI Message Transport Protocol)
 37	     HIDP Module (Human Interface Device Protocol)
 
 38
 39	  Say Y here to compile Bluetooth support into the kernel or say M to
 40	  compile it as module (bluetooth).
 41
 42	  To use Linux Bluetooth subsystem, you will need several user-space
 43	  utilities like hciconfig and bluetoothd.  These utilities and updates
 44	  to Bluetooth kernel modules are provided in the BlueZ packages.  For
 45	  more information, see <http://www.bluez.org/>.
 46
 47config BT_BREDR
 48	bool "Bluetooth Classic (BR/EDR) features"
 49	depends on BT
 50	default y
 51	help
 52	  Bluetooth Classic includes support for Basic Rate (BR)
 53	  available with Bluetooth version 1.0b or later and support
 54	  for Enhanced Data Rate (EDR) available with Bluetooth
 55	  version 2.0 or later.
 56
 57source "net/bluetooth/rfcomm/Kconfig"
 58
 59source "net/bluetooth/bnep/Kconfig"
 60
 61source "net/bluetooth/cmtp/Kconfig"
 62
 63source "net/bluetooth/hidp/Kconfig"
 64
 65config BT_HS
 66	bool "Bluetooth High Speed (HS) features"
 67	depends on BT_BREDR
 68	help
 69	  Bluetooth High Speed includes support for off-loading
 70	  Bluetooth connections via 802.11 (wifi) physical layer
 71	  available with Bluetooth version 3.0 or later.
 72
 73config BT_LE
 74	bool "Bluetooth Low Energy (LE) features"
 75	depends on BT
 76	default y
 77	help
 78	  Bluetooth Low Energy includes support low-energy physical
 79	  layer available with Bluetooth version 4.0 or later.
 80
 81config BT_LE_L2CAP_ECRED
 82	bool "Bluetooth L2CAP Enhanced Credit Flow Control"
 83	depends on BT_LE
 84	default y
 85	help
 86	  Bluetooth Low Energy L2CAP Enhanced Credit Flow Control available with
 87	  Bluetooth version 5.2 or later.
 88
 89	  This can be overridden by passing bluetooth.enable_ecred=[1|0]
 90	  on the kernel commandline.
 91
 92config BT_6LOWPAN
 93	tristate "Bluetooth 6LoWPAN support"
 94	depends on BT_LE && 6LOWPAN
 
 
 
 
 95	help
 96	  IPv6 compression over Bluetooth Low Energy.
 
 
 97
 98config BT_LEDS
 99	bool "Enable LED triggers"
100	depends on BT
101	depends on LEDS_CLASS
102	select LEDS_TRIGGERS
103	help
104	  This option selects a few LED triggers for different
105	  Bluetooth events.
106
107config BT_MSFTEXT
108	bool "Enable Microsoft extensions"
109	depends on BT
110	help
111	  This options enables support for the Microsoft defined HCI
112	  vendor extensions.
113
114config BT_AOSPEXT
115	bool "Enable Android Open Source Project extensions"
116	depends on BT
117	help
118	  This options enables support for the Android Open Source
119	  Project defined HCI vendor extensions.
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_SELFTEST
130	bool "Bluetooth self testing support"
131	depends on BT && DEBUG_KERNEL
132	help
133	  Run self tests when initializing the Bluetooth subsystem.  This
134	  is a developer option and can cause significant delay when booting
135	  the system.
136
137	  When the Bluetooth subsystem is built as module, then the test
138	  cases are run first thing at module load time.  When the Bluetooth
139	  subsystem is compiled into the kernel image, then the test cases
140	  are run late in the initcall hierarchy.
141
142config BT_SELFTEST_ECDH
143	bool "ECDH test cases"
144	depends on BT_LE && BT_SELFTEST
145	help
146	  Run test cases for ECDH cryptographic functionality used by the
147	  Bluetooth Low Energy Secure Connections feature.
148
149config BT_SELFTEST_SMP
150	bool "SMP test cases"
151	depends on BT_LE && BT_SELFTEST
152	help
153	  Run test cases for SMP cryptographic functionality, including both
154	  legacy SMP as well as the Secure Connections features.
155
156config BT_FEATURE_DEBUG
157	bool "Enable runtime option for debugging statements"
158	depends on BT && !DYNAMIC_DEBUG
159	help
160	  This provides an option to enable/disable debugging statements
161	  at runtime via the experimental features interface.
162
163source "drivers/bluetooth/Kconfig"
v3.1
 
 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 CRYPTO
 
 
 
 
 
 
 
10	help
11	  Bluetooth is low-cost, low-power, short-range wireless technology.
12	  It was designed as a replacement for cables and other short-range
13	  technologies like IrDA.  Bluetooth operates in personal area range
14	  that typically extends up to 10 meters.  More information about
15	  Bluetooth can be found at <http://www.bluetooth.com/>.
16
17	  Linux Bluetooth subsystem consist of several layers:
18	     Bluetooth Core (HCI device and connection manager, scheduler)
 
 
 
 
 
19	     HCI Device drivers (Interface to the hardware)
20	     SCO Module (SCO audio links)
21	     L2CAP Module (Logical Link Control and Adaptation Protocol)
22	     RFCOMM Module (RFCOMM Protocol)  
23	     BNEP Module (Bluetooth Network Encapsulation Protocol)
24	     CMTP Module (CAPI Message Transport Protocol)
25	     HIDP Module (Human Interface Device Protocol)
26	     SMP Module (Security Manager Protocol)
27
28	  Say Y here to compile Bluetooth support into the kernel or say M to
29	  compile it as module (bluetooth).
30
31	  To use Linux Bluetooth subsystem, you will need several user-space
32	  utilities like hciconfig and bluetoothd.  These utilities and updates
33	  to Bluetooth kernel modules are provided in the BlueZ packages.  For
34	  more information, see <http://www.bluez.org/>.
35
36if BT != n
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
37
38config BT_L2CAP
39	bool "L2CAP protocol support"
40	select CRC16
41	select CRYPTO
42	select CRYPTO_BLKCIPHER
43	select CRYPTO_AES
44	select CRYPTO_ECB
45	help
46	  L2CAP (Logical Link Control and Adaptation Protocol) provides
47	  connection oriented and connection-less data transport.  L2CAP
48	  support is required for most Bluetooth applications.
49
50	  Also included is support for SMP (Security Manager Protocol) which
51	  is the security layer on top of LE (Low Energy) links.
 
 
 
 
 
 
52
53config BT_SCO
54	bool "SCO links support"
 
55	help
56	  SCO link provides voice transport over Bluetooth.  SCO support is
57	  required for voice applications like Headset and Audio.
58
59endif
 
 
 
 
 
60
61source "net/bluetooth/rfcomm/Kconfig"
 
 
 
 
 
 
62
63source "net/bluetooth/bnep/Kconfig"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
64
65source "net/bluetooth/cmtp/Kconfig"
 
 
 
 
 
66
67source "net/bluetooth/hidp/Kconfig"
 
 
 
 
 
68
69source "drivers/bluetooth/Kconfig"
70