1 2menu "Bluetooth device drivers" 3 depends on BT 4 5config BT_INTEL 6 tristate 7 select REGMAP 8 9config BT_BCM 10 tristate 11 select FW_LOADER 12 13config BT_RTL 14 tristate 15 select FW_LOADER 16 17config BT_QCA 18 tristate 19 select FW_LOADER 20 21config 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 33config 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 44config 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 55config 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 66config 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 79config 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 85config 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 95config 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 109config 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 121config 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 134config 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 145config 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 157config 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 168config 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 180config 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 193config 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 204config 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 215config 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 227config 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 239config 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 252config 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 265config 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 279config 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 292config 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 308config 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 317config 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 328config 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 343config 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 355config 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 366config 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 379endmenu 380