153 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			153 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| # SPDX-License-Identifier: GPL-2.0-only
 | |
| #
 | |
| # Bluetooth subsystem configuration
 | |
| #
 | |
| 
 | |
| menuconfig BT
 | |
| 	tristate "Bluetooth subsystem support"
 | |
| 	depends on !S390
 | |
| 	depends on RFKILL || !RFKILL
 | |
| 	select CRC16
 | |
| 	select CRYPTO
 | |
| 	select CRYPTO_SKCIPHER
 | |
| 	select CRYPTO_LIB_AES
 | |
| 	imply CRYPTO_AES
 | |
| 	select CRYPTO_CMAC
 | |
| 	select CRYPTO_ECB
 | |
| 	select CRYPTO_SHA256
 | |
| 	select CRYPTO_ECDH
 | |
| 	help
 | |
| 	  Bluetooth is low-cost, low-power, short-range wireless technology.
 | |
| 	  It was designed as a replacement for cables and other short-range
 | |
| 	  technologies like IrDA.  Bluetooth operates in personal area range
 | |
| 	  that typically extends up to 10 meters.  More information about
 | |
| 	  Bluetooth can be found at <https://www.bluetooth.com/>.
 | |
| 
 | |
| 	  Linux Bluetooth subsystem consist of several layers:
 | |
| 	     Bluetooth Core
 | |
| 		HCI device and connection manager, scheduler
 | |
| 		SCO audio links
 | |
| 		L2CAP (Logical Link Control and Adaptation Protocol)
 | |
| 		SMP (Security Manager Protocol) on LE (Low Energy) links
 | |
| 		ISO isochronous links
 | |
| 	     HCI Device drivers (Interface to the hardware)
 | |
| 	     RFCOMM Module (RFCOMM Protocol)  
 | |
| 	     BNEP Module (Bluetooth Network Encapsulation Protocol)
 | |
| 	     CMTP Module (CAPI Message Transport Protocol)
 | |
| 	     HIDP Module (Human Interface Device Protocol)
 | |
| 
 | |
| 	  Say Y here to compile Bluetooth support into the kernel or say M to
 | |
| 	  compile it as module (bluetooth).
 | |
| 
 | |
| 	  To use Linux Bluetooth subsystem, you will need several user-space
 | |
| 	  utilities like hciconfig and bluetoothd.  These utilities and updates
 | |
| 	  to Bluetooth kernel modules are provided in the BlueZ packages.  For
 | |
| 	  more information, see <http://www.bluez.org/>.
 | |
| 
 | |
| config BT_BREDR
 | |
| 	bool "Bluetooth Classic (BR/EDR) features"
 | |
| 	depends on BT
 | |
| 	default y
 | |
| 	help
 | |
| 	  Bluetooth Classic includes support for Basic Rate (BR)
 | |
| 	  available with Bluetooth version 1.0b or later and support
 | |
| 	  for Enhanced Data Rate (EDR) available with Bluetooth
 | |
| 	  version 2.0 or later.
 | |
| 
 | |
| source "net/bluetooth/rfcomm/Kconfig"
 | |
| 
 | |
| source "net/bluetooth/bnep/Kconfig"
 | |
| 
 | |
| source "net/bluetooth/cmtp/Kconfig"
 | |
| 
 | |
| source "net/bluetooth/hidp/Kconfig"
 | |
| 
 | |
| config BT_HS
 | |
| 	bool "Bluetooth High Speed (HS) features"
 | |
| 	depends on BT_BREDR
 | |
| 	help
 | |
| 	  Bluetooth High Speed includes support for off-loading
 | |
| 	  Bluetooth connections via 802.11 (wifi) physical layer
 | |
| 	  available with Bluetooth version 3.0 or later.
 | |
| 
 | |
| config BT_LE
 | |
| 	bool "Bluetooth Low Energy (LE) features"
 | |
| 	depends on BT
 | |
| 	default y
 | |
| 	help
 | |
| 	  Bluetooth Low Energy includes support low-energy physical
 | |
| 	  layer available with Bluetooth version 4.0 or later.
 | |
| 
 | |
| config BT_6LOWPAN
 | |
| 	tristate "Bluetooth 6LoWPAN support"
 | |
| 	depends on BT_LE && 6LOWPAN
 | |
| 	help
 | |
| 	  IPv6 compression over Bluetooth Low Energy.
 | |
| 
 | |
| config BT_LEDS
 | |
| 	bool "Enable LED triggers"
 | |
| 	depends on BT
 | |
| 	depends on LEDS_CLASS
 | |
| 	select LEDS_TRIGGERS
 | |
| 	help
 | |
| 	  This option selects a few LED triggers for different
 | |
| 	  Bluetooth events.
 | |
| 
 | |
| config BT_MSFTEXT
 | |
| 	bool "Enable Microsoft extensions"
 | |
| 	depends on BT
 | |
| 	help
 | |
| 	  This options enables support for the Microsoft defined HCI
 | |
| 	  vendor extensions.
 | |
| 
 | |
| config BT_AOSPEXT
 | |
| 	bool "Enable Android Open Source Project extensions"
 | |
| 	depends on BT
 | |
| 	help
 | |
| 	  This options enables support for the Android Open Source
 | |
| 	  Project defined HCI vendor extensions.
 | |
| 
 | |
| config BT_DEBUGFS
 | |
| 	bool "Export Bluetooth internals in debugfs"
 | |
| 	depends on BT && DEBUG_FS
 | |
| 	default y
 | |
| 	help
 | |
| 	  Provide extensive information about internal Bluetooth states
 | |
| 	  in debugfs.
 | |
| 
 | |
| config BT_SELFTEST
 | |
| 	bool "Bluetooth self testing support"
 | |
| 	depends on BT && DEBUG_KERNEL
 | |
| 	help
 | |
| 	  Run self tests when initializing the Bluetooth subsystem.  This
 | |
| 	  is a developer option and can cause significant delay when booting
 | |
| 	  the system.
 | |
| 
 | |
| 	  When the Bluetooth subsystem is built as module, then the test
 | |
| 	  cases are run first thing at module load time.  When the Bluetooth
 | |
| 	  subsystem is compiled into the kernel image, then the test cases
 | |
| 	  are run late in the initcall hierarchy.
 | |
| 
 | |
| config BT_SELFTEST_ECDH
 | |
| 	bool "ECDH test cases"
 | |
| 	depends on BT_LE && BT_SELFTEST
 | |
| 	help
 | |
| 	  Run test cases for ECDH cryptographic functionality used by the
 | |
| 	  Bluetooth Low Energy Secure Connections feature.
 | |
| 
 | |
| config BT_SELFTEST_SMP
 | |
| 	bool "SMP test cases"
 | |
| 	depends on BT_LE && BT_SELFTEST
 | |
| 	help
 | |
| 	  Run test cases for SMP cryptographic functionality, including both
 | |
| 	  legacy SMP as well as the Secure Connections features.
 | |
| 
 | |
| config BT_FEATURE_DEBUG
 | |
| 	bool "Enable runtime option for debugging statements"
 | |
| 	depends on BT && !DYNAMIC_DEBUG
 | |
| 	help
 | |
| 	  This provides an option to enable/disable debugging statements
 | |
| 	  at runtime via the experimental features interface.
 | |
| 
 | |
| source "drivers/bluetooth/Kconfig"
 |