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 67ee485290SMarcel Holtmannconfig BT_SELFTEST 68ee485290SMarcel Holtmann bool "Bluetooth self testing support" 69ee485290SMarcel Holtmann depends on BT && DEBUG_KERNEL 70ee485290SMarcel Holtmann help 71ee485290SMarcel Holtmann Run self tests when initializing the Bluetooth subsystem. This 72ee485290SMarcel Holtmann is a developer option and can cause significant delay when booting 73ee485290SMarcel Holtmann the system. 74ee485290SMarcel Holtmann 75ee485290SMarcel Holtmann When the Bluetooth subsystem is built as module, then the test 76ee485290SMarcel Holtmann cases are run first thing at module load time. When the Bluetooth 77ee485290SMarcel Holtmann subsystem is compiled into the kernel image, then the test cases 78ee485290SMarcel Holtmann are run late in the initcall hierarchy. 79ee485290SMarcel Holtmann 80*0b6415b6SJohan Hedbergconfig BT_SELFTEST_ECDH 81*0b6415b6SJohan Hedberg bool "ECDH test cases" 82*0b6415b6SJohan Hedberg depends on BT_LE && BT_SELFTEST 83*0b6415b6SJohan Hedberg help 84*0b6415b6SJohan Hedberg Run test cases for ECDH cryptographic functionality used by the 85*0b6415b6SJohan Hedberg Bluetooth Low Energy Secure Connections feature. 86*0b6415b6SJohan Hedberg 871da177e4SLinus Torvaldssource "drivers/bluetooth/Kconfig" 88