Bluetooth: BT_HCIUART now depends on SERIAL_DEV_BUS
authorArnd Bergmann <arnd@arndb.de>
Wed, 11 Oct 2017 13:47:54 +0000 (15:47 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 22 Feb 2018 14:42:32 +0000 (15:42 +0100)
commit 05e89fb576f580ac95e7a5d00bdb34830b09671a upstream.

It is no longer possible to build BT_HCIUART into the kernel
when SERIAL_DEV_BUS is a loadable module, even if none of the
SERIAL_DEV_BUS based implementations are selected:

drivers/bluetooth/hci_ldisc.o: In function `hci_uart_set_flow_control':
hci_ldisc.c:(.text+0xb40): undefined reference to `serdev_device_set_flow_control'
hci_ldisc.c:(.text+0xb5c): undefined reference to `serdev_device_set_tiocm'

This adds a dependency to avoid the broken configuration.

Fixes: 7841d554809b ("Bluetooth: hci_uart_set_flow_control: Fix NULL deref when using serdev")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/bluetooth/Kconfig

index 98a60db..b33c8d6 100644 (file)
@@ -66,6 +66,7 @@ config BT_HCIBTSDIO
 
 config BT_HCIUART
        tristate "HCI UART driver"
+       depends on SERIAL_DEV_BUS || !SERIAL_DEV_BUS
        depends on TTY
        help
          Bluetooth HCI UART driver.
@@ -80,7 +81,6 @@ config BT_HCIUART
 config BT_HCIUART_SERDEV
        bool
        depends on SERIAL_DEV_BUS && BT_HCIUART
-       depends on SERIAL_DEV_BUS=y || SERIAL_DEV_BUS=BT_HCIUART
        default y
 
 config BT_HCIUART_H4