mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-11-23 18:14:04 +08:00
Bluetooth: NXP: Add protocol support for NXP Bluetooth chipsets
This adds a driver based on serdev driver for the NXP BT serial protocol based on running H:4, which can enable the built-in Bluetooth device inside an NXP BT chip. This driver has Power Save feature that will put the chip into sleep state whenever there is no activity for 2000ms, and will be woken up when any activity is to be initiated over UART. This driver enables the power save feature by default by sending the vendor specific commands to the chip during setup. During setup, the driver checks if a FW is already running on the chip by waiting for the bootloader signature, and downloads device specific FW file into the chip over UART if bootloader signature is received.. Signed-off-by: Neeraj Sanjay Kale <neeraj.sanjaykale@nxp.com> Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
This commit is contained in:
parent
ab3a769b4d
commit
689ca16e52
@ -23242,6 +23242,7 @@ M: Amitkumar Karwar <amitkumar.karwar@nxp.com>
|
||||
M: Neeraj Kale <neeraj.sanjaykale@nxp.com>
|
||||
S: Maintained
|
||||
F: Documentation/devicetree/bindings/net/bluetooth/nxp,88w8987-bt.yaml
|
||||
F: drivers/bluetooth/btnxpuart.c
|
||||
|
||||
THE REST
|
||||
M: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
|
@ -465,4 +465,16 @@ config BT_VIRTIO
|
||||
Say Y here to compile support for HCI over Virtio into the
|
||||
kernel or say M to compile as a module.
|
||||
|
||||
config BT_NXPUART
|
||||
tristate "NXP protocol support"
|
||||
depends on SERIAL_DEV_BUS
|
||||
select CRC32
|
||||
help
|
||||
NXP is serial driver required for NXP Bluetooth
|
||||
devices with UART interface.
|
||||
|
||||
Say Y here to compile support for NXP Bluetooth UART device into
|
||||
the kernel, or say M here to compile as a module (btnxpuart).
|
||||
|
||||
|
||||
endmenu
|
||||
|
@ -29,6 +29,7 @@ obj-$(CONFIG_BT_QCA) += btqca.o
|
||||
obj-$(CONFIG_BT_MTK) += btmtk.o
|
||||
|
||||
obj-$(CONFIG_BT_VIRTIO) += virtio_bt.o
|
||||
obj-$(CONFIG_BT_NXPUART) += btnxpuart.o
|
||||
|
||||
obj-$(CONFIG_BT_HCIUART_NOKIA) += hci_nokia.o
|
||||
|
||||
|
1297
drivers/bluetooth/btnxpuart.c
Normal file
1297
drivers/bluetooth/btnxpuart.c
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user