11da177e4SLinus Torvalds# 21da177e4SLinus Torvalds# Bluetooth subsystem configuration 31da177e4SLinus Torvalds# 41da177e4SLinus Torvalds 51da177e4SLinus Torvaldsmenuconfig BT 61da177e4SLinus Torvalds tristate "Bluetooth subsystem support" 71a097181SMarcel Holtmann depends on NET && !S390 81a097181SMarcel Holtmann depends on RFKILL || !RFKILL 9f1e91e16SUlisses Furquim select CRC16 10daf4ce85SRandy Dunlap select CRYPTO 11f1e91e16SUlisses Furquim select CRYPTO_BLKCIPHER 12f1e91e16SUlisses Furquim select CRYPTO_AES 13407cecf6SJohan Hedberg select CRYPTO_CMAC 14f1e91e16SUlisses Furquim select CRYPTO_ECB 155a349186SAndrei Emeltchenko select CRYPTO_SHA256 161da177e4SLinus Torvalds help 171da177e4SLinus Torvalds Bluetooth is low-cost, low-power, short-range wireless technology. 181da177e4SLinus Torvalds It was designed as a replacement for cables and other short-range 191da177e4SLinus Torvalds technologies like IrDA. Bluetooth operates in personal area range 201da177e4SLinus Torvalds that typically extends up to 10 meters. More information about 211da177e4SLinus Torvalds Bluetooth can be found at <http://www.bluetooth.com/>. 221da177e4SLinus Torvalds 231da177e4SLinus Torvalds Linux Bluetooth subsystem consist of several layers: 24f1e91e16SUlisses Furquim Bluetooth Core 25f1e91e16SUlisses Furquim HCI device and connection manager, scheduler 26f1e91e16SUlisses Furquim SCO audio links 27f1e91e16SUlisses Furquim L2CAP (Logical Link Control and Adaptation Protocol) 28f1e91e16SUlisses Furquim SMP (Security Manager Protocol) on LE (Low Energy) links 291da177e4SLinus Torvalds HCI Device drivers (Interface to the hardware) 301da177e4SLinus Torvalds RFCOMM Module (RFCOMM Protocol) 311da177e4SLinus Torvalds BNEP Module (Bluetooth Network Encapsulation Protocol) 321da177e4SLinus Torvalds CMTP Module (CAPI Message Transport Protocol) 331da177e4SLinus Torvalds HIDP Module (Human Interface Device Protocol) 341da177e4SLinus Torvalds 351da177e4SLinus Torvalds Say Y here to compile Bluetooth support into the kernel or say M to 361da177e4SLinus Torvalds compile it as module (bluetooth). 371da177e4SLinus Torvalds 381da177e4SLinus Torvalds To use Linux Bluetooth subsystem, you will need several user-space 39a0019bcaSGustavo F. Padovan utilities like hciconfig and bluetoothd. These utilities and updates 40a0019bcaSGustavo F. Padovan to Bluetooth kernel modules are provided in the BlueZ packages. For 41a0019bcaSGustavo F. Padovan more information, see <http://www.bluez.org/>. 421da177e4SLinus Torvalds 4365efd2bfSMarcel Holtmannconfig BT_BREDR 4465efd2bfSMarcel Holtmann bool "Bluetooth Classic (BR/EDR) features" 4565efd2bfSMarcel Holtmann depends on BT 4665efd2bfSMarcel Holtmann default y 4797550887SAlexander Aring 481da177e4SLinus Torvaldssource "net/bluetooth/rfcomm/Kconfig" 491da177e4SLinus Torvalds 501da177e4SLinus Torvaldssource "net/bluetooth/bnep/Kconfig" 511da177e4SLinus Torvalds 521da177e4SLinus Torvaldssource "net/bluetooth/cmtp/Kconfig" 531da177e4SLinus Torvalds 541da177e4SLinus Torvaldssource "net/bluetooth/hidp/Kconfig" 551da177e4SLinus Torvalds 5665efd2bfSMarcel Holtmannconfig BT_LE 5765efd2bfSMarcel Holtmann bool "Bluetooth Low Energy (LE) features" 5865efd2bfSMarcel Holtmann depends on BT 5965efd2bfSMarcel Holtmann default y 6065efd2bfSMarcel Holtmann 6165efd2bfSMarcel Holtmannconfig BT_6LOWPAN 6265efd2bfSMarcel Holtmann tristate "Bluetooth 6LoWPAN support" 6365efd2bfSMarcel Holtmann depends on BT_LE && 6LOWPAN 6465efd2bfSMarcel Holtmann help 6565efd2bfSMarcel Holtmann IPv6 compression over Bluetooth Low Energy. 6665efd2bfSMarcel Holtmann 67*ee485290SMarcel Holtmannconfig BT_SELFTEST 68*ee485290SMarcel Holtmann bool "Bluetooth self testing support" 69*ee485290SMarcel Holtmann depends on BT && DEBUG_KERNEL 70*ee485290SMarcel Holtmann help 71*ee485290SMarcel Holtmann Run self tests when initializing the Bluetooth subsystem. This 72*ee485290SMarcel Holtmann is a developer option and can cause significant delay when booting 73*ee485290SMarcel Holtmann the system. 74*ee485290SMarcel Holtmann 75*ee485290SMarcel Holtmann When the Bluetooth subsystem is built as module, then the test 76*ee485290SMarcel Holtmann cases are run first thing at module load time. When the Bluetooth 77*ee485290SMarcel Holtmann subsystem is compiled into the kernel image, then the test cases 78*ee485290SMarcel Holtmann are run late in the initcall hierarchy. 79*ee485290SMarcel Holtmann 801da177e4SLinus Torvaldssource "drivers/bluetooth/Kconfig" 81