Message ID | 20170511114223.2744939-1-arnd@arndb.de |
---|---|
State | New |
Headers | show |
Hi, On Thu, May 11, 2017 at 01:41:54PM +0200, Arnd Bergmann wrote: > When SERDEV is a loadable module, and the HCI code is built-in, we > get a link error: > > drivers/bluetooth/built-in.o: In function `ll_close': > hci_ll.c:(.text+0x278d): undefined reference to `serdev_device_close' > drivers/bluetooth/built-in.o: In function `hci_ti_probe': > hci_ll.c:(.text+0x283c): undefined reference to `hci_uart_register_device' > drivers/bluetooth/built-in.o: In function `ll_setup': > hci_ll.c:(.text+0x289e): undefined reference to `serdev_device_set_flow_control' > hci_ll.c:(.text+0x2b9c): undefined reference to `serdev_device_set_baudrate' > drivers/bluetooth/built-in.o: In function `ll_open': > hci_ll.c:(.text+0x2c77): undefined reference to `serdev_device_open' > drivers/bluetooth/built-in.o: In function `ll_init': > (.init.text+0x10d): undefined reference to `__serdev_device_driver_register' > > We already have CONFIG_BT_HCIUART_SERDEV as a Kconfig symbol that is > set when the serdev code is reachable by a driver. Unlike the nokia > driver, this one can also be built when serdev is completely disabled, > so we add a dependency on serdev either being usable or disabled here. > > Fixes: 371805522f87 ("bluetooth: hci_uart: add LL protocol serdev driver support") > Cc: Rob Herring <robh@kernel.org> > Signed-off-by: Arnd Bergmann <arnd@arndb.de> Reviewed-by: Sebastian Reichel <sre@kernel.org> -- Sebastian > --- > drivers/bluetooth/Kconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/bluetooth/Kconfig b/drivers/bluetooth/Kconfig > index a63130ef2b98..b2cf0ae6b62d 100644 > --- a/drivers/bluetooth/Kconfig > +++ b/drivers/bluetooth/Kconfig > @@ -133,6 +133,7 @@ config BT_HCIUART_ATH3K > config BT_HCIUART_LL > bool "HCILL protocol support" > depends on BT_HCIUART > + depends on BT_HCIUART_SERDEV || SERIAL_DEV_BUS=n > help > HCILL (HCI Low Level) is a serial protocol for communication > between Bluetooth device and host. This protocol is required for > -- > 2.9.0 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/bluetooth/Kconfig b/drivers/bluetooth/Kconfig index a63130ef2b98..b2cf0ae6b62d 100644 --- a/drivers/bluetooth/Kconfig +++ b/drivers/bluetooth/Kconfig @@ -133,6 +133,7 @@ config BT_HCIUART_ATH3K config BT_HCIUART_LL bool "HCILL protocol support" depends on BT_HCIUART + depends on BT_HCIUART_SERDEV || SERIAL_DEV_BUS=n help HCILL (HCI Low Level) is a serial protocol for communication between Bluetooth device and host. This protocol is required for
When SERDEV is a loadable module, and the HCI code is built-in, we get a link error: drivers/bluetooth/built-in.o: In function `ll_close': hci_ll.c:(.text+0x278d): undefined reference to `serdev_device_close' drivers/bluetooth/built-in.o: In function `hci_ti_probe': hci_ll.c:(.text+0x283c): undefined reference to `hci_uart_register_device' drivers/bluetooth/built-in.o: In function `ll_setup': hci_ll.c:(.text+0x289e): undefined reference to `serdev_device_set_flow_control' hci_ll.c:(.text+0x2b9c): undefined reference to `serdev_device_set_baudrate' drivers/bluetooth/built-in.o: In function `ll_open': hci_ll.c:(.text+0x2c77): undefined reference to `serdev_device_open' drivers/bluetooth/built-in.o: In function `ll_init': (.init.text+0x10d): undefined reference to `__serdev_device_driver_register' We already have CONFIG_BT_HCIUART_SERDEV as a Kconfig symbol that is set when the serdev code is reachable by a driver. Unlike the nokia driver, this one can also be built when serdev is completely disabled, so we add a dependency on serdev either being usable or disabled here. Fixes: 371805522f87 ("bluetooth: hci_uart: add LL protocol serdev driver support") Cc: Rob Herring <robh@kernel.org> Signed-off-by: Arnd Bergmann <arnd@arndb.de> --- drivers/bluetooth/Kconfig | 1 + 1 file changed, 1 insertion(+) -- 2.9.0