Skip to content

Commit 689ca16

Browse files
NeerajSanjayKaleVudentz
authored andcommitted
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 <[email protected]> Reviewed-by: Ilpo Järvinen <[email protected]> Signed-off-by: Luiz Augusto von Dentz <[email protected]>
1 parent ab3a769 commit 689ca16

File tree

4 files changed

+1311
-0
lines changed

4 files changed

+1311
-0
lines changed

MAINTAINERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23242,6 +23242,7 @@ M: Amitkumar Karwar <[email protected]>
2324223242
M: Neeraj Kale <[email protected]>
2324323243
S: Maintained
2324423244
F: Documentation/devicetree/bindings/net/bluetooth/nxp,88w8987-bt.yaml
23245+
F: drivers/bluetooth/btnxpuart.c
2324523246

2324623247
THE REST
2324723248
M: Linus Torvalds <[email protected]>

drivers/bluetooth/Kconfig

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -465,4 +465,16 @@ config BT_VIRTIO
465465
Say Y here to compile support for HCI over Virtio into the
466466
kernel or say M to compile as a module.
467467

468+
config BT_NXPUART
469+
tristate "NXP protocol support"
470+
depends on SERIAL_DEV_BUS
471+
select CRC32
472+
help
473+
NXP is serial driver required for NXP Bluetooth
474+
devices with UART interface.
475+
476+
Say Y here to compile support for NXP Bluetooth UART device into
477+
the kernel, or say M here to compile as a module (btnxpuart).
478+
479+
468480
endmenu

drivers/bluetooth/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ obj-$(CONFIG_BT_QCA) += btqca.o
2929
obj-$(CONFIG_BT_MTK) += btmtk.o
3030

3131
obj-$(CONFIG_BT_VIRTIO) += virtio_bt.o
32+
obj-$(CONFIG_BT_NXPUART) += btnxpuart.o
3233

3334
obj-$(CONFIG_BT_HCIUART_NOKIA) += hci_nokia.o
3435

0 commit comments

Comments
 (0)