Re: [PATCHv2 09/11] Bluetooth: add nokia driver
From: Sebastian Reichel <sre@kernel.org>
Date: 2017-03-23 09:07:28
Also in:
linux-bluetooth, linux-serial, lkml
Hi, On Thu, Mar 23, 2017 at 08:50:42AM +0100, Frédéric Danis wrote:
Le 21/03/2017 à 23:32, Sebastian Reichel a écrit :quoted
This adds a driver for the Nokia H4+ protocol, which is used at least on the Nokia N9, N900 & N950. Signed-off-by: Sebastian Reichel <sre@kernel.org> --- Changes since PATCHv1: * replace __u8 and uint8_t with u8 * replace __u16 and uint16_t with u16 * drop BT_BAUDRATE_DIVIDER and use btdev->sysclk_speed * 10 instead * fix wording of a sentence * fix error path of negotation & alive package receive functions * replaced nokia_wait_for_cts with newly introduced serdev function * use "nokia,h4p-bluetooth" as compatible string --- drivers/bluetooth/Kconfig | 12 + drivers/bluetooth/Makefile | 2 + drivers/bluetooth/hci_nokia.c | 819 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 833 insertions(+) create mode 100644 drivers/bluetooth/hci_nokia.cdiff --git a/drivers/bluetooth/Kconfig b/drivers/bluetooth/Kconfig index c2c14a12713b..2e3e4d3547ad 100644 --- a/drivers/bluetooth/Kconfig +++ b/drivers/bluetooth/Kconfig@@ -86,6 +86,18 @@ config BT_HCIUART_H4 Say Y here to compile support for HCI UART (H4) protocol. +config BT_HCIUART_NOKIA + tristate "UART Nokia H4+ protocol support" + depends on BT_HCIUART + depends on SERIAL_DEV_BUS + depends on PM + help + Nokia H4+ is serial protocol for communication between Bluetooth + device and host. This protocol is required for Bluetooth devices + with UART interface in Nokia devices. + + Say Y here to compile support for Nokia's H4+ protocol. + config BT_HCIUART_BCSP bool "BCSP protocol support" depends on BT_HCIUARTdiff --git a/drivers/bluetooth/Makefile b/drivers/bluetooth/Makefile index fd571689eed6..a7f237320f4b 100644 --- a/drivers/bluetooth/Makefile +++ b/drivers/bluetooth/Makefile@@ -25,6 +25,8 @@ obj-$(CONFIG_BT_BCM) += btbcm.o obj-$(CONFIG_BT_RTL) += btrtl.o obj-$(CONFIG_BT_QCA) += btqca.o +obj-$(CONFIG_BT_HCIUART_NOKIA) += hci_nokia.o + btmrvl-y := btmrvl_main.o btmrvl-$(CONFIG_DEBUG_FS) += btmrvl_debugfs.oThis does not build as module with following error: ERROR: "hci_uart_tx_wakeup" [drivers/bluetooth/hci_nokia.ko] undefined! ERROR: "hci_uart_register_device" [drivers/bluetooth/hci_nokia.ko] undefined! Should not hci_nokia be part of the hci_uart module?
Yeah, I also received that from kbuild test robot after sending the patchset. I intentionally did not add this to hci_uart, so that I can use module_serdev_device_driver(). I think at least for serdev-only based bluetooth drivers it makes sense to have them in their own module. I already have added EXPORT_SYMBOL_GPL for those functions in the next version of this patchset. -- Sebastian
Attachments
- signature.asc [application/pgp-signature] 833 bytes