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