]>
Commit | Line | Data |
---|---|---|
b2441318 | 1 | # SPDX-License-Identifier: GPL-2.0 |
1da177e4 LT |
2 | |
3 | menu "Bluetooth device drivers" | |
4 | depends on BT | |
5 | ||
48f0ed1b MH |
6 | config BT_INTEL |
7 | tristate | |
d06f107b | 8 | select REGMAP |
48f0ed1b | 9 | |
4fba30f0 MH |
10 | config BT_BCM |
11 | tristate | |
1c8ba6d0 | 12 | select FW_LOADER |
4fba30f0 | 13 | |
db33c77d CC |
14 | config BT_RTL |
15 | tristate | |
16 | select FW_LOADER | |
17 | ||
83e81961 BYTK |
18 | config BT_QCA |
19 | tristate | |
20 | select FW_LOADER | |
21 | ||
5e23b923 | 22 | config BT_HCIBTUSB |
9bfa35fe MH |
23 | tristate "HCI USB driver" |
24 | depends on USB | |
4185a0f5 | 25 | select BT_INTEL |
5e23b923 MH |
26 | help |
27 | Bluetooth HCI USB driver. | |
28 | This driver is required if you want to use Bluetooth devices with | |
29 | USB interface. | |
30 | ||
5e23b923 MH |
31 | Say Y here to compile support for Bluetooth USB devices into the |
32 | kernel or say M to compile it as module (btusb). | |
33 | ||
c2bfb100 MH |
34 | config BT_HCIBTUSB_BCM |
35 | bool "Broadcom protocol support" | |
36 | depends on BT_HCIBTUSB | |
37 | select BT_BCM | |
38 | default y | |
39 | help | |
40 | The Broadcom protocol support enables firmware and patchram | |
41 | download support for Broadcom Bluetooth controllers. | |
42 | ||
43 | Say Y here to compile support for Broadcom protocol. | |
44 | ||
db33c77d CC |
45 | config BT_HCIBTUSB_RTL |
46 | bool "Realtek protocol support" | |
47 | depends on BT_HCIBTUSB | |
48 | select BT_RTL | |
49 | default y | |
50 | help | |
51 | The Realtek protocol support enables firmware and configuration | |
52 | download support for Realtek Bluetooth controllers. | |
53 | ||
54 | Say Y here to compile support for Realtek protocol. | |
55 | ||
ddbaf13e MH |
56 | config BT_HCIBTSDIO |
57 | tristate "HCI SDIO driver" | |
58 | depends on MMC | |
59 | help | |
60 | Bluetooth HCI SDIO driver. | |
61 | This driver is required if you want to use Bluetooth device with | |
62 | SDIO interface. | |
63 | ||
64 | Say Y here to compile support for Bluetooth SDIO devices into the | |
65 | kernel or say M to compile it as module (btsdio). | |
66 | ||
1da177e4 LT |
67 | config BT_HCIUART |
68 | tristate "HCI UART driver" | |
05e89fb5 | 69 | depends on SERIAL_DEV_BUS || !SERIAL_DEV_BUS |
4f73bc4d | 70 | depends on TTY |
1da177e4 LT |
71 | help |
72 | Bluetooth HCI UART driver. | |
73 | This driver is required if you want to use Bluetooth devices with | |
8ba8b4c0 SG |
74 | serial port interface. You will also need this driver if you have |
75 | UART based Bluetooth PCMCIA and CF devices like Xircom Credit Card | |
1da177e4 LT |
76 | adapter and BrainBoxes Bluetooth PC Card. |
77 | ||
78 | Say Y here to compile support for Bluetooth UART devices into the | |
79 | kernel or say M to compile it as module (hci_uart). | |
80 | ||
1fb78fb6 AB |
81 | config BT_HCIUART_SERDEV |
82 | bool | |
83 | depends on SERIAL_DEV_BUS && BT_HCIUART | |
1fb78fb6 AB |
84 | default y |
85 | ||
1da177e4 LT |
86 | config BT_HCIUART_H4 |
87 | bool "UART (H4) protocol support" | |
88 | depends on BT_HCIUART | |
89 | help | |
8ba8b4c0 SG |
90 | UART (H4) is serial protocol for communication between Bluetooth |
91 | device and host. This protocol is required for most Bluetooth devices | |
92 | with UART interface, including PCMCIA and CF cards. | |
1da177e4 LT |
93 | |
94 | Say Y here to compile support for HCI UART (H4) protocol. | |
95 | ||
7bb31868 SR |
96 | config BT_HCIUART_NOKIA |
97 | tristate "UART Nokia H4+ protocol support" | |
98 | depends on BT_HCIUART | |
1fb78fb6 | 99 | depends on BT_HCIUART_SERDEV |
7bb31868 | 100 | depends on PM |
c42c88e6 | 101 | select BT_HCIUART_H4 |
6a485420 | 102 | select BT_BCM |
7bb31868 SR |
103 | help |
104 | Nokia H4+ is serial protocol for communication between Bluetooth | |
105 | device and host. This protocol is required for Bluetooth devices | |
106 | with UART interface in Nokia devices. | |
107 | ||
108 | Say Y here to compile support for Nokia's H4+ protocol. | |
109 | ||
1da177e4 LT |
110 | config BT_HCIUART_BCSP |
111 | bool "BCSP protocol support" | |
112 | depends on BT_HCIUART | |
d3a8eab0 | 113 | select BITREVERSE |
1da177e4 | 114 | help |
8ba8b4c0 | 115 | BCSP (BlueCore Serial Protocol) is serial protocol for communication |
1da177e4 LT |
116 | between Bluetooth device and host. This protocol is required for non |
117 | USB Bluetooth devices based on CSR BlueCore chip, including PCMCIA and | |
118 | CF cards. | |
119 | ||
120 | Say Y here to compile support for HCI BCSP protocol. | |
121 | ||
b3190df6 SS |
122 | config BT_HCIUART_ATH3K |
123 | bool "Atheros AR300x serial support" | |
124 | depends on BT_HCIUART | |
d90aa682 | 125 | select BT_HCIUART_H4 |
b3190df6 SS |
126 | help |
127 | HCIATH3K (HCI Atheros AR300x) is a serial protocol for | |
128 | communication between host and Atheros AR300x Bluetooth devices. | |
129 | This protocol enables AR300x chips to be enabled with | |
130 | power management support. | |
131 | Enable this if you have Atheros AR300x serial Bluetooth device. | |
132 | ||
133 | Say Y here to compile support for HCI UART ATH3K protocol. | |
134 | ||
166d2f6a OBC |
135 | config BT_HCIUART_LL |
136 | bool "HCILL protocol support" | |
76c4969f | 137 | depends on BT_HCIUART_SERDEV |
166d2f6a OBC |
138 | help |
139 | HCILL (HCI Low Level) is a serial protocol for communication | |
140 | between Bluetooth device and host. This protocol is required for | |
141 | serial Bluetooth devices that are based on Texas Instruments' | |
142 | BRF chips. | |
143 | ||
144 | Say Y here to compile support for HCILL protocol. | |
145 | ||
7dec65c8 JH |
146 | config BT_HCIUART_3WIRE |
147 | bool "Three-wire UART (H5) protocol support" | |
148 | depends on BT_HCIUART | |
956bc6ff | 149 | depends on BT_HCIUART_SERDEV |
7dec65c8 JH |
150 | help |
151 | The HCI Three-wire UART Transport Layer makes it possible to | |
152 | user the Bluetooth HCI over a serial port interface. The HCI | |
153 | Three-wire UART Transport Layer assumes that the UART | |
154 | communication may have bit errors, overrun errors or burst | |
155 | errors and thereby making CTS/RTS lines unnecessary. | |
156 | ||
157 | Say Y here to compile support for Three-wire UART protocol. | |
158 | ||
16e3887f MH |
159 | config BT_HCIUART_INTEL |
160 | bool "Intel protocol support" | |
161 | depends on BT_HCIUART | |
ca93cee5 | 162 | select BT_HCIUART_H4 |
bca03c95 | 163 | select BT_INTEL |
16e3887f MH |
164 | help |
165 | The Intel protocol support enables Bluetooth HCI over serial | |
166 | port interface for Intel Bluetooth controllers. | |
167 | ||
168 | Say Y here to compile support for Intel protocol. | |
169 | ||
e9a2dd26 MH |
170 | config BT_HCIUART_BCM |
171 | bool "Broadcom protocol support" | |
172 | depends on BT_HCIUART | |
33cd149e | 173 | depends on BT_HCIUART_SERDEV |
4294625e | 174 | depends on (!ACPI || SERIAL_DEV_CTRL_TTYPORT) |
bdd8818e | 175 | select BT_HCIUART_H4 |
3e0ac12a | 176 | select BT_BCM |
e9a2dd26 MH |
177 | help |
178 | The Broadcom protocol support enables Bluetooth HCI over serial | |
179 | port interface for Broadcom Bluetooth controllers. | |
180 | ||
181 | Say Y here to compile support for Broadcom protocol. | |
182 | ||
0ff252c1 BYTK |
183 | config BT_HCIUART_QCA |
184 | bool "Qualcomm Atheros protocol support" | |
185 | depends on BT_HCIUART | |
186 | select BT_HCIUART_H4 | |
187 | select BT_QCA | |
188 | help | |
189 | The Qualcomm Atheros protocol supports HCI In-Band Sleep feature | |
190 | over serial port interface(H4) between controller and host. | |
191 | This protocol is required for UART clock control for QCA Bluetooth | |
192 | devices. | |
193 | ||
194 | Say Y here to compile support for QCA protocol. | |
195 | ||
395174bb LP |
196 | config BT_HCIUART_AG6XX |
197 | bool "Intel AG6XX protocol support" | |
198 | depends on BT_HCIUART | |
199 | select BT_HCIUART_H4 | |
200 | select BT_INTEL | |
201 | help | |
202 | The Intel/AG6XX protocol support enables Bluetooth HCI over serial | |
203 | port interface for Intel ibt 2.1 Bluetooth controllers. | |
204 | ||
205 | Say Y here to compile support for Intel AG6XX protocol. | |
162f812f LP |
206 | |
207 | config BT_HCIUART_MRVL | |
208 | bool "Marvell protocol support" | |
209 | depends on BT_HCIUART | |
210 | select BT_HCIUART_H4 | |
211 | help | |
212 | Marvell is serial protocol for communication between Bluetooth | |
213 | device and host. This protocol is required for most Marvell Bluetooth | |
214 | devices with UART interface. | |
215 | ||
216 | Say Y here to compile support for HCI MRVL protocol. | |
395174bb | 217 | |
1da177e4 LT |
218 | config BT_HCIBCM203X |
219 | tristate "HCI BCM203x USB driver" | |
220 | depends on USB | |
221 | select FW_LOADER | |
222 | help | |
223 | Bluetooth HCI BCM203x USB driver. | |
224 | This driver provides the firmware loading mechanism for the Broadcom | |
225 | Blutonium based devices. | |
226 | ||
227 | Say Y here to compile support for HCI BCM203x devices into the | |
228 | kernel or say M to compile it as module (bcm203x). | |
229 | ||
230 | config BT_HCIBPA10X | |
231 | tristate "HCI BPA10x USB driver" | |
7841d06e | 232 | depends on USB && BT_HCIUART |
943cc592 | 233 | select BT_HCIUART_H4 |
1da177e4 LT |
234 | help |
235 | Bluetooth HCI BPA10x USB driver. | |
236 | This driver provides support for the Digianswer BPA 100/105 Bluetooth | |
237 | sniffer devices. | |
238 | ||
239 | Say Y here to compile support for HCI BPA10x devices into the | |
240 | kernel or say M to compile it as module (bpa10x). | |
241 | ||
242 | config BT_HCIBFUSB | |
243 | tristate "HCI BlueFRITZ! USB driver" | |
244 | depends on USB | |
245 | select FW_LOADER | |
246 | help | |
247 | Bluetooth HCI BlueFRITZ! USB driver. | |
248 | This driver provides support for Bluetooth USB devices with AVM | |
249 | interface: | |
250 | AVM BlueFRITZ! USB | |
251 | ||
252 | Say Y here to compile support for HCI BFUSB devices into the | |
253 | kernel or say M to compile it as module (bfusb). | |
254 | ||
255 | config BT_HCIDTL1 | |
256 | tristate "HCI DTL1 (PC Card) driver" | |
257 | depends on PCMCIA | |
258 | help | |
259 | Bluetooth HCI DTL1 (PC Card) driver. | |
260 | This driver provides support for Bluetooth PCMCIA devices with | |
261 | Nokia DTL1 interface: | |
262 | Nokia Bluetooth Card | |
263 | Socket Bluetooth CF Card | |
264 | ||
265 | Say Y here to compile support for HCI DTL1 devices into the | |
266 | kernel or say M to compile it as module (dtl1_cs). | |
267 | ||
268 | config BT_HCIBT3C | |
269 | tristate "HCI BT3C (PC Card) driver" | |
270 | depends on PCMCIA | |
271 | select FW_LOADER | |
272 | help | |
273 | Bluetooth HCI BT3C (PC Card) driver. | |
274 | This driver provides support for Bluetooth PCMCIA devices with | |
275 | 3Com BT3C interface: | |
276 | 3Com Bluetooth Card (3CRWB6096) | |
277 | HP Bluetooth Card | |
278 | ||
279 | Say Y here to compile support for HCI BT3C devices into the | |
280 | kernel or say M to compile it as module (bt3c_cs). | |
281 | ||
282 | config BT_HCIBLUECARD | |
283 | tristate "HCI BlueCard (PC Card) driver" | |
284 | depends on PCMCIA | |
285 | help | |
286 | Bluetooth HCI BlueCard (PC Card) driver. | |
287 | This driver provides support for Bluetooth PCMCIA devices with | |
288 | Anycom BlueCard interface: | |
289 | Anycom Bluetooth PC Card | |
290 | Anycom Bluetooth CF Card | |
291 | ||
292 | Say Y here to compile support for HCI BlueCard devices into the | |
293 | kernel or say M to compile it as module (bluecard_cs). | |
294 | ||
295 | config BT_HCIBTUART | |
296 | tristate "HCI UART (PC Card) device driver" | |
297 | depends on PCMCIA | |
298 | help | |
299 | Bluetooth HCI UART (PC Card) driver. | |
300 | This driver provides support for Bluetooth PCMCIA devices with | |
301 | an UART interface: | |
302 | Xircom CreditCard Bluetooth Adapter | |
303 | Xircom RealPort2 Bluetooth Adapter | |
304 | Sphinx PICO Card | |
305 | H-Soft blue+Card | |
306 | Cyber-blue Compact Flash Card | |
307 | ||
308 | Say Y here to compile support for HCI UART devices into the | |
309 | kernel or say M to compile it as module (btuart_cs). | |
310 | ||
311 | config BT_HCIVHCI | |
312 | tristate "HCI VHCI (Virtual HCI device) driver" | |
313 | help | |
314 | Bluetooth Virtual HCI device driver. | |
315 | This driver is required if you want to use HCI Emulation software. | |
316 | ||
317 | Say Y here to compile support for virtual HCI devices into the | |
318 | kernel or say M to compile it as module (hci_vhci). | |
319 | ||
132ff4e5 BZ |
320 | config BT_MRVL |
321 | tristate "Marvell Bluetooth driver support" | |
132ff4e5 BZ |
322 | help |
323 | The core driver to support Marvell Bluetooth devices. | |
324 | ||
325 | This driver is required if you want to support | |
f0ef6748 | 326 | Marvell Bluetooth devices, such as 8688/8787/8797/8887/8897/8997. |
132ff4e5 BZ |
327 | |
328 | Say Y here to compile Marvell Bluetooth driver | |
329 | into the kernel or say M to compile it as module. | |
330 | ||
789221ec BZ |
331 | config BT_MRVL_SDIO |
332 | tristate "Marvell BT-over-SDIO driver" | |
333 | depends on BT_MRVL && MMC | |
e7a25f98 | 334 | select FW_LOADER |
dc759613 | 335 | select WANT_DEV_COREDUMP |
789221ec BZ |
336 | help |
337 | The driver for Marvell Bluetooth chipsets with SDIO interface. | |
338 | ||
339 | This driver is required if you want to use Marvell Bluetooth | |
f0ef6748 | 340 | devices with SDIO interface. Currently SD8688/SD8787/SD8797/SD8887/SD8897/SD8997 |
2ac654f7 | 341 | chipsets are supported. |
789221ec BZ |
342 | |
343 | Say Y here to compile support for Marvell BT-over-SDIO driver | |
344 | into the kernel or say M to compile it as module. | |
345 | ||
9670d80a VK |
346 | config BT_ATH3K |
347 | tristate "Atheros firmware download driver" | |
348 | depends on BT_HCIBTUSB | |
349 | select FW_LOADER | |
350 | help | |
351 | Bluetooth firmware download driver. | |
352 | This driver loads the firmware into the Atheros Bluetooth | |
353 | chipset. | |
1da177e4 | 354 | |
9670d80a VK |
355 | Say Y here to compile support for "Atheros firmware download driver" |
356 | into the kernel or say M to compile it as module (ath3k). | |
357 | ||
363907af PS |
358 | config BT_WILINK |
359 | tristate "Texas Instruments WiLink7 driver" | |
360 | depends on TI_ST | |
361 | help | |
362 | This enables the Bluetooth driver for Texas Instrument's BT/FM/GPS | |
363 | combo devices. This makes use of shared transport line discipline | |
364 | core driver to communicate with the BT core of the combo chip. | |
365 | ||
366 | Say Y here to compile support for Texas Instrument's WiLink7 driver | |
22e8ee12 PM |
367 | into the kernel or say M to compile it as module (btwilink). |
368 | ||
1511cc75 BA |
369 | config BT_QCOMSMD |
370 | tristate "Qualcomm SMD based HCI support" | |
5052de8d | 371 | depends on RPMSG || (COMPILE_TEST && RPMSG=n) |
6e9e6cc8 | 372 | depends on QCOM_WCNSS_CTRL || (COMPILE_TEST && QCOM_WCNSS_CTRL=n) |
1511cc75 BA |
373 | select BT_QCA |
374 | help | |
375 | Qualcomm SMD based HCI driver. | |
376 | This driver is used to bridge HCI data onto the shared memory | |
377 | channels to the WCNSS core. | |
378 | ||
379 | Say Y here to compile support for HCI over Qualcomm SMD into the | |
380 | kernel or say M to compile as a module. | |
381 | ||
307d36b6 PP |
382 | config BT_QCOMSMD_HACK |
383 | bool "Don't forcefully hook hci setup()" | |
384 | default n | |
385 | help | |
386 | Don't forcefully hook hci setup() in case a BD address wasn't | |
387 | assigned to hcidev during qcomsmd_probe(). | |
388 | ||
9670d80a | 389 | endmenu |